游戏开发论坛

 找回密码
 立即注册
搜索
查看: 4346|回复: 15

如何知道鼠标指到了对象上?

[复制链接]

29

主题

81

帖子

85

积分

注册会员

Rank: 2

积分
85
发表于 2004-10-12 14:14:00 | 显示全部楼层 |阅读模式
想在鼠标指到游戏中的某物品的图像上时显示物品的属性,图像是类试NPC的动画图像!
请问这该如何实现,我想在鼠标指向时让物品对象知道鼠标指向了它? [em7]

60

主题

1319

帖子

1319

积分

金牌会员

Rank: 6Rank: 6

积分
1319
发表于 2004-10-12 14:24:00 | 显示全部楼层

Re:如何知道鼠标指到了对象上?

系统是不会帮你做这个,得自己获取鼠标的位置,然后判断。不要怕麻烦。

29

主题

81

帖子

85

积分

注册会员

Rank: 2

积分
85
 楼主| 发表于 2004-10-12 14:29:00 | 显示全部楼层

Re: 如何知道鼠标指到了对象上?

[em10]
对象图像是不规则的 [em10]不好判断啊

60

主题

1319

帖子

1319

积分

金牌会员

Rank: 6Rank: 6

积分
1319
发表于 2004-10-12 14:36:00 | 显示全部楼层

Re:如何知道鼠标指到了对象上?

要细致到每一个点吗?

15

主题

59

帖子

59

积分

注册会员

Rank: 2

积分
59
发表于 2004-10-12 15:18:00 | 显示全部楼层

Re: 如何知道鼠标指到了对象上?

获得鼠标位置
根据鼠标位置获得指向的地图块
考虑人物可以移动和人物高度因素
依次判断周围一定范围内的地图块上是否有人物
如果有
再根据鼠标位置和人物位置判断
鼠标是否在人物矩形框内以及鼠标是否指向透明相素
如果在框内且非透明
OK
成功

不过还要考虑先后问题
可能一远一近两个人物都同时被指向
所以从近的地图块向远的判断
知道找到或没有指向人物为止

我的程序刚好做到这里
哈哈~~~~~~~~~~`

31

主题

630

帖子

635

积分

高级会员

Rank: 4

积分
635
发表于 2004-11-18 09:58:00 | 显示全部楼层

Re:如何知道鼠标指到了对象上?

对每个网面用这个函数进行判断。
Mesh.Intersect
public bool Intersect(Vector3, Vector3);

63

主题

871

帖子

891

积分

高级会员

Rank: 4

积分
891
QQ
发表于 2004-11-18 10:08:00 | 显示全部楼层

Re:如何知道鼠标指到了对象上?

如果要精确判断的话
可以先用矩形来大体确定鼠标在哪个精灵上
然后读取像素,,如果是KeyColor则不在那个精灵上
(这是2D的)

187

主题

600

帖子

606

积分

高级会员

Rank: 4

积分
606
QQ
发表于 2004-11-19 15:11:00 | 显示全部楼层

Re:如何知道鼠标指到了对象上?

2D引擎应该支持这个简单的功能!

69

主题

450

帖子

473

积分

中级会员

战魂缔造者

Rank: 3Rank: 3

积分
473
QQ
发表于 2004-11-20 11:29:00 | 显示全部楼层

Re:如何知道鼠标指到了对象上?

简单化的话,设一个最小圆在对象上判断(2D)

187

主题

600

帖子

606

积分

高级会员

Rank: 4

积分
606
QQ
发表于 2004-11-20 16:55:00 | 显示全部楼层

Re:如何知道鼠标指到了对象上?

我的引擎支持这个功能
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-20 18:37

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表