I'm wondering which way should I model low poly model for a gun with Picatinny rails.
Should I model each separate spacing and locking slot or should I model only basic shape and then let normal maps and darker texture to handle the indents.
I am modeling a HK416 rifle, which has around 90 slots.
It really depends on your budget, and how well you manage your geometry thought the rest of the gun. You could also compromise and only model in half of them if its an issue, but really it shouldn't add that much. It's the type of thing that you wont find a rule for its circumstantial so whatever you do wont matter so long as you make it look as good as you possibly can.
However if your mired in self doubt just take a look at some screen shots from your favorite games featuring similar guns and see what they do.
If third person, you should have no problem just baking them down to something simple. No one is going to notice the extra modeled in depth.
For first person I highly recommend modeling in the rails. The extra depth you get is worth the tricount increase. Tricount isn't a big issue these days but if you really want to optimize it, you can save tris by keeping parts of the rail floating, and you can also instance these floating bits to save UV space. I made a little example here.
Also I find that to bake perfect normals for rails like in Racer445's example mesh, you can just set the vertex normals to all point straight upward away from the surface, and then bake your normal map from high-poly. That way it kinda comes out more like an object-space map and doesn't have any shading/smoothing errors that are more likely if you just leave the vertex normals untouched.
Replies
However if your mired in self doubt just take a look at some screen shots from your favorite games featuring similar guns and see what they do.
If third person, you should have no problem just baking them down to something simple. No one is going to notice the extra modeled in depth.
For first person I highly recommend modeling in the rails. The extra depth you get is worth the tricount increase. Tricount isn't a big issue these days but if you really want to optimize it, you can save tris by keeping parts of the rail floating, and you can also instance these floating bits to save UV space. I made a little example here.