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

Learn how to create and program your very own side-scrolling Space Shooter 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 side-scrolling Space Shooter 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 movement and firing mechanics

  • Scrolling Backgrounds

  • Enemies with multiple movement patterns

  • Spawning waves of enemies and space debris

  • Power Ups

  • Music & Sound Effects

  • A Fully-featured Boss Battle

  • Fully interactive menus

  • Tracking scores and high scores

  • and more...

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

Enroll now

What's inside

Syllabus

Introduction
Asset Files
Setup
Setting Up The Project
Read more

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Provides a practical introduction to game development with Unity, a widely used engine in both indie and large game studios, making it a valuable skill for aspiring developers
Covers essential game mechanics like player movement, shooting, enemy AI, and UI design, offering a comprehensive foundation for creating 2D space shooters and similar games
Includes challenges throughout the course, such as creating a player explosion effect and designing more enemy types, encouraging active learning and problem-solving skills
Uses Unity, which is frequently updated; learners should ensure they are using a version of Unity that is compatible with the course content to avoid potential issues
Offers bonus complete project files, allowing learners to examine a fully functional game and understand how all the elements work together, which can be a great learning resource

Save this course

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

Reviews summary

Beginner-friendly unity space shooter

According to learners, this course provides a highly accessible introduction to Unity game development by guiding students through creating a complete space shooter game. Many reviewers describe it as great for beginners, praising the instructor's clear explanations and the step-by-step teaching method. The hands-on project structure, building a full game, is highlighted as particularly effective and motivating. While it offers an excellent foundation in core Unity concepts and C# scripting fundamentals necessary for game logic, some students noted the course uses an older version of Unity, which occasionally requires minor adjustments for those using the latest software. Overall, students feel it successfully equips them with the basic skills to start their game development journey.
Provides a foundation, but not advanced topics.
"It gives you a solid base in Unity and C# for games, but it doesn't go into advanced programming or design patterns."
"This is a great first step, but you'll definitely need other resources to move beyond basic projects."
"The course covers exactly what it promises - building a simple shoot 'em up, no more, no less."
Instructor explains concepts clearly.
"The instructor explains concepts very clearly and is easy to understand."
"Lectures are well-paced and broken down into manageable steps."
"Found the teaching style to be very effective for learning."
"His explanations for the coding parts were easy to grasp, even for a non-programmer."
Learn by building a complete game project.
"Building a complete game from scratch was very rewarding and helped solidify everything I learned."
"I loved that we worked on a single, functional project throughout the course."
"The project-based learning approach is very effective and kept me engaged."
"Having a finished game at the end is a great motivator and portfolio piece."
Course is highly accessible for new learners.
"As someone completely new to Unity and coding, I found this course incredibly easy to follow and understand."
"The step-by-step approach and clear instructions make this perfect for anyone starting their game dev journey."
"I had zero prior experience, but I was able to follow along and build the game with confidence."
"Excellent starting point for learning Unity fundamentals."
"This course assumes no prior knowledge which is great for true beginners."
Uses an older Unity version requiring minor updates.
"The course uses an older version of Unity, so some steps required slight adjustments in the current version."
"Had to look up solutions for a few things that changed in newer Unity updates."
"While mostly compatible, the version difference was noticeable at times."
"Be prepared for minor differences if you're using the very latest Unity build."

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 Create a Space Shoot 'Em Up With Unity with these activities:
Review C# Fundamentals
Reinforce your understanding of C# syntax and programming concepts. This will make learning Unity scripting much easier.
Browse courses on C# Scripting
Show steps
  • Review basic C# syntax and data types.
  • Practice writing simple C# programs.
  • Familiarize yourself with object-oriented programming concepts.
Brush up on Linear Algebra
Review linear algebra concepts to better understand game object transformations. This will help you understand how objects move and rotate in 3D space.
Browse courses on Vectors
Show steps
  • Review vector addition and scalar multiplication.
  • Understand matrix multiplication and its applications.
  • Learn about transformations in 2D and 3D space.
Follow Unity Tutorials
Work through Unity's official tutorials to gain hands-on experience. This will help you become more familiar with the Unity editor and its features.
Show steps
  • Choose a Unity tutorial relevant to 2D game development.
  • Follow the tutorial step-by-step, paying attention to the explanations.
  • Experiment with the code and settings to understand how they work.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Practice Scripting Movement
Practice scripting different movement patterns for game objects. This will improve your ability to create dynamic and engaging gameplay.
Show steps
  • Implement basic movement using transform.Translate.
  • Experiment with different movement speeds and directions.
  • Implement more complex movement patterns using forces and physics.
Create a Simple Prototype
Start a small, personal project to apply what you've learned in the course. This will help you solidify your understanding and build your portfolio.
Show steps
  • Design a simple game mechanic or feature.
  • Implement the mechanic using Unity and C#.
  • Test and refine the mechanic until it's polished.
Write a Dev Blog Post
Document your game development journey and share your insights with others. This will help you reflect on your learning and build your online presence.
Show steps
  • Choose a topic related to your game development experience.
  • Write a clear and concise blog post about the topic.
  • Share your blog post on social media and relevant forums.
Contribute to a Unity Asset
Contribute to an open-source Unity asset to gain experience working on a larger project. This will help you learn about collaboration and best practices.
Show steps
  • Find an open-source Unity asset that interests you.
  • Identify a bug or feature that you can contribute.
  • Submit a pull request with your changes.

Career center

Learners who complete Create a Space Shoot 'Em Up With Unity will develop knowledge and skills that may be useful to these careers:
Hobbyist Game Developer
A hobbyist game developer creates games for personal enjoyment, often working on projects in their spare time. This course would directly support building a complete game. By guiding students through the process of creating a space shooter game, the course gives them the knowledge and confidence to pursue game development as a hobby. One who wishes to develop games as a hobby may find this course perfect.
Game Developer
A game developer designs and codes video games for various platforms. This often involves creating the core mechanics, implementing game logic, and ensuring a smooth and engaging player experience. This course, focused on creating a space shooter using Unity, directly aligns with the skills needed for a game developer. The course's syllabus which includes movement and firing mechanics along with spawning enemies and implementing UI, gives aspiring game developers the foundational knowledge to build interactive games. Those who wish to pursue a career as a game developer may find this course helpful.
Unity Developer
A Unity developer specializes in using the Unity game engine to create interactive experiences, including games and simulations. Their expertise lies in scripting gameplay elements, optimizing performance, and integrating assets into the Unity environment. This course provides a strong introduction to Unity development by guiding students through the creation of a space shooter game. Learning to implement features such as scrolling backgrounds, enemy waves, power-ups, and boss battles within Unity can help aspiring Unity developers build a solid portfolio and demonstrate their skills. One interested in becoming a Unity developer may find this course helpful.
Indie Game Developer
An indie game developer works independently or as part of a small team to create and publish their own video games. They often wear multiple hats, handling programming, art, design, and marketing. This course is particularly valuable for aspiring indie game developers. By learning to create a complete game from scratch—including movement, enemies, scoring, and UI—individuals can gain the confidence and skills needed to embark on their own game development projects. One interested in pursuing a path as an indie game developer may find this course immensely helpful.
Gameplay Programmer
A gameplay programmer focuses on implementing the interactive elements of a video game, such as character movement, combat systems, and artificial intelligence. This involves writing code that brings the game's design to life and ensures a fun and engaging player experience. This course aligns well with the responsibilities of a gameplay programmer. The course covers essential gameplay mechanics, including player movement, firing projectiles, enemy AI, and power-up implementation. Anyone wishing to become a gameplay programmer may find this course very useful due to its discussion of gameplay elements.
Game Designer
A game designer is responsible for conceiving and designing the overall vision and mechanics of a video game. This involves creating game concepts, defining rules, and designing levels to provide an engaging and entertaining player experience. This course, though focused on implementation, gives insight into common design patterns. Creating a space shooter from scratch involves considerations about game progression, difficulty, and reward systems. Someone who wishes to become a game designer may be helped by grasping implementation details.
Mobile Game Developer
A mobile game developer specializes in creating games for smartphones and tablets. While this course doesn't explicitly focus on mobile optimization, the core game development principles learned in this course are transferable to mobile platforms. The course provides a practical introduction to game development with Unity covering game mechanics, UI design, and asset integration, which can form a foundation for mobile game development. Aspiring mobile game developers may find this course a starting point on their path.
Simulation Developer
A simulation developer creates realistic and interactive simulations for training, research, or entertainment purposes. The skills learned in this course, such as creating movement mechanics, implementing object interactions, and designing user interfaces, are highly applicable to simulation development. The course's focus on using Unity, a versatile engine, further enhances its relevance to this field. Someone looking to create simulations may find this course helpful.
AI Programmer
An artificial intelligence programmer develops the AI systems that control non-player characters and other dynamic elements within a game. This course directly supports this path by providing a look into enemy movements. The course includes the creation of enemies with varied and complex movement patterns. Understanding this would enable the AI programmer to script more complex movements. One who wishes to become an AI programmer may find this course helpful.
VR Developer
A virtual reality developer creates immersive experiences using VR technology, often utilizing game engines like Unity. This course helps VR Developers learn Unity in a game context. The course provides hands-on experience with creating interactive game elements, implementing movement and interaction mechanics, and designing user interfaces. All these are relevant to VR development as well. Aspiring VR developers may find this course helpful despite its limited scope.
AR Developer
An augmented reality developer creates applications that overlay digital content onto the real world, often using mobile devices or specialized AR headsets. This course may help AR developers learn how to program interaction in Unity. The course provides hands-on experience with creating interactive game elements, implementing movement and interaction mechanics, and designing user interfaces. These are also applicable skills for an AR developer. One who wants to become an augmented reality developer may find this course of use.
Software Engineer
A software engineer designs, develops, and tests software applications. While not specific to game development, the skills learned in this course, such as programming logic and problem-solving, are transferable to software engineering roles. Concepts of software architecture and design appear in game development as well and are implemented using logic similar to that found in other contexts. The practical experience of building a complete game from scratch can be a valuable asset in demonstrating coding proficiency. One who wishes to transition to software engineering may find that this course helps in gaining a practical understanding of software development workflows.
Technical Artist
A technical artist bridges the gap between artists and programmers, ensuring that art assets are efficiently integrated into a game engine and that artistic visions are technically feasible. This course may support the development of technical skills useful in game development. Learning about asset use, game construction, and the architecture of Unity may be helpful for a technical artist. One who wishes to pursue a path as a technical artist may find this course useful.
Computer Science Teacher
A computer science teacher educates students on programming, algorithms, and software development. While this course doesn't directly cover teaching methodologies, the practical game development skills learned can enrich a computer science curriculum or provide engaging examples for students. The course's hands-on approach to creating a space shooter game can be adapted into classroom projects or demonstrations, making learning more interactive. One who wishes to become a computer science teacher may find this course enriching.
Tools Programmer
A tools programmer creates software that helps other game developers such as artists streamline their workflows. While this course is focused on game creation, the lessons about architecture and asset management may be useful for a tools programmer. The focus on Unity may teach one how to connect code with a game engine. An aspiring tools programmer may learn from this course.

Reading list

We haven't picked any books for this reading list yet.
Covers shaders and effects in Unity. It great resource for beginners who want to learn how to create custom shaders and effects.
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 game design patterns in Unity. It great resource for beginners who want to learn how to create reusable and maintainable game code.
Provides a comprehensive overview of Unity, covering everything from the basics to advanced concepts. It great resource for both beginners and experienced Unity users.
Focuses on augmented reality game development in Unity. It great resource for beginners who want to learn how to create AR games.
Comprehensive guide to level design. It covers everything from the basics of level design to the more advanced techniques used by professional level designers.
Explores the psychological principles behind game design. It's a great resource for anyone who wants to learn more about how to create games that are fun and engaging.
Classic in the field of game design, and it's a must-read for anyone who wants to learn more about the art and science of creating great games.
Deep dive into the architecture of game engines. It's a great resource for anyone who wants to learn more about how game engines work.
Comprehensive guide to game development with Python. It covers everything from game design to programming to art and sound design.
Practical guide to writing efficient and maintainable game code. It's a great resource for anyone who wants to improve their programming skills.
Provides a comprehensive overview of the game development process, covering everything from game design to programming to art and sound design. It's a great starting point for anyone who wants to learn more about game development.
Practical guide to writing great game narratives. It covers everything from the basics of storytelling to the more advanced techniques used by professional game writers.
Comprehensive guide to game development and production. It covers everything from the basics of game development to the more advanced techniques used by professional game developers.
Great introduction to game programming for beginners. It uses a simple programming language called Game Maker Language (GML) to teach the basics of game development.
Collection of recipes that demonstrate how to solve common programming problems in C#.
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.
A follow-up to 'Effective C#', this book offers another collection of expert tips and techniques for optimizing C# code. It delves into more advanced topics and provides further guidance on writing efficient and maintainable applications. It's a valuable resource for experienced C# developers.

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