How To Make a Quest 3 Mixed Reality Game - PART 2 - Scene Model
Вставка
- Опубліковано 30 чер 2024
- After learning how to show passthrough on Quest 3 we are going to learn how we can physically interact between the virtual and real world with the Scene Model.
❤️ Support on Patreon : / valemvr
🔔 Subscribe for more Unity Tutorials : www.youtube.com/@ValemTutoria...
🌍 Discord : / discord
🐦Twitter : valemvr?lang=en
👍 Main Channel : / @valemvr
🔥 Tiktok : / valemxr
····················································································
❗❗❗ WISHLIST MY FIRST VR GAME ON STEAM ❗❗❗
store.steampowered.com/app/26...
····················································································
📝Best VR Assets ( These links are Affiliate links which means it costs the same to you and I get a small commission. Thanks for your support!)
VR Interaction Framework
assetstore.unity.com/packages...
Hexabody (Physics VR Player)
assetstore.unity.com/packages...
Mirror and Reflection for VR
assetstore.unity.com/packages...
Auto Hand (automatic hand grab pose)
assetstore.unity.com/packages...
Hurricane VR (vr physics interaction)
assetstore.unity.com/packages...
3d Hand Model for VR
assetstore.unity.com/packages...
····················································································
Full Series on How to make a VR game • How to Make a VR Game ...
····················································································
If you enjoyed this video, here are some other really good channel you should appreciate :
⌨️ Game Dev
Brackeys : / @brackeys
Dani : / @danidev
Code Monkey : / @codemonkeyunity
👨🎓 Vr Dev
Justin P Barnett : / @justinpbarnett
Vr with Andrew : / @vrwithandrew
····················································································
#vr #vrdev #madewithunity
Hey guys : if you're using the latest Meta All in One Package becareful that the Plane, Volume and other Scene model prefab are not in the package ! I think that's an oopsie from Meta and that they will add it later but in the meantime you can either stick with oculus integration or create the prefab from scratch
I did come across this issue and resolved it by importing just the SampleFramework/Usage/SceneManager/Prefabs from the old deprecated Oculus Integration package. You can of course create your own prefabs, but this solution is much simpler :)
Almost certainly an oopsie from Meta!!
And while you're at it you can import the Mixed Reality shaders as they will also be needed.
I'm having so much fun with mixed reality ! :D Shoutout to Wonderland Engine for sponsoring this video and which also works with Quest 3 ! You can watch the tutorial I made about Wonderland Engine here : ua-cam.com/video/97rtpteFYco/v-deo.html
Your tutorials are awesome. Thank you for doing these! I've learned a ton already. Keep em comin' Valem!!
Your tutorials are the best Quest videos on UA-cam Valem, thank you for making such high quality guides. I have one question, how would you add occlusion for when objects go behind a table or a wall for example?
Awesome job. Really looking forward to more Mixed Reality content.
Here is the code for anyone asking :
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class SpawnBall : MonoBehaviour
{
public GameObject prefab;
public float spawnSpeed = 5;
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
if (OVRInput.GetDown(OVRInput.Button.SecondaryIndexTrigger))
{
GameObject spawnedBall = Instantiate(prefab, transform.position, Quaternion.identity);
Rigidbody spawnedBallRB = spawnedBall.GetComponent();
spawnedBallRB.velocity = transform.forward * spawnSpeed;
}
}
}
THANK YOU
Love u for this
If after 2:55 you do not get asked to "Set up your space" your Quest 3 may be in Stationary Mode. You need to change it to Roomscale Mode for this tutorial to work correctly in Part 2.
bless your soul
Wow, thank you so much for this! Was waiting for it :D
Great stuff Valem 👍 MR is certainly exciting, and thanks for jumping on it so quickly! Just getting on these tutorials now that the Halloween VR game jam is done - looking forward to seeing what’s possible.
Awesome tutorial. Big thanks
❤ I love your content. Please make the next video about how to anchor game objects onto the walls that we scanned.
+1
The other day I was having a hard time finding out what material to put on the Scene Mesh to give objects occlusion; eventually I had to pull in the material that Unity Phanto (an example MR game that Meta released on github) uses on their scene mesh and that worked
Valem, wow wow! Amazingggg, merciiii!! :)
Can’t wait for more 🗣️🗣️🗣️
Nice tutorial man! Idk if you're already thinking off making a tutorial about spatial anchors, but I'd love to see more about this specific content, keep up the good work!
you're one of a few youtubers that have matching sponsors to your videos. love your tutorials
Really appreciate this comment, I'm oepning sponsors now and my goal is to only promote great tools and nothing else ! :)
Nice Thanks a lot ! i was actually looking for the Global mesh trick. I hope they will add this feature to the recent depth api so we can apply collider to realtime mesh alongside occlusion. As far as i know it's not yet possible.
Thanks for this tutorial, Valem. Really cool, I tested and it worked just fine. I have a suggestion for a possible next video: How to hide the ball when it's behind a scanned object?
Awesome! Thank you for the video! Do you know how I can add occlusion material to the mesh? Thank you!
THANK YOU!!!!
there is a way to use the depth sensor to make physical object occlude digital objects? The furnitures recognized by the headset work fine but all the digital objects can be seen even behind physical ones.
Thanks!
Dang I was so close to beating you to this, well at least your videos. for these past 2 tutorials I’ve been trying to figure it out on my own, but ig Valem is just better.
Aha happy to see you here Parker! :D If you're looking to quicklearn XR with Quest3 I recommedn you to have a look at this : github.com/oculus-samples/Unity-TheWorldBeyond
@@ValemTutorials Ive been thinking about it, I don't know why I don't just do it.
Nice Tutorial! Did you also try to run the example in Unity Editor with oculus link? Does it work for you? In my case, the scene model seems not to be loaded, so the ball falls through the floor/furniture. When deploying it to the quest 3 standalone, everything works
Maybe you tried to implement camera and translators?
I would like translate a magazine via AR, for example, from Polish to English. Alternatively, it would be suitable to take a photo and then show a translated photo.
Would be nice to use SeamlessM4T model
Will you be covering using anchors and stuff to add items to walls, floors, roofs, tables?
How large of a space can you map out? And is there a way to have trackers like htc one with meta quest?
this tutorial would be really cool if i had a quest 3
Unfortunately no matter what I try, eventhough I get prompted to scan my room, and even add the furniture manually within the Quest 3, the balls just go straight through. I even tried editing the plane and volume prefab to give them their own rigidbodys, hoping it would fix this issue but it didnt. I followed the video exactly. Any help?
A lot has changed since this video and many of the presented Prefabs here are not in the new asset anymore or have different names and are at different places... I have no idea what to put in as a Global Mesh.
Every time I launch the app from my quest 3, it remembers previous bondary when I go into another room. Only clearing boundaries data helps. Could you do a tutorial for dynamic space tracking so it could get the outer space during runtime?
Please do an ultimate XR tutorial. Its free and just incredible
Just so yah know, you can edit the recording settings in the headset for the 16x9 ratio :D
Hi Valem, for some reason when I launch the test application it only lets me draw a boundary. It does not allow me to add or draw any volumes for furniture. Do you have any idea why this is? The plane walls show perfectly, but the volumes do not.
Extremely helpful, Thank you! Question: I am following along with you and have the project working. I have a cube in the room, I can spawn the balls, so far so good. However, here is where I am stuck. The room colliders do not work when I build the project and run it independently on my Quest 3, the balls just shoot off into space and do not interact with the walls or floor. I can bounce balls off of the cube, but not the room. When I test the project straight from Unity (Headset connected to PC over USB cable), everything works fine. Any thoughts or suggestions would be much appreciated. THANK YOU!
Hi, I am having a similar issue, did you come up with a solution? (I have the new Meta XR All-in-one SDK - v59 I believe, and there is no InvisiblePlane, just PlaneMesh and I cannot figure out which Collider to use, when I use some, I am unable to shoot any balls.. I use Mac so there is no QuestLink to test straight from Unity)
can you make a virtual door in pass through - the player can enter the door to a virtual world - when they look back they see the same door leading back out to the real world
Can we add a shadow catcher shader to the scene geometry, so the balls will cast shadows? This would add so much more realism :)
I am using Meta XR All in One SDK and I couldn't find the Global Mesh Collider in the package. Any other way to recreate it?
The Global Mesh Collider Prefab that you set on the OVR Scene Manager doesn't exists anymore...what prefab should we put there instead? I have not found any solution online yet
❤
8:53 Yes, this bounce off table and fall of the ground is wrong. It looks like the end of table would be ground.
Hi, I run the app which was installed on the Quest 3, I click it, it hides the default drawer UI but the app is not launching, any idea why? thanks.
I am seeing black background in Oculus 3 as described in previous video. How the room as background is showing in this tutorial please help.
It doesn't ask me to make a scene. I also get a popup in unity saying I don't have a scene model available. What should I do
Is the the Scene Model only for quest3? Does it works for quest pro?
Hi i have no scenemanager folder in the oculus folder, is that only in 2022 ?
Super tutorial! Question, when my left controller isn't activated the balls won't fire, why is this?
Same here, my best guess would be it's not the "secondary controller" when only one is active.
I am having the same issue, did you find the solution?
@@user-co4ur4yf6l I replaced:
if(OVRInput.GetDown(OVRInput.Button.SecondaryIndexTrigger))
With something like:
if(OVRInput.Get(OVRInput.RawAxis1D.RIndexTrigger)>0.9f)
hey can u give me the script u wrote because whenever i tried to do it it didnt work and im very confused
I always get visible axis on all the objects in the scene. How do I remove them or make them invisible?
I am using the MR All In One with Volume and PlaneMesh, but I dont know why the room mesh appears behind me and small when I start the game (And of course the ball is not bouncing)
As soon as I add room scanning feature, my spawn ball stops working. Also in the new SDK, there is no physic colliders on the scanned volumes?
I`m having the same problem. Did you find the solution?
Anyone else getting the error when I try to play the game:
" There is no scene model available, and scene capture cannot be invoked over Link. Please capture a scene with the HMD in standalone mode, then access the scene model over Link.
If a scene model has already been captured, make sure the HMD is connected via Link and that it is donned. "
When I try to play the game it isn't loading and I've checked the tutorials multiple times and everything is perfect, cable works fine too.
Does anyone know where I can find the Global Mesh Collider when using VRIF?
Is it applicable to quest 2? Thanks
Since V60 release of the SDK a number of things are different to your tutorials. Do you know how to implement the invisible plane and volume in v60?
I would stick with the deprecated Oculus Integration package and not used the Meta All in One package for a bit. :)
@@ValemTutorials but it got deprecated for a reason. For the sake of new developers following your great tutorials, it would be great for you and the viewers to switch to the current stable version :)
What I learned from VR development is that sometime the most stable version is not the latest version.. :D @@Tiffaa_
In Unity, after building and running my project, I noticed a boundary surrounding me. If I step outside of this boundary, the visual content disappears. However, I found that I can resolve this issue by accessing the developer settings and disabling the boundary, which seems to be enabled for development purposes. This behavior wasn't present in the video I watched, so I'm curious why did I have to do so?
Thanks, I was wondering why it didn't play without boundary but this solved it for me. But annoying to have to disable that setting to able to get this to work.
Btw, did you have any problem with the OVRSceneManager? I cannot get the ball to bounce of anything except the cube.. And I cannot get it to render the volumes or walls either..
my thoughts exactly!! wonder why it wasn't present in this video. I was having the same problem myself!! and I just disabled the same boundary setting and now it works, though I'm wondering if that's the best way to solve this o.O
I had a problem that my ball didn't collide with the wall or anything else. When I release the ball, it falls down directly..Is there something wrong?
I've fixed it by 'Store AndroidManifest‘ file.
Plz help me, I have the same problem, balls are falling down and not touching any of my scene.....@@shiwang4809
Does it work on Quest2?
Hello! anyone has any ideas on how to reset the scene creation? so that it would build again another scene each time the app starts?
how do you make it so you can grab object valem
I want to ask how u can know this knowledge from documents
I've tried again and again, looked through the tutorial multiple times to make sure I didn't miss anything but for some unexplainable reason the OVRSceneManager doesn't seem to work. I can't get the ball to bounce of anything except the cube. I'll continue to try and find a solution but this is getting annoying..😫
Still same.. I'm pretty sure the only difference we have (unless different OS version) is I have Unity version 2022.3.11f1. So I guess my last resort might be to install same version as you, but it's annoying to do when it takes so long to install everything with Unity.. 😅
I have the same issue here; did you find any solutions?
@@qiushichen4194 nope not yet, but glad I'm not the only one. If I have time later I'll try installing different version of Unity
@@qiushichen4194 I got it working now!! 🎉But unsure witch was the problem when I did 2 things at once. 🙈
I updated Unity to 2022.3.12f1 and I deleted my spatial data to setup my room again, so one of those 2 things did solve it. So if you haven't tried just deleting the spatial data, please try that first. And please report back here! 😄
But I guess one issue that remains for me is that it ask me to make a boundary even though it's supposed to be in passthrough mode. Can however temporary be solved by disabling that Boundary setting in 'Settings > System > Developer > Boundary' that I found thanks to @markovuckovic4291 here in the comment section.
I was having fun with the tutorial until Unity asked me for some external tools, Seems Im missing the recommended JDK, but no idea how to install it, Im very noob in unity, any idea how can I fix this? thank you!
jdk is something you'll need when doing coding quite often. a jdk = Java Development Kit. Verifying this might help you:. In Unity if you go to Edit -> Preferences -> External Tools, and scroll down, it should have some boxes ticked like "JDK Installed with Unity(recommended)". If not, that may be where you can fix it. Otherwise, you may need to watch a video on installing and setting up your JDK, shouldn't be toooooo difficult. I'm using jdk-11 and am not having issues atm. Hope that helps, good luck!
@@calland36 Thank you I got the external tools!
You lost me at 4:37 how does one edit a script? The transition to the script page was instant, how do we get there? Thank you.
hi im a really big fan if u respond I will be very happy
Hi, I'm using scene api in quest3. But scene api doesnt work in built apk, while does work in quest link.
Do you know the reason? Appreciate it!
It does work on my quest2
im getting OVRInput doesn't exist in the current context.
Finished the tutorial, I had a blast throwing balls to my wife and she didnt even notice!
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class SpawnBall : MonoBehaviour
{
public GameObject prefab;
public float spawnSpeed = 5;
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
if(OVRInput.GetDown(OVRInput.Button.SecondaryIndexTrigger))
{
GameObject spawnedBall = Instantiate(prefab,transform.position, Quaternion.identify);
Rigidbody spawnedBallRB = spawnedBall.GetComponet();
spawnedBallRB.velosity = transform.forward * spawnSpeed;
}
}
}
Heres the code for a simple ctrl c, ctrl v