我正在编写一个程序来生成一些狂野的视觉效果。到目前为止,我可以使用随机蓝色值绘制每个像素:
for (y = 0; y < YMAX; y++) {
for (x = 0; x < XMAX; x++) {
b = rand() % 255;
setPixelColor(x,y,r,g,b);
}
}
我想做的不仅仅是制造蓝色噪音,但我不知道从哪里开始(谷歌今天没有帮助我),所以如果你能分享你所知道的任何东西会很棒主题或相关资源的一些链接。
答案 0 :(得分:0)
波浪通常使用三角函数(sin / cos)或近似它们的表来完成。
你也可以用一些简单的数学做一些凉爽的水波纹。有关代码和在线演示,请参阅here。
答案 1 :(得分:0)
过去我曾经做过这样的伎俩。 不幸的是,我没有代码: - /
你会惊讶于按位和整数算术运算符可以产生什么效果:
FRAME_ITERATION++;
for (y = 0; y < YMAX; y++) {
for (x = 0; x < XMAX; x++) {
b = (x | y) % FRAME_ITERATION;
setPixelColor(x,y,r,g,b);
}
}
很抱歉,但我不记得确切的组合,所以b = (x | y) % FRAME_ITERATION;
可能实际上没有任何美丽。但是,你可以尝试自己的组合。
无论如何,使用上面的代码,你可以产生奇怪的图案,甚至是水样效果。