Code a 2D Game Engine using Java – Full Course for Beginners



Learn how to program a 2D game engine from scratch using the Java Programming Language. You will use the game engine to create a Super Mario Clone but the engine can be used to create other games as well. 💻 Code: https://github.com/codingminecraft/MarioYoutube/tree/master ✏️ Course created by GamesWithGabe. Check out his channel: https://www.youtube.com/channel/UCQP4qSCj1eHMHisDDR4iPzw 🎥 Part 2 (final hour of this course): https://youtu.be/roPRqEQZFu8 ⭐️ Course Contents ⭐️
⌨️ (00:00:06) Introduction
⌨️ (00:07:54) Setting up the Window with LWJGL
⌨️ (00:25:20) Adding Event Listeners with GLFW
⌨️ (00:51:42) Creating a Scene Manager & Delta Time Variable
⌨️ (01:11:26) How OpenGL Graphics Programming Works
⌨️ (01:32:53) Drawing the First Square
⌨️ (02:02:56) Regexes and Shader Abstraction
⌨️ (02:24:25) Game Camera OpenGL
⌨️ (02:47:47) GLSL Shaders
⌨️ (03:08:45) Texture Loading in LWJGL3
⌨️ (03:36:02) Entity Component System
⌨️ (04:06:25) Batch Rendering in LWJGL3
⌨️ (04:50:00) Resource Management in LWJGL3
⌨️ (05:05:30) Texture Batching
⌨️ (05:38:48) Spritesheets
⌨️ (06:01:12) Dirty Flags in Rendering
⌨️ (06:23:17) Alpha Blending and Z-Indexing
⌨️ (06:38:56) Integrating ImGui
⌨️ (07:01:56) ImGui Fonts and Scene Integration
⌨️ (07:19:43) Serialization with Gson
⌨️ (07:42:48) Deserialization with Gson
⌨️ (08:06:03) Exposing Variables to the Level Editor
⌨️ (08:25:29) Converting Screen Coords to World Coords
⌨️ (08:49:27) Drag 'N Drop Level Editor
⌨️ (09:15:25) Debug Drawing Functions
⌨️ (09:47:35) Snap To Grid Tool
⌨️ (10:10:25) Debug Drawing Boxes and Circles
⌨️ (10:28:58) Framebuffers in OpenGL
⌨️ (10:52:56) ImGui Docking in Java LWJGL
⌨️ (11:11:55) Adding a Game Viewport
⌨️ (11:34:51) Mouse Screen Coordinates to Game Viewport Coordinates
⌨️ (11:50:01) Pixel PERFECT Mouse Picking
⌨️ (12:23:39) Enabling Mouse Picking and Code Maintenance
⌨️ (12:35:16) Editor Camera Controls with Lerp
⌨️ (13:01:48) Coding Gizmos
⌨️ (13:31:03) Translate and Scale Gizmo
⌨️ (14:04:29) Properties Panel
⌨️ (14:33:53) Integrating JBox2D in our Engine
⌨️ (14:54:53) Event System and Box2D Physics
⌨️ (15:19:09) Adding an Engine Runtime (Play/Stop Buttons)
⌨️ (16:10:10) Refactoring and Physics
⌨️ (16:40:28) Font Rendering
⌨️ (16:43:34) Beginning Scene Hierarchy & ImGui Upgrade
⌨️ (17:00:38) Scene Panel Drag & Drop (ImGui)
⌨️ (17:18:31) Even More Bug Fixing
⌨️ (17:44:51) 2D Animations
⌨️ (18:18:29) Sounds with OpenAL
⌨️ (18:44:27) Improving the Editor
⌨️ (19:21:24) How to Use Box2D Physics
⌨️ (20:06:12) Pillbox Colliders and Player Controllers
⌨️ (20:45:32) Variable Length Jumps
⌨️ (21:25:28) Powerups
⌨️ (21:51:52) Goomba AI
⌨️ (22:29:59) Mario Pipes & Editor Improvements
⌨️ (23:01:59) Game Camera & Grid Lines
⌨️ (23:28:28) Mario Turtle AI
⌨️ (https://youtu.be/roPRqEQZFu8) Adding Flag Poles to Mario
⌨️ (https://youtu.be/roPRqEQZFu8) Fireballs and Bug Fixes
⌨️ (https://youtu.be/roPRqEQZFu8) The LAST Episode and Distributing your Game 🎉 Thanks to our Champion and Sponsor supporters:
👾 Raymond Odero
👾 Agustín Kussrow
👾 aldo ferretti
👾 Otis Morgan
👾 DeezMaster — Learn to code for free and get a developer job: https://www.freecodecamp.org Read hundreds of articles on programming: https://freecodecamp.org/news And subscribe for new videos on technology every day: https://youtube.com/subscription_center?add_user=freecodecamp

Code a 2D Game Engine using Java – Full Course for Beginners

Code a 2D Game Engine using Java – Full Course for Beginners

 

 

 

 

 

 

 

 

 

Contact us

More Code a 2D Game Engine using Java – Full Course for Beginners Videos

Leave a Reply

Your email address will not be published. Required fields are marked *