Zufallsgenerator... mal wieder

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von Steppenpferd.

    Zufallsgenerator... mal wieder

    Hallo allerseits,
    hier und in anderen Foren gibt's wirklich viele Threads zum Thema Zufallszahlen, die mich im Moment leider nicht weiter bringen.
    Habe im Moment folgendes Problem... Ich generiere in einem Spiel Steintexturen von 48 x 48 also 2304 Pixeln.
    Die Texturen haben eine Grundfarbe und 3 grau Schattierungen. Bei jedem Pixel wird per RND ausgewählt welcher der 4 Farbwerte verwendet wird.
    Wenn ich die Texturen per Button erzeugen lasse läuft alles prima.
    Wird jedoch per Code eine 21 x 21 Matrix dieser Texturen gezeichnet sind teilweise 2-3 aufeinander folgende Texturen beinahe Identisch.

    So ca. Anfang 2002 (zu meinen vb6 anfangs Zeiten) hatte ich kontakt zu einem Informatik Dozenten, der mir zwar ohne Code Beispiele aber mit Theoretischer Logik weitergeholfen hat.
    Damals hab ich einen Slot-Automaten geschrieben, der trotz RND, bei jedem Programm Neustart die gleichen zufälligen Abläufe angezeigt hat.
    Er sagte mir damals das ich den Zufallsgenerator per Zeit-Faktor zufällig machen sollte, was auch gut funktioniert hat.
    Dies kann ich aber wohl in diesem fall nicht anwenden, da sonst wohl noch mehr Duplikate entstehen, wie ich hier gelesen habe.

    Niko Ortner schrieb:

    Den Millisekunden-Anteil der aktuellen Uhrzeit zu verwenden ist übrigens nicht gut. Es gibt dann nur maximal 1000 verschiedene Zufallszahlenreihen, die man bekommen kann (0 bis 999). Belässt man es allerdings beim Standardkonstruktor, ist diese Zahl viel viel größer.


    Hat vielleicht jemand einen Theoretischen Ansatz oder eine Idee wie man das Problem lösen könnte?
    Das Chaos beginnt mit komprimierter Ordnung (Steppenpferd 2019)
    @xChRoNiKx Das denke ich auch.
    @Steppenpferd Verwende in Deinem Programm genau einen Zufallsgenerator.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    @xChRoNiKx
    Danke, das wars. Hatte es tatsächlich im Sub New stehen. Jetzt sind auch nach mehreren Durchläufen keine Duplikate mehr zu sehen.
    Edit: Bild ist jetzt im Orginalformat als Bitmap

    Dateien
    • Steinmatrix.bmp

      (3,05 MB, 224 mal heruntergeladen, zuletzt: )
    Das Chaos beginnt mit komprimierter Ordnung (Steppenpferd 2019)

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Steppenpferd“ ()