blender 解决shift快捷键和中英切换重复的问题

问题

键盘shift切换中英输入快捷键,blender里面很多长按shift的,比如视角的平移会导致键盘输入法切换,然后快捷键失效。

解决

思路

  1. 如果是在blender活动窗口里面
  2. 长按shift的时候,不切换中英文。如果按住时间超过200ms,松开后默认自动再触发一次shift。
  3. 短按shift的时候,切换中英文
  4. 如果时间短与200ms,但是是组合键盘 (例如shift+a),松开后默认自动再触发一次shift。

工具:

autohotkey(https://www.autohotkey.com/)

脚本:

复制代码
#Requires AutoHotkey v2.0

#HotIf WinActive("ahk_exe blender.exe")

~LShift::
{
    start := A_TickCount
    KeyWait("LShift", "U")
    duration := A_TickCount - start

    if (duration > 200) {
        Send("{LShift}")
    } else {
        if (AnyOtherKeyDown("LShift"))
            Send("{LShift}")
    }
}

~RShift::
{
    start := A_TickCount
    KeyWait("RShift", "U")
    duration := A_TickCount - start

    if (duration > 200) {
        Send("{RShift}")
    } else {
        if (AnyOtherKeyDown("RShift"))
            Send("{RShift}")
    }
}

#HotIf

; 检查除 shift 本身的其他键是否按下
AnyOtherKeyDown(shiftKey) {
    keys := ["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P",
             "Q","R","S","T","U","V","W","X","Y","Z",
             "1","2","3","4","5","6","7","8","9","0",
             "Space","Tab","Enter",
             "Up","Down","Left","Right",
             "Insert","Delete","Home","End","PgUp","PgDn",
             "F1","F2","F3","F4","F5","F6","F7","F8","F9","F10","F11","F12"]

    for key in keys {
        ; 排除当前 Shift
        if (key = shiftKey)
            continue
        if (GetKeyState(key, "P"))
            return true
    }
    return false
}
相关推荐
cloudcruiser13 小时前
VRay for Blender 7.20安装包免费下载及安装教程!
其他·blender
Solange__1 天前
图片转3D导出GLB、FBX还是OBJ?按5类任务比较材质、动画与可编辑性
人工智能·3d·ai·自然语言处理·编辑器·blender·材质
Solange__2 天前
在线3D预览器、Blender和游戏引擎怎么选?按5类任务比较格式、隐私与编辑性
人工智能·游戏·3d·游戏引擎·blender·1024程序员节·关卡设计
科小怪2 天前
Blender下载安装教程(2026最新版):免费开源的三维制作软件,建模渲染动画一个软件全包
blender
小杨互联网7 天前
Kenney / Blender CC0 小资源离线镜像汇总
开源·blender·游戏素材·kenney·cc0·离线包
Solange__8 天前
AI模型编辑器、Blender和3D Agent怎么选?按5类修改任务比较局部编辑、拓扑与自动化
人工智能·3d·自然语言处理·编辑器·音视频·blender·游戏策划
AI视觉网奇12 天前
blender 操作技巧 清空场景
blender
牛肉胡辣汤12 天前
Blender + Three.js 开发讲解:从 .blend 到能转的产品页
开发语言·javascript·blender
njsgcs21 天前
ai怎么知道blender里哪些点属于哪些部分
blender
敲代码娶不了六花1 个月前
Blender 3.6 Eevee 玻璃材质只反射世界环境,无法透视透明问题解析
blender·材质