Quantcast Working with DDS textures - ESOUI
Thread Tools Display Modes
02/27/14, 08:15 AM   #1
zork
 
zork's Avatar
AddOn Author - Click to view addons
Join Date: Feb 2014
Posts: 29
Working with DDS textures

ESO works with DDS (http://en.wikipedia.org/wiki/DirectDraw_Surface) textures. To work with them you will need an image viewer and an image editor.

Irfanview has you covered on the viewer side. Just install Irfanview and after that install the Irfanview plugin.

Irfanview:
http://www.irfanview.com/

Irfanview Plugin:
http://www.irfanview.com/plugins.htm

To work with DDS textures you need DDS plugin for your image editor. Hopefully that is Photoshop. You can grab that plugin right from nVidia.

DDS plugin for Photoshop:
https://developer.nvidia.com/nvidia-...dobe-photoshop

DDS plugin for GIMP:
http://code.google.com/p/gimp-dds/

Texture size
Like in WoW your textures need to match a size multiplier of 8. Thus: 16,32,64,128,256,512,1024. Means a valid texture size is 32x32 and so on.

Two layers are important. The image layer and the alpha layer. The alpha layer decribes the opacity that is applied to the image layer later on. White color on the alpha layer means 100% opacity. Black is 0% opacity thus transparent.

Image layer


Alpha layer


Result


Saving as DDS
When saving a DDS file choose DXT5 ARGB.


AddOn Texture Integration
Assuming you have an addon that should use the texture and you have a media folder in that addon.
lua Code:
  1. local t = WINDOW_MANAGER:CreateControl("UniqueTextureName", control, CT_TEXTURE)
  2. t:SetTexture("MyAddonName/media/myTexture.dds")
  3. t:SetDimensions(64,64)
  4. t:SetAnchor(CENTER,control,CENTER,0,0)
__________________
| Simple is beautiful.
| ESOUI GoogleCode | ROTHUI GoogleCode | WoWInterface | Guild | zorker.de

"I wonder what the non-pathetic people are doing tonight?" - Rajesh Koothrappali (The Big Bang Theory)

Last edited by zork : 03/01/14 at 10:16 AM.
  Reply With Quote
02/27/14, 04:35 PM   #2
Seerah
Fishing Trainer
 
Seerah's Avatar
WoWInterface Super Mod
AddOn Author - Click to view addons
Join Date: Feb 2014
Posts: 651
If I recall correctly, Paint.NET supports .dds
  Reply With Quote
03/04/14, 02:54 AM   #3
zork
 
zork's Avatar
AddOn Author - Click to view addons
Join Date: Feb 2014
Posts: 29
If you plan on re-using some of your old textures that are saved in the TGA format you can do so. Converting a TGA into a DDS is as simple as saving the file. Both formats use the same image and alpha layer.
__________________
| Simple is beautiful.
| ESOUI GoogleCode | ROTHUI GoogleCode | WoWInterface | Guild | zorker.de

"I wonder what the non-pathetic people are doing tonight?" - Rajesh Koothrappali (The Big Bang Theory)
  Reply With Quote
04/17/14, 09:30 AM   #4
freshfish
Join Date: Apr 2014
Posts: 1
Fantastic, this is exactly what i was lookin for and i will now have graphics on my Addon
  Reply With Quote
04/17/14, 09:48 AM   #5
gamegenius86
 
gamegenius86's Avatar
AddOn Author - Click to view addons
Join Date: Feb 2014
Posts: 27
Great Post!

Something i have been wondering but never had the chance to look it up is whether or not you can tile a texture.
  Reply With Quote
04/17/14, 10:55 PM   #6
Mandrakia
AddOn Author - Click to view addons
Join Date: Apr 2014
Posts: 3
Just to avoid anyone getting stuck on this like me.

The game has an internal cache of textures(filepath/name) it failed to load and reload ui doesn't clear that cache.

Took 2 me hours to figure it out when i decided to change the filename of my texture and finally it appeared in game.
  Reply With Quote
04/25/14, 06:16 AM   #7
zork
 
zork's Avatar
AddOn Author - Click to view addons
Join Date: Feb 2014
Posts: 29
It is the same for WoW. When you add new textures always restart the client to be safe. Adjusting existing textures should work out. But adding new textures requires a restart.
__________________
| Simple is beautiful.
| ESOUI GoogleCode | ROTHUI GoogleCode | WoWInterface | Guild | zorker.de

"I wonder what the non-pathetic people are doing tonight?" - Rajesh Koothrappali (The Big Bang Theory)
  Reply With Quote
04/25/14, 06:31 AM   #8
Tonyleila
 
Tonyleila's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2014
Posts: 290
Hey Zork, I use Photoshop CC (Creative Cloud) because of my studies and Windows 8 (not 8.1). Do you know any way to get the Nvidia plugin work with this? I even tryed installing both together (64 bit and 32 bit) as said in one of the Nvidia forums but I still can't open the DDS textures in Photoshop :/
__________________
My Addons @ WoWInterface
  Reply With Quote
04/25/14, 02:12 PM   #9
Seerah
Fishing Trainer
 
Seerah's Avatar
WoWInterface Super Mod
AddOn Author - Click to view addons
Join Date: Feb 2014
Posts: 651
As I mentioned above, Paint.NET supports the .dds file format. You don't need to do anything special or fancy.
  Reply With Quote
04/25/14, 08:45 PM   #10
Tonyleila
 
Tonyleila's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2014
Posts: 290
Originally Posted by Seerah View Post
As I mentioned above, Paint.NET supports the .dds file format. You don't need to do anything special or fancy.
I have never worked with Paint.NET but I'm shure its dosen't have all the abilities of PS and I don't want to have an extra programm. Plus I woud have to learn many things new just because one plugin dosen't work
__________________
My Addons @ WoWInterface
  Reply With Quote
04/26/14, 04:10 PM   #11
Tonyleila
 
Tonyleila's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2014
Posts: 290
I got the PS plugin working now with Creative Cloud version!
Download 32 bit and 64 bit. Install 32 bit first into the Photoshop 32 bit folder and then 64 bit into the Photoshop 64 bit folder. Now make shure to start the 64 bit version of PS.
__________________
My Addons @ WoWInterface
  Reply With Quote
04/28/14, 11:12 PM   #12
SpecialK
Join Date: Apr 2014
Posts: 6
If you're going the XML route, you can add the image file tag like this:
Code:
<Texture name="MyAddonTexture" textureFile="MyAddonName/media/myTexture.dds">
Along with the myriad of other tags you can find here: http://wiki.esoui.com/UI_XML

I know it works with way with texture defs as I do it myself, might work as well for "Backdrop" types, etc.
  Reply With Quote
05/01/14, 08:40 AM   #13
klaro00
 
klaro00's Avatar
Join Date: Apr 2014
Posts: 31
Originally Posted by Seerah View Post
If I recall correctly, Paint.NET supports .dds
Yep, I can confirm that Paint.NET is capable of handling DDS files. I found out that image sizes should have a width and height which are a power of two (2, 4, 8, 16, 32, 64, ...), not only a multiple of 8. This constraint should only be nessacary if you save DDS files with a "mipmap" included, but it seems that even if I uncheck the mipmap option the images would not show unless the sizes are a power of two (don't know if this is only for ESO).

In Paint.NET, I use these settings when saving a DDS file (sorry, I just have the german option labels): "DXT5", Kompressortyp: "Range-Anpassung", Fehlermetrik: "Einheitlich", Keine MipMaps generieren.

HTH,
Klaro
  Reply With Quote
05/01/14, 11:23 AM   #14
Stormknight
 
Stormknight's Avatar
AddOn Author - Click to view addons
Join Date: Feb 2014
Posts: 128
GIMP has a DDS plugin also that I've used successfully.

It also has batch convert, so I was able to convert all of the DDS texture files to PNG files, so I can browse them on my HDD, which is VERY convenient!

I know this list is a bit out-of-date (as in it's from beta) but figured it may be useful for people as a starter:

http://wiki.esoui.com/Texture_List

Last edited by Stormknight : 05/01/14 at 11:27 AM.
  Reply With Quote
05/01/14, 04:28 PM   #15
Seerah
Fishing Trainer
 
Seerah's Avatar
WoWInterface Super Mod
AddOn Author - Click to view addons
Join Date: Feb 2014
Posts: 651
Originally Posted by klaro00 View Post
I found out that image sizes should have a width and height which are a power of two (2, 4, 8, 16, 32, 64, ...), not only a multiple of 8.
I didn't even notice that error in Zork's post. Yes, WoW also requires a power of 2.
  Reply With Quote
05/02/14, 04:17 AM   #16
Garkin
 
Garkin's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2014
Posts: 853
Originally Posted by klaro00 View Post
Yep, I can confirm that Paint.NET is capable of handling DDS files. I found out that image sizes should have a width and height which are a power of two (2, 4, 8, 16, 32, 64, ...), not only a multiple of 8. This constraint should only be nessacary if you save DDS files with a "mipmap" included, but it seems that even if I uncheck the mipmap option the images would not show unless the sizes are a power of two (don't know if this is only for ESO).

In Paint.NET, I use these settings when saving a DDS file (sorry, I just have the german option labels): "DXT5", Kompressortyp: "Range-Anpassung", Fehlermetrik: "Einheitlich", Keine MipMaps generieren.

HTH,
Klaro
This is what I use in Paint.NET:
__________________
@Garkin (retired from ESO)
My addons: SkyShards, LoreBooks, Dustman, Map Coordinates, No, thank you!, ... (full list)
  Reply With Quote
05/02/14, 01:03 PM   #17
Fathis Ules
Thief Guild Master
 
Fathis Ules's Avatar
Premium Member
AddOn Author - Click to view addons
Join Date: Apr 2014
Posts: 42
yup made all in Paint.NET same setup as Garkin, does the job very well
__________________
The only one bayesian antispam for The Elder Scrolls Online ^
  Reply With Quote
05/02/14, 03:38 PM   #18
mra4nii
AddOn Author - Click to view addons
Join Date: Apr 2014
Posts: 42
DXT5 works well in Paint.NET too. And AFAIK size of DDS you get in result is much smaller.
__________________
I'm not a LUA programmer, i'm just a good system engineer
  Reply With Quote
05/22/14, 08:44 AM   #19
static
Join Date: May 2014
Posts: 3
Question nvidia only?

I have an AMD/Raedeon setup. Will these instructions work on my system?
  Reply With Quote
05/22/14, 08:55 AM   #20
Halja
 
Halja's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2014
Posts: 116
Originally Posted by static View Post
I have an AMD/Raedeon setup. Will these instructions work on my system?
Yes if you have the one of the drawing applications listed above with the DDS plug-in. DirectDraw Surface DDS textures were developed/released* as a partnership between nVidia and Microsoft for DirectX graphics library originally. Raedeon cards are not excluded. All the game textures in ESO game your machine is running are DDS format.
-Halja
  Reply With Quote

ESOUI » Developer Discussions » Tutorials & Other Helpful Info » Working with DDS textures

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off