Week 9

Team 6 brings it all together for the last stretch

Posted by VRcap Team 6 on May 29, 2020

New Ship Unlocked

The new ship is finally set up with all the interactions and parts it needs for the demo experience. From last week, we ran into a bug regarding the cloth component bounds. This has now been fixed, by using the ProBuilder tools. We had run into the issue that the ProBuilder script depends on a MeshRenderer while cloth depends on a SkinnedMeshRenderer. However, it turns out the fix for this is a simple one, as we managed to retain the ProBuilder properties by setting the MeshRenderer to not be active. The final piece for our demo that we modeled is a crate that contains supplies which the hoist can lift and lower. We, again, modeled this ourselves in Maya.

Turn! Turn! Turn!

One of the biggest challenges we have faced is rotating the world around the ship, preserving the local physics around the player for VR. Through sevral iterations of utilizing the various methods of moving object in Unity we have a hybrid method that moves the world as a rigidbody and then conducts a rotation on the world's transform object at the point on the world object that the ship is currently at. It is far from a perfect solution and what we as a team initial set out to deliver, but it should provide a basic sense of sailing.

It was an unfortuante setback to find that the rotational model we implemented in the previous week began to show incosistent sailing experiences as we attempted to dial in the controls to allow the ship to approch a dock with a sense of accuracy for the user. It was disheartening to have to abandon the spherical model and return to a rotating plane.

The most important objectives is for users to feel that they can control the boat to a point of interest and interact with the hoist.

Bringing it all together

Version control does not mesh well with Unity, which is why up until now we have each been working on our respective tasks in our own separate scenes. However, now that we are nearing the end and our individual components are mostly finished, we decided it would be a good time to piece everything together in a new combined scene. This includes the new ship, the ship movement, the water, the sounds, the new environment, and the networking. We ran into some issues with the URP water overriding the material of the ship, which can be solved by reapplying the material, but happens every time we restart the scene.


- Work Log -

James: Reworked the sailing mechanic from spherical rotation to a translational plane that rotates around the point the ship is occupying. Added world motion mechanics to combined project with new ship. Reimplemented helm wheel steering in VR. Created a point of interest as a drop off destination for supplies carried on board.

Patrick: Fixed ship cloth bug, modelled crate asset, added hoist interaction, merged ship into new combined scene

Abhinav: Integrated the URP water shader into the project, though had to revert because it made further development difficult.

Julian: Changed some network interactions to depend on event based RPC calls. For example, joining a server will update all players’ (including new player) world position information, as will things like approaching specific world landmarks. Still no luck with incorrect player avatar placements. Still some stuff to work out networking wise.

- Work Plan -

Everyone: Final push, record demo video, make presentation, design spatial room

James: Implement destination heading icon in world for users to sail towoards. Implement wind direction indication. Work on user avatars and UI.

Patrick: Fix new ship prefab, help out with anything left over that needs to be done for the demo

Abhinav: Work on the final demo video, help with finishing up the project.

Julian: Fix last few issues with RPC network scripts. Fix player network avatar positioning if possible. Look into a new avatar model and any steps needed for syncing it up (again, if there’s enough time).