Thanks for watching, y'all! I was worried about making this UA-cam channel too technical, but I had to make this video to help other fellow devs struggle less. That being said, what do you think of this kind of content? Do you want more stuff like this?
Of course I want more stuff like this, I dont think this is to technical is more like a step into optimizing in VR and this content is totally needed. Great job!
Someone on reddit posted some other great tips! - Set anchor overrides for reflection probes and lighr probes. It is a great way to make sure non-static objects are batched together if they cannot benefit from GPU instancing - Use a 4k lightbaking map. Only 1. - Simple animations can happen using GPU animations. It is a special shader and you plung a wacky looking texture into it and it makes mesh renderers move around. - Adjust your render order to reduce overdraw - Dont use transparency unless you really need to.
I've had so many issues with the Unity default shader not using the render queue properly and doing overdraw on everything. I wrote a poopy barebones one and it already runs a million times faster, I can't stress this point enough. QUEUE PASA
I have nothing to do with Game Development. I was just Googling when I can get my hands on that sweet new oculus quest and stumbled upon this video. Watched the entire thing it was insightful and fun to watch. I can now rant at PubG developers with more informed arguments. Thanks.
I freaking live for complicated technical af videos that are still hilarious and entertaining. I'm so sad this video probably won't reach a very wide audience because it's amazing. Thank you!
Thanks for the tips! Nice to see so many in one place. Aren't the ideas of combining objects and occlusion culling in opposition to one another? The more pieces you break a scene into the more efficiently you can cull what is behind the user.
@@LucasRizzotto just for reference, my project was running somewhere around 90 frames (there are alot things that need fixing). Just changing the project setting bumped it up to 120 frames.
Great video!! Any way you can make another one like this? VR is such a big topic, I'm sure there are some other tips you've accumulated in the past few months.
About GPU Instancing: DON'T AUTOMATICALLY TURN IT ON! I discovered that indeed enabling GPU Instancing on all your materials does reduce the amount of draw calls that the Frame Debugger detects when you're using it. The reason for this is its passing all those calculations to the CPU, and then returning those merged meshes as one draw call. The only reason you'll want to do this is if you've got a bunch (50-100+) objects with the same mesh all being rendered, otherwise the CPU is actually slower. I had previously run into the same conclusion, but when I looked into why GPU Instancing isn't always checked by default and realized I had to go in and uncheck all my materials, I got back like 10-15 FPS on the Quest 1.
Wow, only 2 mins in and Subbed, great video, very funny and you get straight to the point. Im currently making a VR title for Oculus and this helps alot lol bring more vids like this.
Awesome video! Just want to point out Unity's "LOD System". I use the assets "Auto-LOD/Mesh-Simplify" to generate LOD levels for my meshes. That being said, I've never used "Amplify Impostors". I'm going to try using the "Impostor" mesh as a lower LOD. Wish me luck! lol Thanks!
Before you just tick Static batching and Dynamic Batching, read up on when to use them, because they may work the other way round and you may lose frame rate. There's a reason why they are set as options... They depend heavily on what assets you use.
Great video Lucas, keep the content coming! Was there any particular resource that helped you the most while learning Unity as a Designer excluding unity official documentation?
Super helpful info! Now I'm wondering how all of my past builds would run with these optimizations. Do you have any Quest or VR games I could check out that employ these techniques?
Very well done and entertaining! Quick question, can you suggest a beginner VR / Unity Tutorial? I can model in Cinema 4D I work with C/C++ on my job and I want to make a super simple brick stacking (lego building) prototype. For the quest which I preordered. :)
Hi Lucas. Thanks to share it with us !!! On the other hand, I would like to know your opinion about to use DOTS and LWRP to make VR games for Oculus Quest, please let me know it? Thanks
is there a way for me to include bloom in my game without post-processing? Is there a way to bake this effect somehow? my art style kind of relies on using emissive materials.
The problem with baking is it takes frikin' ages, and if you keep making changes to your game and want to see how everything looks then it can really take sooo much of your time.
Why should I always enable GPU Instancing? If I understand it right, I only profit if I draw the same object a lot of times? If I don't do that, there should be no reason to use it, right? I would have to deal with the overhead instead and lose performance? Or do I miss something?
@@LucasRizzotto Ok, cool. I just found a lot of the settings in the first part were either not there, or in different places, but I realised it was probably because I was using the URP.
Hahaha funny great vídeo! I Learned and had Fun! Thank you I kinda understood all and that plugin from Google is outstanding. But baking light...what???
I'm just starting a new project and I'm seeing some odd stuttering/tearing with just a simple scene of a plane and a cube. I've followed the Project Settings section. I also switched to baked lighting and marking my non-moving objects to static. But when I move my hands, or strafe from side to side, I'm not seeing a smooth framerate. I don't see it when I record a video in the Quest and play it back, tho. The object outlines kind of ghost as I move, or it feels like I'm running at 30fps or someone's got a strobe light going. I tried changing my timings to 1/72, but that didn't help, either. Does anyone have any suggestions? It's so easy to reproduce, I'm sure I can't be the only one seeing this.
Might be a dumb question, but if I'm not trying to make money is there then a reason for creating lesser content? (If it runs on the good hardware, then good?)
Tip #15 - When building a project for a client, recommend them absurdly powerful hardware, it's not your budget, so don't sweat it. Tip #16 - If all else fails, quit, you don't need this suffering, your friends were right about this job, you can do better. How bad can full-stack web development be?
Sprite Atlas. "But Eric, my game is in 3d". But do you have a menu or HUD? Then you need to atlas those sprites in order to avoid a ton of draw calls. Luckily unity can handle it for you: docs.unity3d.com/Manual/class-SpriteAtlas.html
I don't think it helps people share your videos I think it would deter more people from sharing that would inspire them to share when they're swearing in the video, it always makes me think people's vocabulary is not big enough if they need to use I swear word to describe the problem.
Thanks for watching, y'all! I was worried about making this UA-cam channel too technical, but I had to make this video to help other fellow devs struggle less.
That being said, what do you think of this kind of content? Do you want more stuff like this?
Of course I want more stuff like this, I dont think this is to technical is more like a step into optimizing in VR and this content is totally needed. Great job!
It is so funny. I am really enjoying to watch it:)
Yass! More of this plz. Most enjoyable technical video out there.
This was helpful. Eager to see more technical content. Keep it up!
Plz! I love this ;)
Someone on reddit posted some other great tips!
- Set anchor overrides for reflection probes and lighr probes. It is a great way to make sure non-static objects are batched together if they cannot benefit from GPU instancing
- Use a 4k lightbaking map. Only 1.
- Simple animations can happen using GPU animations. It is a special shader and you plung a wacky looking texture into it and it makes mesh renderers move around.
- Adjust your render order to reduce overdraw
- Dont use transparency unless you really need to.
Awesome! Thanks for cross-posting.
I've had so many issues with the Unity default shader not using the render queue properly and doing overdraw on everything. I wrote a poopy barebones one and it already runs a million times faster, I can't stress this point enough. QUEUE PASA
Dont use reddit
I have nothing to do with Game Development. I was just Googling when I can get my hands on that sweet new oculus quest and stumbled upon this video. Watched the entire thing it was insightful and fun to watch. I can now rant at PubG developers with more informed arguments. Thanks.
Hell yeahhhhhhhh
I haven't watched the whole video yet but I can already tell that this is the energy we need for VR tutorials
I can’t believe that you made the topic of optimizing entertaining! Excellent work and I will be using most of these tips
Thanks, bud! Glad I could make something like this fun.
I freaking live for complicated technical af videos that are still hilarious and entertaining. I'm so sad this video probably won't reach a very wide audience because it's amazing. Thank you!
Definitely more Quest development tips n tricks would be very, very appreciated. Thank you :)
This is one of the most amazing tutorials! Laughed and learned a lot! Thanks!
I'm glad you liked it
omg, what a timely video. It's like you published it just for me!
I did publish it just for you, bb
This is probably the most immediately useful AND entertaining video on Unity ever Hahaha. Keep these coming!
Glad you liked it
The most important of all these is choosing an appropriate art style.
Great video, Lucas! One suggestion I can make is to use mobile shaders for materials over unity's standard shaders when PBR is not necessary.
Watched you video a year ago.
Was expecting lot's more view on it.
You video is so underrated !
Thanks for the tips! Nice to see so many in one place. Aren't the ideas of combining objects and occlusion culling in opposition to one another? The more pieces you break a scene into the more efficiently you can cull what is behind the user.
This is the best video about VR I have ever seen
you should check out my time machine project then, it'll blow your mind :D
Probably the best optimization video for unity out there!!!
what a heartwarming video!
actually this is basic principle of perfomant game development.
I watched in like 20 times any time i start a new project! Thanks man!
I hope that this will all come in handy for my development projects for the Oculus Quest
10/10 Lucas. Keep the videos coming! I think this a great start
Thanks, Ryan
@@LucasRizzotto just for reference, my project was running somewhere around 90 frames (there are alot things that need fixing). Just changing the project setting bumped it up to 120 frames.
good video! helps us to understand better, the best part of the video to me is "adjust project settings" nice soundtrack btw!
I'm glad you enjoyed that bit!
Great video!! Any way you can make another one like this? VR is such a big topic, I'm sure there are some other tips you've accumulated in the past few months.
About GPU Instancing: DON'T AUTOMATICALLY TURN IT ON! I discovered that indeed enabling GPU Instancing on all your materials does reduce the amount of draw calls that the Frame Debugger detects when you're using it. The reason for this is its passing all those calculations to the CPU, and then returning those merged meshes as one draw call. The only reason you'll want to do this is if you've got a bunch (50-100+) objects with the same mesh all being rendered, otherwise the CPU is actually slower. I had previously run into the same conclusion, but when I looked into why GPU Instancing isn't always checked by default and realized I had to go in and uncheck all my materials, I got back like 10-15 FPS on the Quest 1.
For me this is not boring at all, I actually like optimization :)
thaaaaaaaaaaaaaaank a bunch , I really needed this❤
This is a fun and informative video, thanks!
Wow, only 2 mins in and Subbed, great video, very funny and you get straight to the point. Im currently making a VR title for Oculus and this helps alot lol bring more vids like this.
Hey Lucas! Funny to find you here ;) Was looking up jittering issues when using Quest controllers and picking up objects and came across this vid :D
ohai sami
Great video! I needed it 2 weeks ago, now I'll have to go back to my game and optimize!
Thanks dude
Fantastic content, thank you for creating this!
This video is amazing and hilarious!
You make tech stuff so funny, congrats was laughing in a lot of part of the video~
Best tips ever
Thanks a lot. Your tips was great!
Thanks ,it's very useful! Other Tips: particle don't use collider。AND,Make Sure your scene don't contain camera except vr camera!!!!!!!!
fantastic work, man. truly.
Brilliant video. Very useful.
the way you speak reminded me to the narrator in rick and morty on interdimensional cable episode
Awesome video! Just want to point out Unity's "LOD System". I use the assets "Auto-LOD/Mesh-Simplify" to generate LOD levels for my meshes. That being said, I've never used "Amplify Impostors". I'm going to try using the "Impostor" mesh as a lower LOD. Wish me luck! lol Thanks!
Before you just tick Static batching and Dynamic Batching, read up on when to use them, because they may work the other way round and you may lose frame rate. There's a reason why they are set as options... They depend heavily on what assets you use.
I need a list of all the music used in this video, it's amazing
Very very cool video!
Great video Lucas, keep the content coming!
Was there any particular resource that helped you the most while learning Unity as a Designer excluding unity official documentation?
Just making stuff and criticizing it until it's good :)
Unity gonna change the way games are made for mobile and VR
Great video as Always :3
Great job! Thanks! (I'll never understand why some people can give you a thumb down for this kind of work..)
h8rs gon h8
Your are awesome for this! Thanks man
Super helpful info! Now I'm wondering how all of my past builds would run with these optimizations. Do you have any Quest or VR games I could check out that employ these techniques?
Unfortunately, Occlusion Culling is quite buggy and tends to fail to cast rays correctly on shell meshes (not closed meshes).
Awesome tutorial
Very well done and entertaining! Quick question, can you suggest a beginner VR / Unity Tutorial? I can model in Cinema 4D I work with C/C++ on my job and I want to make a super simple brick stacking (lego building) prototype. For the quest which I preordered. :)
amazing video
slowing down the video for the project settings adjustments would've been nice
(edit) nevermind. its in the description! 👍
Yes. Also, you can pause at any time ^_^
Laughed immediately and great tips! Please continue on with your bad-self.
helps a lot!... appreciate it
really nice video , keep it up !;)
Great video. Got my sub even though i dont make games :P Let it be known i was here before 100k :)
I would love to know your opinion on how VRChat will run on the Oculus Quest?
this is awesome
This is perfect. Thanks
😂😂 the graphic examples of coroutines is crazy, im still laughing!!
VRCHAT GANG LETS GET IT.
whoa thanks so much
Hi Lucas. Thanks to share it with us !!! On the other hand, I would like to know your opinion about to use DOTS and LWRP to make VR games for Oculus Quest, please let me know it? Thanks
Maybe you could add the LOD system to this tips list ;) (unless you think that IMPOSTORS are more efficient in any case). Very very helpfull anyway :)
Will do for part 2
Now if I want to make a psvr game using unity. Hope will I check the game out when I finish it or even test it? Plz respond I am struggling
is there a way for me to include bloom in my game without post-processing? Is there a way to bake this effect somehow? my art style kind of relies on using emissive materials.
There are little tricks you can do. I create "fake bloom" with fake transparent quads and a glow texture, but I'm sure there's better ways out there
The problem with baking is it takes frikin' ages, and if you keep making changes to your game and want to see how everything looks then it can really take sooo much of your time.
look into Bakery on unity asset store, very fast because it uses gpu to bake
Why should I always enable GPU Instancing? If I understand it right, I only profit if I draw the same object a lot of times? If I don't do that, there should be no reason to use it, right? I would have to deal with the overhead instead and lose performance? Or do I miss something?
if you draw the same material more than once
it's a good rule of thumb to always turn it on
I have one question, a little off topic but: Is mobile VR with cardboard and the like really dead? Should I focus on Oculus Quest only? Thanks!
Yup, I'd say cardboard is dead at this point
you fucking killing me all along the video.
thank you.
Any chance for an updated version of this?
Almost all of these still apply. What's there to update?
@@LucasRizzotto Ok, cool. I just found a lot of the settings in the first part were either not there, or in different places, but I realised it was probably because I was using the URP.
Hahaha funny great vídeo! I Learned and had Fun! Thank you
I kinda understood all and that plugin from Google is outstanding. But baking light...what???
I'm just starting a new project and I'm seeing some odd stuttering/tearing with just a simple scene of a plane and a cube. I've followed the Project Settings section. I also switched to baked lighting and marking my non-moving objects to static. But when I move my hands, or strafe from side to side, I'm not seeing a smooth framerate. I don't see it when I record a video in the Quest and play it back, tho. The object outlines kind of ghost as I move, or it feels like I'm running at 30fps or someone's got a strobe light going. I tried changing my timings to 1/72, but that didn't help, either. Does anyone have any suggestions? It's so easy to reproduce, I'm sure I can't be the only one seeing this.
Might be a dumb question, but if I'm not trying to make money is there then a reason for creating lesser content? (If it runs on the good hardware, then good?)
I don't fully understand the question
Subscribed.
nice video :)
Thanks!
Tip #15 - When building a project for a client, recommend them absurdly powerful hardware, it's not your budget, so don't sweat it.
Tip #16 - If all else fails, quit, you don't need this suffering, your friends were right about this job, you can do better. How bad can full-stack web development be?
Thank you a loooooooooooooot
''My Man!'' ( said in a Jason Mamoa voice )
So r u going to make a fantastic quest game :)
So in real life Cisco Ramon from "The Flash" is a game developer xD
Vrchats devs should watch this
Don't give them any more ideas.... I already have to reduce my models to 5000 tris in order for it to upload 😭
@@firstlast-sq2gc they got some new things for optimization soon so dont worry. If its how food they say it is
Liked! And disliked so I could like it again. Classy soundtrack.
how to setup More Effective Coroutines
alt title
Sprite Atlas. "But Eric, my game is in 3d". But do you have a menu or HUD? Then you need to atlas those sprites in order to avoid a ton of draw calls. Luckily unity can handle it for you: docs.unity3d.com/Manual/class-SpriteAtlas.html
Freak'n Brilliant
i see a tank
it's a german tank, though. be careful.
lol "easy combine" u kno how to get a half-life nerd like me to click LIKE!
I actually mispronounced it and turned it into a joke later
"Shitty VR Hardware"
*4X Anti Aliasing*
Heckin' what?
"V-sync: Don't sync"
Hehehe
Hi?
Stop swearing I can't watch this in front of my kids
shit
Just don't watch it in front of your kids..?
I don't think it helps people share your videos I think it would deter more people from sharing that would inspire them to share when they're swearing in the video, it always makes me think people's vocabulary is not big enough if they need to use I swear word to describe the problem.
You should not swear like that. It makes this worse...
Appreciate the feedback, but I have fun doing it.