Optimizing Your Unity VR Game (14 Tips & Tools)

Поділитися
Вставка
  • Опубліковано 27 жов 2024

КОМЕНТАРІ • 144

  • @LucasRizzotto
    @LucasRizzotto  5 років тому +73

    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?

    • @adruian
      @adruian 5 років тому +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 5 років тому +2

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

    • @ciljoy
      @ciljoy 5 років тому +2

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

    • @birdintheburgh
      @birdintheburgh 5 років тому +1

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

    • @acdfy7761
      @acdfy7761 5 років тому

      Plz! I love this ;)

  • @LucasRizzotto
    @LucasRizzotto  5 років тому +33

    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 5 років тому

      Awesome! Thanks for cross-posting.

    • @GeneroMachina
      @GeneroMachina 5 років тому

      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 5 місяців тому

      Dont use reddit

  • @sumohax0r
    @sumohax0r 5 років тому +13

    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.

  • @lauranerder
    @lauranerder Рік тому

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

  • @devPuppy
    @devPuppy 5 років тому +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  5 років тому

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

  • @ILoFoSho
    @ILoFoSho 2 роки тому +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!

  • @Pub_Squash
    @Pub_Squash 5 років тому +37

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

  • @AnnaConstantinova
    @AnnaConstantinova 5 років тому +12

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

  • @jonva13
    @jonva13 5 років тому +7

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

  • @JoshGonsalves
    @JoshGonsalves 5 років тому +4

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

  • @DamienPaulLabonte
    @DamienPaulLabonte 5 років тому +10

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

  • @catdevpete
    @catdevpete 5 років тому +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.

  • @EloiTeaching
    @EloiTeaching 4 роки тому

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

  • @GregDowning
    @GregDowning 5 років тому +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.

  • @rem6366
    @rem6366 3 роки тому

    This is the best video about VR I have ever seen

    • @LucasRizzotto
      @LucasRizzotto  3 роки тому

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

  • @roycefernandes333
    @roycefernandes333 4 роки тому

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

  • @KimboKG14
    @KimboKG14 4 роки тому

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

  • @mrprogress7236
    @mrprogress7236 4 роки тому

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

  • @orgotmata9370
    @orgotmata9370 5 років тому

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

  • @nuclearmuffinman
    @nuclearmuffinman 5 років тому

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

    • @LucasRizzotto
      @LucasRizzotto  5 років тому

      Thanks, Ryan

    • @nuclearmuffinman
      @nuclearmuffinman 5 років тому

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

  • @emiliusvgs
    @emiliusvgs 5 років тому +1

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

  • @JaycubMacawl
    @JaycubMacawl 5 років тому

    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.

  • @gregoryosborne4076
    @gregoryosborne4076 Рік тому +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.

  • @abelsierrasanchez2126
    @abelsierrasanchez2126 4 роки тому

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

  • @MHKart2000
    @MHKart2000 2 місяці тому

    thaaaaaaaaaaaaaaank a bunch , I really needed this❤

  • @obalfaqih
    @obalfaqih 5 років тому

    This is a fun and informative video, thanks!

  • @demongameslabs7432
    @demongameslabs7432 5 років тому

    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.

  • @Sam-vf2ww
    @Sam-vf2ww 5 років тому

    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

  • @na__cho
    @na__cho 5 років тому

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

  • @cooleobrad
    @cooleobrad 5 років тому +2

    Fantastic content, thank you for creating this!

  • @MatthewHallberg
    @MatthewHallberg 5 років тому +1

    This video is amazing and hilarious!

  • @Vegx17
    @Vegx17 5 років тому

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

  • @mau3020
    @mau3020 2 роки тому

    Best tips ever

  • @SV-mh7cj
    @SV-mh7cj 3 роки тому

    Thanks a lot. Your tips was great!

  • @avazhao186
    @avazhao186 5 років тому

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

  • @ChristopherCricketWallace
    @ChristopherCricketWallace 5 років тому

    fantastic work, man. truly.

  • @KentHambrock
    @KentHambrock 5 років тому

    Brilliant video. Very useful.

  • @alleycat2436
    @alleycat2436 4 роки тому

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

  • @scottmorey5395
    @scottmorey5395 4 роки тому

    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!

  • @hamuArt
    @hamuArt 3 роки тому

    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.

  • @GamerReality
    @GamerReality 4 роки тому

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

  • @thesystemera
    @thesystemera 3 роки тому

    Very very cool video!

  • @maxym93
    @maxym93 5 років тому

    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  5 років тому +1

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

  • @HYDRAKOMIKS
    @HYDRAKOMIKS 5 років тому +2

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

  • @ApenasmaisumJapa
    @ApenasmaisumJapa 5 років тому

    Great video as Always :3

  • @Tactic3d
    @Tactic3d 5 років тому

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

  • @livecoderepeat7036
    @livecoderepeat7036 5 років тому

    Your are awesome for this! Thanks man

  • @starchaser28
    @starchaser28 4 роки тому

    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?

  • @hamuArt
    @hamuArt 3 роки тому

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

  • @RaphaëlThéolade
    @RaphaëlThéolade 5 років тому

    Awesome tutorial

  • @top115
    @top115 5 років тому

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

  • @nicolasbarone9306
    @nicolasbarone9306 4 роки тому

    amazing video

  • @JkouFiles
    @JkouFiles 5 років тому

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

    • @LucasRizzotto
      @LucasRizzotto  5 років тому

      Yes. Also, you can pause at any time ^_^

  • @mannplaza2968
    @mannplaza2968 2 роки тому

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

  • @AkatDeen
    @AkatDeen 4 роки тому

    helps a lot!... appreciate it

  • @fifoflo
    @fifoflo 5 років тому

    really nice video , keep it up !;)

  • @jaredboyton
    @jaredboyton 5 років тому

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

  • @tristanjager4112
    @tristanjager4112 5 років тому +1

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

  • @ekawooha5870
    @ekawooha5870 4 роки тому

    this is awesome

  • @LesleyKlassenVR
    @LesleyKlassenVR 5 років тому

    This is perfect. Thanks

  • @jhonsonmartinez7473
    @jhonsonmartinez7473 4 роки тому

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

  • @Rollthered
    @Rollthered 5 років тому +1

    VRCHAT GANG LETS GET IT.

  • @ssojyeti2
    @ssojyeti2 4 роки тому

    whoa thanks so much

  • @alejandrocastan6608
    @alejandrocastan6608 5 років тому

    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

  • @emsi_77
    @emsi_77 4 роки тому

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

  • @slamadoor8391
    @slamadoor8391 4 роки тому

    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

  • @16rosati
    @16rosati 4 роки тому

    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  4 роки тому

      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

  • @inceptional
    @inceptional 5 років тому

    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 5 років тому

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

  • @Daniel-ts6ji
    @Daniel-ts6ji 5 років тому

    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  5 років тому

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

  • @Polarcito4
    @Polarcito4 4 роки тому

    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!

    • @LucasRizzotto
      @LucasRizzotto  4 роки тому

      Yup, I'd say cardboard is dead at this point

  • @RemjieGemillion
    @RemjieGemillion 5 років тому

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

  • @mahan34
    @mahan34 4 роки тому

    Any chance for an updated version of this?

    • @LucasRizzotto
      @LucasRizzotto  4 роки тому +1

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

    • @mahan34
      @mahan34 4 роки тому

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

  • @CanalDojogames
    @CanalDojogames 5 років тому

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

  • @Corysia
    @Corysia 5 років тому

    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.

  • @_Kimmy
    @_Kimmy 3 роки тому

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

  • @filix92
    @filix92 5 років тому

    Subscribed.

  • @betoassumpcao
    @betoassumpcao 3 роки тому

    nice video :)

  • @kevinrichards113
    @kevinrichards113 5 років тому

    Thanks!

  • @MaxIzrin
    @MaxIzrin 4 роки тому +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?

  • @bitpaint2171
    @bitpaint2171 4 роки тому

    Thank you a loooooooooooooot

  • @gladiatorscoops
    @gladiatorscoops 4 роки тому

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

  • @rayx2024
    @rayx2024 5 років тому

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

  • @sigfriedsiedentopf
    @sigfriedsiedentopf 5 років тому

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

  • @alensezz4372
    @alensezz4372 4 роки тому

    Vrchats devs should watch this

    • @firstlast-sq2gc
      @firstlast-sq2gc 2 роки тому

      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 2 роки тому

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

  • @MattLuceen
    @MattLuceen 5 років тому +3

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

  • @krushnashish5142
    @krushnashish5142 3 роки тому

    how to setup More Effective Coroutines

  • @DumbGameDev
    @DumbGameDev 5 років тому

    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

  • @AaronHilton
    @AaronHilton 5 років тому

    Freak'n Brilliant

  • @josephstalin9194
    @josephstalin9194 5 років тому +1

    i see a tank

    • @LucasRizzotto
      @LucasRizzotto  5 років тому

      it's a german tank, though. be careful.

  • @laxwolf
    @laxwolf 5 років тому

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

    • @LucasRizzotto
      @LucasRizzotto  5 років тому

      I actually mispronounced it and turned it into a joke later

  • @SuperSonic68
    @SuperSonic68 5 років тому

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

  • @AussieRaver1996
    @AussieRaver1996 3 роки тому

    "V-sync: Don't sync"
    Hehehe

  • @lucutes2936
    @lucutes2936 5 місяців тому

    Hi?

  • @HdpushVideos
    @HdpushVideos 5 років тому +2

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

    • @LucasRizzotto
      @LucasRizzotto  5 років тому +1

      shit

    • @pilz4566
      @pilz4566 5 років тому

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

    • @testingproducts9404
      @testingproducts9404 5 років тому +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 5 років тому

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

    • @LucasRizzotto
      @LucasRizzotto  5 років тому

      Appreciate the feedback, but I have fun doing it.