WP2WS 09 – Navigation

PROCESS

I first began by implementing the different controls into my midterm project. By playing around with the different controls, I can determine which one I want to explore further. The first one I explored was fly control:

I felt like this was a fun way to explore the landscape. However, I realized that if I incorporate navigation, I would have to tweak the opacity levels again because depending on the distance, the landscape would disappear.

Another control I explored was map control:

But I felt like this control didn’t really match the experience I wanted to create, so I decided to continue exploring fly control. I first tried to add the movement speed and roll speed into the GUI by creating variables and adding those variables into my parameters. But when I was using the GUI, it seemed like it broke the keyboard controls and I couldn’t manipulate those values. The mouse control still worked as well, but it was a little finicky.

I realized later on that it was probably because I set the values too small, so the movement was very slow. But the GUI still wasn’t working, so I used console.log() to see if what I was doing was affecting the variables, and nothing changed.

So instead of making the user move into the bubble, I tried to set the camera position to move in until the environment is visible. I also didn’t allow the fly controls to work until the environment is visible.

camera.position.z -= 5;
    if (camera.position.z <= 200) {
      camera.position.z = 30;
      const delta = clock.getDelta();
      controls.update(delta);
      camera.position.y = params.cameraY;
    }
It’s quite simple, but I like the effect of it. One issue I encountered was when I didn’t have the line camera.position.z = 30; the camera would keep zooming in, which is not what I wanted. But if I do set the camera to a position after, then it limits the movement.

REFLECTIONS AND FUTURE IMPROVEMENTS

I think I still need more practice using the GUI. I’m not sure why it doesn’t manipulate the variable, because when I manually change the value in the code it works, but when I use the GUI it doesn’t change anything.

The zooming effect and then allowing the user to navigate makes the experience feel more immersive and intuitive if another person were to interact with this environment, but limiting the z position takes away from the exploration of the world. So I would like to figure out a way to keep the zoom, but still have the user be able to move forward and backward.

I do also want to try out the first person perspective control in the future. I think that creates a more immersive interaction and it might help with my capstone as well, since my topic is on game design and wanting to create an “experience” game. So I think my next step is to keep playing with that and try more controls/interactions.

 

Leave a Reply

Your email address will not be published. Required fields are marked *