Domanda

Sto scrivendo un programma per generare alcune immagini selvatici. Finora posso dipingere ogni pixel con un valore blu casuale:

for (y = 0; y < YMAX; y++) {
    for (x = 0; x < XMAX; x++) {
        b = rand() % 255;
        setPixelColor(x,y,r,g,b);
    }
}

Mi piacerebbe fare di più che fare rumore blu, ma non sono sicuro da dove cominciare (Google non mi sta aiutando molto oggi), quindi sarebbe bello se si potesse condividere nulla si sa sulla soggetto o alcuni link a risorse correlate.

È stato utile?

Soluzione

ho usato per fare questo tipo di trucchi in passato. Purtroppo , non ho il codice: - /

Ti verrà stupito di ciò che effetti AND bit a bit integer operatori aritmetici in grado di produrre:

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);
    }
}

Siamo spiacenti, ma non mi ricordo le combinazioni esatte, così b = (x | y) % FRAME_ITERATION;
potrebbe effettivamente rendere nulla di bello. Ma, si può provare le proprie combo.

In ogni caso, con il codice come il precedente, è possibile produrre modelli di strani e persino gli effetti di acqua-like.

Altri suggerimenti

Le onde si realizza con le funzioni trigonometriche (sin / cos) o tabelle che approssimativa di loro.

Si può anche fare alcune increspature d'acqua fresca con qualche semplice matematica. Vedere qui per il codice e una demo online.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top