Week 1 - Movement and Perspective
Movement and Perspective
For Asphalt Odyssey, using the first-person perspective was a choice designed to maximize the immersive experience. The discission to use first-person perspective was a conclusion we came to as a team, as it would provide an authentic and captivating experience while navigating through Asphalt Odyssey's visually stunning gameplay. Additionally, first-person perspective provides opportunities for future immersive storytelling. By maintaining the same perspective while in the driver's seat, the game can produce an engaging narrative that provides an intermate experience through the character's journey.
Player movement is crucial for Asphalt Odyssey's immersive gameplay. Not only can the player control the character's movement, but realistic cutting-edge physics has also been implemented in all vehicles to give an appropriate behavioural synergy between vehicles and the environment. Asphalt Odyssey is all about vehicles and the adventures they can offer to the player's experience, ensuring all vehicle's movement and physics provide an immersive and captivating experience was our topmost priority.
Version control
We employ GitHub for version control and utilize separate development branches, regularly merging to maintain a cohesive and consistently updated development pace.
Repository link: https://github.com/SineVector241/AsphaltOdyssey
Car Movement
We've implemented our `Vehicle` class in Unity, modelling a game vehicle from `MonoBehaviour`. This includes properties like centre of mass, player spawn, motor and brake force, steering angle, and arrays for wheels, lights, and sounds. We've also incorporated a `Rigidbody` and `PlayerInput` for physics and input.
The `Awake` method sets the vehicle's centre of mass, `FixedUpdate` adjusts wheel positions, and `OnValidate` verifies references. Additionally, methods for applying motor and brake force, and steering.
First Person Perspective
Interaction system
Initially, Leigh developed a rudimentary interaction system, Asuka, then, improved and streamlined the system, enhancing its usability and flexibility to provide a robust platform for future expansion.
The `Interactor` class manages player-object interactions in the game. It includes fields like a `LayerMask`, interaction range, a selected interactable object and an `InteractorEmitter`.
The `OnInteract` method activates when the player interacts with an object. If the player's selected object interaction is ongoing and the key is unpressed, it halts the interaction. Otherwise, it starts it.
`LateUpdate` runs after all updates once per frame. It conducts a ray cast from the emitter's position. If the ray reaches an interactable object, it checks if it's the chosen object. If not, it attempts to access the `InteractableObject` component from the object and set it as selected. If the past object was being interacted with, it ends the interaction.
The `Interactor` class is the core of our interaction system, and we look forward to further development and refinement.
Future Changes
Incorporate vehicle entry and exit functionality, as well as terrain features.
Asphalt Odyssey
Drive to survive
Status | In development |
Authors | Clearspec11, SineVector241, Aleronf, rakelly1 |
Genre | Adventure, Action, Survival |
Tags | 3D, Atmospheric, Crafting, Unity |
Languages | English |
More posts
- Week 6 FinalMay 31, 2024
- Week 5/ Testing SummaryMay 26, 2024
- Week 4May 19, 2024
- week 3May 12, 2024
- Week 2May 06, 2024
Leave a comment
Log in with itch.io to leave a comment.