1
$\begingroup$

I know pressing shift will allow me to do finer adjustments. However, in some cases, it's not enough:

enter image description here

For example I'm trying to fine-tune the distance of this bone constraint. Even with shift pressed, it still moves at 2cm interval, which is not "fine" for a property that is only 9cm in the first place.

I know I can just type the number, but it'd be really nice if there is a way to better control the speed of sliding values.

$\endgroup$
3
  • $\begingroup$ You can sometimes widen the container, making the value slider wider and giving you more room to work with. Also, you can zoom in on some value sliders to give you better control. $\endgroup$ Commented Jul 13, 2021 at 0:51
  • $\begingroup$ @MartyFouts "Zoom in" on silders? Is there a shortcut or something? $\endgroup$ Commented Jul 13, 2021 at 4:43
  • $\begingroup$ It depends on the container of the slider, but it's just zooming-in on the viewport, such as the node editor; so it's often just the middle mouse button. $\endgroup$ Commented Jul 13, 2021 at 14:57

1 Answer 1

2
$\begingroup$

One workaround is to use a custom property and drivers - you can use the related object's custom property, or just any new/temporary custom property if you only want to use it once. The setup is not terribly long:

Another workaround on Windows is to use Autohotkey script like so:

#NoEnv
#SingleInstance Force
SetBatchLines, -1
SendMode Input

global STEP := 0.00001
winname := "Blender ahk_class GHOST_WindowClass ahk_exe blender.exe"


#if WinActive(winname)
F11:: 
F12::
    sign := {F11: -1, F12: 1}[A_ThisHotkey]
    saved := ClipboardAll
    Clipboard := ""
    Send ^c
    ClipWait, .1
    s := Clipboard
    if (s != "") {
        Clipboard := increment(s, sign)
        Send ^v
        sleep 33
        Send {Ctrl up}
    }
    Clipboard := saved
    saved := ""
    return


increment(textvar, sign) {
    Loop % StrLen(textvar)-1 {
        i := A_Index+1
        sub := Substr(textvar, 1, i)
        if sub is not number
        {
            i --
            break
        }
    }
    newval := Substr(textvar, 1, i) + STEP * sign
    return Format("{1:.15f}", newval) . SubStr(textvar, i+1)
}

Then hover over a field (don't click) and press F11 to decrease the value and F12 to increase it.

Possibly related: Change hovered values by keys (it seems the logic from Autohotkey script could be applied in that Python script)

$\endgroup$
1
  • $\begingroup$ nice idea!!!!!! $\endgroup$
    – Chris
    Commented Jul 13, 2021 at 4:53

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .