frkx316 Geschrieben 3. Januar 2019 Melden Share Geschrieben 3. Januar 2019 Hallo ich habe heute versucht mittels Kreisformel ((x−m1)^2+(y−m2)^2=r^2) und 2 for-Schleifen einen Kreis auf einer Textur zu erzeugen using System.Collections; using System.Collections.Generic; using UnityEngine; public class CirclePainter : MonoBehaviour { void Start () { Texture2D tex = new Texture2D(1024, 1024); int z; int r = 50; r = r ^ 2; for (int x = 0; x < tex.width; x++) { for (int y = 0; y < tex.height; y++) { z = (x - tex.height/2) ^ 2 + (y - tex.width/2) ^ 2; if ( z >= r) { tex.SetPixel(x, y, Color.red); } else { tex.SetPixel(x, y, Color.white); } } } tex.Apply(); GetComponent<Renderer>().material.mainTexture = tex; } dabei wurde auch eine sehr Interessante Textur erstellt auf der aber leider kein Kreis zu sehen war hierzu noch ein bild: Meine Frage an euch ist nun: Was habe ich falsch gemacht und was muss ich ändern damit am ende ein Kreis auf der Textur zu sehen ist? Ich bedanke mich schon mal im vor raus und freue mich schon auf eure Antworten Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Sascha Geschrieben 4. Januar 2019 Melden Share Geschrieben 4. Januar 2019 ^ ist nicht das Zeichen für "Hoch", es ist das Zeichen für "xor". Potenzrechnung machst du in Unity mit der Mathf-Klasse: Mathf.Pow(4, 2); // 4 zum Quadrat Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
frkx316 Geschrieben 4. Januar 2019 Autor Melden Share Geschrieben 4. Januar 2019 Ja hat funktioniert 👍 Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
malzbie Geschrieben 5. Januar 2019 Melden Share Geschrieben 5. Januar 2019 @Sascha Gutes Auge! Ich hatte mir die Formel gestern angeschaut und mir ist es nicht afgefallen. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Recommended Posts
Archiviert
Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.