A Community discussion forum for Halo Custom Edition, Halo 2 Vista, Portal and Halo Machinima

Home  Search Register  Login Member ListRecent Posts
  
 
»Forums Index »Halo Custom Edition (Bungie/Gearbox) »Halo CE General Discussion »Fudd Shader Tool and JMS+

Author Topic: Fudd Shader Tool and JMS+ (13 messages, Page 1 of 1)
Moderators: Dennis

DeadHamster
Joined: Jun 8, 2014


Posted: May 5, 2017 04:36 PM    Msg. 1 of 13       


Fudd has been updated to version 1.2

Download Link


With this update JMS+ has been replaced by xHMP, a new maxscript exporter that does NOT export JMS files, only the HMP material format.

This format is used by Fudd to compile shaders. Fudd can only compile two shader tag classes; Shader Environment tags and Shader Model tags. Both tag classes are in the OSV4 format. You should select one of the classes before startup to choose a default, and then you can manually reassign each shader once they've been loaded.

xHMP and Fudd 1.2 also has support for exporting and compiling detail maps, normal maps and to a lesser extent cubemaps. One user-selected cubemap is used for all shaders being exported, and individual changes must be updated manually in guerilla later.

The maxscript plugin is designed in 3ds Max 2010, and you may experience issues if working with newer or older versions of the software.



The 1.2 version has a secret easter egg. Kudos to whoever can find and enjoy it.



Edit: Patch 1.1 for xHMP has an enhanced UI, loading and exporting should both be quicker now. The enhanced UI displays all the materials and bitmaps loaded, allowing a user to verify any errors in their setup prior to exporting.

Patch 1.1 also has two bugfixes. The first corrects shader symbols for double sided surfaces ( % ), which would cause a crash. The second corrects handling of textures without diffuse maps, which would cause an incorrect number of materials to be passed on to the .HMP file, causing Fudd to experience a permanent loop hangup. xHMP currently ignores exporting any materials which do not have diffuse maps. A future update may look into a fix, but this would need to be packaged with a Fudd update as well.




xHMP 1.1 Patch

Replace the existing file with this. Fudd does not require an update for this patch.



Edited by DeadHamster on Feb 26, 2018 at 02:26 PM


Super Flanker
Joined: Oct 5, 2012

The length of your life depends on my aim.


Posted: May 5, 2017 08:01 PM    Msg. 2 of 13       
Woah!

This literally came out of nowhere. Thanks a billion fam!


cippozzo
Joined: May 7, 2013

"I... I am a monument to all your sins."


Posted: May 6, 2017 08:09 AM    Msg. 3 of 13       
Is there a jms exporter for blender?


Super Flanker
Joined: Oct 5, 2012

The length of your life depends on my aim.


Posted: May 6, 2017 08:46 PM    Msg. 4 of 13       
Quote: --- Original message by: cippozzo
Is there a jms exporter for blender?



@Fulsam


Fulsam
Joined: May 11, 2008

Importing Didney.wrl...


Posted: May 6, 2017 09:03 PM    Msg. 5 of 13       
Quote: --- Original message by: Super Flanker
Quote: --- Original message by: cippozzo
Is there a jms exporter for blender?



@Fulsam


As of now, for this particular tool, no. I will look into porting it ASAP, though (If the OP's cool with it).


DeadHamster
Joined: Jun 8, 2014


Posted: May 6, 2017 09:30 PM    Msg. 6 of 13       
Quote: --- Original message by: Fulsam
Quote: --- Original message by: Super Flanker
Quote: --- Original message by: cippozzo
Is there a jms exporter for blender?



@Fulsam


As of now, for this particular tool, no. I will look into porting it ASAP, though (If the OP's cool with it).


.HMP format is very simple;

(shadercount)|(shader name)|(bitmap name)|(shader name)|(bitmap name)|...etc


Those are vertical lines for seperators


Nickster5000
Joined: Dec 11, 2010


Posted: May 9, 2017 02:15 PM    Msg. 7 of 13       
👌👌👌

This is great. I will definitely take a look at this, it will be very useful!


DeadHamster
Joined: Jun 8, 2014


Posted: May 9, 2017 06:20 PM    Msg. 8 of 13       
Quote: --- Original message by: Nickster5000
👌👌👌

This is great. I will definitely take a look at this, it will be very useful!



Well, if you do use it, use version 1.1 that I just updated the OP with. It properly supports non-recursive compositetexturemaps, and also compiles detail maps and bumpmaps to the .shader_environment if they're available in the 3DS Material.








Edit:
With the update, the .HMP format has changed;


Shader_Count|Shader_Name|DiffuseTexture:DetailTexture{BumpTexture|Shader_Name|etc...


So, a shader will always be followed by a |, after which is always the diffuse map. Then, if next character is a : we know to add a detail map, if it's a { we add a bumpmap. If there is a detail, we have to check for a bumpmap again after. Bumpmaps will never be written before detail maps.

If at any point we hit another |, we know to go to the next shader.





Edited by DeadHamster on May 9, 2017 at 06:26 PM


Super Flanker
Joined: Oct 5, 2012

The length of your life depends on my aim.


Posted: May 10, 2017 07:30 AM    Msg. 9 of 13       
Bump for good stuff in the future.


sparky
Joined: Jun 27, 2009

Fools deceive, but knowledge of Jesus is life.


Posted: May 10, 2017 06:39 PM    Msg. 10 of 13       
I like that you recognized a need and worked to aid it. Are you doing this in RealBasic?


DeadHamster
Joined: Jun 8, 2014


Posted: May 10, 2017 08:00 PM    Msg. 11 of 13       
Quote: --- Original message by: sparky
I like that you recognized a need and worked to aid it. Are you doing this in RealBasic?


The Mombasa BSPs have 70+ shaders each, the newest one from H3ODST had 90 materials in 3DS max. Manually referencing the bitmaps to 90 different shaders is a nightmare.


I have other similar apps, all of them are fairly minor and wee made to automate tedious tasks. one of them renames tags inside a mapfile by adding a directory before them. So by selecting HAMP!, weapons\pistol\pistol becomes HAMP!\weapons\pistol\pistol

And when I extract, HAMP! will be the folder with all the tags in it. That way if you're ripping content from tons of maps, you'll be able to keep it better organized without cluttering up the main TAGS folder with VKMT, CMT, ZTEAM, HALO3, H3, HALO 3, etc.






Fudd and nearly all my desktop applications are all coded in RealBasic. It's the only language I truly know well, it allows me to compile to PCs or Mac or even Linux with the same set of code, and I can design my GUI inside the editor's GUI; I drag and drop a dropdown box onto the program window, and then resize it just like Layers in Photoshop.

JMS+ is, of course, Maxscript.





Edit:




Haven't started testing yet but the base code should support adding a default cubemap that will be used across all shaders, and also support writing to a shader_model format instead of only shader_enivornment.

If you select either shader type before loading the .HMP, all the materials will default to that shadertype. They can then be manually set later on and the app will determine which type to create during compilation.
Edited by DeadHamster on May 17, 2017 at 04:19 AM


Bungie LLC
Joined: Dec 29, 2013

friendly neighborhood contrarian funposter


Posted: Oct 18, 2017 04:01 PM    Msg. 12 of 13       
troubleshooting bump here: can't seem to get things working right

i've downloaded the original version of Fudd as well as the update. i've noticed that whatever build of JMS+ that you showcased in your update is not actually included, as i don't have the option to only export a Fudd material

i'm running Max 2017 x64. after making sure that all materials in my scene (even trivial things like portal and fog plane materials) have a diffuse map as per the instructions, i still seem to fail at being able to properly export a Fudd material, as i am never prompted with a dialogue to save anything other than the exported JMS, which seems to export just fine

any help or insight on how to resolve my issue would be appreciated. this tool would save me loads of time dealing with assets extracted with Adjutant if i could get it working properly


DeadHamster
Joined: Jun 8, 2014


Posted: Jan 23, 2018 07:18 PM    Msg. 13 of 13       
Updated Fudd to version 1.2, which includes the new xHMP maxscript plugin along with the Fudd version 1.2 shader compiler.

 

 
Previous Older Thread    Next newer Thread







Time: Fri September 21, 2018 12:51 PM 266 ms.
A Halo Maps Website