09.09.2020, 17:07
(Dieser Beitrag wurde zuletzt bearbeitet: 09.09.2020, 17:13 von AstroCuber.)
Genau die Überlegung hatte ich bisher auch angestellt: Entweder stupide die Farben pro Seite speichern wie Du schon berechnet hast und "einfache" Funktionen für die Moves schreiben.
Oder aber individuelle Variablen für je 8 Ecken mit je 3 Orientierungen und 12 Kanten mit je 2 Orientierungen (8x2bit + 12x 1bit) in einem 3D-Koordinatensystem (3x3x3 array) als Pointer abzulegen, bzw. besser die Position im 3x3x3system stattdessen direkt mit zu speichern. Da Ecken nur an 8 Positionen und Kanten an 12 Positionen sein können, wären auch nur je 3bit zusätzlich für Ecken und 4 bits zusätzlich für Kanten als Positionsmarker in der jeweiligen Variable erforderlich. In Summe also immer 5bit pro Ecke/Kante = 20 * 5bit = 100bit = 12,5byte
Die Move-Funktionen würden dann natürlich wesentlich komplexer ausfallen.
Das ganze plane ich zudem auf einen Microcontroller umzusetzen.
Oder aber individuelle Variablen für je 8 Ecken mit je 3 Orientierungen und 12 Kanten mit je 2 Orientierungen (8x2bit + 12x 1bit) in einem 3D-Koordinatensystem (3x3x3 array) als Pointer abzulegen, bzw. besser die Position im 3x3x3system stattdessen direkt mit zu speichern. Da Ecken nur an 8 Positionen und Kanten an 12 Positionen sein können, wären auch nur je 3bit zusätzlich für Ecken und 4 bits zusätzlich für Kanten als Positionsmarker in der jeweiligen Variable erforderlich. In Summe also immer 5bit pro Ecke/Kante = 20 * 5bit = 100bit = 12,5byte
Die Move-Funktionen würden dann natürlich wesentlich komplexer ausfallen.
Das ganze plane ich zudem auf einen Microcontroller umzusetzen.