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 »collision-geometry tutorials? questions about collision-geometry.

Author Topic: collision-geometry tutorials? questions about collision-geometry. (7 messages, Page 1 of 1)
Moderators: Dennis

Stainless
Joined: Sep 21, 2014

Make the cop chase you. He will follow.


Posted: Apr 6, 2015 04:53 PM    Msg. 1 of 7       
Hello! Are there any formal tutorials on exporting collision-geometry for Halo CE? Can you model things like pathfinding-spheres, surfaces, and collision materials?

I also have the same question for physics geometry.


rododoonceagain
Joined: Dec 21, 2014

Left Halo because life


Posted: Apr 6, 2015 05:37 PM    Msg. 2 of 7       
Quote: --- Original message by: Stainless
Hello! Are there any formal tutorials on exporting collision-geometry for Halo CE? Can you model things like pathfinding-spheres, surfaces, and collision materials?

I also have the same question for physics geometry.


I'll tell you how a noob would do it

1) Open 3ds Max
2) Run the GBX model importer and import the bones and the geometry of the thing you want to make the collision model for
3) If you don't know how to make multimaterials like me rename the materials you got with the model to something more appropriate, like "skin", "metal" and so on.
4) Start drawing! Create a box, convert it to poly and assign the multimaterial to it. Once it has its material, start editing it. Add vertices using the "add vertex" function in the "edge" section of the editable poly menu; then create new edges, then move around the edges you got, then start again. You should envelope as good as you can the original shape of the model; too many details aren't good because they take up memory space; too low aren't good as well because they won't stay faithful to the visible geometry; most of the times you can go around with 200\300 vertices (or much less for stuff like covenant crates and similar)
5) Link what you just drew to a bone. REMEMBER: with collision models YOU CAN'T use the skin modifier; for moving parts, you MUST link them to a bone. There's not other way. Why? Because Tool likes it this way, that's why.
6) Repeat step 5 for every bone\frame in the body: draw, link and edit
7) Right click and then convert every poly to editable mesh
8) Assign materials: go through each mesh and select the faces you want to have of a material (with the "face" selection in the editable mesh menu), then assign that material to it. Do it for every material in the scene and assign a material to EACH and EVERY face.
9) Use the JMS exporter to export it to c:\yourhalofolder\data\yourstuff\physics, then run tool and type collision-geometry yourstuff (WITHOUT physics)

Things you should pay attention to:
1) Every face MUST have a material assigned to it
2) If the gbxmodel of the thing to which you want to assign this collision has regions, the collision MUST have these regions as well (there is no need for permutations, though)
To assign regions, do this

to see what regions, if any, your model has, look at the gbxmodel tag in guerrilla
3) Closed world rules: everything you draw MUST be closed, which means that it must have an "inside" and an "outside".
4) Geometry MUST NOT overlap. Vertices should all be separated, faces and edges should not overlap nor meet each other. Should this happen, the collision model will still compile, but you will end up having weird errors in game.
5) DO NOT export an editable poly. If you do, all sort of strange errors will pop up and your collision won't compile

As for physics, just draw spheres and give names to each one of them as you would do with markers; link all of them to the pelvis and make sure to generically envelop well your model. Then save the JMS file to "c:\yourhalofolder\data\yourstuff\physics", then run tool and type "tool physics yourstuff" (DO NOT type physics in the end). Remember: AFAIK, physics do not animate, so linking the spheres to the bones is quite useless.

THINGS TO KNOW: you must then adjust the physics tag in Guerrilla. Adjust spheres size, then go to sapien and type "debug_objects_phyics true" to see if the spheres are the right size or not (and if they are well-placed as well). Most of the other settings are generated automatically, yet some errors may appear: for example, your vehicle may start just sliding smoothly on the ground, instead of stopping after a while. Or the vehicle may rocket sky-high for no apparent reasons. Or it may fall seamlessy through the ground, headed to the deepest pits of hell and never to be seen again. To put it simply: I DON'T KNOW how to fix them. Remember, however, that the vehicle type you set (alien fighter, alien scout, human plane and stuff) affects the way physics work on your vehicle (how they do, I don't know). I have learned that Halo doesn't like tear-shaped vehicles (IE; the seraph) and loves to throw them up in the deep space when you get on them; I solved it by setting the "relative mass index" to 0 in the mass points of the tail. But, really, there are no tutorials around and trial and error is really the only way to get through it.
Edited by rododoonceagain on Apr 6, 2015 at 05:50 PM


Stainless
Joined: Sep 21, 2014

Make the cop chase you. He will follow.


Posted: Apr 6, 2015 05:44 PM    Msg. 3 of 7       
Quote: --- Original message by: rododoonceagain
Quote: --- Original message by: Stainless
Hello! Are there any formal tutorials on exporting collision-geometry for Halo CE? Can you model things like pathfinding-spheres, surfaces, and collision materials?

I also have the same question for physics geometry.


I'll tell you how a noob would do it

1) Open 3ds Max
2) Run the GBX model importer and import the bones and the geometry of the thing you want to make the collision model for
3) If you don't know how to make multimaterials like me rename the materials you got with the model to something more appropriate, like "skin", "metal" and so on.
4) Start drawing! Create a box, convert it to poly and assign the multimaterial to it. Once it has its material, start editing it. Add vertices using the "add vertex" function in the "edge" section of the editable poly menu; then create new edges, then move around the edges you got, then start again. You should envelope as good as you can the original shape of the model; too many details aren't good because they take up memory space; too low aren't good as well because they won't stay faithful to the visible geometry; most of the times you can go around with 200\300 vertices (or much less for stuff like covenant crates and similar)
5) Link what you just drew to a bone. REMEMBER: with collision models YOU CAN'T use the skin modifier; for moving parts, you MUST link them to a bone. There's not other way. Why? Because Tool likes it this way, that's why.
6) Repeat step 5 for every bone\frame in the body: draw, link and edit
7) Right click and then convert every poly to editable mesh
8) Assign materials: go through each mesh and select the faces you want to have of a material (with the "face" selection in the editable mesh menu), then assign that material to it. Do it for every material in the scene and assign a material to EACH and EVERY face.
9) Use the JMS exporter to export it to c:\yourhalofolder\data\yourstuff\physics, then run tool and type collision-geometry yourstuff (WITHOUT physics)

Things you should pay attention to:
1) Every face MUST have a material assigned to it
2) If the gbxmodel of the thing to which you want to assign this collision has regions, the collision MUST have these regions as well (there is no need for permutations, though)
To assign regions, do this
http://www.modacity.net/forums/attachment.php?attachmentid=122&d=1255646275
to see what regions, if any, your model has, look at the gbxmodel tag in guerrilla
3) Closed world rules: everything you draw MUST be closed, which means that it must have an "inside" and an "outside".
4) Geometry MUST NOT overlap. Vertices should all be separated, faces and edges should not overlap nor meet each other. Should this happen, the collision model will still compile, but you will end up having weird errors in game.
5) DO NOT export an editable poly. If you do, all sort of strange errors will pop up and your collision won't compile


Thanks for the reply, but unfortunately I know most if not all of that already. I'm really just trying to find out what exactly tool looks for when compiling a collision jms. I'm trying to write a function for a program that decompiles a collision-geometry tag so that you have the original collision jms for a stock tag.


rododoonceagain
Joined: Dec 21, 2014

Left Halo because life


Posted: Apr 6, 2015 05:53 PM    Msg. 4 of 7       
Quote: --- Original message by: Stainless
I'm really just trying to find out what exactly tool looks for when compiling a collision jms


1) Faces must not overlap
2) Vertices must not overlap
3) Every face must have a material set to it
4) Geometry must be closed
5) No skin modifier must be used
And that's pretty much it, as far as my knowledge goes. However sometimes tool still doesn't like it for whatever reasons. Why does it, I can't say.


Stainless
Joined: Sep 21, 2014

Make the cop chase you. He will follow.


Posted: Apr 6, 2015 06:10 PM    Msg. 5 of 7       
Quote: --- Original message by: rododoonceagain
Quote: --- Original message by: Stainless
I'm really just trying to find out what exactly tool looks for when compiling a collision jms


1) Faces must not overlap
2) Vertices must not overlap
3) Every face must have a material set to it
4) Geometry must be closed
5) No skin modifier must be used
And that's pretty much it, as far as my knowledge goes. However sometimes tool still doesn't like it for whatever reasons. Why does it, I can't say.


Alright Thanks again, This does help me a bit. I guess things like pathfinding spheres are just generated when the jms is compiled in tool then?


bourrin33
Joined: Oct 19, 2009

HEK not installed tho


Posted: Apr 6, 2015 06:16 PM    Msg. 6 of 7       
I think pathfinding spheres are generated with a marker called #pathfinder in the collision geometry. I remember seeing that somewhere, but it might interfere with physics tags as physics spheres are markers that uses "#" denomination in JMS files for collision.

Pretty sure tool checks for 1 sealed object per bone, and it's region name


rododoonceagain
Joined: Dec 21, 2014

Left Halo because life


Posted: Apr 6, 2015 06:28 PM    Msg. 7 of 7       
Quote: --- Original message by: bourrin33
I think pathfinding spheres are generated with a marker called #pathfinder in the collision geometry. I remember seeing that somewhere, but it might interfere with physics tags as physics spheres are markers that uses "#" denomination in JMS files for collision.

Pretty sure tool checks for 1 sealed object per bone, and it's region name


It is in the gbxmodel, AFAIK. At least, scenery\c_storage\c_storage.gbxmodel has a marker calld #pathfinding or something along these lines.

EDIT: Name's "pathfinder", and it is in the gbxmodel tag, check it out

Edited by rododoonceagain on Apr 6, 2015 at 06:29 PM

 

 
Previous Older Thread    Next newer Thread







Time: Tue July 23, 2019 2:23 AM 187 ms.
A Halo Maps Website