[英]Projected grid water horizon detail
Benedikt Bitterli 和 joojaa 在这里回答了我的问题: https ://computergraphics.stackexchange.com/questions/1681/projected-grid-water-horizon-detail
我现在选择了最懒惰的解决方案。 我从顶点着色器中与相机的距离计算了一个衰减因子,并逐渐使远处的波浪变平。
功能:
float CalculateWaveAttenuation(float d, float dmin, float dmax)
{
// Quadratic curve that is 1 at dmin and 0 at dmax
// Constant 1 for less than dmin, constant 0 for more than dmax
if (d > dmax) return 0.f;
else
{
return saturate((1.f / ((dmin-dmax)*(dmin-dmax))) * ((d-dmax) * (d-dmax)));
}
}
结果如下:
您应该尝试在片段着色器而不是顶点着色器中实现您的“基本着色”算法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.