Entity Component System | Coding a 2D Game Engine in Java #10
Join the Discord: https://discord.gg/4tHeAkxNg7 In this tutorial, I describe the different methods of abstracting game logic into components. Specifically, I go over the Component Pattern as described by Bob Nystrom in GameProgrammingPatterns, data-oriented design, as specified by the article below, and Entity Component System. I give a brief overview of how each of these systems are coded, and then we implement the Component Pattern. I also describe how to handle the problem of Component communication. The method I use, uses the GameObject as a middleman, that coordinates communication between different components that it contains. Code for this tutorial: https://github.com/codingminecraft/MarioYoutube/tree/803e66d9a2365dce9faf1a89998fa7b1c48a1e6d ECS Articles ============ * https://medium.com/ingeniouslysimple/entities-components-and-systems-89c31464240d * http://gameprogrammingpatterns.com/component.html I haven't looked through these articles, but it looks like there may be some good resources. * https://github.com/dbartolini/data-oriented-design --------------------------------------------------------------------- Website: https://ambrosiogabe.github.io/ Github: https://github.com/ambrosiogabe Here are some books I recommend if you want to learn about game engine development more thoroughly. I do not profit off any of these sales, these are just some books that have helped me out :) My Recommended Game Engine Books: Game Engine Architecture: https://www.gameenginebook.com/ Game Physics Cookbook (Read this before the next physics book): https://www.amazon.com/Game-Physics-Cookbook-Gabor-Szauer/dp/1787123669 Game Physics (Ian Millington): https://www.amazon.com/Game-Physics-Engine-Development-Commercial-Grade/dp/0123819768 Game Programming Patterns (Free): https://gameprogrammingpatterns.com/ My Recommended Beginning Game Programming Books: JavaScript Game Design: https://www.apress.com/gp/book/9781430247166 My Recommended Java Books: Data Structures/Algorithms: https://www.amazon.com/Data-Structures-Algorithms-Java-6th-ebook/dp/B00JDRQF8C LWJGL (Free, but I haven't read this thoroughly): https://lwjglgamedev.gitbooks.io/3d-game-development-with-lwjgl/content/ Outro Music: https://www.bensound.com/royalty-free-music
Download
1 formatsVideo Formats
Right-click 'Download' and select 'Save Link As' if the file opens in a new tab.