游戏开发论坛

 找回密码
 立即注册
搜索
查看: 8362|回复: 23

怎么才能把Vertex shader的顶点颜色之间的插值给去掉啊?

[复制链接]

65

主题

518

帖子

521

积分

高级会员

Rank: 4

积分
521
发表于 2005-3-12 17:28:00 | 显示全部楼层 |阅读模式
怎么才能把Vertex shader的顶点颜色之间的插值给去掉啊?
在做perpixel的点光源时发现per vertex的插值很难看,不知怎么办.
求教. 谢谢.

63

主题

871

帖子

891

积分

高级会员

Rank: 4

积分
891
QQ
发表于 2005-3-12 18:03:00 | 显示全部楼层

Re:怎么才能把Vertex shader的顶点颜色之间的插值给去掉啊?

顶点的颜色都设成一样,,或者根本不考虑顶点颜色

65

主题

518

帖子

521

积分

高级会员

Rank: 4

积分
521
 楼主| 发表于 2005-3-12 18:14:00 | 显示全部楼层

Re:怎么才能把Vertex shader的顶点颜色之间的插值给去掉啊?

可是在实现光照时需要在vertex shader的输出中加上光对顶点的方向向量
才能在pixel shader中用normal map.但这样一来它就自动地生成了顶点颜色
并插了值.

65

主题

518

帖子

521

积分

高级会员

Rank: 4

积分
521
 楼主| 发表于 2005-3-12 18:20:00 | 显示全部楼层

Re:怎么才能把Vertex shader的顶点颜色之间的插值给去掉啊?

我看了一篇文章,里面用了两张lightmap实现对球形函数的值的查找.
可里面没给代码.谁用了这种方法的贴个代码看看吧.(HLSL的)谢谢.

20

主题

473

帖子

502

积分

高级会员

Rank: 4

积分
502
发表于 2005-3-12 20:06:00 | 显示全部楼层

Re:怎么才能把Vertex shader的顶点颜色之间的插值给去掉啊?

setrenderstate(shademode, flat)

36

主题

1047

帖子

1147

积分

金牌会员

Rank: 6Rank: 6

积分
1147
发表于 2005-3-13 01:25:00 | 显示全部楼层

Re:怎么才能把Vertex shader的顶点颜色之间的插值给去掉啊?

增加三角形数量,或者作 pre pixel shader.

65

主题

518

帖子

521

积分

高级会员

Rank: 4

积分
521
 楼主| 发表于 2005-3-13 02:11:00 | 显示全部楼层

Re:怎么才能把Vertex shader的顶点颜色之间的插值给去掉啊?

大家给出个招,教小弟如何做正确的per pixel光照.

6

主题

444

帖子

457

积分

中级会员

Rank: 3Rank: 3

积分
457
发表于 2005-3-13 02:38:00 | 显示全部楼层

Re:怎么才能把Vertex shader的顶点颜色之间的插值给去掉啊?

如果只是要去掉顶点颜色插值,那么secondage已经给出了答案。
但是楼主不是要做perpixel lighting么?那和顶点颜色有什么关系?
正确的方式是将tangent space的L,V(or H)输入oTn,然后在pixel shader中将这些向量normalize后做L dot N,V dot R(or N dot H)然后再进行后续计算……

65

主题

518

帖子

521

积分

高级会员

Rank: 4

积分
521
 楼主| 发表于 2005-3-13 14:31:00 | 显示全部楼层

Re:怎么才能把Vertex shader的顶点颜色之间的插值给去掉啊?

tangent space的L是指变换来的光向量吧;V(H)是什么呢?是不是half向量,用来做specular的?
我的意思是把光向量变换到tangent空间中只是基于每个顶点的.这样一来L dot N中的L是以color的身份被加入运算的,被强迫地插值了.
可不可以用一张光滑的Normal map对L点积一次得到的值作被减数减掉有凹凸的normal map
点积的结果(是不是减法还不确定,反正是要去掉含有插值因素的那部分)?

65

主题

518

帖子

521

积分

高级会员

Rank: 4

积分
521
 楼主| 发表于 2005-3-13 15:21:00 | 显示全部楼层

Re:怎么才能把Vertex shader的顶点颜色之间的插值给去掉啊?

我在pixel shader里怎么使不了normalize()啊?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-12-24 20:13

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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