获取游戏鼠标位置的问题

qianchendi 2004-10-26 08:24:14
如果游戏中的鼠标是以当前系统鼠标位置做不固定的偏移后得到的位置处动态画出来的.那么能不能获得真正的游戏中指针的坐标呢?

即:x=x+random;
y=y+random;

我想既然游戏取得了系统鼠标位置,然后做了偏移后命令系统在对应处画出鼠标图形来,那么有没有什么方法可以得到系统画鼠标的位置呢?

除了在系统鼠标附近的固定区域里搜索游戏鼠标的某点颜色来得到游戏鼠标的位置以外,还有更好的办法吗?

也可以说一下在这种情况下正确定位鼠标的方法.用SetCursorPos()或SendMessage()的话都不能准确定位,系统鼠标和游戏指针之间有不固定的偏移的.
...全文
275 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
zzcflying 2004-11-04
  • 打赏
  • 举报
回复
使用Windows API 函数 BOOL GetCursorPos(LPPOINT lpPoint)

POINT MousePos;
GetCursorPos(&MousePos);

可以把当前系统鼠标的位置存放在MousePos中。
jazy 2004-10-26
  • 打赏
  • 举报
回复
directinput的鼠标位移量确实和窗口坐标不同,要是这个原因的话就必须放弃所有窗口中的坐标,直接从di下手才行。
qianchendi 2004-10-26
  • 打赏
  • 举报
回复
不一样的,互相之间有偏移或是说误差的.
我说的是大话西游II.
zzwu 2004-10-26
  • 打赏
  • 举报
回复
哪一个游戏里有自己的"鼠标"?
zzwu 2004-10-26
  • 打赏
  • 举报
回复
不懂"游戏中的鼠标"是什么? 它和"当前系统鼠标"不一样吗?
寻开心 2004-10-26
  • 打赏
  • 举报
回复
可以的。自己需要精确记录他们
例如使用鼠标控制旋转的时候,鼠标的移动并不直接改变屏幕上的坐标,而是把移动量提取出来最计算用。关键是处理完成后,你要调用SetCursor这样的函数把鼠标位置重新设置回到正确的位置上

这样还可以保持你自己的鼠标位置和屏幕位置的一致性
大多数情况下,还是应该使用系统鼠标的位置的
ghostzyj 2004-10-26
  • 打赏
  • 举报
回复
这个偏移是不固定的,随时在变。

请问怎么从DirectInput入手啊,我自己做了个用DirectInput输入的例子,可是找不到可以利用的东西啊。
zzwu 2004-10-26
  • 打赏
  • 举报
回复
不知道偏移或误差是固定的,还是在不断变化?

8,303

社区成员

发帖
与我相关
我的任务
社区描述
游戏开发相关内容讨论专区
社区管理员
  • 游戏开发
  • 呆呆敲代码的小Y
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧