• Welcome to SC4 Devotion Forum Archives.

Multi Fsh Tool

Started by null45, May 02, 2010, 08:48:39 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

null45

This is a tool that I wrote to create multi-image textures.
It can also add images to a fsh file in an existing dat.



If no image exists clicking the "Add" button or dragging and dropping a group of images onto it will create a new image adding all the selected bitmaps.

If the file name begins with 0x it will use the file name as the Instance.

If a dat has been loaded and the image to modify has been selected from the list additional images may then be added to the fsh using the "Add" button.
The "Generate new Instances" option generates new instance id when saving into an existing dat, if it is not checked it will overwrite the existing files.

Additional documentation is in the Readme.

Download: Multi Fsh Tool

Diggis

Null, this looks like a great too.  Could I suggest you look at maybe allowing it to assign the IID based on a text file similar to the SC4tool?

null45

It already has that ability using a file named "instRange.txt" in the same directory as the program.

A bug in the Instance range loading fixed and "instRange.txt" has been added to the zip.

File version updated to 1.2.2.7.   :thumbsup:

Diggis

Wicked!  :thumbsup:  I'll take a look at this soon.

On another note, does this have the ability to read the Alpha straight out of the PNG?  or do you still need an alpha png?  And can it still read an alpha png as well?

null45

It would use the alpha from the png if the Alpha text box is empty and it has not found a file named like "filename_a.png" in the same directory as the image.

If the image is not a 32-bit png then the alpha map should use the "filename_a.png" format.  ;)

wes.janson

I'm in the process of recompiling a SAM set I have done and man.. this tool makes things SOOO much easier.

The time alone has been cut easily more than half.

Thanks Null45!  &apls


Henrik Sedin: 82gp 29g 83a 112p - 2009/2010 Art Ross/Hart Trophy winner!

null45

Fixed a bug in the generation of Mipmaps on Windows 7, File version updated to 1.2.2.8. :thumbsup:

null45

The "Save dat" function will now save Fshwrite compressed files correctly.
A bug with the "Load dat" listing images smaller then 128x128 fixed.

File version updated to 1.2.2.9;)

null45

Mipmap scaling quality improved, File version updated to 1.3.0.0  :)

vortext

sorry for the bump. The tool works fine but when using a multi-fsh in the PIMx it cannot be applied to the lot and instead the program gives the following message:

Traceback (most recent call last):
  File "wx\_misc.pyo", line 1342, in Notify
  File "BalloonTip.pyo", line 636, in NotifyTimer
  File "SC4LETools.pyo", line 368, in OnBalloonPopup
  File "Image.pyo", line 517, in tostring
SystemError: tile cannot extend outside image

My best guess is it has to do with the interface, since the PIM usually displays all textures within a multi-fsh. I already found a simple work-around (using a single fsh texture with the same instance) so it's not a huge problem but still wanted to let you know.   
time flies like a bird
fruit flies like a banana

null45

This issue would probably belong in the PIMx support thread, both The Reader and FiSHMan have no problem reading the fsh files so I have no idea what the problem could be.  &mmm

vortext

yeah, after posting I realised your program might have nothing to do with it, posted the issue in the PIMx thread. By the way, your tools are among the finest out there, I use them all the time, thank you so much  :thumbsup:
time flies like a bird
fruit flies like a banana

Lowkee33

Hi Null45.  Just learned about this one, thanks for the great tool!

I am confused about how to enter the Texture range.  All I see in the readme is that it is the same as SC4Tool, and I don't know how to do it for that either.

null45

Quote from: Lowkee33 on July 29, 2011, 07:08:55 PM
Hi Null45.  Just learned about this one, thanks for the great tool!

I am confused about how to enter the Texture range.  All I see in the readme is that it is the same as SC4Tool, and I don't know how to do it for that either.

Quote from: geoffhaw on August 20, 2007, 02:43:48 PM
If you want to make SC4Tool automatically allocate IIDs from your personal range, do the following:

Create a txt file and save it as Range.txt and put it into the System folder of SC4Tools.  Say your range is 0xB2C80000 to 0xB2CFFFFF, it would need to be the following:

0xb2c80000,0xb2cfffff

After that, every time you open the Texture Creator part of SC4Tools, it will only allocate IIDs from your range. I would advise everyone to keep a list of which IIDs you have used, as it will be very useful after a while.

The same instructions apply to this tool except the file is named "instRange.txt":thumbsup:

Lowkee33


null45

#15
The fsh files are now loaded using my own code, this is faster than FSHLib and allows the DXT1 alpha to be loaded correctly.
Additionally the instance ids that end with 0, 5 or A and are larger than 64x64 are now displayed when a dat is loaded.

The dat loading progress is now shown in the Windows 7 taskbar, and JumpList support added for the recently loaded dat files.

The .NET Framework 3.5 Client profile is required for Window Vista and XP.

File version updated to 1.3.0.2;)


null45

A regression in the dat saving fixed, File version updated to 1.3.0.3.  :)

vortext

 ()what() Is it necesarry to reinstall?
time flies like a bird
fruit flies like a banana

null45

#18
You could just replace FshDatIO.dll, and Multifshview.exe, but it is probably easier to just overwrite the whole folder.
I am kind of surprised the fact that compression directories and new files added to the dat were never being saved was not caught during testing of the last version.  ::)

null45

A resize bug with images that are not 128x128 or larger fixed, file version updated to 1.3.0.4.