游戏开发论坛

 找回密码
 立即注册
搜索
楼主: tarkey

[原创]终极勾边之贴图勾边法

[复制链接]

59

主题

1104

帖子

1199

积分

金牌会员

Rank: 6Rank: 6

积分
1199
 楼主| 发表于 2005-3-22 12:58:00 | 显示全部楼层

Re:[原创]终极勾边之贴图勾边法

呵呵,很多算法都是想起来复杂,但是实现并不麻烦。

132

主题

1341

帖子

1341

积分

金牌会员

Rank: 6Rank: 6

积分
1341
发表于 2005-3-22 18:37:00 | 显示全部楼层

Re:[原创]终极勾边之贴图勾边法

"找出边的两个面的法线和摄像机镜头夹角的乘积为负的边(大于90度为正,小于90度为负)"
是不是一个面正,一个面负。

59

主题

1104

帖子

1199

积分

金牌会员

Rank: 6Rank: 6

积分
1199
 楼主| 发表于 2005-3-22 20:04:00 | 显示全部楼层

Re:[原创]终极勾边之贴图勾边法

一个面朝摄象机,一个面背摄象机。

132

主题

1341

帖子

1341

积分

金牌会员

Rank: 6Rank: 6

积分
1341
发表于 2005-3-23 12:10:00 | 显示全部楼层

Re:[原创]终极勾边之贴图勾边法

面的法线怎样计出来?

59

主题

1104

帖子

1199

积分

金牌会员

Rank: 6Rank: 6

积分
1199
 楼主| 发表于 2005-3-23 12:50:00 | 显示全部楼层

Re:[原创]终极勾边之贴图勾边法

//面的三个顶点
D3DXVECTOR3 v0;
D3DXVECTOR3 v1;
D3DXVECTOR3 v2;
                       
D3DXVECTOR3 vNormal;
D3DXVec3Cross( &vNormal, &(v2-v1), &(v1-v0) );
D3DXVec3Normalize(&vNormal, &vNormal);
vNormal就是这个面的法线。

132

主题

1341

帖子

1341

积分

金牌会员

Rank: 6Rank: 6

积分
1341
发表于 2005-3-23 17:57:00 | 显示全部楼层

Re:[原创]终极勾边之贴图勾边法

大于90度为正,小于90度为负?
两个向量:(0,1,0)(0,0.707,0)//0.707为cos 45度
A dot B=0*0+1*0.707+0*0=0.707
不是大于90度为负,小于90度为正吗?

59

主题

1104

帖子

1199

积分

金牌会员

Rank: 6Rank: 6

积分
1199
 楼主| 发表于 2005-3-24 08:43:00 | 显示全部楼层

Re:[原创]终极勾边之贴图勾边法

N dot V的结果是一个从-1到1的值
法线正对摄象机角度为0,cos值为1,法线背对摄象机角度为PI,cos值为-1

正负PI/2角度的,cos值为0,所以一面法线大于0表示面朝摄象机,另外一个面法线小于0表示背朝摄象机,那么这条边就是边界。

15

主题

1268

帖子

1268

积分

金牌会员

Rank: 6Rank: 6

积分
1268
发表于 2005-3-24 08:53:00 | 显示全部楼层

Re:[原创]终极勾边之贴图勾边法

光晕 好像不是这样做的

59

主题

1104

帖子

1199

积分

金牌会员

Rank: 6Rank: 6

积分
1199
 楼主| 发表于 2005-3-24 08:55:00 | 显示全部楼层

Re:[原创]终极勾边之贴图勾边法

一般的光晕也就是bloom效果,是需要ps的支持才能完成real time的渲染。
在对于不支持ps的机器上,必须想出其他方法来实现bloom的效果。

132

主题

1341

帖子

1341

积分

金牌会员

Rank: 6Rank: 6

积分
1341
发表于 2005-3-24 12:25:00 | 显示全部楼层

Re:[原创]终极勾边之贴图勾边法

你上面写着:大于90度为正,小于90度为负
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-12-25 00:57

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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