私はProcessingで少しおかしなことを書きましたが、これをMacOSXスクリーンセーバーにしたいと思います。しかし、OpenGLに飛び込むのは、思ったほど簡単ではありませんでした。
基本的に、画面上のすべてのピクセルをループし、そのピクセルの色に基づいて別のピクセルの色を設定します。
処理コードは次のようになります。
void setup(){
size(500,500, P2D);
frameRate(30);
background(255);
}
void draw(){
for(int x = 0; x<width; x++){
for(int y = 0; y<height; y++){
float xRand2 = x+random(2);
float yRand2 = y+random(2);
int xRand = int(xRand2);
int yRand = int(yRand2);
if(get(x,y) == -16777216){
set(x+xRand, y+yRand, #FFFFFF);
}
else if(get(x,y) == -1){
set(x+xRand, y+yRand, #000000);
}
}
}
}
それはあまりきれいではなく、また非常に効果的でもありません。ただし、OpenGLで同様のことを行う方法を知りたいと思います。どこから始めればいいのかわからない。