这张图:
...属于:
y = fract(sin(x)*1.0)
我期待这样的图表:
我错过了什么吗?
我不知道如何在 glsl 中绘制这个图表,所以不知道如何检查,所以我想我可以在这里寻求帮助来消除我的疑问。
我不确定为什么您期望
fract(sin(π/4))
返回 0
但不希望获得相同的值 mod 2π
。也许您误解了该函数的作用?
fract(x)
是x - floor(x)
。
展开这个:
sin(π/4) == sqrt(2)/2
.sqrt(2)/2
约为 0.70710678118
。floor(0.70710678118) == 0
.0.70710678118 - 0 == 0.70710678118
所以你最终得到
fract(sin(π/4)) == 0.70710678118
,这就是第一张图中出现的内容。