10-TwinStick-Original
10-TwinStick-Original copied to clipboard
A cross-platform, twin stick control game set in 2.5D as part of The Complete Unity C# Developer 2D (http://gdev.tv/cudgithub).
Complete Unity Developer - Section 10 - TwinStick
This is the Complete Unity Developer - one of the most successful e-learning courses on the internet! Completely re-worked from scratch with brand-new projects and our latest teaching techniques. You will benefit from the fact we have already taught over 360,336 students game development, many shipping commercial games as a result.
You're welcome to download, fork or do whatever else legal with all the files! The real value is in our huge, high-quality online tutorials that accompany this repo. You can check out the course here: Complete Unity Developer
In This Section
Welcome to Twin Sticks
In this video Ben Tristem explains what you will learn about Unity 5 in this tutorial section, including...
- How to build a 2.5D game in Unity.
- How to save your game to PlayerPrefs.
- Using World Space UI in a 3D game.
- More about using anchors for a responsive UI.
- Making your game cross platform in Unity.
Section 10 Notes
A PDF of the slides used in this section.
Your Twin Stick Assets
Introducing Version Control
- Why you may want to use version control.
- An overview of how we use it.
- Follow us on GitHub.
- Where to find the course repositories.
Sharing Your Game With Git
-
How Git can help you share your project.
-
How we use Git for the course.
-
What's different about how you may use it.
-
Read Dan's blog post*
Using SourceTree & Git
- Download SourceTree
- Creating local & remote repos.
- Using a .gitignore file for Unity.
- Connect to GitHub (or BitBucket).
- Share your repo in the discussions.
Using CrossPlatformInputManager
- What is CrossPlatformInputManager.
- How a virtual control layer works.
- Setting-up and reading control values.
Using Analog Gamepad (Optional)
- About using gamepad input.
- Setting up a PS4 controller on a Mac.
- Using an Xbox controller on a PC.
- Using the input gravity setting.
- Other input settings such as sensitivity.
Using The RollerBall Prefab
- Import the Characters standard asset pack.
- Use the RollerBall prefab game object.
- Using physics freeze position constraints.
- Explore the control options.
Designing A Replay System
- An overview of replay systems.
- Deterministic vs. non-deterministic replays.
- An overview of how we will do things.
- Introducing a circular (ring) buffer.
Class Vs Struct In C#
- Why we're not using Unity's Keyframe struct*
- Comparing classes and structs as options.
- Creating our own MyKeyframe struct.
* Unity Scripting API - Keyframe
Creating A Replay System
- An overview of our replay system code.
- Implementing a ring buffer for frames.
- Testing our record and playback.
Building A Game Manager
- Create a simple Game Manager.
- Use it to keep track of recording / playback.
- Wire it to the ReplaySystem.cs script.
- Test playback.
Touchscreen Joystick Control
- Create a simple Game Manager.
- Use it to keep track of recording / playback.
- Wire it to the ReplaySystem.cs script.
- Test playback.
Level Unlocks In Unity
- Dig-up your old PlayerPrefsManager
- Add code to handle level unlocks.
- Create a simple proof of concept.
Pausing Your Game
Reading From 2nd Stick
- Reading from 3rd and 4th joystick axis.
- Import & explore “selfie stick” prefab.
- Write code to make camera track player.
- Write code to make right stick orbit the camera.
- Test it’s all working.