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.
We are talking bad naming conventions, bad modelling, bad atlasing, shredding meshes into lots of tiny UVS, expensive shadows, expensive collisions, untiled textures, bad bakes... the list goes on.
They look great.
And therein lies an important lesson.
So I am going to endorse the product. If they have beef with me, I can demonstrate here.
I wish the artist or artists well, and hope they grow and learn and become masters not just of the visual, but the technical.
But, this isn't how you do game assets folks.
Example? None of the meshes have a name in the kitchen set. They are all called Kitchen Probes, and are numbered. Lots of objects share an atlas- also not named, which means you cant just use a few without pulling all of the textures into the memory.
I want to be absolutely clear, I will fucking kick the ass of anyone mocking the artists or bullying them online. We all start somewhere, and we all make mistakes. Just because some bitch online says the work is inefficient, you treat them with respect.
Buy the product.
You are gonna learn a lot from the time they spent on these. Pay for their time.
Speaking of which, if you are an artist hesitating to put your assets onto the store because a pro will judge you... we don't actually look up the things you put on the asset store. Don't let me scare you. Your time is worth their money. You can always fix later.
• • •
Missing some Tweet in this thread? You can try to
force a refresh
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.
#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