Unigine 监听键盘事件和模拟按键

来源:互联网 发布:未来人6小时视频知乎 编辑:程序博客网 时间:2024/05/28 17:08

unigine 引擎有一个很简单的方法监听你键盘的输入输出 见完整代码


监听按住不动

int button_pressed_callback_func(int button) {// Your callback code if(button=='k'){ //按下了 案件k }return 0;}int init(){// 按下按键(按住不动)engine.controls.setButtonPressCallback("button_pressed_callback_func");}


监听松开

int button_released_callback_func(int button) {// Your callback code  if(button=='k'){ //按下了 案件k }return 0;}int init(){// 松开按键(按住不动)engine.controls.setButtonReleaseCallback("button_released_callback_func");}

注意:这个监听是全局的 


engiine.controls 对象是个全局对象

还有很多其他的比如

◾engine.app Functions
◾engine.config Functions
◾engine.console Functions
◾engine.controls Functions
◾engine.editor Functions
◾engine.filesystem Functions
◾engine.game Functions
◾engine.gui Functions
◾engine.materials Functions
◾engine.memory Functions
◾engine.physics Functions
◾engine.profiler Functions
◾engine.properties Functions
◾engine.render Functions
◾engine.sound Functions
◾engine.splash Functions
◾engine.system Functions
◾engine.visualizer Functions
◾engine.world Functions

 不需要每个都了解 常用的 就是engine.controls,engine.editor ,engine.gui 我下次抛砖引玉介绍下这三个对象可以解决工作中什么问题(我以实际工作角度出发介绍功能。更多内容请己翻阅sdk文档)


在使用过程中有时需要模拟按键

何为模拟按键 比方:你做的第一人称角色移动。需要外界一个设备。而这个设备而非通用。必须要你自己写接口控制 摄像机移动 咋办

1.获取外部的信号(你可以重新编译 main.exe )我会在后面 告诉菜鸟们 怎么自己编译exe


然后在uscript 脚本里

加上这句话 

engine.controls.setState (intstate, intvalue

参数state 是个状态值 (系统固定的) value的值 只有1或者0


所以你还需要先设置这个固定值 


engine.controls.setStateKey (intstate, intkey

engine.controls.setStateKey(CONTROLS_STATE_JUMP,'f') //修改 默认跳跃键。改为按 f 跳跃

如果你不需要更改默认按键 上面可以不做


请直接调用代码
engine.controls.setState (CONTROLS_STATE_JUMP, 1) 
完成模拟跳跃动作

这就不需要你用C++写个模拟按键程序来模拟操作了

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 眼镜镜片磨花了怎么办 戴眼镜鼻梁有印怎么办 狗狗发烧怎么办最有效 狗狗感冒怎么办最有效 狗狗发烧去医院怎么办 眼睛里长了虫子怎么办 吃了没熟的猪肉怎么办 没熟的鸡肉吃了怎么办 狗狗大便有绦虫怎么办 吃了有虫的猪肉怎么办 米猪肉吃了会怎么办 吃了鱼的寄生虫怎么办 鱼身体里有线虫怎么办 幼猫半夜一直叫怎么办 猫半夜4点叫不停怎么办 眼睛里长了黄斑怎么办 眼睛周围长小疙瘩怎么办 眼睛被手机砸了怎么办 眼睛被东西砸了怎么办 眼睛被打了一下怎么办 眼睛被树枝伤了怎么办 眼球被打了一下怎么办 眼睛黄有血丝是怎么办 上眼皮有异物感怎么办 20岁眼周围皱纹怎么办 才22岁眼睛皱纹怎么办 眼周围发干皱纹怎么办 眼周围淤血肿了怎么办 每到秋季就咳嗽怎么办 左肾泥沙样结石怎么办 双肾泥沙样结石怎么办 温州市民卡丢了怎么办 上眼皮过敏肿了怎么办 上眼皮又痒又肿怎么办 上眼皮红肿痛是怎么办 上眼皮肿的厉害怎么办 眼皮肿了还痒痒怎么办 眼睛被手指戳到怎么办 打球眼睛撞肿了怎么办 打球时眼睛被戳怎么办 狗眼睛被打充血怎么办