学习下pixel shader

色带的渲染不知道是不是可以采用pixel shader的方法。参考下《Learn.Vertex.And.Pixel.Shader.Programming.With.Directx.9.-.2004.-.(By.Laxxuss)
 
P202 pixel shader里的寄存器:
(c1....c223):ps1.1只有c1...c8。存只读的单精度浮点数。
(b1...b16):只读的布尔值 ps2.0之后才有
(i0..i15)
aL      :用于循环
p0      :谓词???????
......
 
此书类似辞典,对一个个指令进行详细解释,其实跟sdk文档差不多。换书。
 
 
《Real-time.Rendering.Tricks.and.Techniques.in.DirectX》
P329
Texture stage color operations提供了一定的方法来实现纹理混合,而ps有更大的自由度。ps渲染只是对于要渲染的primitive而言,而不是整个屏幕。ps最大的好处是简化了纹理混合的操作,而Texture stage states需要设置纹理操作,纹理参数,混合因子等;ps用自定义的运算操作替代了SetTextureStageState的调用。
 
 
Texture stage status: 定义了设备如何处理纹理,以及纹理如何与其他stage的纹理交互,如何与vertex交互。texture 可以最多设置8个stage
---------------------------------
设置一个stage status进行的操作
 
 
----------------------------
多个stage
 
 
~~~~~~~~~~~~~~~~~~~6月5日~~~~~~~~~~~~~~~~~
----------------
vertex shader可以实现morph blending.pixel shader可以实现texture blending。地表的流动光线可能是光照贴图和原纹理进行texture blending.
 
 
----------------
P346  一个简单的pixel shader实例:一个表面,
(1)有纹理
(2)被方向光所照射(平面``顶点法向量与光线的角都是一定的,有意义???);
(3)纹理的alpha通道
这三个数据来源给pixel shader作为输入来渲染。有per-pixel lighting的效果。
 
 
代码摘录
tex t0     //读纹理
mad r0, v1, t0.a, v0  //v1角度值,t0.a a通道值 v0 环境光 r0 临时变量
mul r0, r0, t0   //反射光*纹理
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值