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: ✏️ Course created by GamesWithGabe. Check out his channel: 🎥 Part 2 (final hour of this course): ⭐️ 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 ⌨️ () Adding Flag Poles to Mario ⌨️ () Fireballs and Bug Fixes ⌨️ () 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: Read hundreds of articles on programming:
Hide player controls
Hide resume playing