We may earn an affiliate commission when you visit our partners.
Noa Calice (aka Blackthornprod)

In this game creation course, my brother and I will bring you through the process of making a 2D platformer game using Unity and C#.

This is an all-time classic genre, a blank canvas to let your imagination run wild.

We'll begin by learning how to make a solid player controller, with wall jumping and sliding. Then we will go on a fun journey bringing to life unique enemy characters such as a shooting warlock, a flying bat that avoids obstacles, and a patrolling goblin. So you can expect some simple but fun tutorials on AI.

Read more

In this game creation course, my brother and I will bring you through the process of making a 2D platformer game using Unity and C#.

This is an all-time classic genre, a blank canvas to let your imagination run wild.

We'll begin by learning how to make a solid player controller, with wall jumping and sliding. Then we will go on a fun journey bringing to life unique enemy characters such as a shooting warlock, a flying bat that avoids obstacles, and a patrolling goblin. So you can expect some simple but fun tutorials on AI.

You'll learn how to make moving platforms, a flexible camera, and weapon pickup and switching.

If you've ever wondered how to make an easy unlockable level system, then that's covered too.

Get ready to dive into the universe of particle effects and game juice, learning how to make attacks and jumps more satisfying with sound effects and screen shake for example.

I'll share some useful and easy to implement tips and tricks to make your platformer game environments shine with soft overlays for lighting, parallax to add depth to the world, little trees and grass tufts which move underfoot and post-processing.

Last but not least, by purchasing this course you'll get access to all the project files. Lots of art, animations, code, sounds, and effects at your disposal. Whatsmore, you'll be able to join the courses unique Discord server and chat with a community of game creators, ask for help if you get stuck, and share your hard work with fellow students.

I look forward to seeing what unique worlds you'll bring to life with the course.

Enroll now

What's inside

Learning objectives

  • Learn how to make a 2d platformer player controller with wall jumping and sliding.
  • Create unique enemy characters with simple but fun ai behaviors.
  • Make moving platforms.
  • Learn how to make a weapon pickup and switching system.
  • Create an unlockable level menu.
  • Make particle effects and add game juice, learning how to make attacks and jumps more satisfying and fun with sound effects and screen shake.
  • Add parallax to give your 2d world more depth.
  • Learn how to make your game environments shine with soft overlays, clouds, and small environmental pieces that react to the player.
  • Show more
  • Show less

Syllabus

Introduction
How to Use This Course
How to use this course LINKS
Making the 2D Platformer
Read more
Player Controller
Wall Jumping
Player Animation Transitions
Making the Camera
Patrol Enemy Character
Flying Enemy Character
Warlock Enemy Character
Player Attack
Weapon Switching
Moving Platforms
Camera Shake
Particle Effects
Sound Effects
Bringing our Game Environment to Life
Health UI
Making a Main Menu
Level Selection
Adding some Post Processing
CONCLUSION

Save this course

Save How to Make a 2D Platformer with Unity & C# to your list so you can find it easily later:
Save

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 How to Make a 2D Platformer with Unity & C# with these activities:
Review C# Fundamentals
Reinforce your understanding of C# syntax, data types, and control flow to prepare for scripting in Unity.
Show steps
  • Review C# tutorials and documentation.
  • Practice writing simple C# programs.
  • Familiarize yourself with object-oriented programming concepts.
Review Unity Editor Basics
Familiarize yourself with the Unity editor interface, scene management, and basic game object manipulation.
Browse courses on Unity Editor
Show steps
  • Explore the Unity editor interface.
  • Create and manipulate game objects in a scene.
  • Learn about the different panels and windows in Unity.
Implement Basic Player Movement
Practice implementing basic player movement using Unity's physics engine and C# scripting.
Show steps
  • Create a new Unity project.
  • Create a player game object with a Rigidbody2D component.
  • Write a C# script to control player movement using keyboard input.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Follow Unity's 2D Platformer Tutorial
Work through Unity's official 2D platformer tutorial to gain hands-on experience with the concepts covered in the course.
Show steps
  • Download the tutorial project from Unity's website.
  • Follow the tutorial instructions step-by-step.
  • Experiment with different settings and parameters to customize the game.
Create a Devlog
Document your game development progress in a devlog to reflect on your learning and share your work with others.
Show steps
  • Choose a platform for your devlog (e.g., blog, YouTube, forum).
  • Regularly update your devlog with screenshots, videos, and descriptions of your progress.
  • Solicit feedback from other developers and players.
Design a New Level
Apply what you've learned to design and build a new level for your platformer game.
Show steps
  • Sketch out a level design on paper.
  • Create the level in Unity using tilemaps and other assets.
  • Test the level to ensure it is fun and challenging.
Contribute to a Unity Asset
Contribute to an open-source Unity asset to gain experience working on a collaborative project and improve your skills.
Show steps
  • Find an open-source Unity asset on GitHub or GitLab.
  • Fork the repository and make your changes.
  • Submit a pull request with your changes.

Career center

Learners who complete How to Make a 2D Platformer with Unity & C# will develop knowledge and skills that may be useful to these careers:
Unity Developer
Unity Developers specialize in creating games and interactive experiences using the Unity game engine. They are proficient in C# programming and have a strong understanding of game development principles. A Unity Developer will see that this course will help them gain practical experience in creating 2D platformer games using Unity and C#. By learning how to implement player controls, enemy AI, and level design, they will develop a strong foundation in Unity development. This course is a great way for a Unity Developer to enhance competence.
Indie Game Developer
As an Indie Game Developer, you independently create and publish video games, often handling design, programming, art, and marketing. All aspects of game development are within the scope of this profession. Taking this course will prove to be valuable because it covers a wide range of essential skills, including player control, enemy AI, level design, and visual effects. The course allows you to work through a complete 2D platformer project, providing hands-on experience that is directly applicable to indie game development. An Indie Game Developer should consider taking this course to start developing their own games.
Gameplay Programmer
Gameplay Programmers implement the mechanics and systems that define how a player interacts with a game. This role requires strong coding skills and a deep understanding of game design principles. One who strives to be a Gameplay Programmer will realize that this is the course for them. The course helps students implement player controls, enemy AI, and weapon systems using C# in Unity, which are essential skills for gameplay programming. Learning how to create the player controller with wall jumping and sliding, will provide a solid foundation in implementing complex movement mechanics, useful for a Gameplay Programmer.
Level Designer
The Level Designer crafts the environments and layouts within a video game. They ensure each level is both aesthetically pleasing and functional for gameplay. A Level Designer will see that this course helps them understand how to create compelling level layouts, integrate gameplay mechanics, and add depth to 2D worlds. The course's coverage of parallax scrolling, moving platforms, and environmental enhancements provides a practical understanding of level design principles. This is a worthy course to take on the path of a Level Designer.
Game Designer
A Game Designer conceptualizes and designs the gameplay, rules, and structure of video games. This role involves creating engaging and challenging experiences for players. One who embarks on a career as Game Designer will find that this course will help them prototype and implement game mechanics, experiment with level design, and develop enemy AI. In particular, the skills gained making a character controller, setting up an unlockable level system, and implementing particle effects translate directly to designing compelling gameplay features. A student should take this course to build a foundation in 2D game development which will prove useful on their Game Designer journey.
AI Programmer
An AI Programmer specializes in creating the artificial intelligence that drives non-player characters (NPCs) and other dynamic elements within a game. They design and implement algorithms that control enemy behaviors, pathfinding, and decision-making processes. One who aspires to be an AI Programmer may find that this course helps them gain practical experience in implementing simple AI behaviors for enemy characters using C#. By learning how to create patrolling enemies, flying enemies, and warlocks, the student will understand the basics of AI implementation in games. This serves as an excellent starting point for a career as an AI Programmer.
Technical Artist
A Technical Artist bridges the gap between art and programming, optimizing assets and implementing visual effects in a game engine. They ensure that the game looks great while running smoothly. By taking this course, the student will gain exposure to visual effects, particle systems, and environmental enhancements, all of which are critical for creating visually appealing games. The course's coverage of post processing, soft overlays, and parallax effects helps you refine your technical art skills. A Technical Artist can greatly benefit from skills taught in this course.
Animator
Animators create the movement and behavior of characters and objects in video games. They use software tools to design and implement animations that bring the game world to life. This role involves creating smooth and realistic animations. The course helps one learn how to implement and control player animations using Unity's animation system, which are essential skills for game animation. By learning how to create animation transitions, the student will develop a strong understanding of character animation in games. An Animator may benefit from this course.
Sound Designer
Sound Designers create and implement the audio elements of a video game, including sound effects, music, and dialogue. They work to enhance the player's experience through immersive and impactful sound design. A Sound Designer should see that this course helps them understand how to integrate sound effects into a game project and create satisfying audio feedback. By learning how to add sound effects to attacks and jumps, they'll be able to create more engaging and immersive gameplay. Aspiring Sound Designers may find this course to be useful.
Mobile Game Developer
A Mobile Game Developer creates games specifically for mobile devices, such as smartphones and tablets. This involves optimizing gameplay, graphics, and performance for mobile platforms. One who strives to be a Mobile Game Developer may find this course useful as it covers a wide range of game development skills. By learning how to create 2D platformers, implement player controls, and design engaging levels, they will develop a foundation for mobile game development. This platform is a great first step in your journey to becoming a Mobile Game Developer.
Curriculum Developer
Curriculum Developers design and create educational materials which includes courses, lesson plans, and training programs. They ensure that the content is engaging, effective, and aligned with learning objectives. Studying this course helps one understand how to structure a game development course, break down complex topics into manageable steps, and provide hands-on learning experiences. By seeing how the course covers player controls, enemy AI, level design, and visual effects, they will gain insights into effective curriculum design principles. Aspiring Curriculum Developers may find this course helpful.
Character Artist
Character Artists design and create the visual appearance of characters in video games. They focus on modeling, texturing, and rigging characters to bring them to life. A Character Artist may find this course useful because it allows them to work with pre-made character art and animations in a real game project. By seeing how characters are implemented and animated in Unity, they will gain insights into the technical considerations of character art. A Character Artist should consider taking this course to enhance experience.
Software Engineer
Software Engineers design, develop, and test software applications. While not exclusively game-related, the coding and problem-solving skills developed in game development are valuable in broader software engineering roles. The skills that a Software Engineer needs, such as proficiency in C#, algorithm design, and software architecture, can be developed by working on this course. The course is a great way to learn practical coding skills and apply them to real-world projects. A Software Engineer may find this course useful in their journey.
Tools Programmer
A Tools Programmer creates and maintains the software tools used by other developers, such as designers and artists, to streamline their workflows. This role often involves developing custom editors, scripts, and plugins within a game engine like Unity. The knowledge gained in this course may help one understand the structure of a Unity project and how to extend its functionality. By learning how to create custom game mechanics and systems, they will develop valuable insights into the needs of game developers and create effective tools to support them. One who strives to be a Tools Programmer will benefit from this course.
Game Tester
Game Testers play video games to identify bugs, glitches, and other issues that need to be fixed before release. They provide feedback to developers to improve the quality of the game. This course may help one understand the game development process and the types of issues that can arise during development. By working through a complete project, they gain insights into the complexities of game development and the importance of thorough testing. A Game Tester may find this course to be a valuable tool.

Reading list

We haven't picked any books for this reading list yet.
Examines the technical design and architecture of 2D platformer games, providing insights into how these games are structured and optimized.
Provides a comprehensive overview of Unity, covering everything from the basics to advanced concepts. It great resource for both beginners and experienced Unity users.
Covers the fundamentals of AI for 2D platformer games, including pathfinding, enemy behavior, and boss design.
Covers best practices for using Unity in production. It great resource for experienced Unity users who want to learn how to create high-quality games.
Covers shaders and effects in Unity. It great resource for beginners who want to learn how to create custom shaders and effects.
Covers game design patterns in Unity. It great resource for beginners who want to learn how to create reusable and maintainable game code.
Focuses on augmented reality game development in Unity. It great resource for beginners who want to learn how to create AR games.
Provides a modern take on classic design patterns, showing how to use them in C# to create maintainable and scalable code.
Explores common design patterns used in C# programming, providing practical examples that demonstrate how to use them effectively.
Comprehensive guide to Entity Framework Core, an object-relational mapper (ORM) that makes it easy to work with data in C# applications.
Great introduction to C# for beginners, covering the basics of the language as well as more advanced topics such as object-oriented programming and data structures.
Provides a deep dive into the Common Language Runtime (CLR), the underlying platform that executes C# code.
Comprehensive guide to the latest version of C# and .NET Core, covering new features such as async/await, generics, and delegates.
Comprehensive guide to the latest version of C# and .NET, covering new features such as minimal APIs, top-level statements, and global using directives.
Comprehensive guide to ASP.NET Core, a modern web framework for building web applications in C#.

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