Translate and Scale Gizmo | Coding a 2D Game Engine in Java #35

Channel:
Subscribers:
59,400
Published on ● Video Link: https://www.youtube.com/watch?v=z-bkJSFgKZY



Duration: 33:33
2,791 views
0


Join the Discord: https://discord.gg/4tHeAkxNg7

In this episode I expand on the gizmo that we were creating in the previous episode. We implement the functionality so that the translate gizmo actually translates the objects, then we refactor it to be easily extendible and create a scale gizmo using the same code. I also go over how to create proper mouse drag event detection, and add the proper mouse dragging into the event handler. And finally, I add a gizmo system that allows the user to switch between gizmo modes (translate, scale, etc) and then manipulate the active game object in different ways.

Gizmos.png: https://github.com/codingminecraft/MarioYoutube/blob/master/assets/images/gizmos.png
Source Code: https://github.com/codingminecraft/MarioYoutube/tree/0536788742c4a212742319f9b8132f0ea9de29d5

0:00 Intro
1:01 How Translate/Scale Gizmos Work
4:40 Coding the Drag Listener
10:57 Coding Gizmo Hover State
16:41 Fixing Flying Gizmo Bug
19:13 Coding Active Gizmo State
21:14 Refactoring TranslateGizmo into Gizmo
25:19 Fixing MouseListener Drag Bug
26:19 Coding Scale Gizmo
28:32 Coding Gizmo System
32:39 Conclusion and Upcoming Episode

---------------------------------------------------------------------
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/




Other Videos By GamesWithGabe


2020-12-28Refactoring and Physics | Coding a 2D Game Engine in Java #40
2020-12-19Adding an Engine Runtime (Play/Stop Buttons) | Coding a 2D Game Engine in Java #39
2020-12-11Event System and Box2D Physics | Coding a 2D Game Engine in Java #38
2020-12-05SOLID Stinks! How to Write Actual "Clean Code"
2020-12-021000 Subs Thanks! Discord Server?
2020-11-28Integrating JBox2D in our Engine | Coding a 2D Game Engine in Java #37
2020-11-13Box2D Lite Walkthrough Part 2 | Coding a 2D Physics Engine in Java #17
2020-11-12Box2D Lite Walkthrough Part 1 | Coding a 2D Physics Engine in Java #16
2020-11-04Properties Panel | Coding a 2D Game Engine in Java #36
2020-10-29How I Debug Graphics Code | Game Engine Concepts #6
2020-10-28Translate and Scale Gizmo | Coding a 2D Game Engine in Java #35
2020-10-24Coding Gizmos | Coding a 2D Game Engine in Java #34
2020-10-17Editor Camera Controls with Lerp | Coding a 2D Game Engine in Java #33
2020-10-11Iterative Linear Impulse Resolution | Coding a 2D Physics Engine in Java #15
2020-10-07Serialization (Saving/Loading Levels) | Game Engine Concepts #5
2020-09-26Enabling Mouse Picking and Code Maintenance | Coding a 2D Game Engine in Java #32
2020-09-25The State Pattern | Game Engine Concepts #4
2020-09-19Pixel PERFECT Mouse Picking | Coding a 2D Game Engine in Java #31
2020-09-16The Command Pattern: Coding Undo/Redo | Game Engine Concepts #3
2020-09-12Collision Manifolds (Circle v Circle) | Coding a 2D Physics Engine in Java #14
2020-09-085 YEARS of Game Development | From no Programming Knowledge to this



Tags:
gameswithgabe
games with gabe
lwjgl3
gizmos
coding gizmos
how to code gizmos
translate gizmo
scale gizmo
how to code transform tools
coding an editor in java
game development
how to code a game engine
how to code gizmo system
java game engine
how to translate tool
level editor in java
coding a level editor with lwjgl
game engine
how to make a level editor
imgui
lwjgl
java
mario