3D 点灯的小问题

CrazyJinn 2009-05-08 09:05:57
“点灯”这个小游戏大家应该都知道,不知道的请百度

游戏开始的时候,所有的“灯”都排列在一个平面上(XOY)上,然后通过在空间中移动的摄象机可以自由变换视角。现在的问题就是鼠标选取“灯”的问题

现在我们有2个思路:
1、用碰撞检测来确定鼠标选取的是哪一个具体的灯。具体的说,摄象机所在的球的切平面就是屏幕,在屏幕上鼠标所在的位置、以平面的法向量为方向,发射一条射线。如果和灯碰撞,则改变灯的状态。

2、将灯投影到屏幕上。用投影公式将灯投影到屏幕上,组成一个由多个矩形所组成的图形。如果鼠标点击这个投影则改变灯的状态。

哪个思路对于这个游戏更好?又如何具体用这个思路实现这个鼠标选取?

小弟新手,请各位老鸟指点。请加我QQ,我有一大堆问题。在此先谢谢大家

QQ 229094498
...全文
70 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
CrazyJinn 2009-05-13
  • 打赏
  • 举报
回复
我们用的是D3D建立的模型``
leonwei 2009-05-12
  • 打赏
  • 举报
回复
使用OPENGL的picking就可以搞定了吧,直接返回鼠标所选取的灯
CrazyJinn 2009-05-08
  • 打赏
  • 举报
回复
就是将3D图象压扁到屏幕上。不知道这样解释能明白没`
chiwa737 2009-05-08
  • 打赏
  • 举报
回复
第二个没看太明白, 但是我觉得应该用第一个方法。




http://slash-directx.blogspot.com/

4,447

社区成员

发帖
与我相关
我的任务
社区描述
图形图像/机器视觉
社区管理员
  • 机器视觉
  • 迪菲赫尔曼
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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