We may earn an affiliate commission when you visit our partners.
Course image
James Doyle

Learn how to create and program your very own 3D Platformer game using Unity, an industry-standard game development program used by many large gaming studios and indie developers across the world.

In this course you won’t just be learning programming concepts, but tying these concepts to real game development uses. You will have access to a course forum where you can discuss the topics covered in the course as well as the next steps to take once the course is complete.

Read more

Learn how to create and program your very own 3D Platformer game using Unity, an industry-standard game development program used by many large gaming studios and indie developers across the world.

In this course you won’t just be learning programming concepts, but tying these concepts to real game development uses. You will have access to a course forum where you can discuss the topics covered in the course as well as the next steps to take once the course is complete.

This course has been designed to be easily understandable to everyone, so whether you’re a complete beginner, an artist looking to expand their game development range or a programmer interested in understanding game design, this course will help you gain a greater understanding of development.

At the end of this course you will have developed the ability to create such game elements as:

  • Full 3D Character Movement

  • Animating Characters

  • State-based Enemy AI

  • Saving/Loading Progress

  • Fully-featured Boss Battles

  • Complete Health System

  • Collectables

  • Level Select Over-world

  • Audio system using Audio Mixer

  • Multiple Level Mechanics including unlocking doors, retracting spikes, breaking boxes etc.

  • Unity's Cinemachine Camera system

Start learning today and let me help you become a game developer.

Enroll now

What's inside

Learning objectives

  • Learn c#, a modern versatile programming language.
  • Understand the capabilities of 3d development in unity.
  • Develop strong and transferrable problem solving skills.
  • Gain an understanding of the game development process.
  • Learn how object oriented programming works in practice.

Syllabus

Introduction
Setting Up
Setting Up Unity
Guide To Unity's Layout
Read more

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Uses Unity, which is an industry-standard game development program used by many large gaming studios and indie developers across the world, making it highly relevant to industry
Teaches C#, a modern versatile programming language, which is widely used in game development and other software applications, making it a valuable skill for aspiring programmers
Develops strong and transferrable problem-solving skills, which are essential for success in game development and other technical fields, fostering critical thinking and analytical abilities
Covers topics such as character movement, enemy AI, saving/loading progress, boss battles, and level design, providing a comprehensive overview of the game development process
Includes challenges that encourage learners to apply their knowledge and design their own levels, promoting creativity and hands-on experience in game development
Requires learners to set up Unity, which may require a computer that meets the minimum system requirements for running the software, potentially posing a barrier for some learners

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

Create 3d platformer with unity

According to learners, this course offers a highly practical and engaging introduction to 3D game development using Unity and C#. Students widely commend the clear, step-by-step instruction that effectively guides them through building a complete 3D platformer game from scratch. The hands-on approach of integrating C# programming with specific game mechanics like character movement, enemy AI, and health systems is frequently highlighted as a strength. While some mention that specific Unity features may differ slightly in newer versions, the overall consensus is that the course is excellent for beginners and builds a solid foundation for aspiring game developers.
Course covers essential systems like AI, health, save/load.
"I learned how to implement character movement, health, and enemy AI."
"The section on saving and loading progress was very useful."
"Building the level select screen was a great addition."
"The range of mechanics covered provides a solid game foundation."
C# concepts are taught effectively within game context.
"Learning C# while building the game was very effective."
"The way C# scripting is integrated into the game mechanics is well done."
"I learned practical C# skills directly applicable to game dev."
"Understanding object-oriented programming in practice was very helpful."
An excellent starting point for those new to game dev.
"As a complete beginner, I found this course perfect for getting started."
"I had no prior game dev experience, but I could follow along and learn."
"Highly recommended for anyone new to Unity or C#."
"This course was my first dive into game development and it made sense."
Building a full game is a practical learning experience.
"Building a complete game helped solidify my understanding."
"The practical exercises and building the platformer kept me engaged."
"I loved seeing the game come together as I progressed."
"It's satisfying to see the project grow chapter by chapter."
Instruction is clear and easy to follow for beginners.
"The instructor breaks down complex topics into easily digestible steps."
"I really appreciated how clear the coding explanations were."
"Every concept was explained thoroughly and logically."
"The course is very structured and explains everything step by step."
Some parts may need adjustments for newer Unity versions.
"Some Unity features have changed since the course was made."
"Had to look up workarounds for a few deprecated methods."
"It would be great if the course was updated to the latest Unity version."
"While mostly fine, some code required minor tweaks for newer Unity versions."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Learn to make a 3D Platformer Game with Unity with these activities:
Review C# Fundamentals
Solidify your understanding of C# syntax and object-oriented programming principles before diving into game development with Unity. This will make learning Unity's C# scripting much smoother.
Browse courses on C# Programming
Show steps
  • Review basic C# syntax and data types.
  • Practice writing simple C# programs.
  • Study object-oriented programming concepts like classes, objects, inheritance, and polymorphism.
Practice Basic 3D Modeling
Familiarize yourself with basic 3D modeling concepts and tools. This will help you create or modify assets for your platformer game.
Browse courses on 3D Modeling
Show steps
  • Follow a beginner tutorial on a 3D modeling software like Blender.
  • Practice creating simple 3D shapes and objects.
  • Experiment with different modeling techniques.
Follow Unity Beginner Tutorials
Work through introductory Unity tutorials to get comfortable with the Unity editor and its basic functionalities. This will provide a solid foundation for the course.
Show steps
  • Complete the official Unity Learn 'Roll-a-Ball' tutorial.
  • Explore other beginner-friendly Unity tutorials on YouTube or the Unity Learn platform.
  • Experiment with different Unity features and components.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Prototype a Simple Game Mechanic
Apply what you're learning in the course by prototyping a simple game mechanic, such as a double jump or a wall run. This will reinforce your understanding of C# scripting and Unity's physics engine.
Show steps
  • Choose a simple game mechanic to implement.
  • Write the C# script to control the mechanic.
  • Test and refine the mechanic until it feels polished.
Document Your Learning Journey
Create a blog or video series documenting your progress and challenges while learning Unity. This will help you solidify your understanding and share your knowledge with others.
Show steps
  • Choose a platform to document your journey (blog, YouTube, etc.).
  • Regularly create content about what you're learning and the challenges you're facing.
  • Share your content with the online game development community.
Review 'Game Programming Patterns'
Study common game programming patterns to improve your code structure and design. This will help you create more maintainable and scalable games.
Show steps
  • Read through the book 'Game Programming Patterns'.
  • Identify patterns that are relevant to your game development projects.
  • Apply these patterns to your code.
Contribute to a Unity Open Source Project
Contribute to an open-source Unity project to gain experience working with a team and learn from experienced developers. This will expose you to real-world game development practices.
Show steps
  • Find an open-source Unity project on GitHub or GitLab.
  • Identify a bug or feature to work on.
  • Submit a pull request with your changes.

Career center

Learners who complete Learn to make a 3D Platformer Game with Unity will develop knowledge and skills that may be useful to these careers:
Game Developer
A game developer designs and creates video games for a variety of platforms. This course helps build a foundation in the core principles of game design and development using Unity. The course emphasizes hands-on experience in creating game elements such as character movement, enemy AI, health systems, and level mechanics, all essential skills for a game developer. By learning to use Unity, an industry-standard program, this course may be useful for a prospective game developer to understand the game development process, and apply object-oriented programming in a practical setting.
Unity Developer
A Unity Developer specializes in creating interactive experiences and games using the Unity engine. The course focuses specifically on using Unity to develop a 3D platformer game. The course helps one to learn Unity's layout, use Cinemachine for camera control, create prefabs, implement audio systems, and design levels. A Unity developer will utilize these skills on a regular basis thus this course is excellent preparation. Moreover, it will help a Unity developer to hone their problem-solving skills and adapt to the challenges of game development.
Indie Game Developer
An independent game developer works autonomously or in small teams to create and publish their own games. This course is particularly valuable because it helps build a strong understanding of game development using Unity, a popular choice for indie developers. It provides hands-on experience in creating a full 3D platformer, covering essential aspects like character movement, enemy AI, and level design, mirroring the varied tasks an indie game developer undertakes. By the end of this course, an aspiring indie game developer gains the practical skills and knowledge needed to bring their own game ideas to life, alongside the confidence to tackle future projects.
Gameplay Programmer
A gameplay programmer focuses on implementing the rules, mechanics, and interactions within a game. This course is tailored to those aspects, providing practical experience in creating character movement, implementing enemy AI, designing health systems, and building level mechanics. These are all crucial components that a gameplay programmer works with daily. This course will help a prospective gameplay programmer to develop strong problem-solving skills and a solid understanding of object-oriented programming, essential for creating engaging and functional game experiences.
AI Programmer
An AI programmer specializes in creating the artificial intelligence that controls non-player characters and other game elements. This course offers direct experience in developing state-based enemy AI within a 3D platformer. It encompasses creating patrolling enemies, implementing chase behaviors, designing attack patterns, and managing enemy states, skills highly relevant to an AI programmer. The course provides a practical foundation in AI programming concepts and their application in game development. This course helps an AI programmer become familiar with C# for scripting AI behaviors.
Level Designer
A level designer creates engaging and challenging environments for players to explore. This course is useful because it covers level design principles within Unity, teaching one how to layout levels with prefabs, implement level exits, and design a level select over-world. The course helps a level designer learn how to create interactive elements, like unlocking doors and retracting spikes. The course may also be useful for a level designer to master Unity's Cinemachine camera system to enhance the player's experience.
Game Designer
A game designer is responsible for the overall vision of a game, including its mechanics, story, and gameplay. The course helps one gain a comprehensive understanding of the game development process by creating a 3D platformer from scratch. The course provides practical experience in designing and implementing game elements such as character movement, enemy AI, health systems, and level mechanics. Taking this course may help a game designer to develop strong problem-solving skills and learn how object-oriented programming works in practice, improving the overall quality and engagement of their games.
Virtual Reality Developer
A virtual reality developer creates immersive experiences using virtual reality technology. This course is useful because it directly relates to VR development, as Unity is a primary engine used in the field. This course specifically teaches how to create and program 3D environments, a crucial skill for VR development. The course also helps a virtual reality developer to learn how to implement character movement, interactive elements, and user interfaces, which are essential for creating engaging VR experiences. This may enhance a VR developer's ability to design and build compelling VR applications.
Augmented Reality Developer
An augmented reality developer creates applications that overlay digital content onto the real world. This course is beneficial because it helps build a foundation in using Unity, a popular engine for AR development. The course provides practical experience in creating 3D environments, implementing interactive elements, and managing user interfaces, all crucial for AR applications. This course may enhance an augmented reality developer's ability to create compelling and interactive AR experiences.
Technical Artist
A technical artist bridges the gap between art and programming, optimizing assets and developing tools to improve the art pipeline. While this course primarily focuses on programming and game design, it provides a technical artist exposure to the game development process and the Unity engine. Understanding how game mechanics are implemented, and how art assets are integrated into the game, is highly beneficial. Gaining hands-on experience with Unity's layout, prefabs, and animation systems as covered in the course, may assist a technical artist in streamlining their workflow and collaborating effectively with programmers.
Simulation Developer
A simulation developer creates software that models real-world systems and processes. While this course focuses on game development, it introduces object-oriented programming and the Unity engine, both valuable tools for creating simulations. The course helps a simulation developer learn how to create interactive environments, implement complex behaviors, and manage data, all essential for building realistic and engaging simulations. This course may enable a simulation developer to explore new approaches and enhance the interactivity of their simulations.
Software Engineer
A software engineer designs, develops, and tests software systems. While this course is centered on game development, it provides a strong foundation in C# programming and object-oriented programming principles. A software engineer benefits from learning how to structure and manage a project, implement game mechanics, and solve problems. This course helps improve technical skills and expands knowledge of different software development methodologies. The hands-on experience gained from building a 3D platformer may improve a software engineer's problem-solving abilities and versatility.
Software Developer
A software developer creates applications and systems using programming languages. While this course focuses on game development, it introduces C#, a versatile and widely used programming language. The course helps a software developer to learn object-oriented programming concepts in a practical context and develop problem-solving skills by creating game elements such as character movement and enemy AI. While a software developer may not work directly on games, the skills gained in this course can be applied to various software development projects, making it a useful addition to their skill set. This is especially true for software developers interested in expanding their knowledge of different programming paradigms.
Mobile App Developer
A mobile app developer creates applications for smartphones and tablets. While this course focuses on 3D platformer game development using Unity, the fundamentals of C# programming and object-oriented programming taught in the course are transferable to mobile app development. A mobile app developer can benefit from this course by seeing how these concepts are applied in a real-world project. The problem-solving skills developed through creating game elements and systems can be valuable in mobile app development. Taking this course may help a mobile app developer broaden their skill set and approach to app development.
Web Developer
A web developer builds websites and web applications. While this course primarily focuses on game development using Unity, the underlying programming concepts and problem-solving skills are valuable for web development. The course introduces C#, a versatile language that can be used in web development with frameworks like ASP.NET. The course may help a web developer learn how to structure projects, implement interactive elements, and manage codebases, which are transferable to creating dynamic web applications. This exposure could enhance a web developer's versatility and ability to tackle complex projects.

Featured in The Course Notes

This course is mentioned in our blog, The Course Notes. Read one article that features Learn to make a 3D Platformer Game with Unity:

Reading list

We've selected one books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Learn to make a 3D Platformer Game with Unity.
Explores common design patterns used in game development. It provides a deeper understanding of how to structure your code for maintainability and scalability. While not strictly necessary for this introductory course, it's a valuable resource for aspiring game developers who want to write cleaner and more efficient code. It is more valuable as additional reading than as a current reference.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser