Here i will go over a few things on how to setup your model and make it ready with the configs.
Its gonna be a long and slowly updated progress but i will write as i get time!
Discussion here:
http://graviteam.com/forum/index.php?topic=11600.0And i will not support or talk 3d model making or something related to that in this thread. This is only about how to setup
your models to get it in the game!
Max vertex count is: 65500~
Max part count is: 64
Its important to know what you should name all parts. Its important to use what everybody else use to get a common naming system.
Specially if you are not going to make the configs for it to not confuse the scripter.
There are a few variaties anyway.
There are 3 types of parts:
d_ is for physical objects, that are visible
p_ is hitboxes
s_ is dummys
One more thing to mention, when there are more then one of the same object on the model, like the wheels, add an underscore and a number after the name.
Like this: d_wheel_01
When there is an object that is gonna be used by a crewmember you can add its work to the name, like the hatch for the driver can be like this:
d_hatch_driver
and if more then one hatch, the first hatch:
d_hatch_driver_01
and the second:
d_hatch_driver_02
Now here is a list of most of the used objects needed:
we start with physical objects!
db_hull tank hull
db_head tank turret, on tank destroyers or similar vehicles without turret you can add s_rotation instead
db_gun gunbarrel, this is the object you put as a recoil fragment in your config
db_gunmask gunmantle, where the barrel is attached to and the mantle is attached to db_head or db_hull
d_wheel tank wheels or vehicle wheels, remember to adjust pivot and also to center it correctly, rotate y-axis correct
d_light decoration mostly, to put your s_light on, for the headlights
d_caret russian word for wheel axle i suppose, attach to hull, rotate y-axis correct
d_door for bigger openable doors, rotate y-axis correct
d_cap used as small caps on for example visionblocks, rotate y-axis correct
d_hatch just an ordinary hatch, rotate y-axis correct
d_decoration commonly used for all small non important decorative objects. Usually goes under notrace in your config
d_hole special object to put in all holes under hatches etc. More about this one later
You can add any other object aswel, for example if you add some spare tracks or some tools, put a d_ and then the imaginary name of the object like:
d_axe
d_shovel
d_sparetrack_01
d_sparetrack_02
d_shovel_left
to name a few.
now to hitboxes, these names are more important and cant be made up. they all start with p_
and now a list:
p_ammo self explained, big risk of fire
p_rothead hitbox for turret mechanism, when hit turret stop to work, you cant traverse
p_rotgun hitbox for gunmechanism
p_driver all crewmembers got this, when hit, crewmember dies, rename accordingly for all members, driver, gunner, commander, loader, mgunner
p_accum batterys, when hit you cant start engine when stalled
p_engine engine stops
p_fuel risk for fire
p_radio unknown if works, but it says you wont be able to communicate with your allies
p_transm gearbox, your transmission.
and as usual, if more then one of the same add underscore and the number like this:
p_ammo_01
p_ammo_02
and now the dummys or helpers as you can call them!
Size doesnt matter (heh) but i prefer small ones (heh oh uh) its easier to navigate and look around. But make
them big enough so you can see them easily. How they are rotated are not really important. Its their pivot that counts. But its
easier for you if you rotate them to where the pivot points! Dummys are used for the most important parts.
once again a short list:
s_light lightsource for headlights come from this
s_driver where your crewmember are stationed
s_driver_out used for unbuttoned view, (when pressing P)
s_driver_exit used on vehicle evacuation
s_gun shell source and travel
s_mgun shell source and travel from machinegun
s_smoke your exhaust
s_fire where flames come from
s_trace source of threadmarks on the ground from tracks or wheels
s_camera source for all views, important with y-axis once again
There must be a dummy for each crewmember, the same as on the hitboxes.
All these newly made stuff needs to go somewhere. You chain or parent them to eachother in a special order. Like this:
http://oi59.tinypic.com/20rth7l.jpgIts not as easy as that. All objects in the turret for example must be parented to the turret. The loader, turret hatches, gunner etc. In other words, all parts that should be attached and rotate with the turret must be parented to the turret.
A few tips along the way:
I have been talking about about dummys and their pivots. Now what is that?
It is the real orientation of dummys (all other objects aswell) and it must be rotated
the correct way. For me with my settings (should be for you also) it is the Y-axis all objects will use and rotate after.
Objects will rotate around this axis, all tracers and shoots will come from this axis, recoil, lights etc is all using this axis.
Wrong rotation on the Y-axis. Its pointing right from the s_gun dummy. Now when i shoot the shell will travel to the right!
http://oi61.tinypic.com/2wf07lu.jpgCorrect rotation of Y-axis. Now it will travel correctly
http://oi62.tinypic.com/30cbzq1.jpgand another example but now with a hatch!
Y-axis pointing wrong if we want the hatch to open sideways like on the Tiger.
Now it will just flip.
http://oi59.tinypic.com/1epdmd.jpgNow its rotated 90 degrees and now it opens as we want!
http://oi61.tinypic.com/34esu3r.jpgSo remember, everything rotates/moves along its Y-axis!
Armor misscalculation:
One important thing when adding items that are not going to be attached, but be another item not attached directly to the hull. Like in
this example its the left fender, or wing (whatever you call it) must have a tiny space between them, They can not touch another
part with a different armor thickness (fender 5mm, hull 80mm)
Look here at the first picture:
http://oi57.tinypic.com/kbbnn5.jpgHere at the second one its moved a tiny bit away from the hull!
http://oi60.tinypic.com/2v8mrmf.jpgThe reason for this is because when a projectile hit the fender its going to use the thickness of the fender and therefore only need to penetrate 5mm armor.
If touching the hull so the fender is "inside" on any part it will not calculate the hull armor!
Another thing to be very cautious with is open edges. This for many reasons but mostly because its an open spot that a shell can penetrate!
The odds for a shell to hit at exactly the edge is small, but there still is a chance, we dont want to take it Cheesy
And here i will show and explain in more detail what it is and how to fix it!
Models consist of polygons and vertexes. So a box will have one vertex or "dot" in each corner, so a rectangular box have 8 vertexes. And the "walls" or polygons are made
between each vertex. and they are always connected to 3 vertexes. So a polygon are also called triangles. So a box is made of: 8 vertexes and 12 polys. Let me show it with
a picture!
All vertexes selected
http://oi61.tinypic.com/eu34tf.jpgAll polygons selected
http://oi60.tinypic.com/2mw9d9f.jpgAll edges selected.
http://oi58.tinypic.com/1z3s8i0.jpgAnd now i can explain what an open edge is. Two polys or triangles is forming a rectangle or a side of the box.
Both triangles are using the same vertexes in each corner. And the diagonal edge is closed and connected to both triangles aswell. An open edge is when those two triangles
are not connected to eachother. There is a minimal space between them that is not visible, but it still exist! A shell can go past this even if the armor is 200mm thick
on the armor map.
In 3dsmax there is two easy ways to find open edges. You can either do an stl check in your dropdown menu or by go to Border selection and select all. I will show the later variant now.
This is a correctly modelled box. No open edges, I select Border selection, Ctrl+A to select all! No edges selected
http://oi57.tinypic.com/2rnbfx5.jpgAnd this is a faulty one. 4 Edges are selected, this means that the box is not solid and shells can come throu that side of the armor!
http://oi60.tinypic.com/207ozfo.jpgTo fix this you can do it two ways! I will show just one, once again. Go to vertex selection. Select all vertexes and choose weld settings. Take the smallest number possible. (should be 0.01mm) and weld.
For uncomplex models it should work to select all. If it is made of many vertexes that are close together you need to manually select those vertexes and press weld. Or the model will be a complete mess!
I also need to mention that holes for hatches for example. Those open edges are oki. They must be there. But open edges on your armor plates must not exist!
I will show an example of the Panther G hull!
http://oi60.tinypic.com/24mz49c.jpgOne more tip is to use reset xform if using 3dsmax, when scaling, cloning or mirroring you MUST use reset xform. Otherwise you get very unexpected results. Its same
on your dummys/helpers, use xform! But dummys are not so important when cloning. As long as you dont get problem with it.
And it is a good idea to unlink all objects before you reset them. If you dont do it all objects linked to the object you reset is going to be scaled/mirrored at the same way your selected object is (if reset xform changes it). That can do lots of damages to your model!
Also worth mentioning and what is different from the first tutorial (this one:
http://graviteam.com/forum/index.php?topic=60.0) is i found out
that by checking "make y up" in your exporter. There is no need to rotate your vehicle 90 degrees up. One easy way to see if everything works is to actually export
a test. When exported and opened in the object editor you should see your vehicles left side, and it should be pointing forward to the left.
This is how it should look like in the object editor:
http://oi58.tinypic.com/8xpk3q.jpgAnd like this in 3dsmax:
http://oi59.tinypic.com/2ahrtyq.jpg