Page 1 of 2

Help with Bitmaps, Shaders, Environments

Posted: Wed May 26, 2004 2:02 pm
by Lima14
:?

I hope some experts can help me out...

Does anyone have a clear and consice explination on how to get your own bitmaps or the ones that come with HaloCE into a map and working properly without any 'please choose shader etc....' messages when 'tooling'...

And the directory structure setups in your source area (*.jms & *.map)and the 'tool.exe' processed file areas.

(As in step by step instructions for us HaloCE N00bs).

For Example basic steps to take (correct me if I'm wrong)...

Your source Stuff

C:\Program Files\Microsoft Games\Halo Custom Edition\data\levels\my_dir\my_map
|
+----- \bitmaps (your source *.tif files)
|
+----- \models (your *.map & *.jms files)
|
+----- \scenery (not too sure what goes here)

Target directories are:

C:\Program Files\Microsoft Games\Halo Custom Edition\tags\levels\my_dir\my_map
|
+--- \bitmaps (mapname_ground.bitmap) etc....
|
+--- \shaders (mapname_ground.shader_environment) etc.. do you have to have a *.shader_something for every bitmap youre using in your map? if so, does the tool.exe bitmaps take care of everything and create the necessary *.shader_something files?
|
|
+-- mapname.bitmap
mapname.scenario,
mapname.scenario_structure_bsp




Step 1 - Compile in your bitmaps

tool.exe bitmaps levels\my_dir\my_map\bitmaps

Step 2 - Create the map structure ?

tool.exe structure levels\my_dir\my_map bsp_name

Sometimes you get a warning about material # or bitmap # not being defined or something.. and asking you to choose what type of shader will be used (1 - 6 options?).

if I select say option 1 which I think is shader.environment and then re-run the tool.exe structure ..... it seems to create a file under

"C:\Program Files\Microsoft Games\Halo Custom Edition\tags\levels\my_dir with a name_bitmap.shader_environment" file, or something like that...

Where does this file go? Shouldnt tool.exe have put this shader in the right place? I'm assuming it goes in the:

C:\Program Files\Microsoft Games\Halo Custom Edition\tags\levels\my_dir_\my_map\shaders

** I'd like to know what are the rules in creating bitmaps in 3DS Max, naming rules etc.... This might be where I'm going wrong... It would help me if tool.exe would stop asking me what shaders are going to be used cos it cant figure out what's what (even though I ran the tool.exe bitmaps).

How do you get more than 2 bitmaps on a map without tool.exe complaining one wasy or another, just create a multi/subobject and fill it lots of #materials ? (being whatever custom bitmaps im using).

So after you've fought your way through getting the bitmaps working ok after compiling the level structure without tool.exe bitching.

The next step would be to run up guerilla open your my_level.scenario file and add in a SKY tag, multiplayer type and referencing on of the HaloCE *.sky files.

The next step would be to run up sapien, open your my_level.scenario, get into the sapien command prompt, and execute radiosity_quality 0 followed by a radiosity_start and when you get to the 0.0000 0.0000 0.0000 do a radiosity_save and then start going into your sapien hierachry menus and start placing objets (building your level).

Once you're happy with everything, save the scenario file and run:-

tool.exe build-cache-file levels\my_dir\my_map\scenario_name ???

This then compiles a working map file which you can then test under MP HaloCE.

Thats about it in a nutshell.. although there are many more steps... which would take all night to go into...

My main gripe is getting any bitmaps applied successfully without Tool.exe complaining no shaders have been defined....

So any help would be gratefully recieved as I've got a load of maps in my head.. waiting to be played...
________________________________________________

Kind Regards
.[bp].Lima14
Image

Posted: Wed May 26, 2004 3:07 pm
by The Ghost
You're pretty much right on the money... except for a few things.
Your source Stuff

C:\Program Files\Microsoft Games\Halo Custom Edition\data\levels\my_dir\my_map
|
+----- \bitmaps (your source *.tif files)
|
+----- \models (your *.map & *.jms files)
|
+----- \scenery (not too sure what goes here)
The "models" folder will contain your .jms and your .max if you choose to. You won't have a .map file in here. Also, there is no "scenery" folder.
Sometimes you get a warning about material # or bitmap # not being defined or something.. and asking you to choose what type of shader will be used (1 - 6 options?).
You only get this warning if you have no shaders in your shader folder. Once you build your .bitmaps by using the tool command you mentioned, go into Guerilla and click on "New" and choose a shader_environment tag. With this tag you are creating your shader. You can customize this shader_environment tag any way you want. I usually click on "Simple Permiations" (sp?) and my material of choice is usually dirt, although this is where you chose what material you want for the certain material you have. For instance, if you have a Blood Gulch cliff rock you would select "stone."

Then you go down to the base map and you click the three dots next to it to navigate to your .bitmaps that you created with tool. This is your base map. You don't have to do much with the shader tags. Just close and save the tag. Save it in your "shaders" folder. Now you have to do this for ever material you added to your map. I have 3 -- grass, dirt, and cliff -- so I have 3 shaders.

**Important: You MUST make sure that your shader_environment tag name matches the one you gave it in 3ds max or else tool will not recognize which material to match it up with in the exported .jms file whem compiling.

Everything else you mentioned is correct.

If you follow everything above then tool.exe will execute the "structure" command of the .jms file without asking you anything and it will simply put your .scenario and bsp tags into the levels\test folder. Then you do everything else that you already mentioned.

Just ask me if you didn't understand anything here. I know how to do it so I may have skipped writing down something that I don't think about when I do it. I'm not even at my Halo computer and I have none of the HEK stuff open, so sorry if I missed something. Just ask if you have any questions!

Posted: Wed May 26, 2004 3:57 pm
by Lima14
The Ghost wrote:
You only get this warning if you have no shaders in your shader folder. Once you build your .bitmaps by using the tool command you mentioned, go into Guerilla and click on "New" and choose a shader_environment tag. With this tag you are creating your shader. You can customize this shader_environment tag any way you want. I usually click on "Simple Permiations" (sp?) and my material of choice is usually dirt, although this is where you chose what material you want for the certain material you have. For instance, if you have a Blood Gulch cliff rock you would select "stone."

Then you go down to the base map and you click the three dots next to it to navigate to your .bitmaps that you created with tool. This is your base map. You don't have to do much with the shader tags. Just close and save the tag. Save it in your "shaders" folder. Now you have to do this for ever material you added to your map. I have 3 -- grass, dirt, and cliff -- so I have 3 shaders.
So if i have say some new bitmaps for rock walls, ground and say a building. I have to run up Guerilla 3 times and define a shader for rock_walls, ground & building??

So under "diffuse properties" i just keep selecting base map and pointing it at the appropriate bitmap_filename.bitmap file? for each seperate bitmap i want used in my map?

I dont need to make any selections under secondary.detail or micro.detail do I??

so in theory I would end up with:-

mapname_ground.shader_environment
mapname_rock_walls.shader_environment
mapname_building.shader_environment

And just figuring out the file relationships as an example on one of the files:- (ignoring the directory structure for now - cos I know its under the tags\levels directrory)

mapname_ground.shader_environment --> mapname_ground.bitmap --> <physical bitmap file>mapname_ground.tif

The Ghost wrote:
**Important: You MUST make sure that your shader_environment tag name matches the one you gave it in 3ds max or else tool will not recognize which material to match it up with in the exported .jms file whem compiling.
With regards to 3Dmax bitmap naming... as an example I have the following:-

(1) Bitmaps files called mojo_ground.tif, mojo_cliffs.tif, mojo_building
(2) In the materials, setup the usual material entries - under sub/materials???, Each #material [m] is referencing those bitmaps and in turn each #material is then renamed to mojo_ground, mojo_building & mojo_cliffs and once you navigate back up the material heirachy the top (material) entry is called mojo_map_materials.

So that way there is a material entry relationship with the physical file so tool.exe can get it's bitmaps correctly?

Cheers Ghost.. your feedback is really appreciated... at least one of my office walls is looking kinda better from all the head banging!! (in fustration)... :lol: :lol:

Thanks for the assist.....

Posted: Wed May 26, 2004 5:55 pm
by The Ghost
Ahhh.. I am finally at my comp.

All right.

Image

In the first picture we see the material editor. The names circled in blue have to be the exact names of the .shader_environment tags. So for instance, the sub-material entitled infcliff would have a name of infcliff.shader_environment. This is what they all look like in my shader's folder:

Image

The only reason there are only three there is because I have not made the bridge.shader_environment tag. And the sky obviously doesn't need one because it has its own special property which you add in Guerilla to the .scenario tag.

To create this shader tag I will open up Guerilla, click New, and scroll to the shader_environment. For the purposes of this tag I will click "Simple Parameterizations" and select a material type Metal (thick). Then I scroll down to the difuse properties and select my base map as the .bitmap entitled "bridge.bitmap."

Image

I click open and then I am done. I save the tag as "bridge.shader_environment" in my shaders folder in tags\levels\<usermap>\shaders folder.

Now I can successfully run the "structure" command for tool without any errors assuming there are no errors in my level geometry.

Again, any questions, feel free to ask. Thanks.

Posted: Wed May 26, 2004 6:02 pm
by Italian_IcE
wait there has to be a skybox in 3ds max?

Posted: Wed May 26, 2004 6:23 pm
by The Ghost
The +sky material name let's it know to make that material transparent and let the sky show through when you compile it with tool and add a sky with Guerilla.

Posted: Wed May 26, 2004 6:25 pm
by silencer88
have you looked at any tutuorial at all...

the sky box is your level. its a box and it has to be totally enclosed on the inside...

Posted: Thu May 27, 2004 10:11 am
by Lima14
:D :D :D :D

Excellent - your screenies confirm what i went through.... and also your explinations...

Now I can start doing my levels......

Cheers 'Ghost'......

_____________________________________
Regards
.[bp].Lima14

Posted: Thu May 27, 2004 10:40 am
by The Ghost
Cheers

Posted: Thu May 27, 2004 10:57 am
by Blaze
You do not need to have a +sky material though.

Posted: Thu May 27, 2004 11:22 am
by silencer88
never said you did... just a box and people call it the skybox usually since thats how it's referred to in the tut and since it usually is mostly sky...

Posted: Thu May 27, 2004 12:08 pm
by Blaze
I know, I was just making sure that was clear.

Posted: Thu May 27, 2004 1:16 pm
by Yuckin Fahoo
I get this error when running tool.exe :(

Image

Posted: Thu May 27, 2004 1:59 pm
by The Ghost
Why is your sub-material in Max entitled "<none>" anyway? After changing the name of that follow the steps described above and make your shader_environments. Then you won't get those errors.

Posted: Thu May 27, 2004 3:35 pm
by Italian_IcE
ya i get that too

Posted: Fri May 28, 2004 10:51 am
by Lima14
Re:- sub-material in Max entitled "<none>"

Correctomondo ..... <none> should contain a bitmap name.. like Ghost said... :D

Posted: Fri May 28, 2004 8:25 pm
by The Ghost
Yeah.

When you hit "1" it tried to create the shader_environment tag for you, but since your object was titled "<none>" it tried to creat a file named <none>.shader_environment and that is an illegal name because of illegal characters. That's all it's saying. You can use tool, it will create you shader tags for you, but you need them to have proper names as sub-material objects in Max.

Posted: Sat May 29, 2004 9:25 pm
by Yuckin Fahoo
Alright thank you alot..oh and why is it when i put my map into sapien i get no sky and my map is very dark
even tho i do radiosity

Posted: Sat May 29, 2004 9:58 pm
by The Ghost
Did you edit the .scenario tag of your map in Guerilla and add a sky?

Posted: Sat May 29, 2004 9:59 pm
by Yuckin Fahoo
nvm i fixed it thx for your help oh and do u know a place where i could get some textures besides the onces in my data folder? if so could u send them to me over aim or give me a link