Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

More shortcuts #605

Open
benjiwolff opened this issue Jan 25, 2025 · 3 comments
Open

More shortcuts #605

benjiwolff opened this issue Jan 25, 2025 · 3 comments
Labels
enhancement New feature or request idea Just an idea, may or may not be implemented
Milestone

Comments

@benjiwolff
Copy link
Contributor

Description

I find myself having to move my mouse away from the viewport a lot to switch between tools and change the brush size. I think that the following common actions would benefit from having shortcuts:

  • selecting a tool
  • changing the brush size
  • changing the brush strength

I imagine the shortcuts to work something like this:

  • when the terrain node is selected, each tool can be selected with a single key-press, similar to the QWER shortcuts in the Godot editor.
    • ideally, the keys can be configured
  • the brush size/strength can be changed with either
    • clicking and dragging with the mouse while holding down multiple modifier keys (photoshop)
      • fast and accurate
    • the mouse wheel while holding down a modifier key (gimp)
      • slow for large changes and inaccurate for small changes
    • a shortcut like "[", "]", "{" and "}" (gimp)
      • requires taking my hand off the mouse
@TokisanGames
Copy link
Owner

What keyboard scheme would you suggest given the current keys listed in the documentation, and Godot reserved keys?

@benjiwolff
Copy link
Contributor Author

Since

  • 3d editor modes (select, move, scale and rotate) can't be used with Terrain3D
  • tools cannot be used in free look mode
  • locking transformations to the axes can only be used during a transformation
  • local space is not relevant for terrain sculpting

I would suggest suppressing the actions mentioned above in favor of something like this:

  • R: raise
  • S: smooth
  • E: slope
  • H: height
  • B: base texture
  • T: overlay texture
  • A: autoshader
  • C: color
  • W: wetness
  • X: holes
  • N: navigation
  • I instance meshes

These shortcuts should be easy to reach with the left hand with the exception of navigation and instance meshes which are probably switched to less often.

For changing the brush size, I imagine placing the mouse somewhere on the terrain, holding down D, and while holding it down, moving the mouse to the extent of the brush (drawing the brushes radius essentially). This would allow showing a preview of the brush size as well.

For the brush strength I imagine holding down G while using the mouse wheel to make relative adjustments. Here, the camera zoom would have to be turned off.

These suggestions are ignorant of industry standards and implementation difficulty/possibilities. I just made them up and personally feel they are intuitive as a terrain beginner who is not very familiar with other terrain and modelling tools. :)

@TokisanGames TokisanGames added the idea Just an idea, may or may not be implemented label Feb 10, 2025
@TokisanGames TokisanGames added this to the Future milestone Feb 10, 2025
@TokisanGames TokisanGames moved this to Future Ideas in Terrain3D Roadmap Feb 10, 2025
@TokisanGames TokisanGames added the enhancement New feature or request label Feb 10, 2025
@nan0m
Copy link

nan0m commented Feb 27, 2025

An actually tested workflow that I like from blender is to press F, to start the brush scale operation, and then confirm the brush size by left clicking.
It's the same for opacity, but here you start the operation with Shift + F, then drag the mouse cursor how far you want it and confirm with left click again.

I prefer this to the mousewheel personally, because it's very very fast as well as precise.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request idea Just an idea, may or may not be implemented
Projects
Status: Future Ideas
Development

No branches or pull requests

3 participants