So, now I'm going to actually take you to the zoo five times, essentially flying down into the zoo, and showing you how we designed this in the zoo in layers. And it's also an example of iterative design which is the next thing I want to talk about? So we are, apparently, yeah. So here we are flying into the zoo. This was actually the scene that I had created as part of my office hours. So this was 20 minutes of work, I think flying down this way. Then Kara came in. And this is a lot of the virtual world already in place, we now have animals. And here this is our more environmental design oriented solution. And a third stage we actually developed and I would recommend, we developed this in a separate scene, before to the final version, a menu. And we then actually also brought in this petting area, petting zoo and feeding area. So the red one that's ahead of us. And the final experience, taking these two lap scenes that we just had with a neutral environment and putting everything together and here we are in the zoo. And now that is pretty, pretty cool. I wanted to show you this composition and I want to talk about in the last few slides, I want to talk about a few things as you iterate on projects, as you build larger projects. So, a few tips there when you're designing virtual reality. So, you should approach this iteratively, just like when you do web design or mobile design, you do it Iteratively. So one way to do this here, think of it as a layered approach to environmental design, using three main ways to actually build your VRC. And you can start with 360 content first, you could then bring in 3D primitives. And then finally only then you bring in the 3D models. So the the final 3D models. So the 360 is really just a placeholder for the environment. This could be a 360 sketch and that's something that we'll talk about or we have talked about if you took my second course, then you will be familiar with that concept. I'm going to show an example in a second focuses, obviously on planning the scene visually and spatially very important. And then include this spatially without depth. So 360 is a good way thinking around the user. Then you can actually work with 3D primitives. So this is what I would do if I were, I as a web designer, at least when I did web design, I would start off with a doobs and color code them and then I do CSS and then I do responsive design. And so me color coding these divs essentially helps me understand the flow and the stacking and whatever I do in responsive design. And when I started out with the Detroit zoo, I was also thinking in terms of these different kinds of areas, defining these boxes. I left them in the final experience because they didn't seem to be distracting, and they actually directly map to the map of the Detroit zoo. So the areas that we have defined and the colours partially matched up. So I've been using the zoo example a lot, but I want to actually do an example here in the studio. So I took a 360 photo of the studio is here, and then I have a glitch project. And in this little project I'm just going to bring in that photo I've already uploaded and prepared to the scene and everything. And now it is actually visible and I'm going to bring it into my scene. I load the scene here and tada, here we are. And because it is a 360 photo, I can go into VR and actually view it in VR. This is what it would look like in VR. So that was just the first part using the 360 photo as a Skybox. And then we're going to talk about interactive design quickly. So at the highest level again we can distinguish three types of XR interactions and they also apply to VR obviously, implicit interaction. So camera-based, gaze and eye. So eye and gaze based so gaze like head gaze or eye gaze. Then system based so it could be location time counter event physics any of these could actually trigger some kind of interactions with the interface. So location obviously if you think of GPS location aware applications time, right the time of day could make a difference. We could go to the zoo at night when it's night and otherwise it's day so we could manipulate that experience as well. And then explicit interaction. So really, here I would distinguish between user based explicit interactions and then environment based experts interaction. So user base, you using a VR controller, you're pointing at something with your hand, finger. Any kind of specific pose or gestures, or doing voice commands if you issue voice commands, so that would be a user based explicit interaction. Usually some kind of keyword, some kind of predefined command. Environment based interactions could be marker based or object based. You're bringing like some physical object into the view of the camera. So this is mostly AR but I wouldn't just think about it, as AR. I mean, we have outward facing cameras and most VR devices. It is uncommon at the moment, we're going to talk about something like advanced techniques later on where we bring in custom controllers into VR. So if you wanted to use, instead of this, if you wanted to use I don't know, this remote control. Because that is like whatever you're doing in your experiences allows you to go to different parts of listen to different audio, they give you these audio guides and when you go to a museum. And so that could be, you don't want to hold this fat controller. So and while you're watching virtual reality TV, you're doing it with a controller is a bit weird, but doing it with more like a remote control would be a different thing. And so if you wanted to track this and object tracking is something we'll talk more about in the AI portions, but it would be possible. And we can also do some combination of the above. So system base plus user base or any kind of mixed initiative. So for example, you dwelling on a target. So it's very common and gaze base three degrees of freedom. So we do have a button here, but not all cardboards have a button. And so sometimes it's just like you dwelling on an object. It gives you a fuse. That's something we'll talk about as part of basic VI experiences in the honest track how to implement those things. And could be user based multi-model, so user plus user so the user issuing two different commands and using different modalities like this gesture and speech. So we have a lot of options. And we'll learn more about interaction design in this week when it comes to VR as well. So I wanted to continue my example. So once I have, for example, this 360 photo of the lab, I could enable that menu could bring that in. That could be a menu there could be just all around me. I'm just using basic layout here. Each of these could be a portal into a different scene. It could be a loading, a different scene. It's probably not the best kind of menu design, but yeah, it would allow me very quickly. I'm mixing here 3D primitives with 360 content. I just want it to demonstrate how we can quickly prototype this way. And in VR it then looks actually quite interesting, it feels already quite immersive. And so it's a nice transition from 360 to 3D. Each of these could also be placeholders for other kinds of objects. You could think of it as you selecting an avatar, or something and you see a preview and I'm just using a box to visualize that first. But we could actually obviously update from this 3D primitive to another kind of object selecting your avatar. And those would be 3D models that I'll bring in later. So this was a lot of the fundamental well, decisions we have to make when we're designing a virtual reality. This was just the focus on the designing the environment part. We're going to expand on a few aspects of virtual reality. So we're going to bring in more interactions, and we're going to learn about navigation and travel in VR. We're going to bring in menus, you're going to learn about how to select objects, ray casting, hit testing, all these things are coming back here and play a role in virtual reality as well. We're going to talk about colliders and we're going to talk about object selection and manipulation. So, is a lot of stuff, and that we want to cover, it's not going too deep, but I just want us to have a right foundation. Now this is the course that is really focused on development. And the issue with that is that we,re losing track of some of the higher level design issues that we should really pay attention to as we're designing virtual reality and augmented reality experiences. You actually, as a VR developer, and designer you have a tremendous responsibility. You have often full control over what users are seeing how they're perceived content, you can, shock them. You need to be concerned about their safety at all times. And so you need to do the right thing with that responsibility. And so yeah, I want to just bring back these design issues, I want us to always keep those in mind. So any kind of social or ethical concerns so when it comes to designing a virtual reality, obviously it's isolated, but it could be a collaborative VR experience as well. So isolated because it's not true to device. But there are interesting social and ethical concerns when it comes to VR. Again, the kind of content how it appears to users and on the social side, obviously these devices have external. The inside outtracking parts have external sensors and cameras and not everybody wants to be seen by them. It really depends on what happens on the device and not but most people just don't want to be in the view of these cameras. And so keep that in mind. Next is accessibility and equity. So I will take issue with the problem that, I really take issue with the decision to drop things like Google Daydream and Oculus go three degrees of freedom devices affordable, affordable, relatively good quality, affordable devices to bring virtual reality to the masses. That would have been a very great path forward for a lot of the things we wanted to do at Michigan. And so as a virtual reality designer and developer, I would still ask you to also design for lower end virtual reality headsets. So think about how this stuff could work in cardboard, okay? So the thing is if you only have cardboard that's all you care about. If you have a more powerful device like six degrees of freedom Oculus Rift, you usually forget about the people that that only have two degrees of freedom and that might actually be substantially more people. So this equity problem, not everybody's excited about VR, but there are a lot of people who would like to try it out and they just can't afford. And if you are developing a VR experience and you assume the latest and greatest headsets that is understand and research we do this all the time. But if you're developing a product you should think about reach. And so you have also responsibility there accessibility, obviously a key thing in VR, pretty hard, very predominantly visual. So we excluding quite a lot of people from VR and unless you're doing more with audio cues, and that's something to take into account as well. And then privacy and security. So, yes, this course like none of my courses are really focused on it. But every course touches on it if you're doing AR, VR you have to deal with privacy and security issues. A lot of it is, if you're just using some frameworks, I understand you're just using the framework. And so you're subject to whatever the privacy and security policies are and how they're implemented. I understand as a developer, but that's not good enough. You choose the tools. So be careful what you're working with and make your decisions wisely. And that's all I'm going to say, because I do have opinions but that is not so relevant here. I just want you to think about it carefully what kind of devices you're working for. And I seem pretty neutral because I have all kinds of devices here. But that doesn't necessarily reflect how I think about the different kinds of vendors out there and what they're doing.