We may earn an affiliate commission when you visit our partners.
Course image
Unity Technologies and Dustin Carroll
Welcome to Programming for Level Design, the second course in Unity's Gameplay Programming Specialization! This course is exam preparation for Unity's Expert Gameplay Programmer Certification Exam. This course will challenge you with a series of realistic...
Read more
Welcome to Programming for Level Design, the second course in Unity's Gameplay Programming Specialization! This course is exam preparation for Unity's Expert Gameplay Programmer Certification Exam. This course will challenge you with a series of realistic programming problems in Unity video-game projects, inspired by one or more of the topics covered in the Expert Gameplay Programmer Exam. Throughout this course, you will work on a 3D “Dual-Stick Survivor” game project. This will help you practice programming for level design, including configuring GameObject physics, spawning Prefabs, designing level logic and behavior, scripting animation systems and events, and working with in-game cinematics. This is an advanced-level course, intended for industry game developers or very experienced Unity enthusiasts who are looking to “level-up” their gameplay programming and implementation strategies. To succeed in this courses, you should have at least 2-3 years of experience developing games with Unity. You should be familiar with the full-game lifecycle (working from early concept to launch), creating and working with Prefabs, understanding game asset and animation pipelines, and have some experience with Unity Services. You should also have advanced programming skills, particularly in the C# language.
Enroll now

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Examines expert-level techniques in gameplay programming, which is standard in industry video game development
Prepares for Unity's Expert Gameplay Programmer Certification Exam
Instructors Dustin Carroll and Unity Technologies are recognized for their work in game programming
Requires students to have 2-3 years of experience developing games with Unity and advanced programming skills in C#
Taught by Unity Technologies, a leader in game development software
Involves building a 3D game project with Unity, which provides hands-on experience

Save this course

Save Programming for Level Design to your list so you can find it easily later:
Save

Reviews summary

Challenging exam prep for experienced developers

This course is designed to prepare students for the Unity's Expert Gameplay Programmer Certification Exam by presenting a series of realistic programming problems in Unity video-game projects. It is intended for industry game developers or very experienced Unity enthusiasts who are looking to “level-up” their gameplay programming and implementation strategies.
Learned a few new things.
"I learned a few things from this..."
Most information had to be researched independently.
"I... had to search up myself."
Intended for experienced developers.
"This is an advanced-level course, intended for industry game developers or very experienced Unity enthusiasts who are looking to “level-up” their gameplay programming and implementation strategies."
Projects and assignments are poorly organized.
"The projects and assignments are horribly organized..."

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 Programming for Level Design with these activities:
Gather resources and tools for level design
Enhance your level design workflow by compiling a collection of useful resources, such as tutorials, asset libraries, and community forums.
Browse courses on Level Design
Show steps
  • Search for and curate tutorials on various level design topics.
  • Gather asset libraries that provide high-quality models, textures, and animations.
  • Identify and join online communities and forums dedicated to level design.
Write a blog post or article on a specific level design topic
Consolidate your understanding of a particular level design concept by writing a blog post or article that explains it thoroughly.
Browse courses on Level Design
Show steps
  • Choose a specific level design topic to write about.
  • Research and gather information on the topic.
  • Organize your thoughts and create an outline for your writing.
  • Write a clear and engaging blog post or article.
  • Publish your writing and share it with others.
Create a basic Unity game
Creating a basic Unity game will help you practice the programming skills you will learn in this course.
Browse courses on Programming
Show steps
  • Choose a game idea.
  • Create a new Unity project.
  • Add the necessary components to your game objects.
  • Write the code for your game.
  • Test and debug your game.
Nine other activities
Expand to see all activities and additional details
Show all 12 activities
Follow Unity's Level Design Tutorials
Provides structured guidance and practical examples for level design using Unity.
Browse courses on Level Design
Show steps
  • Follow the official Unity tutorials on level design
  • Experiment with different level design techniques
  • Apply the techniques to your own level designs
Create a Basic 3D Level
Develops a foundational understanding of level design principles and practices.
Browse courses on Level Design
Show steps
  • Design the level layout and flow
  • Create basic geometry and terrain
  • Add lighting and environmental effects
  • Implement basic gameplay mechanics
Practice Unity coding challenges
Practicing Unity coding challenges will help you improve your programming skills and prepare for the Expert Gameplay Programmer Certification Exam.
Browse courses on Programming
Show steps
  • Find a list of Unity coding challenges online.
  • Choose a challenge and try to solve it.
  • If you get stuck, ask for help on a forum or from a mentor.
  • Once you have solved the challenge, try to optimize your solution.
Participate in Level Design Peer Reviews
Encourages critical thinking and improvement of level design skills through feedback and collaboration.
Browse courses on Level Design
Show steps
  • Share your level designs with peers for feedback
  • Provide constructive criticism on others' designs
  • Incorporate feedback into your own level designs
Collaborate with peers on a group level design project
Enhance your level design skills by working together with peers to create a level that showcases your combined expertise.
Browse courses on Level Design
Show steps
  • Form a team with other students and brainstorm level ideas.
  • Divide tasks and responsibilities among team members.
  • Create a detailed level design document.
  • Implement the level design in Unity, incorporating feedback from team members.
  • Test and refine the level collaboratively.
Build a simple level using the knowledge gained in the course
Solidify your understanding of the level design process by creating a level that incorporates the skills and concepts learned in the course.
Browse courses on Level Design
Show steps
  • Design the level layout and gameplay mechanics.
  • Configure GameObject physics and behaviors.
  • Spawn and configure Prefabs to populate the level.
  • Implement level logic and behavior using scripting.
  • Test and refine the level's design and functionality.
Develop a Game Level Prototype
Applies the concepts and skills learned in the course to a practical project, promoting hands-on experience and comprehensive understanding.
Browse courses on Level Design
Show steps
  • Design and plan the level prototype
  • Implement the level design in Unity
  • Test and iterate on the level design
  • Present the level prototype to peers or instructors
Follow tutorials on advanced level design techniques
Enhance your level design skills by exploring tutorials that cover advanced techniques, such as procedural level generation, environmental storytelling, and optimization for performance.
Browse courses on Level Design
Show steps
  • Find tutorials on procedural level generation and implement them in Unity.
  • Study tutorials on environmental storytelling and apply them to your level designs.
  • Follow tutorials on optimizing level performance for better gameplay.
Start a personal project to apply the skills learned in the course
Deepen your understanding of level design by initiating a personal project that allows you to experiment with and apply the concepts you've learned.
Browse courses on Level Design
Show steps
  • Identify a specific level design challenge or idea you want to explore.
  • Create a project plan and timeline for your project.
  • Gather necessary resources, such as assets and tools.
  • Implement your level design concept in Unity, experimenting with different techniques and approaches.
  • Test and evaluate your level design, iterating and refining as needed.

Career center

Learners who complete Programming for Level Design will develop knowledge and skills that may be useful to these careers:
Game Designer
Game Designers conceptualize the gameplay, story, characters, and rules for video games. They work closely with programmers and artists to bring their vision to life. Programming for Level Design can help Game Designers by providing them with the technical skills they need to implement their ideas. The course covers topics such as GameObject physics, Prefab spawning, level logic and behavior, and in-game cinematics, which are all essential for creating engaging and immersive game experiences.
Gameplay Programmer
Gameplay Programmers implement the core gameplay mechanics for video games. They work closely with Game Designers and Level Designers to bring the game's vision to life. Programming for Level Design can help Gameplay Programmers by providing them with the programming skills they need to implement complex gameplay systems. The course covers topics such as GameObject physics, Prefab spawning, level logic and behavior, and in-game cinematics, which are all essential for creating engaging and immersive gameplay experiences.
Level Designer
Level Designers create the environments and levels that players explore in video games. They use their knowledge of level design principles and game mechanics to create levels that are both challenging and fun. Programming for Level Design can help Level Designers by providing them with the programming skills they need to implement their level designs. The course covers topics such as GameObject physics, Prefab spawning, level logic and behavior, and in-game cinematics, which are all essential for creating engaging and immersive game levels.
AI Programmer
AI Programmers develop the artificial intelligence (AI) systems for video games. They create AI characters that can interact with players and the environment in a realistic and believable way. Programming for Level Design can help AI Programmers by providing them with the programming skills they need to implement complex AI systems. The course covers topics such as GameObject physics, Prefab spawning, level logic and behavior, and in-game cinematics, which are all essential for creating engaging and immersive AI experiences.
Technical Artist
Technical Artists use their programming skills to create tools and assets for video games. They work closely with artists and programmers to ensure that the game's art and technology are integrated seamlessly. Programming for Level Design can help Technical Artists by providing them with the programming skills they need to create custom tools and assets. The course covers topics such as GameObject physics, Prefab spawning, level logic and behavior, and in-game cinematics, which are all essential for creating engaging and immersive game experiences.
Game Director
Game Directors are responsible for the creative vision and overall direction of video games. They work with all members of the development team to ensure that the game is a cohesive and enjoyable experience. Programming for Level Design may be helpful for Game Directors by providing them with a better understanding of the technical aspects of game development. This can help them to make informed decisions about the game's design and development process.
Game Producer
Game Producers are responsible for the overall development and production of video games. They work with all members of the development team to ensure that the game is completed on time and within budget. Programming for Level Design may be helpful for Game Producers by providing them with a better understanding of the technical aspects of game development. This can help them to make informed decisions about the game's design and development process.
Software Engineer
Software Engineers develop and maintain software applications. They use their programming skills to create software that meets the needs of users. Programming for Level Design may be helpful for Software Engineers by providing them with a better understanding of the software development process. This can help them to develop software that is more efficient and user-friendly.
Web Developer
Web Developers create and maintain websites. They use their programming skills to create websites that are both functional and visually appealing. Programming for Level Design may be helpful for Web Developers by providing them with a better understanding of the web development process. This can help them to create websites that are more efficient and user-friendly.
Data Scientist
Data Scientists use their programming skills to analyze data and extract insights. They work with businesses to help them make better decisions. Programming for Level Design may be helpful for Data Scientists by providing them with a better understanding of the data analysis process. This can help them to develop more effective data analysis models.
Machine Learning Engineer
Machine Learning Engineers develop and maintain machine learning models. They use their programming skills to create models that can learn from data and make predictions. Programming for Level Design may be helpful for Machine Learning Engineers by providing them with a better understanding of the machine learning process. This can help them to develop more effective machine learning models.
Data Analyst
Data Analysts use their programming skills to analyze data and extract insights. They work with businesses to help them make better decisions. Programming for Level Design may be helpful for Data Analysts by providing them with a better understanding of the data analysis process. This can help them to develop more effective data analysis models.
Business Analyst
Business Analysts use their analytical and programming skills to help businesses improve their operations. They work with businesses to identify problems and develop solutions. Programming for Level Design may be helpful for Business Analysts by providing them with a better understanding of the software development process. This can help them to develop more effective solutions to business problems.
Product Manager
Product Managers are responsible for the development and marketing of products. They work with teams to ensure that products meet the needs of customers. Programming for Level Design may be helpful for Product Managers by providing them with a better understanding of the software development process. This can help them to develop and market software products more effectively.
Project Manager
Project Managers plan and execute projects. They work with teams to ensure that projects are completed on time and within budget. Programming for Level Design may be helpful for Project Managers by providing them with a better understanding of the software development process. This can help them to plan and execute software development projects more effectively.

Reading list

We've selected seven 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 Programming for Level Design.
Provides a collection of design patterns commonly used in game programming, including patterns for level design.
Provides a comprehensive overview of level design for mobile games, including specific techniques for Unity.
Provides a collection of examples of how to program AI for games, including examples for level design.

Share

Help others find this course page by sharing it with your friends and followers:
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 - 2024 OpenCourser