The entire level I showed at the NZGDC used a shader than combined fine surface textures, edge chips, color mottling and noise. The normal map used 2 channels, with the third the edge mask to place the wear and the chipping.
This meant I could get the camera up very close to any surface, and it looked perfectly fine, but I was using a tiny amount of textures for everything.
All the stone normals could therefore be atlased into one, and readied in a single state change.
What I am trading off here is pushing all the work onto the fragment shader. That is, every pixel drawn of this texture has a lot of instructions.
However, it means no state changes and very few draw calls.
#gamedev#unity quick tip: Use the physics materials to query impact sounds, effects and footsteps. You have to assign them anyway, so let them do that duty as well.
I just saw someone using an additional script for tagging what footstep sound you should play. PER OBJECT
Not only does that mean you have to add the script to every asset, you then have to set it from an enum, which means editing the enum when you want to add more variants.
What you should do is make a bunch of physics materials, and apply these instead. You can quickly copy values between the materials, duplicate and rename etc.
I was was aked what asset packs I am using to demonstrate horror story examples of bad optimization. Actually I am NOT going to say avoid them. I am gonna say you SHOULD buy them, open them, look inside, see the horrors within. They are a great lesson.
The pack is Archteria3D Manor Interior Mega Pack.
Speaking as a professional, it is one of the worst examples of how to make game assets I have worked with.
Speaking as a teacher, you must get this pack. Everything you can possibly do wrong, they have done.
So it is both an endorsement and a caveat emptor.
Buy it, but so help you if you put the assets into your game.
#gamedev#gameart Just because something needs a lot of edges to make it have a round silhouette, doesn't mean you have to use the same number in each sucessive edge loop. As they get smaller, they need less to pull off the illusion of roundness.
That is 1/3 of the tris. With a normal map, you can't even tell it has no lip or thickness in most games.
One of my bigbears is jagged looking wheels when they could have been smoother than my chat up lines, because there are loops and loops worth of waste