Uploaded February 2025 | Updated September 2026, 5 hours ago
You are using inheritance the wrong way in your projects.
In this video, we explore how to properly apply Object-Oriented Programming fundamentals by creating a clone of the classic game Asteroids.
Discover why inheritance isn't always the best solution and learn a more efficient approach to organizing your code. I demonstrate in practice how to implement a component that we can reuse on any object in the game without adding a single line of code to them.
This is part of a series where we build a replica of the game Asteroids with:
- Functional shooting system
- Asteroid and UFO spawners
- Scoring system
- Complete gameplay loop
Subscribe to the channel for more content about game design, game development, and game thinking!
Get personalized guidance to develop and launch games:
🚀ko-fi.com/ludensludonaut/commissions
Learn how to design, develop, and launch games:
🎓ko-fi.com/s/f9fd32c6f7
Send a letter to the stars and support Milkyway Mailing Inc.
🌌ko-fi.com/milkywaymail/commissions
Get access to assets, tutorial files, and more:
👨🚀ko-fi.com/ludensludonaut/tiers
Learn the 12 Essential Features of Platformer Games:
📘ko-fi.com/s/8df29350d8
---
00:00 - I. Introduction to the Asteroids Project
00:30 - II. Review of Previous OOP Lesson
01:28 - III. Project Code Access
02:25 - IV. The Problem with Inheritance
02:55 - V. The Two Conditions for Inheritance
03:52 - VI. Issues with Inheritance and Alternatives
05:18 - VII. Practical Demonstration
06:46 - VIII. Creating the Position Wrapper Component
07:44 - IX. Project Organization Structure
08:41 - X. Position Wrapper Implementation
10:38 - XI. Applying the Position Wrapper to the Player
12:05 - XII. Creating the Asteroid Scene
13:32 - XIII. Private Variables and Encapsulation
15:25 - XIV. Asteroid Interface
17:19 - XV. Testing the Position Wrapper on the Asteroid
18:01 - XVI. Creating the Game Level
18:57 - XVII. Final Demonstration
19:25 - XVIII. Presentation of Ornament Tower Project
20:18 - XIX. Victor's Success Story
20:47 - XX. Closing and Links
You are using inheritance the wrong way in your projects.
In this video, we explore how to properly apply Object-Oriented Programming fundamentals by creating a clone of the classic game Asteroids.
Discover why inheritance isn't always the best solution and learn a more efficient approach to organizing your code. I demonstrate in practice how to implement a component that we can reuse on any object in the game without adding a single line of code to them.
This is part of a series where we build a replica of the game Asteroids with:
- Functional shooting system
- Asteroid and UFO spawners
- Scoring system
- Complete gameplay loop
Subscribe to the channel for more content about game design, game development, and game thinking!
Get personalized guidance to develop and launch games:
🚀ko-fi.com/ludensludonaut/commissions
Learn how to design, develop, and launch games:
🎓ko-fi.com/s/f9fd32c6f7
Send a letter to the stars and support Milkyway Mailing Inc.
🌌ko-fi.com/milkywaymail/commissions
Get access to assets, tutorial files, and more:
👨🚀ko-fi.com/ludensludonaut/tiers
Learn the 12 Essential Features of Platformer Games:
📘ko-fi.com/s/8df29350d8
---
00:00 - I. Introduction to the Asteroids Project
00:30 - II. Review of Previous OOP Lesson
01:28 - III. Project Code Access
02:25 - IV. The Problem with Inheritance
02:55 - V. The Two Conditions for Inheritance
03:52 - VI. Issues with Inheritance and Alternatives
05:18 - VII. Practical Demonstration
06:46 - VIII. Creating the Position Wrapper Component
07:44 - IX. Project Organization Structure
08:41 - X. Position Wrapper Implementation
10:38 - XI. Applying the Position Wrapper to the Player
12:05 - XII. Creating the Asteroid Scene
13:32 - XIII. Private Variables and Encapsulation
15:25 - XIV. Asteroid Interface
17:19 - XV. Testing the Position Wrapper on the Asteroid
18:01 - XVI. Creating the Game Level
18:57 - XVII. Final Demonstration
19:25 - XVIII. Presentation of Ornament Tower Project
20:18 - XIX. Victor's Success Story
20:47 - XX. Closing and Links










