Skip to content

simeonradivoev/echo-unity

Repository files navigation

Summary

I played a bunch of Lone Echo and got inspired to re-create the zero-G mechanics from Lone Echo and Echo Arena. Since very few games have them.

I used the development presentation of Ready at Dawn over at GDC vault https://www.gdcvault.com/play/1024446. They had implementation details on the finger procedural animation and other stuff.

Features

  • Procedural IK Hand Animations
  • Full upper body IK estimation
  • Physically based Zero G Movement
  • 3D Touch screen Unity UI (includes 3D finger position compensation)
  • Sample demo level with simple objectives
  • Lower body physics simulation
  • Moving vehicles
  • Realistic Zero Gravity Movement Option (To prepare you for real zero gravity. Use with caution)

Missing Features

Thumb IK

The thumb finger is more complicated than just a hinge joint, so I skipped it for the sake of time.

Implementation Details

Physics interactions differ quite a bit from Lone Echo ones. It comes down to not having low-level access to the physics engine in unity to implement the detailed solution from the GDC presentation. That's why I just use tweaked physics joins to make interactions feel nicer, with some additional tricks to make them more responsive.

The finger IK animation requires intersection calculations on the meshes as described by the GDC presentation. Again we don't have low-level access to the physics engine and the triangle connectivity of physics meshes to help with intersection calculations so I manually calculate them with code ripped from the unity physics package. This probably impacts performance, but I managed to burstify the code, so shouldn't be that much of an issue. I also cache each mesh conectivity.

Packages Used

Demo

You can try the Windows build over at Itch.io https://simeonradivoev.itch.io/unity-echo It's also on SideQuest: https://sidequestvr.com/app/43523

Screenshots

Using In your projects

The code is separated into 3 portions, the player essential mechanics, the UI and the interactions. They should for the most part work on their own. The only essential one is the player mechanics. I made a minimal scene that has only the player controller, since the demo scene has a lot more code that isn't related to the player.

Built using Unity 2022.3.13f1. Project files are included for quicker setup, but VR settings are specific for the quest 2 and windows

Contributing

I didn't have time to implement all the features. Check out the issues to see what features are missing and need to be implemented or improved. Adding more sounds is always a bonus.

Credits

Music

Textures

Sounds

About

Lone Echo Zero-G Mechanics Recreated in Unity Prototype

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published