• Which the release of FS2020 we see an explosition of activity on the forun and of course we are very happy to see this. But having all questions about FS2020 in one forum becomes a bit messy. So therefore we would like to ask you all to use the following guidelines when posting your questions:

    • Tag FS2020 specific questions with the MSFS2020 tag.
    • Questions about making 3D assets can be posted in the 3D asset design forum. Either post them in the subforum of the modelling tool you use or in the general forum if they are general.
    • Questions about aircraft design can be posted in the Aircraft design forum
    • Questions about airport design can be posted in the FS2020 airport design forum. Once airport development tools have been updated for FS2020 you can post tool speciifc questions in the subforums of those tools as well of course.
    • Questions about terrain design can be posted in the FS2020 terrain design forum.
    • Questions about SimConnect can be posted in the SimConnect forum.

    Any other question that is not specific to an aspect of development or tool can be posted in the General chat forum.

    By following these guidelines we make sure that the forums remain easy to read for everybody and also that the right people can find your post to answer it.

FSX Automate DDS creation

  • Thread starter Thread starter Deleted member 1281
  • Start date Start date
D

Deleted member 1281

Guest
Hi,

How do you create your FSX dds texture files?

My personal process is as follows - and I am aware that there are about 100 different ways to do it:

I paint my texture using whichever paint program suits me best (I have got three), flatten the image, export as 24bit, export a separate file as alpha, then:

- use convimx to create a 32-bit bmp
- copy that into my FSX texture folder
- load into DxtBmp
- add the alpha, save and
- push through ImageTool

Done. But what a rigmarole!

Lately I have had occasion to explore the possibilities latent in DxTex (batch mode, automatic addition of alpha files) and that got me wondering whether the above steps could be automated to a certain extent.

I now have a little utility that allows me to work from a file browser. I can pick up to 9 texture files and drop them on a desktop link. The link triggers a program that:

- creates a flipped copy
- uses DxTex to create a dds dxt5 file in the tearget FSX directory, adding an alpha, if an alpha file is present, else creates a dds dxt1
- adds MIPs if so required

…all on its own. You can just sit back and watch the progress report roll by.

Is that something, I was wondering, that Devs round here would be interested in?
 
1. Export painted texture as 32bit .bmp from GIMP (w/ alpha)
2. Run Imagetool via batch file to convert painted bitmaps into suitable formats (.dds).
3. Copy to aircraft texture folder in FSX
4. ???
5. PROFIT
 
- Edit original PSD in photoshop and save,
- collaps all layers, flip vertically
- "save as" dds right from the menu (Nvidia ddstools),
- move new dds file to target location, done.

I should add I'm using speedcommander for all file work.
Two independend explorer windows, easy drag&drop, configurable folder favorites, ftp, zip and rar work, all in one. No, I'm not in anyway attached to the developers, it's just that I can't live without it anymore ever since I purchased the first version 10 years or so ago. Puts the silly Winders Explorer to shame.
 

Attachments

  • speedcommander.jpg
    speedcommander.jpg
    101.8 KB · Views: 1,039
Last edited:
I'll have to take a look at SpeedCommander. It's a right PITA to invoke two instances of Windows Explorer to accomplish the same task.

Back in the ancient days of DOS I used a freeware program that provided the same essential utility. It even worked across a network!

I've never had a need for "batch conversion" since I mainly work on new models and create one texture at a time anyway... ;)
 
Hi,

I think I can shorten your procedure by one step:

- use convimx to create a 32-bit bmp
- copy that into my FSX texture folder
- load into DxtBmp
- add the alpha, save and
- push through ImageTool

You can load the 24 bit BMP file directly into DXTBmp, add the alpha, and save. No need for convimx.

Hope this helps,
 
The commandline switches for Imagetool are quite powerful.

In addition, you dod not need to collapse layers in psd files to parse them through it.

DXTBMP will import alpha automatically from tga files, but not others. Doing it manually is quite tedious.

Take a look at the example here:

http://www.fsdeveloper.com/forum/showpost.php?p=153205&postcount=6

Look at the shortcut properties to see the CLI switches used.
 
These are all viable procedures and I understand one would tend to be reluctant to change a time-tested work flow.

But again, for me, everything that can be automated - flipping, selecting dds types, file formats, MIPs yes or no, copying files over to a specific target directory etc - I want automated, not least because I am prone to slipping up when doing such stuff manually.

Hcornea: yes, I am aware of the Imagetool batch mode, and I may have to add it to the auto-routine for the creation of bump maps. What ImageTool does not do is add alphas unless they are already there via tga or bmp888.

Tom: the reason I use convimx is because it saves the file directly to the target folder, and then when I add the alpha in DxtBmp I can hit plain Save (not save-as plus pick DDS format) to exit.

Mathias:
- Edit original PSD in photoshop and save,
- collaps all layers, flip vertically
- "save as" dds right from the menu (Nvidia ddstools),
- move new dds file to target location, done.
I should add I'm using speedcommander for all file work
.

I have colored the parts that my prog does automatically including moving the files.

Bjoern: I also used to use ImageTool via a batch file but find that this has to be edited frequently?

Thanks for the feedback guys.
 
Errm ...

1. Make psd file in Photoshop, including Alpha Channel (why do you need to make it separately?)
2. Save as psd (not flattened, save it as is)
3). Batch CLI the psd file through Imagetool + shortcut to move all dds files from "project" folder to Texture folder -- and yes Imagetool reads alpha channels form psd files.

That's really two steps if you consider creating and saving your file as a single step. If you need multiple layers to create your alpha, make a layer group on top and paste the combined result inot the alpha channel. The psd stays as your master source file.

I have no idea why you need to do anything else unless you are making a normal map, in which case you use x2Normals or the Nvidia plugin, switch the channels, and save as a dds after flipping)

(actually you can even configure Imagetool to do the channel switching for you)
 
Last edited:
I think I get your points, all of them. You can include the Alpha in the PSD directly, and you can push the PSD through Imagetool, and get your dds. As a matter of fact you can specify an output file path so that the dds is saved directly into the FSX target folder, perhaps this is what you mean by moving the files, or maybe it even cuts the process down further.

Short and elegant yes but consider: one, not everybody owns Photoshop; two, the flattening of a psd file when done by Imagetool is said to be not 100 percent reliable; three, psd files get huge very quickly gobbling up Gmax and max RAM (I think). So these might be reasons why users would want small, flattened intermediate files. Indeed if you look at Mathias's screenshot you will see that all (?) of his psd files are duplicated by tga's, presumably with alphas.

Be that as it may, taking your observations as suggestions, I have tweaked the utility so that one can now drop any file or set of files onto the desktop icon - if the files are of type psd or tga (both including alphas) then the dds is created using the Imagetool routine; if the file is a virtual cockpit texture then the result is dds dxt1, if it is a PSD-generated bump psd then the result is the proper bump dds. All without changing a single line or parameter in a batch file.

Needless to say I'd be happy to make this available for free. Provided there's any interest ... so far, I think it is fair to say, there is none. Such is life! :o
 
Why would one use imagetool if you can have dds conversion right from the horses mouth (Nvidia DDS Tools that is)?
It seems that imagetool offers the less good compression, judging from a comparision I was able to perform on another guy's repaint of our stuff.
He was stuck with ImageTool and didn't get the same dds quality as with our "stock" textures so he send me his sourcefile to run it through DDS Tool and voila, everything crisp as it's supposed to be.

On another note, mjahn, I totally overlooked your original point in offering your tool, oh my! I'm sure it will be of use to some, but I'm like Bill, working on one file at a time. Other than that, Photoshop actions come in handy, too.
 
Sure, can't please everybody ... an effect I am past master at, as you can see.

I also did a dds comparison test recently, comparing DxTex, ImageTool, DxtBmp, and PSD+NVidia. You can still see it here:

http://www.fsdeveloper.com/forum/showthread.php?t=106752

Interestingly, when readers were invited to compare the results no-one was able to tell which was which. There were differences but they were minuscule.

Just curious, what do you use all the tga's in your Bf108 folder for? Relieve the RAM load for Max?
 
Yes mjahn, the targa files are for use in max.
Just checked the Bf108 folders, on source file level (the temp textures that are used for render to texture) I have a total of 453 targa files for the VC.
Now imagine all those files as PSD called in a single render scene, no go. :-)
Bit more statistics: After rendering, those 453 base texture files (along with a three million high poli cage)) turned into 1504 texture files that were used to compose the 10 or so VC texture sheets on about 150.000 faces that you can see in the final FSX aircraft.:D;)
 
Last edited:
I use imagetool myself, launched from a shortcut to a bat file.
It makes a texture export a 2 step process....with no user inputs.
1) Save PSD
2) Click shortcut to process

Here's an example below...
I have others that are step-up a little different.
For some texture folders it's faster to re-process the entire folder...
...rather than try to identify the one texture that's been changed.


Code:
:: -------------------------------------------------------
:: Export Texture Batch File
:: BayTower
:: -------------------------------------------------------
::
:: This script runs  Microsoft’s imagetool.exe 
:: It will load a SOURCE-TEXTURE.PSD; generate a DDS; rename it to "exterior_T.dds"; and copy to FOLDER-PATH
:: Edit SOURCE-TEXTURE.PSD and FOLDER-PATH as req'd
:: 
:: Additional Flags (See FSX SDK for more info and flag options)
::    -nobeep --> optional
::    -nomip ---> optional mipMaps
::    -dxt5 --> req'd texture format
::    -dds --> req'd file format
::    -nodither --> optional
::
:: Place extTextExprt.bat in a folder with ImageTool.exe and SOURCE-TEXTURE.PSD
:: Create desktop shortcut to launch extTextExprt.bat
::     right-click and drag extTextExprt.bat to desktop
::     release and select "Create Shortcut Here"
:: Double-click shortcut to LAUNCH
::
:: Command (Edit SOURCE-TEXTURE.PSD and FOLDER-PATH as req'd)
::
:: imagetool -nobeep -nomip -dxt5 -dds -nodither SOURCE-TEXTURE.PSD
:: copy SOURCE-TEXTURE.DDS "FOLDER-PATH\exterior_T.dds"
::
:: '::' = comment (Add and remove '::' to activate specifc sections of script below
::
:: -------------------------------------------------------


:: ::EXTERIOR DIFFUSE MAPS

:: ::Taildragger with Sliding Canopy (uncomment command below to activate)
imagetool -nobeep -nomip -dxt5 -dds -nodither exterior_source.psd
copy exterior_source.dds "C:\Program Files\Microsoft Games\Microsoft Flight Simulator X\SimObjects\Airplanes\Vans_RV7\texture.paint_7sldr_01\exterior_T.dds"

:: ::Taildragger with Tipup Canopy (uncomment command below to activate)
:: imagetool -nobeep -nomip -dxt5 -dds -nodither exterior_source.psd
:: copy exterior_source.dds "C:\Program Files\Microsoft Games\Microsoft Flight Simulator X\SimObjects\Airplanes\Vans_RV7\texture.RV7tip_01\exterior_T.dds"

:: ::Tricycle with Sliding Canopy (uncomment command below to activate)
:: imagetool -nobeep -nomip -dxt5 -dds -nodither exterior_source.psd
:: copy exterior_source.dds "C:\Program Files\Microsoft Games\Microsoft Flight Simulator X\SimObjects\Airplanes\Vans_RV7A\texture.RV7Asldr_01\exterior_T.dds"

:: ::Tricycle with Tipup Canopy (uncomment command below to activate)
:: imagetool -nobeep -nomip -dxt5 -dds -nodither exterior_source.psd
:: copy exterior_source.dds "C:\Program Files\Microsoft Games\Microsoft Flight Simulator X\SimObjects\Airplanes\Vans_RV7A\texture.RV7Atip_01\exterior_T.dds"


:: Comment out 'pause' to close Cmnd Window automatically
pause
 
Last edited:
You can also replace "SOURCE-TEXTURE.PSD" with %1 and parse any file (drag/drop)
 
Or indeed %1 %2 %3 etc to drop several source files.

Edit: As one might not want to clutter one's source folder with useless dds's one could also move files as in:

move /y *.dds target_folder

I didn't know about that "::" convention - neat way to replace @echo off etc.

@Mathias - wish I could pick your brain on all that rendering and texture baking stuff. Is it all self-taught or could you recommend any good tutorial?
 
Last edited by a moderator:
Hey guys,

Can you please explain step by step, I didn't understand well. For Exemple I have 60 tiles of the ground with including seasonal textures, and each tile has an alpha channel and I wanna convert them all to DDS DXT1 using batch mode of ImageTool:
MrSdgt.jpg

Where to write this entry? -dxt5 -mips -dds. on cmd or what?

Please help me by explaining step by step.
Dayou.
 
Back
Top