- Home /
Regarding blender modifiers and FPS count in unity.
As can be seen here https://imgur.com/a/vRkkZ
I've made a bed model in blender and I wanted to test how many beds of this tris count I could place in unity and get sufficient FPS. I've placed 60 beds and I've got around 30 FPS. That's the first screenshot. Although I wanted to check something out. In my first attempt at the model I've applied "subdivision surface" modifier in blender and then exported it as FBX. On my second attempt I haven't applied the modifier to check if Unity would still draw this correctly. Turns out Unity does draw it correctly even though the modifier isn't applied, It's just on the mesh, but the FPS count is much higher, I've got stable 60 FPS. Does anyone know why is that? How is Unity drawing "same" thing but when the modifiers aren't applied but just linger on the meshes it draws it faster? Also, does it work with all of the blender modifiers eg. mirror?
Answer by Pinkuboxu · Jan 19, 2018 at 07:27 PM
I'd say you need to compare the meshes closely, both in Unity and Blender. You've done something to make more geometry on the first image. Check your stats in unity editor too, that gives geometry counts and draw calls. My guess is that you may have applied one more too many subdivisions in the first image and you just can't tell by looking at them in the scene. Double check your vert/triangle count in both Unity and Blender and see if it's different.
Edit: Looking at it, I think if you leave the exporter alone it only exports a single level of subdivision if you let blender apply the modifier. You probably applied with one more level on the first one than blender did on the second. Also, Unity doesn't care about blender's modifiers. It's always a plain FBX format even when you use .blend files for your assets. Always apply your modifiers in Blender first, save for armatures. Not that you can't get away with it, say just for testing/prototype purpose, but what you export from blender for final use should always be just the geometry you need and no modifiers.
I'd just like to add that before you create your animations, go to the 'Render' tab sub-menu and find the FPS box. Change this from 24 to 60 FPS to make sure your animations are properly timed and scalable.
I do that more recently because I have a computer that can actually play animation in Blender back at 60fps without frame loss. It's good to know because I could have swore that it was arbitrary as Unity's animator does it in time rather than frames and Blender's frames can float between whole frames.
You notice the difference when you scale the animation and when Unity Interpolates between the frames.
Your answer
Follow this Question
Related Questions
Importing Blender Actions to Unity 2 Answers
How to apply my selfmade UV Maps properly in Unity? 1 Answer
Unity mecanim walk animation not smooth. 0 Answers
No sign of baked IK animation when importing to unity 0 Answers
need help whit materials 1 Answer