AlexSabourinDev / IceBox

An open world, designer focused engine
MIT License
5 stars 3 forks source link

Transformation Widget: Translation #30

Closed mysteriosum closed 2 years ago

mysteriosum commented 4 years ago

The little wiry helper object we know from just about any game engine. The Widget. Let's have one!

The widget lets us move a cube around space easily just by clicking and dragging. See the attached image to see what the widget ought to look like.

For this milestone, we expect: -Widget appears when object is highlighted (see the Game Objects Framework Issue) -There are 6 parts to the widget: one for each axis and one for each combination of two axes. -X is red(#ff5c5c); Y is green (#68ff5c) and Z is blue (#0090ff). The combinations are dark blue (#112d43). -Clicking on any part of the widget highlights that part and enables "move the thing" mode -The highlighted widget part becomes 30% darker when the mouse is hovering over, and yellow when mouse button is down (#dcef60) -Dragging the mouse causes the object to follow the cursor - locked to the appropriate axis/axes -While dragging the widget, if the mouse goes to the extreme of the window, warp it to the other side so we may continue to drag the object in the same direction to our heart's content. (Unity does this and it's great)

mysteriosum commented 4 years ago

Widget Mockup

AlexSabourinDev commented 3 years ago

Although Pull Request #36 has a translation gizmo, I think more support from the other issues will need to be added before we flesh this out.

I'd like to finish #29 which might depend on #17 which might depend on #22...

Much work to be done!

AlexSabourinDev commented 2 years ago

Closing for now as part of a revamp of our github issues. Larger scale tasks like this will be tracked in Trello