🌌Educational Solar System VR Game
Embark on an awe-inspiring journey through the solar system in this interactive educational VR experience! Fly among the planets as they orbit the sun, with their rotation speeds based on real-time physics. Immerse yourself in the beauty of space and discover fascinating details about each planet by simply pulling the trigger—learn about their diameters, orbits, and more. Perfect for learners and space enthusiasts alike, this VR game brings the wonders of the cosmos right to your fingertips!
🔧 TOOLS Used
Unity Engine, C#


🚀 Features
- Fly Through the Solar System
Explore planets and moons as they rotate and orbit the Sun.
Explore planets and moons as they rotate and orbit the Sun.
- Dynamic Planet Information Display
Planet details appear when the player gets close to each celestial body.
Planet details appear when the player gets close to each celestial body.
- Realistic Orbits and Rotations
Planets and moons orbit their parent objects and rotate on their axes with realistic speeds.
Planets and moons orbit their parent objects and rotate on their axes with realistic speeds.
- VR Ready
Optimized for Oculus VR controllers and compatible with desktop testing.
Optimized for Oculus VR controllers and compatible with desktop testing.
🌠Lookat.CS Script:
Making Planets Face the Player in VR

🛠️ How It Works
The script continuously updates the rotation of a GameObject (like a planet or a label) to ensure it faces a specific target—usually the player's position in VR. Additionally, it flips the orientation of the object by 180° to make it appear as though it's facing away from the player when needed.
💡 Key Features
Dynamic Targeting: The script ensures that the GameObject "looks at" the player's position in real time.
Horizontal Lock: The rotation only happens on the horizontal plane, so the object ignores vertical differences in position (important for VR immersion).
Orientation Flip: The 180° flip makes the GameObject face the opposite direction after targeting, useful for specific scenarios like reverse-facing labels.
🌍 RotatorScript.CS:
Simulating Planetary Orbits and Rotations in VR

🛠️ How It Works
This script handles:
Orbiting: Planets revolve around a designated object (like the sun) at a defined speed.
Self-Rotation: Planets rotate around their own axis (like Earth’s daily rotation).
Player Interactivity: Players can control the motion using VR triggers or keyboard input.
Real-Time Motion: The script ensures smooth, real-time updates of planetary motion using Unity’s Time.deltaTime.
💡 Key Features
Dynamic Orbit Control: Planets can adjust their orbit speed or stop based on player input.
Simulated Planetary Motion: Combines self-rotation with orbital movement to mimic realistic celestial behavior.
Interactive Learning: Pausing or controlling motion helps players focus on specific celestial mechanics.
🌍 SolarManager:
Controlling Celestial Visibility in VR

🛠️ How It Works
This script:
Manages Planet Visibility: Controls which planets and moons are visible based on player input.
Interactivity: Allows users to toggle the solar system's objects by pressing buttons on their VR controllers or a keyboard.
Efficiently Handles Multiple GameObjects: Activates or deactivates different celestial bodies (planets and moons) in the game.
💡 Key Features
Interactive Solar System: Players can toggle the visibility of the planets and moons for a more immersive learning experience.
Easy Testing: The script includes a built-in key press (B) for testing before the game is built, making it easier for developers to troubleshoot.
Smooth VR Integration: The use of VR input methods (like the left or right index trigger) provides a seamless control experience in virtual environments.
Come take a look!
You can find this project and many more in my Github repositories!