Optimizing Your Unity VR Game (14 Tips & Tools)

Sdílet
Vložit
  • čas přidán 4. 07. 2024
  • Join our community on PATREON! www.patreon.com/user?u=711561
    And follow me on social media (:
    ✳ Twitter: / _lucasrizzotto
    ✳ Facebook: / lucasrizzotto
    ✳ Instagram: / _lucasrizzotto
    ✳ Website: lucasrizzotto.com
    --
    Alright, here are the promised references!
    Tip #3: When adjusting your project settings, you can also use this guide: developer.oculus.com/blog/tec...
    Tip #5: Tool I use to help with mesh recombination: assetstore.unity.com/packages...
    Tip #6: This video teaches you how to use Google Seurat. • Optimizing for 6DOF mo...
    Unfortunately, it doesn't provide you with binary files that you need to execute some of the process - but you can find those here! github.com/ddiakopoulos/seura...
    Tip #7: The asset Amplify Impostors can be found here: assetstore.unity.com/packages...
    Tip #8: Lighitng tutorial: • LIGHTING in Unity
    Tip #9: Occlusion Culling tutorial: • Increase your Unity Ga...
    Tip #11: More Effective Coroutines: assetstore.unity.com/packages...
    Tip #12: Profiler Introduction, if you're not used to it yet: • Introduction to the Pr...
    Tip #13: How to use the job system: There's TONS of videos like that on CZcams. Here's one to get you started: • Optimizing Code using ...
    Tip #14: There are also many videos about Texture Atlasing online and many different ways to go about it. Here's also one to get you started: • [MA_TextureAtlas] Text...
    --
    Hope you liked this and good luck with your project!
  • Věda a technologie

Komentáře • 143

  • @LucasRizzotto
    @LucasRizzotto  Před 5 lety +73

    Thanks for watching, y'all! I was worried about making this CZcams 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?

    • @adruian
      @adruian Před 5 lety +4

      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!

    • @kirilltitov1856
      @kirilltitov1856 Před 5 lety +2

      It is so funny. I am really enjoying to watch it:)

    • @ciljoy
      @ciljoy Před 5 lety +2

      Yass! More of this plz. Most enjoyable technical video out there.

    • @birdintheburgh
      @birdintheburgh Před 5 lety +1

      This was helpful. Eager to see more technical content. Keep it up!

    • @acdfy7761
      @acdfy7761 Před 5 lety

      Plz! I love this ;)

  • @LucasRizzotto
    @LucasRizzotto  Před 5 lety +32

    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.

    • @ibrews
      @ibrews Před 5 lety

      Awesome! Thanks for cross-posting.

    • @GeneroMachina
      @GeneroMachina Před 5 lety

      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

    • @lucutes2936
      @lucutes2936 Před měsícem

      Dont use reddit

  • @sumohax0r
    @sumohax0r Před 5 lety +12

    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.

  • @devPuppy
    @devPuppy Před 5 lety +7

    I can’t believe that you made the topic of optimizing entertaining! Excellent work and I will be using most of these tips

    • @LucasRizzotto
      @LucasRizzotto  Před 5 lety

      Thanks, bud! Glad I could make something like this fun.

  • @AnnaConstantinova
    @AnnaConstantinova Před 5 lety +12

    This is one of the most amazing tutorials! Laughed and learned a lot! Thanks!

  • @jonva13
    @jonva13 Před 5 lety +7

    omg, what a timely video. It's like you published it just for me!

  • @JoshGonsalves
    @JoshGonsalves Před 5 lety +4

    This is probably the most immediately useful AND entertaining video on Unity ever Hahaha. Keep these coming!

  • @roycefernandes333
    @roycefernandes333 Před 4 lety

    Probably the best optimization video for unity out there!!!

  • @Pub_Squash
    @Pub_Squash Před 5 lety +37

    Definitely more Quest development tips n tricks would be very, very appreciated. Thank you :)

  • @mrprogress7236
    @mrprogress7236 Před 4 lety

    I watched in like 20 times any time i start a new project! Thanks man!

  • @na__cho
    @na__cho Před 5 lety

    Great video! I needed it 2 weeks ago, now I'll have to go back to my game and optimize!
    Thanks dude

  • @lauranerder
    @lauranerder Před rokem

    I haven't watched the whole video yet but I can already tell that this is the energy we need for VR tutorials

  • @DamienPaulLabonte
    @DamienPaulLabonte Před 5 lety +10

    The most important of all these is choosing an appropriate art style.

  • @rem6366
    @rem6366 Před 3 lety

    This is the best video about VR I have ever seen

    • @LucasRizzotto
      @LucasRizzotto  Před 3 lety

      you should check out my time machine project then, it'll blow your mind :D

  • @ILoFoSho
    @ILoFoSho Před 2 lety +1

    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!

  • @ChristopherCricketWallace

    fantastic work, man. truly.

  • @cooleobrad
    @cooleobrad Před 5 lety +2

    Fantastic content, thank you for creating this!

  • @KimboKG14
    @KimboKG14 Před 3 lety

    what a heartwarming video!
    actually this is basic principle of perfomant game development.

  • @obalfaqih
    @obalfaqih Před 4 lety

    This is a fun and informative video, thanks!

  • @SV-mh7cj
    @SV-mh7cj Před 3 lety

    Thanks a lot. Your tips was great!

  • @KentHambrock
    @KentHambrock Před 5 lety

    Brilliant video. Very useful.

  • @EloiTeaching
    @EloiTeaching Před 4 lety

    Watched you video a year ago.
    Was expecting lot's more view on it.
    You video is so underrated !

  • @orgotmata9370
    @orgotmata9370 Před 5 lety

    I hope that this will all come in handy for my development projects for the Oculus Quest

  • @thesystemera
    @thesystemera Před 2 lety

    Very very cool video!

  • @ryanmcglennon7214
    @ryanmcglennon7214 Před 4 lety

    10/10 Lucas. Keep the videos coming! I think this a great start

    • @LucasRizzotto
      @LucasRizzotto  Před 4 lety

      Thanks, Ryan

    • @ryanmcglennon7214
      @ryanmcglennon7214 Před 4 lety

      @@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.

  • @Vegx17
    @Vegx17 Před 4 lety

    You make tech stuff so funny, congrats was laughing in a lot of part of the video~

  • @demongameslabs7432
    @demongameslabs7432 Před 5 lety

    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.

  • @mau3020
    @mau3020 Před 2 lety

    Best tips ever

  • @emiliusvgs
    @emiliusvgs Před 5 lety +1

    good video! helps us to understand better, the best part of the video to me is "adjust project settings" nice soundtrack btw!

  • @user-ru5id2vf4i
    @user-ru5id2vf4i Před 4 lety

    Awesome tutorial

  • @nicolasbarone9306
    @nicolasbarone9306 Před 4 lety

    amazing video

  • @ApenasmaisumJapa
    @ApenasmaisumJapa Před 5 lety

    Great video as Always :3

  • @LesleyKlassenVR
    @LesleyKlassenVR Před 5 lety

    This is perfect. Thanks

  • @livecoderepeat7036
    @livecoderepeat7036 Před 5 lety

    Your are awesome for this! Thanks man

  • @catdevpete
    @catdevpete Před 5 lety +6

    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.

  • @ekawooha5870
    @ekawooha5870 Před 4 lety

    this is awesome

  • @MatthewHallberg
    @MatthewHallberg Před 4 lety +1

    This video is amazing and hilarious!

  • @AkatDeen
    @AkatDeen Před 4 lety

    helps a lot!... appreciate it

  • @ssojyeti2
    @ssojyeti2 Před 4 lety

    whoa thanks so much

  • @GregDowning
    @GregDowning Před 5 lety +2

    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.

  • @Sam-vf2ww
    @Sam-vf2ww Před 5 lety

    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

  • @JaycubMacawl
    @JaycubMacawl Před 4 lety

    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.

  • @fifoflo
    @fifoflo Před 5 lety

    really nice video , keep it up !;)

  • @abelsierrasanchez2126
    @abelsierrasanchez2126 Před 4 lety

    For me this is not boring at all, I actually like optimization :)

  • @Tactic3d
    @Tactic3d Před 5 lety

    Great job! Thanks! (I'll never understand why some people can give you a thumb down for this kind of work..)

  • @kevinrichards113
    @kevinrichards113 Před 5 lety

    Thanks!

  • @betoassumpcao
    @betoassumpcao Před 3 lety

    nice video :)

  • @filix92
    @filix92 Před 5 lety

    Subscribed.

  • @scottmorey5395
    @scottmorey5395 Před 3 lety

    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!

  • @maxym93
    @maxym93 Před 5 lety

    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?

    • @LucasRizzotto
      @LucasRizzotto  Před 5 lety +1

      Just making stuff and criticizing it until it's good :)

  • @bitpaint2171
    @bitpaint2171 Před 4 lety

    Thank you a loooooooooooooot

  • @jaredboyton
    @jaredboyton Před 5 lety

    Great video. Got my sub even though i dont make games :P Let it be known i was here before 100k :)

  • @GamerReality
    @GamerReality Před 3 lety

    I need a list of all the music used in this video, it's amazing

  • @starchaser28
    @starchaser28 Před 4 lety

    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?

  • @alleycat2436
    @alleycat2436 Před 3 lety

    the way you speak reminded me to the narrator in rick and morty on interdimensional cable episode

  • @mannplaza2968
    @mannplaza2968 Před 2 lety

    Laughed immediately and great tips! Please continue on with your bad-self.

  • @gregoryosborne4076
    @gregoryosborne4076 Před rokem +1

    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.

  • @top115
    @top115 Před 5 lety

    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. :)

  • @tristanjager4112
    @tristanjager4112 Před 5 lety +1

    I would love to know your opinion on how VRChat will run on the Oculus Quest?

  • @avazhao186
    @avazhao186 Před 4 lety

    Thanks ,it's very useful! Other Tips: particle don't use collider。AND,Make Sure your scene don't contain camera except vr camera!!!!!!!!

  • @alejandrocastan6608
    @alejandrocastan6608 Před 5 lety

    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

  • @RemjieGemillion
    @RemjieGemillion Před 5 lety

    you fucking killing me all along the video.
    thank you.

  • @jhonsonmartinez7473
    @jhonsonmartinez7473 Před 4 lety

    😂😂 the graphic examples of coroutines is crazy, im still laughing!!

  • @AaronHilton
    @AaronHilton Před 5 lety

    Freak'n Brilliant

  • @CanalDojogames
    @CanalDojogames Před 5 lety

    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???

  • @Rollthered
    @Rollthered Před 5 lety +1

    VRCHAT GANG LETS GET IT.

  • @slamadoor8391
    @slamadoor8391 Před 4 lety

    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

  • @hamuArt
    @hamuArt Před 3 lety

    Unfortunately, Occlusion Culling is quite buggy and tends to fail to cast rays correctly on shell meshes (not closed meshes).

  • @mahan34
    @mahan34 Před 4 lety

    Any chance for an updated version of this?

    • @LucasRizzotto
      @LucasRizzotto  Před 4 lety +1

      Almost all of these still apply. What's there to update?

    • @mahan34
      @mahan34 Před 4 lety

      ​@@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.

  • @16rosati
    @16rosati Před 4 lety

    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.

    • @LucasRizzotto
      @LucasRizzotto  Před 4 lety

      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

  • @SKULLDERCOMICS
    @SKULLDERCOMICS Před 5 lety +2

    Unity gonna change the way games are made for mobile and VR

  • @Corysia
    @Corysia Před 5 lety

    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.

  • @hamuArt
    @hamuArt Před 3 lety

    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.

  • @shuruixu7391
    @shuruixu7391 Před 5 lety

    So r u going to make a fantastic quest game :)

  • @Polarcito4
    @Polarcito4 Před 4 lety

    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!

  • @Daniel-ts6ji
    @Daniel-ts6ji Před 4 lety

    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
      @LucasRizzotto  Před 4 lety

      if you draw the same material more than once
      it's a good rule of thumb to always turn it on

  • @gladiatorscoops
    @gladiatorscoops Před 4 lety

    ''My Man!'' ( said in a Jason Mamoa voice )

  • @emsi_77
    @emsi_77 Před 4 lety

    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 :)

  • @_Kimmy
    @_Kimmy Před 3 lety

    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?)

  • @krushnashish5142
    @krushnashish5142 Před 3 lety

    how to setup More Effective Coroutines

  • @JkouFiles
    @JkouFiles Před 5 lety

    slowing down the video for the project settings adjustments would've been nice
    (edit) nevermind. its in the description! 👍

  • @sigfriedsiedentopf
    @sigfriedsiedentopf Před 5 lety

    So in real life Cisco Ramon from "The Flash" is a game developer xD

  • @inceptional
    @inceptional Před 5 lety

    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.

    • @ales240
      @ales240 Před 5 lety

      look into Bakery on unity asset store, very fast because it uses gpu to bake

  • @alensezz4372
    @alensezz4372 Před 3 lety

    Vrchats devs should watch this

    • @firstlast-sq2gc
      @firstlast-sq2gc Před 2 lety

      Don't give them any more ideas.... I already have to reduce my models to 5000 tris in order for it to upload 😭

    • @alensezz4372
      @alensezz4372 Před 2 lety

      @@firstlast-sq2gc they got some new things for optimization soon so dont worry. If its how food they say it is

  • @josephstalin9194
    @josephstalin9194 Před 5 lety +1

    i see a tank

  • @DumbGameDev
    @DumbGameDev Před 5 lety

    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

  • @MaxIzrin
    @MaxIzrin Před 4 lety +1

    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?

  • @MattLuceen
    @MattLuceen Před 5 lety +3

    Liked! And disliked so I could like it again. Classy soundtrack.

  • @AussieRaver1996
    @AussieRaver1996 Před 2 lety

    "V-sync: Don't sync"
    Hehehe

  • @laxwolf
    @laxwolf Před 5 lety

    lol "easy combine" u kno how to get a half-life nerd like me to click LIKE!

    • @LucasRizzotto
      @LucasRizzotto  Před 5 lety

      I actually mispronounced it and turned it into a joke later

  • @lucutes2936
    @lucutes2936 Před měsícem

    Hi?

  • @SuperSonic68
    @SuperSonic68 Před 5 lety

    "Shitty VR Hardware"
    *4X Anti Aliasing*
    Heckin' what?

  • @HdpushVideos
    @HdpushVideos Před 5 lety +2

    Stop swearing I can't watch this in front of my kids

    • @LucasRizzotto
      @LucasRizzotto  Před 5 lety +1

      shit

    • @pilz4566
      @pilz4566 Před 5 lety

      Just don't watch it in front of your kids..?

    • @testingproducts9404
      @testingproducts9404 Před 5 lety +1

      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.

  • @CabrioDriving
    @CabrioDriving Před 5 lety

    You should not swear like that. It makes this worse...

    • @LucasRizzotto
      @LucasRizzotto  Před 5 lety

      Appreciate the feedback, but I have fun doing it.