游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2815|回复: 7

最近还有一个问题,望高手解惑。

[复制链接]

65

主题

518

帖子

521

积分

高级会员

Rank: 4

积分
521
发表于 2007-2-7 18:32:00 | 显示全部楼层 |阅读模式
我在做射线与三角型相交测试的时候,碰到这种情况:
    当用射线交两个具有共用边的三角形时,我用射线和平面球交点,在判断交点是否在三角形内的方法。可是当交点接近公用边时,可能是因为计算误差,有时会出现两个三角形都发生相交或者都没发生相交的错误现象。这样的问题应该如何解决呢?

30

主题

126

帖子

126

积分

注册会员

Rank: 2

积分
126
发表于 2007-2-7 22:12:00 | 显示全部楼层

Re:最近还有一个问题,望高手解惑。

一个点是否在多边形里面,只将这个点向任意方向做一个射线,如果与这条射线有奇数条边相交则点在多边形里面,如果有偶数条边相交则在外面.
实际上两个三角形合在一起,是一个四边形,对于这种多个图形合在一起的图形不要做公共边的测试就行了,把他当成一个多边形.

30

主题

126

帖子

126

积分

注册会员

Rank: 2

积分
126
发表于 2007-2-7 22:14:00 | 显示全部楼层

Re:最近还有一个问题,望高手解惑。

或者两个三角形分开来测试也行.

30

主题

126

帖子

126

积分

注册会员

Rank: 2

积分
126
发表于 2007-2-7 22:16:00 | 显示全部楼层

Re:最近还有一个问题,望高手解惑。

我的一个问题:
http://bbs.gameres.com/showthread.asp?threadid=72691
请帮帮忙.

65

主题

518

帖子

521

积分

高级会员

Rank: 4

积分
521
 楼主| 发表于 2007-2-8 02:11:00 | 显示全部楼层

Re:最近还有一个问题,望高手解惑。

谢谢楼上的兄弟指点,又学了一招三角与射线的交。
我的那个程序里因为要处理任意模型,而且相交测试是要返回具体交了那些面。所以公用边三角面合并成多变形的方法不太适用。我觉得主要还是在计算误差上,就类似说咱们最常见的光栅化,为什么网格模型渲染出来后你看不到三角面之间有重叠或者有缝隙一样。

59

主题

1490

帖子

1496

积分

金牌会员

Rank: 6Rank: 6

积分
1496
发表于 2007-2-8 09:12:00 | 显示全部楼层

Re:最近还有一个问题,望高手解惑。

恩,这个算法是有毛病,我们现在都不用了。

65

主题

518

帖子

521

积分

高级会员

Rank: 4

积分
521
 楼主| 发表于 2007-2-8 09:17:00 | 显示全部楼层

Re:最近还有一个问题,望高手解惑。

To 6377,那现在用的是什么算法阿?

59

主题

1104

帖子

1199

积分

金牌会员

Rank: 6Rank: 6

积分
1199
发表于 2007-2-8 09:41:00 | 显示全部楼层

Re:最近还有一个问题,望高手解惑。

判断下浮点误差就好了.
http://www.ziggyware.com/readarticle.php?article_id=78

这里有几个比较稳定的关于ray-tri intersection的,你可以看看.
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-1-26 10:41

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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