Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!
Ich beobachte zwar alles ein bisschen von außen, aber ich glaube, dass sich derzeit keiner traut, xTrim's implementierung weiterzuführen? Oder ist das erstmal ein proof of concept Prototyp?
xTr1m konnte einfach die Finger nicht still halten und hat schon am Tag nach der Threaderstellung den Renderer gebaut, damit ist das wirklich nur ein PoC Prototyp
Leider reicht meine Zeit heute nicht für ein ganzes Treffen, daher nur ein Forenpost zum Thema Datenstruktur der Spielwelt, über die gerne diskutiert werden darf.
Das folgende ist btw. Pseudocode.
Die Welt soll dreidimensional sein und aus Tiles bestehen, daher macht es Sinn, diese Tiles in einem Array/Vector zu speichern.
x und y spannen dabei eine horizontale Ebene auf, z bestimmt die "Tiefe", von der Spitze der Spielwelt aus gesehen.
Theoretisch ist dies auch in einem eindimensionalen Array abbildbar.
Quellcode
1
Tile[breite*höhe*tiefe] tiles
Ein Tile selbst besteht aus einem Boden und etwas, was sich auf diesem Boden befindet. Auf einem Tile, auf dem sich keine Wand befindet, kann sich maximal nur eine bewegliche Entity und ein Item befinden, aber nicht mehr als eines vom selben Typ.
Ein fester Sandsteinblock sieht also wie folgt aus:
Eine Fläche Erde, auf der sich ein Holzstamm befindet, sowie eine Figur, die diesen gerade für den Abtransport auf seine Schultern hievt, sieht so aus:
Quellcode
1
2
3
4
Floor: Soil
Block: Nothing
Item: Log
Entity: Character
Zu klären wären nun Problemfälle dieses Modells, beispielsweise was geschieht, wenn ein Floor entfernt wird, auf dem sich Item/Entity befinden.
Meine Zeit ist diese Woche und heute leider recht knapp, daher belasse ich es erstmal dabei. Ich freue mich aber natürlich über Feedback und weitere Vorschläge und gehe schnellstmöglich auf diese ein.
Ich bin kein UserSideGoogleProxy. Und nein, dieses Forum ist kein UserSideGoogleProxyAbstractFactorySingleton.
Ich war auch mal so frei und habe ein paar Gedanken aufgeschrieben. Darauf aufbauend (nach Rücksprache der Ideen versteht sich) können wir dann evt. ein Modell aufbauen.
Bei deiner Tilemap fällt mir nur gerade auf, dass ein Item ja auch evt. ein Entity ist. Das muss sich natürlich nicht in die quere kommen. Ansonsten ist das alles noch unkonkret.
Bei deiner Tilemap fällt mir nur gerade auf, dass ein Item ja auch evt. ein Entity ist. Das muss sich natürlich nicht in die quere kommen. Ansonsten ist das alles noch unkonkret.
Ja, eventuell muss man hier per Klassenhierarchie eine Unterscheidung machen.
Entity als abstrakte Klasse, Item und Character als Ableitung davon.
Ich bin kein UserSideGoogleProxy. Und nein, dieses Forum ist kein UserSideGoogleProxyAbstractFactorySingleton.
Job queue, geht ungefähr in die Richtung die kurz im Kickoff durch extreme schon angedeutet wurde. Ist noch sehr grob, im Grunde um nur das Pattern allgemein in den Raum geworfen zu haben.
Meine "Konzepte" sollen übrigens nur als Diskussionsgrundlage dienen, ich denke ist gut wenn man was zum diskutieren hat. Dabei kommt man schneller auf Probleme die man berücksichtigen muss.
[Edit] Ach und guckt mal was ich noch gefunden habe.