Wie kann ich Sub-Pixel-Genauigkeit in der Position der Punkte erhalten, die unten gezeichnet sind? Es wird nur ganzzahlige Genauigkeit verwendet - was das beobachtete Wobbeln der sich bewegenden Punkte verursacht.rotieren/zeigen mit Sub-Pixel-Genauigkeit
int amount = 300;
float[] x = new float[amount];
float[] y = new float[amount];
float[] z = new float[amount];
void setup() {
size(500, 400, P3D);
stroke(255);
strokeWeight(1);
for(int i = 0; i<amount; i++) {
x[i] = float(random(-150, 150));
y[i] = float(random(-150, 150));
z[i] = float(random(-150, 150));
}
}
void draw() {
background(0);
translate(width/2, height/2);
rotateX(-0.1);
rotateY((frameCount/1000)*1);
for(int i = 0; i<amount; i++) {
point(x[i], y[i]/22, z[i]);
}
}
Danke, aber diese Änderung machte überhaupt keine sichtbare Verbesserung. – ChrisJJ
@ChrisJJ Umm, bist du sicher? Das Ausführen des Codes mit dieser Änderung funktioniert perfekt für mich. –
@ChrisJJ Es gibt noch eine weitere Änderung, die Sie möglicherweise benötigen. Die Zeilen, die 'float (random (-150, 150)) verwenden;' kompilieren nicht für mich, da der von 'random()' zurückgegebene Wert bereits ein 'float' ist, also in 'float()' übergeben wird Funktion ist nicht gültig. Machen Sie einfach, dass diese Zeilen 'random (-150, 150);' anstatt des 'float()' -Teils verwenden. –