Build a Multiplayer Kart Racing Game From Scratch in Unity will use Unity 2019 and Photon networking tools to take you step-by-step through the setup and development of your own go-kart experience.
The kart racing genre goes back to the 1980s, though it was popularised by Super Mario Kart (1992) and Crash Team Racing (1999). The genre mixes racing and arcade type mechanics with well-known fictional characters and funky tracks littered with pickups and obstacles. Creating such a game combines the skills of networking, artificial intelligence, interface design, special effects and audio.
In this course, Penny reveals the most popular AI techniques used for creating NPC racing character behaviour in games using her internationally acclaimed teaching style and knowledge from over 25 years working with games, graphics and having written two award-winning books on games AI. Throughout, you will follow along with hands-on workshops designed to take you through every step of putting together your own kart racing game. You will first construct from scratch a single-player experience with intelligent NPC components and then add on networking functionality with a Photon master server to create a multiplayer game.
Learn how to program and work with:
Car physics and controllers built from the ground up with Unity's wheel colliders and rigid bodies;
AI driven cars with waypoint navigation, smart acceleration & braking and avoidance behaviours;
Race Track Mini-maps with Player positions, rear view cameras and leaderboards;
Networking with Photon including setting up a master server, remote procedure calls and networked object instantiation;
Character selection for vehicle types and player names; and
Graphical User Interfaces.
Contents and Overview
The course begins with a detailed explanation of Unity's vehicle physics system. A four-wheeled car will be constructed from scratch using wheel colliders and rigid bodies in which every setting is explored and all possible functionality tested and put through its paces to get the right balance of skid, acceleration, braking and weight. This system will then be transferred to a top quality Kart model and placed in a racing track environment in which artificial intelligence mechanics will be added to develop non-player character vehicles who can effectively drive around the track while avoiding or in some cases aggressively bumping other players.
You will work your way up to a completed kart racing single player game in which one player takes on three NPCs. Race places will be calculated and a heads-up display (HUD) containing a rear view camera, minimap and player leaderboard will be added. You'll also learn how to implement a camera-following script that you can use to switch between players for differing points of view.
Once the single player game is completed, the Photon API will be used to set up a master server and then add multiplayer functionality to the game so you can then play it with your friends. You will learn how to create your own server, send remote procedure calls to other players and instantiate networked objects, some of them AI characters.
At the completion of this course you will have covered a wide variety of game development techniques from artificial intelligence, networking and user interface creation. The knowledge and skills you acquire will be applicable across numerous game genres and stand you in good stead for adding advanced functionality to your own game projects.
What students are saying about Penny's courses:
Dr.Penny is a wonderful person and a true expert. All of her courses I've taken have been top notch and in my opinion there is no better teacher out there. Her upbeat personality makes you feel as if you're listening to a friend than just another monotone teacher.
This is my first course I've ever bought for Unity as I've tinkered for years with Unity and not really done anything , but I'm only 27% through the course and I've already learned so many new things, it's really opened my eyes to the power of Unity. I've followed Penny for a while now on YouTube and she is a brilliant instructor, very clear on the code you're writing and explaining how it all works.
I really appreciate the clarity. I've had many dabblings with learning how to code previously and have found my knowledge comes and goes. This time around, the concepts are really sticking. There is something to the Holistic3D method!