Jump to content
The Dark Mod Forums

DDS Texture discussion


OrbWeaver

Recommended Posts

Are they not expanded into the same thing once in virtual memory, thus making realtime handling of them the same? Anyone know for sure?

 

DDS is not expanded, it's a format that is recognized by the video card and handled natively. Which is another very good reason to use them. As I mentioned above RLE compressed TGA's are not recognized, and are expanded at load time.

Link to comment
Share on other sites

No shit? Well that would make all the difference then, awesome.

 

Yup! :) That's why I've been very keen on using them...sure, you lose a bit of quality...and there are a few cards that won't like them, but overall you're winning on both ends. Then there are the mip maps. With a 1024 x 1024 TGA, that texture is going to be the same size...from any distance, with DDS...depending on how far away you are from it...it will scale from 1024 x 1024 all the way down to 1 x 1, since dds files store all the varying sizes in the file. So, that 1.3 megs of a dds file is not really the 1024 image...it's all the smaller versions of it too. DDS gives you BANG for your BUCK.

Link to comment
Share on other sites

So we may see no game performance change at all, and I wouldn't be suprised if loading slowed down. Remember how much longer it took to load a TDS map with everything packed as opposed to after extracting everything?

All I remember is, on my system, level load times were affected greatly -

 

Loading time for a map in vanilla TDS ~8 seconds.

Loading time for a map with all of John P's high-res textures installed - ~40 seconds.

 

No offence to John, but I ditched the textures in favour of the loading time...

Link to comment
Share on other sites

No shit? Well that would make all the difference then, awesome.

 

Indeed -- further more, the TGA textures have to be compressed to DDS and mipmaps generated at load time (if you have these options enabled), which mean loading a TGA can be considerably slower than loading the equivalent DDS. That is why Doom 3 has the precompressed DDS folder in the first place.

Link to comment
Share on other sites

  • 3 weeks later...

So where are we on this? This seems to have dried up. Anyone test the textures in this discussion and find they do still have a problem? So far it seemed to work with my GF6 series, but as we know, the GF4 series didn't. Is this too big a move to risk, or is there a change coming?

Link to comment
Share on other sites

So where are we on this? This seems to have dried up. Anyone test the textures in this discussion and find they do still have a problem? So far it seemed to work with my GF6 series, but as we know, the GF4 series didn't. Is this too big a move to risk, or is there a change coming?

 

I think I'll be taking over textures for now. I'm going to start doing some serious tests on this. I'm looking into all the appropriate doomconfig settings that could cause issues as well. When using dds, we should also have image_ignorehighquality set to 1. This ensures that only dds textures are used. :)

 

I'll update this thread with results shortly.

Link to comment
Share on other sites

  • 3 weeks later...

Any updates on this?

 

Also, has it been determined definitively whether DarkRadiant can/can't use DDS, or simply chooses to use available TGAs first? I just discovered that the brick_005 texture was yet again using the (wrong) inverted normalmap again by default, because while DoomEd showed the inverted version, DarkRadiant showed the true version. Reason? DR ignored the DDS.

Link to comment
Share on other sites

Any updates on this?

 

Also, has it been determined definitively whether DarkRadiant can/can't use DDS, or simply chooses to use available TGAs first? I just discovered that the brick_005 texture was yet again using the (wrong) inverted normalmap again by default, because while DoomEd showed the inverted version, DarkRadiant showed the true version. Reason? DR ignored the DDS.

 

I'm going to run tests with DR and Dark Mod before I make any moves. If all checks out, I'll replace the textures with DDS folder by folder. I'll have to finish up some ads for work and then reformat before I start on it. Give me another week.

Link to comment
Share on other sites

Okay, then either I'll wait on any further submissions (if I have any by that time), or I'll just put them up assuming no change, and when the change comes... it'll all change. ;)

 

Just wondered if maybe Orb or greebo had an idea of the support or lack thereof to save us the trouble.

Link to comment
Share on other sites

DarkRadiant can load DDS (but not the RxGB ones, they seem to be proprietary), and mimics the same behaviour as Doom3 does: dds/-Folders are searched first, "real" folders have priority over PK4-folders, texture extensions (.tga/.dds) in the material file are ignored.

Link to comment
Share on other sites

Hm. We had/have RxGB then I guess? I remember this mentioned, but don't know if that was planned, some, or all. Either DR was doing the search in the opposite direction, or it couldn't read the file at all, so it went to the TGA. Something to consider in the possible switch. I didn't know this was happening for as long as this, because my old vid card couldn't use DDS anyway, so even DoomEd ignored the inverted normalmap (while everyone else had the inverted one presented as the correct one).

Link to comment
Share on other sites

It used to be that DarkRadiant would only look for the TGA and display a blank image if it was not found, I then fixed it so it would fall back to DDS in this case. I am not entirely sure that it will load the DDS before the TGA however, I think this will depend on which image loader module it encounters first.

 

RXGB is not supported currently, although I am not sure what happens when it finds the DDS but cannot load it.

Link to comment
Share on other sites

  • 2 months later...

Now that DarkRadiant can read RxGB textures, may I suggest that we move on and compress the repository using the DDS format?

 

The question remains what should happen with the "source" TGAs, should we move them into a separate repository? The hi-res repository is for PSD files and TGAs that are larger than 1024x1024 only, right?

Link to comment
Share on other sites

The question remains what should happen with the "source" TGAs, should we move them into a separate repository? The hi-res repository is for PSD files and TGAs that are larger than 1024x1024 only, right?

 

Yes and no. :) That used to be the case when we were using TGA only, but now that we're going to switch to DDS...the physical dimensions are not a concern.

 

Hi-res repository is for all TGA's regardless of size. DDS textures can and should be the same physical dimensions as the TGA. We don't want to be downsizing a texture to 512 or 256 and then compressing it with dds as it will look horrid.

 

Mainly the hi-res repository is for all uncompressed files, the main mod is for compressed.

 

I'll update the texture guidelines to further clarify.

Link to comment
Share on other sites

No hurry, we won't start with that until we've merged back the texture reorg branch into the trunk, so we still have a bit of time left. But the sooner we know what we want to do the better.

Link to comment
Share on other sites

After the texture reorg is done, I think we should do the following:

 

1. Cull uneeded textures (bad textures, duplicated normalmaps, flat speculars, etc)

 

2. Convert to .dds (btw, I read something about 'high' graphics setting using dds for everything but the normalmap, which is still .tga...does that mean we'd be restricted to 'medium' settings??)

 

3. Start adding textures to the mostly-empty folders (metal, carpet, etc).

Link to comment
Share on other sites

I could see a normal map ingame where only the dds version and no tga version was present. I have the following settings:

 

seta image_usePrecompressedTextures "1"

seta image_useNormalCompression "2"

seta image_useAllFormats "1"

seta image_useCompression "1"

Link to comment
Share on other sites

After the texture reorg is done, I think we should do the following:

 

1. Cull uneeded textures (bad textures, duplicated normalmaps, flat speculars, etc)

 

2. Convert to .dds (btw, I read something about 'high' graphics setting using dds for everything but the normalmap, which is still .tga...does that mean we'd be restricted to 'medium' settings??)

 

3. Start adding textures to the mostly-empty folders (metal, carpet, etc).

 

With iD's special compression, used for normal maps, we'll be using normals for everything. I believe that we can actually change the default settings for low, medium, high and ultra, so that high would still use DDS. It's just a matter of the config settings.

Link to comment
Share on other sites

With iD's special compression, used for normal maps, we'll be using normals for everything. I believe that we can actually change the default settings for low, medium, high and ultra, so that high would still use DDS. It's just a matter of the config settings.

 

We can just make our own settings. The low, medium, high, ultra settings only set a few cvars, so this would not be sifficult. For one thing, we want to be able to specify how much video ram we have, as apparently D3 detects this incorrectly, especially for the newer cards, which means you'd be using the HDD pagefile, which is much slower. There are other settings, I wrote a lot of them in the "tweaking tdm" thread a while ago.

Link to comment
Share on other sites

Ok, I need someone to confirm or deny this for me, before I go insane:

 

I converted this diffusemap textures/darkmod/door/metal/large_warehouse_old_green01 into the DDS format and moved it into the corresponding dds/ folder, and removed the TGA. Works fine (I had to create a shader, as it was missing, but this is irrelevant here).

 

Now if I move that DDS texture file one folder deeper, let's say to textures/darkmod/door/metal/bars/large_warehouse_old_green01, Doom 3 won't load it anymore (says "Couldn't load image: blah").

 

This does not happen if I move a TGA file one folder deeper.

 

I can't believe (yet) that the Doom 3 dds lookup has such a major folder depth bug, so please can somebody run a similar test with this texture?

 

(In case you wonder why I checked this: I ran into problems while converting the darkmod/wood/ornate/ stuff into DDS, and Doom3 won't load any of them from the dds/ tree).

Link to comment
Share on other sites

I checked in the meantime if the string-length is the limiting factor, but it is not (I renamed the dds texture to l.dds), but it can't be found as soon as it is >= 5 levels deep in the dds/ structure.

 

The DDS itself is perfectly valid, because it works in the parent folder. I double-checked the shader definitions if I did get anything wrong, but no luck yet.

 

I also searched the SDK code for anything related to this, but the declaration manager is not included in the SDK.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recent Status Updates

    • OrbWeaver

      Does anyone actually use the Normalise button in the Surface inspector? Even after looking at the code I'm not quite sure what it's for.
      · 3 replies
    • Ansome

      Turns out my 15th anniversary mission idea has already been done once or twice before! I've been beaten to the punch once again, but I suppose that's to be expected when there's over 170 FMs out there, eh? I'm not complaining though, I love learning new tricks and taking inspiration from past FMs. Best of luck on your own fan missions!
      · 4 replies
    • The Black Arrow

      I wanna play Doom 3, but fhDoom has much better features than dhewm3, yet fhDoom is old, outdated and probably not supported. Damn!
      Makes me think that TDM engine for Doom 3 itself would actually be perfect.
      · 6 replies
    • Petike the Taffer

      Maybe a bit of advice ? In the FM series I'm preparing, the two main characters have the given names Toby and Agnes (it's the protagonist and deuteragonist, respectively), I've been toying with the idea of giving them family names as well, since many of the FM series have named protagonists who have surnames. Toby's from a family who were usually farriers, though he eventually wound up working as a cobbler (this serves as a daylight "front" for his night time thieving). Would it make sense if the man's popularly accepted family name was Farrier ? It's an existing, though less common English surname, and it directly refers to the profession practiced by his relatives. Your suggestions ?
      · 9 replies
    • nbohr1more

      Looks like the "Reverse April Fools" releases were too well hidden. Darkfate still hasn't acknowledge all the new releases. Did you play any of the new April Fools missions?
      · 5 replies
×
×
  • Create New...