游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2796|回复: 3

D3DXIntersect这个函数是不是有问题?

[复制链接]

25

主题

77

帖子

77

积分

注册会员

Rank: 2

积分
77
发表于 2009-12-7 22:11:00 | 显示全部楼层 |阅读模式
做了一个拾取的程序,用ID3DXMesh,画了一个系统预定义的茶壶,按照龙书上把起始点和方向向量定好了,调了好久,发现老是选不中茶壶。
HRESULT hr = D3DXIntersect(Object,&ClickRay.Origin,&ClickRay.Direction,&IsPicked,0,0,0,0,0,0);
函数是调用成功了,但IsPicked老是返回0,在网上好像听到这个函数不怎么好用,有经验的GGJJ都麻烦来说一下吧!

25

主题

77

帖子

77

积分

注册会员

Rank: 2

积分
77
 楼主| 发表于 2009-12-7 22:29:00 | 显示全部楼层

Re:D3DXIntersect这个函数是不是有问题?

附带一句,我的茶壶Mesh经过平移了,是这个原因吗?

3

主题

53

帖子

104

积分

注册会员

Rank: 2

积分
104
发表于 2009-12-8 16:55:00 | 显示全部楼层

Re:D3DXIntersect这个函数是不是有问题?

就是平移的原因导致的,应将射线也做一下平移

25

主题

77

帖子

77

积分

注册会员

Rank: 2

积分
77
 楼主| 发表于 2009-12-10 22:25:00 | 显示全部楼层

Re:D3DXIntersect这个函数是不是有问题?

呵呵,解决了,要转到Mesh的局部坐标系,也就是乘个平移的逆矩阵。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-6-17 10:45

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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