游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3515|回复: 12

怎样得到一个三维空间物体的二维轮廓?

[复制链接]

75

主题

102

帖子

110

积分

注册会员

Rank: 2

积分
110
发表于 2007-8-30 10:53:00 | 显示全部楼层 |阅读模式
多谢

5

主题

686

帖子

697

积分

高级会员

Rank: 4

积分
697
QQ
发表于 2007-8-30 11:01:00 | 显示全部楼层

Re:怎样得到一个三维空间物体的二维轮廓?

先渲染,然后做基于图像的边缘检测
或者预先计算轮廓边,然后在VS中拉伸

14

主题

345

帖子

376

积分

中级会员

Rank: 3Rank: 3

积分
376
QQ
发表于 2007-8-30 11:11:00 | 显示全部楼层

Re:怎样得到一个三维空间物体的二维轮廓?

拉普拉斯模板

75

主题

102

帖子

110

积分

注册会员

Rank: 2

积分
110
 楼主| 发表于 2007-8-30 11:21:00 | 显示全部楼层

Re:怎样得到一个三维空间物体的二维轮廓?

不太明白,我想通过 normal、plane、ray 等来解决这个问题,不知道应该怎样就解决?我已经有了一个相机了,相机和物体的位置我都已经取到了。。。

1

主题

149

帖子

149

积分

注册会员

Rank: 2

积分
149
QQ
发表于 2007-8-30 12:22:00 | 显示全部楼层

Re:怎样得到一个三维空间物体的二维轮廓?

渲染3D的时候,根据当前点的法线与视线向量的点积,点积小(接近0)的就是边缘.然后再经过2D图象处理......不过,这要求你的模型精度不能太低.

8

主题

390

帖子

390

积分

中级会员

Rank: 3Rank: 3

积分
390
发表于 2007-8-30 13:41:00 | 显示全部楼层

Re:怎样得到一个三维空间物体的二维轮廓?

屏幕清成黑色,搞个shader,渲染的时候只输出白色,几句话就可以。最好将结果保存,进行逐行扫描。。。

75

主题

102

帖子

110

积分

注册会员

Rank: 2

积分
110
 楼主| 发表于 2007-8-30 14:02:00 | 显示全部楼层

Re: Re:怎样得到一个三维空间物体的二维轮廓?

六水: Re:怎样得到一个三维空间物体的二维轮廓?

渲染3D的时候,根据当前点的法线与视线向量的点积,点积小(接近0)的就是边缘.然后再经过2D图象处理......不过,这要求你的模型精度不能太低.



请问我该如何得到这条视线向量呢??

5

主题

755

帖子

757

积分

高级会员

Rank: 4

积分
757
发表于 2007-8-30 14:27:00 | 显示全部楼层

Re:怎样得到一个三维空间物体的二维轮廓?

你自己的相机里面因该有啊~就是 lookat 向量

2

主题

429

帖子

435

积分

中级会员

Rank: 3Rank: 3

积分
435
发表于 2007-8-30 16:12:00 | 显示全部楼层

Re:怎样得到一个三维空间物体的二维轮廓?

有轮廓边的查找算法:
遍历面片,记录法向量和视线<=0(大于0也可以,正面背面都可)的边,查找是否记录过,没有的话,加入;有就删除;最后剩下的就是轮廓边。
可以这样想: 把模型的正面和背面切开,轮廓边就是开口,它显然只有一个邻接面片。

shadow volume里用到这个方法,你可以去看看。算法本身时间复杂度较高,不过硬件支持的话,有方法可以提高速度。

如果模型精度高,六水的方法不错。

18

主题

971

帖子

982

积分

高级会员

Rank: 4

积分
982
发表于 2007-8-30 16:41:00 | 显示全部楼层

Re:怎样得到一个三维空间物体的二维轮廓?

不知什么是三维物体的二维轮廓,好奇怪的说法,还有这么多人回答,哈哈
难道是投影到某2维平面?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-1-25 02:48

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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