加载中…
相册专辑
加载中…
基础资料
个人资料
则卷大明
则卷大明
  • 博客等级:
  • 博客积分:0
  • 博客访问:7,100
  • 关注人气:2
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
访客
加载中…
好友
加载中…
评论
加载中…
留言
加载中…
分类
博文
 1-1

        焦散是一种光学现象,是指当光线穿过不规则的透明物体时,发生折射,在投影表面产生或聚拢或分散的光子分布。如图1-1。

        在游戏中,一般是用贴图来模拟焦散,如果你想知道的是有关于实时焦散计算,那么这篇文章不适合你。

阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

365

it

UnityCG.cginc中原函数如下:
// Z buffer to linear 0..1 depth (0 at eye, 1 at far plane)
inline float Linear01Depth( float z )
{
return 1.0 / (_ZBufferParams.x * z + _ZBufferParams.y);
}
// Z buffer to linear depth
inline float LinearEyeDepth( float z )
{
return 1.0 / (_ZBufferParams.z * z + _ZBufferParams.w);
}
其中_ZBufferParams的定义如下:
double zc0, zc1;
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

it

UnityCG.cginc中的原函数代码如下:
inline float4 EncodeFloatRGBA( float v )
{
float4 kEncodeMul = float4(1.0, 255.0, 65025.0, 160581375.0);
float kEncodeBit = 1.0/255.0;
float4 enc = kEncodeMul * v;
enc = frac (enc);
enc -= enc.yzww * kEncodeBit;
return enc;
}

inline float DecodeFloatRGBA( float4 enc )
{
float4 kDecodeDot = float4(1.0, 1/255.0, 1/65025.0, 1/160581375.0);
return dot( enc, kDecodeDot );
}

单单看代码实在让人摸不着头脑,展开后可得EncodeFloatRGBA的最终结果为:
x = 1/v - 1/(v*255^2);//R
y = 1/(v*255) - 1/(v*255^3);//G
z = 1/(v*255^2) - 1/(v*255^4);//B
w = 1/(v*255^3) - 1/(v*255^4);//A
感觉抓到了一点东西,但是还是不是很清楚,再看Decode函数计算结果:
[1/v-1/(v*255^2)] + [1/(v*255^2)-1/(v*255^4)]
阅读  ┆ 评论  ┆ 禁止转载 ┆ 收藏 

亲爱的朋友:

    欢迎您在新浪博客安家,您的博客地址是:http://blog.sina.com.cn/u/1895393961

    您可以用文字、图片、视频记录和展示最真实的自我,与网友交流,与线上好友聊天,还能通过手机发表博文和上传图片,随时随地记录心情和身边趣闻。

    我们为您提供了丰富的炫酷模板来装点您在网上的家园,强大的音乐播放功能更能陪伴您的网络生活。准备好了吗?现在就开始精彩的博客之旅!

阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
  

新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

新浪公司 版权所有