[Projekt] Zudo's StoneQuest

Hier könnt ihr euch selbst, eure Homepage, euren Entwicklerstammtisch, Termine oder eure Projekte vorstellen.
Forumsregeln
Bitte Präfixe benutzen. Das Präfix "[Projekt]" bewirkt die Aufnahme von Bildern aus den Beiträgen des Themenerstellers in den Showroom. Alle Bilder aus dem Thema Showroom erscheinen ebenfalls im Showroom auf der Frontpage. Es werden nur Bilder berücksichtigt, die entweder mit dem attachement- oder dem img-BBCode im Beitrag angezeigt werden.

Die Bildersammelfunktion muss manuell ausgeführt werden, die URL dazu und weitere Details zum Showroom sind hier zu finden.

This forum is primarily intended for German-language video game developers. Please don't post promotional information targeted at end users.
waigie
Beiträge: 82
Registriert: 20.05.2009, 19:37

Re: [Projekt] Stonequest

Beitrag von waigie »

Das erzeugen der Cluster geht bei mir nun um einiges schneller als vorher. Zumindest gefühlt. Kann aber auch daran liegen das ich heute morgen einfach nur langsam bin.

Dafür gibt es bei mir kleine Probleme wenn ich Frustum und Occlusion Culling ausstelle.

Ohne Frustum Culling fängt die Steuerung zu laggen, sobald Cluster generiert werden. Die grafische Darstellung bleibt mit ~30 Fps jedoch flüssig. Ich denke es werden einfach zu viele nicht sichtbare Cluster generiert, was den Thread aufhält.

Schalte ich das Occlusion Culling aus erscheinen Riesige Blöcke im Hintergrund. Ich weiß nicht wie ich es beschreiben soll, daher hab ich ein kleines video gemacht. Das lade ich nach der Arbeit mal hoch damit du es dir ansehen kannst.
Benutzeravatar
Zudomon
Establishment
Beiträge: 2257
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] Stonequest

Beitrag von Zudomon »

Huhu!

Danke für dein Feedback.

Wegen dem Frustum könnte sein mit der Steuerung und dem laggen wie du sagst.

Habe das auch mal probiert und bekomme auch diese riesigen Blöcke, wenn das Occlusion Culling aus ist. Glücklicherweise. Denn dann sollte ich den Fehler schnell finden... danke! :D

EDIT: Wenn ich mich nicht irre, hab ich den wohl schon unterbewusst zwischendurch behoben. LOL. Denn in meiner Entwicklungsversion taucht der Fehler nicht mehr auf.
Benutzeravatar
Zudomon
Establishment
Beiträge: 2257
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] Stonequest

Beitrag von Zudomon »

Version 0.0.68

Nun werden noch weiße Würfel angezeigt. Diese zeigen an, dass der Cluster leer ist und werden dann gar nicht mehr erzeugt. Eventuell gehts dadurch schneller. Allerdings ist ein Clusterwechsel dadurch etwas langsamer... aber da optimieren ich noch.
Benutzeravatar
Zudomon
Establishment
Beiträge: 2257
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] Stonequest

Beitrag von Zudomon »

Version 0.0.69

Die Fluggeschwindigkeit ist wieder so, wie sie am Anfang war.
Das Überschreiten der Clustergrenzen ist nun auch optimiert.
LONy
Establishment
Beiträge: 145
Registriert: 29.09.2011, 10:04

Re: [Projekt] Stonequest

Beitrag von LONy »

Hi,
ich bekomm seit 0.0.68 wieder was angezeigt... Am besten stellt man es sich so vor, als wenn einer mit einer Minnigun auf die Stonequest Welt los wär... alles total durchlöchert^^ Es wird immer immer mehr geladen bis ich nur noch 1FPS hab... bei 0.0.69 besteht das gleiche problem. ich werd spätestens am donnerstag mal nen screenshot machen und hier hochladen... bzw. hab ich da auch endlich mal wieder zeit für icq ;)

gruß, LONy
Benutzeravatar
Zudomon
Establishment
Beiträge: 2257
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] Stonequest

Beitrag von Zudomon »

Okay, am besten kümmern wir uns dann mal in einer ICQ-Session darum.

Ich vermute aber mal, dass es an den Occlusion Queries liegen könnte, die anscheinend bei dir nicht funktionieren... aber sehen wir dann.
Benutzeravatar
Zudomon
Establishment
Beiträge: 2257
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] Stonequest

Beitrag von Zudomon »

Version 0.0.70

Hab ein wenig am Occlusion Culling rumgeschraubt... aber wirklich perfekt ist es noch nicht.

Ansonsten werden nun nochmal speziell gleiche Vertices gemerged.
Außerdem wird die Geometrie nun noch für den Vertex-Chache optimiert.
Benutzeravatar
Zudomon
Establishment
Beiträge: 2257
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] Stonequest

Beitrag von Zudomon »

Version 0.0.71

Kollisionserkennung... aber noch nicht groß optimiert... außerdem bezieht die sich nur auf Cluster, die auch generiert wurden...
Sleepy
Beiträge: 35
Registriert: 22.03.2010, 18:25

Re: [Projekt] Stonequest

Beitrag von Sleepy »

sehr schön nur schade das es immer noch ruckelt ich glaube sogar das es wieder schlimmer geworden ist.
Benutzeravatar
FlashbackOwl
Beiträge: 76
Registriert: 13.10.2011, 17:14

Re: [Projekt] Stonequest

Beitrag von FlashbackOwl »

Gefällt mir ;)
Und bei mir gibts jetzt weniger Mikroruckler..Kann aber auch am neuen Grafikkartentreiber liegen?
Linux wird nie das meistinstallierte Betriebssystem sein, wenn man bedenkt, wie oft man Windows neu installieren muss...
Benutzeravatar
Zudomon
Establishment
Beiträge: 2257
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] Stonequest

Beitrag von Zudomon »

Version 0.0.72

@Ruckler
Das wird schon noch... Geduld ihr haben müsst, junge Padawane... :D

Nun sollte es nicht mehr möglich sein, mit der Maus das Fenster zu verlassen, auch nicht, wenn es sehr klein ist.

Außerdem gibs nun an der Starposition ( F10 ) verschiedene Boxen
20111017_1.jpg
Ich könnte euch nun erzählen, dass es sich eigentlich dabei garnicht um Boxen handelt... denn in Realität ist ist das grüne Gebilde eine Zwergengestalt... eine recht große... im Vordergrund diese leicht rötliche Box ist ein Hase, im Hintergrund diese grau-braune eine Feldmaus und am Horziont parkt gerade eine Krähe...
Aber ihr würdet mir ja eh nicht glauben... drum sind es wohl doch nur bunte Boxen.
joeydee
Establishment
Beiträge: 1058
Registriert: 23.04.2003, 15:29
Kontaktdaten:

Re: [Projekt] Stonequest

Beitrag von joeydee »

Den Hasen hab ich gleich erkannt... ;-)
Benutzeravatar
FlashbackOwl
Beiträge: 76
Registriert: 13.10.2011, 17:14

Re: [Projekt] Stonequest

Beitrag von FlashbackOwl »

Ich find echt gut, wie schnell du das Spiel so gut aufgezogen hast. Respekt *g*
Hattest du auch mal überlegt, vielleicht eine Schnittstelle für "Skinpacks" zu integrieren? :D
So TexturMods sind doch immer wieder beliebt bei Spielen, wenn man sich dann alles ein wenig personalisieren kann, wobei ich darauf auch verzichten kann.
Aber für andere könnte das ein Dicker Pluspunkt sein. Wie siehst du/ihr das?

Greetz^^
Linux wird nie das meistinstallierte Betriebssystem sein, wenn man bedenkt, wie oft man Windows neu installieren muss...
Benutzeravatar
Zudomon
Establishment
Beiträge: 2257
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] Stonequest

Beitrag von Zudomon »

Version 0.0.73
FlashbackOwl hat geschrieben:Aber für andere könnte das ein Dicker Pluspunkt sein. Wie siehst du/ihr das?
Genau das hab ich hier auch schonmal gefragt, aber ist wohl untergegangen in der Flut der Posts...

Ist jetzt zwar etwas ruckelig, weil die Kollisionserkennung noch nicht optimiert ist... und die Simulation startet erst nach 5 Sekunden, in der Hoffnung, dass dann die Cluster generiert sind...
Nun fallen die ganzen "Lebewesen" zu Boden... außer die Krähen, die versuchen sich in der Luft zu halten... sind aber noch etwas zu dämlich und fliegen gegen die Felswände... man möge es ihnen verzeihen... :D
Benutzeravatar
FlashbackOwl
Beiträge: 76
Registriert: 13.10.2011, 17:14

Re: [Projekt] Stonequest

Beitrag von FlashbackOwl »

Dann war der wahrscheinlich auf genau der Seite, die ich überlesen habe :)
Linux wird nie das meistinstallierte Betriebssystem sein, wenn man bedenkt, wie oft man Windows neu installieren muss...
Benutzeravatar
Zudomon
Establishment
Beiträge: 2257
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] Stonequest

Beitrag von Zudomon »

Version 0.0.75 :D

Noch ein kleines Update für die Nacht...
Ist aber nun seeeehr ruckelig... also bei mir läufts gerade mal mit 10 FPS... muss dann wohl wieder optimieren...

Neu ist:
Die Krähen flattern nun besser durch die Lüfte und schaffen es manchmal auch, nem Felsen auszuweichen... aber oft klatschen sie immer noch gegen.
Man hat jetzt wohl Futter in der Tasche... denn nicht nur die vier Krähen kreisen über einen, sondern auch ein Hasen und eine Feldmaus lockt man an...
Selbst kann man nun laufen, rennen und springen.
Benutzeravatar
Zudomon
Establishment
Beiträge: 2257
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] Stonequest

Beitrag von Zudomon »

Version 0.0.76

Es gibt Ruckler und hatte gerade sogar eine Exception... aber dennoch läuft es nun bei mir mit etwa 100 FPS statt mit 13 FPS :D

Habe nun einen Octree für die Geometrie mit drin... also für die Kollisionserkennung. Geprüft wird mit dem mittleren Detaillevel, also 8 Dreiecke pro Würfelfläche, was auch schon so einige Dreiecke sind.
Der Octree arbeitet dabei auf den gleichen Daten, die an den Vertex- und Indexbuffer übergeben werden. Somit kann im Grunde direkt das renderfähige Objekt zur Kollisionserkennung herangezogen werden, ohne umgewandelt werden zu müssen. :D
Außerdem ist der Octree Klassenlos und arbeitet mit einem zusammenhängenden Speicherblock.
RazorX
Establishment
Beiträge: 156
Registriert: 23.12.2010, 14:13
Kontaktdaten:

Re: [Projekt] Stonequest

Beitrag von RazorX »

Nach ein bisschen rumlaufen fliegen mir MessageBoxen mit "Thread verkackt" um die Ohren und die Generierung der Landschaft ist abgebrochen.
Benutzeravatar
Zudomon
Establishment
Beiträge: 2257
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] Stonequest

Beitrag von Zudomon »

Ich vermute, es liegt am Octree... dieses Multithreading, wie das immer rum nervt... dann brauch ich wohl logischer und konsequenter Weise auch 2 Octrees pro Objekt zum flippen... weil wenn das Objekt gerade im Workerthread umbaut wird, ist der Octree nach außen hin ja inkonsistent. Update gibs nachher...
Benutzeravatar
Zudomon
Establishment
Beiträge: 2257
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] Stonequest

Beitrag von Zudomon »

Okay... so schnell gibs dann wohl doch kein Update, denn die Sache ist wohl etwas komplexer.

Es liegt nicht nur an dem Octree, sondern auch an dem Caching, was pro Objekt einmal für die Kollision und zum erzeugen des Octrees verwendet wird. Und als ich das aufteilen wollte, ist mir mal aufgefallen, dass die Buffer, also die Daten, die dann auch an die VB's und IB's übergeben werden ja auch nur einmal vorhanden sind.

Ich werde nun einen anderen Weg gehen und die Objekte nicht mehr "Backbuffern", sondern wenn ein Objekt überarbeitet wird, wird eben dann ein neues erzeugt, und danach das alte verworfen. Ich erhoffe mir, dadurch arbeit zu sparen und vor allem etwas von der Komplexität abzubauen.
Matthias Gubisch
Establishment
Beiträge: 472
Registriert: 01.03.2009, 19:09

Re: [Projekt] Stonequest

Beitrag von Matthias Gubisch »

Mir ist heute zufällig aufgefallen dass das Spiel sich beim starten mit ner Exception verabschiedet wenn keine Internetverbindung vorhanden ist.

Bei Bedarf kann ich dir die genaue Meldung gerne zukommen lassen.

Ansonsten tolles Projekt weiter so :)
Bevor man den Kopf schüttelt, sollte man sich vergewissern einen zu haben
Benutzeravatar
Zudomon
Establishment
Beiträge: 2257
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] Stonequest

Beitrag von Zudomon »

Danke für die Info!

Version 0.0.93

Nun läuft es auch ohne Internetverbindung
Benutzeravatar
FlashbackOwl
Beiträge: 76
Registriert: 13.10.2011, 17:14

Re: [Projekt] Stonequest

Beitrag von FlashbackOwl »

Ich habe dein Projekt ein wenig in meinem Freundeskreis bekannt gemacht :)
Einer gab mir die Rückmeldung, dass das Programm sich beim Doppelklick auf die .exe updaten würde und dann die Anwendung nur einen weisses Fenster aufzeigte, eine Exception von sich gab und darauf mit dem typischen Fehler "blabla.exe funktioniert nicht mehr" endete.

Mehr Informationen hab ich leider auch nicht, aber vielleicht hilft es dir ja :?:
OS war Windows7 64bit
Linux wird nie das meistinstallierte Betriebssystem sein, wenn man bedenkt, wie oft man Windows neu installieren muss...
Benutzeravatar
Zudomon
Establishment
Beiträge: 2257
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] Stonequest

Beitrag von Zudomon »

Danke für die Info!

Also was ich bisher bei LONy festgestellt habe, dass der Shader zum erstellen der Landschaft zu komplex ist... das werde ich in naher Zukunft umbauen. Falls dann der Fehler bei deinem Freund weiter besteht, würde ich mich gerne mit ihm in Verbindung setzen, damit ich das besser Debuggen kann...

Ich frage noch keine Caps ab, also könnte sein, dass da irgendwas von der Grafikhardware nicht unterstüzt wird.

Bei LONy ist das seltsame, dass der Shader zwar kompiliert, aber von seiner Graka (Radeon X1900) nicht erstellt werden kann... eigentlich sollte da doch dann schon beim kompilieren eine Fehlermeldung auftreten.


Übrigens schaue ich gerade, warum es seit den "Tieren" so ruckelig geworden ist, und musste feststellen, dass mein Trick, um quick&dirty festzustellen, ob die Krähen gegen eine Wand fliegen, mit 60-80ms zu buche schlägt. Das Problem ist, dass ich da mit einer größeren Kugel ein paar Meter nach vorne prüfe und das resultiert dann in tausende Dreiecke, die auf Kollision geprüft werden. Da es für mich nur wichtig ist, ob da überhaupt ein Dreieck im Weg sein könnte, werde ich nun dafür entsprechende Routinen schreiben.
Benutzeravatar
FlashbackOwl
Beiträge: 76
Registriert: 13.10.2011, 17:14

Re: [Projekt] Stonequest

Beitrag von FlashbackOwl »

Würde es denn nicht auch funktionieren, wenn an deinen feststehenden Blöcken kleine "Taster" sind, also auch diese Kugeln nur etwas kleiner. So sparst du dir doch später eigentlich die 360°Dauerabfrage um das Tier, die auch noch beweglich sein müsste. Und das kostet schätze ich mal einiges an Prozessorzeit.
Korrigier' mich wenn ich irre :)
Linux wird nie das meistinstallierte Betriebssystem sein, wenn man bedenkt, wie oft man Windows neu installieren muss...
Benutzeravatar
Zudomon
Establishment
Beiträge: 2257
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] Stonequest

Beitrag von Zudomon »

Ja, recht hast du... es ist ja jetzt auch quasi nur eine Notlösung... später wäre es sinnvoll, die Landschaftsvoxel an sich in einen Octree zu speichern... das macht den Speicherbedarf zum cachen auf der Platte geringer... außerdem kann ich auf dem Octree für Pfade suchen, sowie die Informationen gebrauchen um herauszufinden, wo kleine Öffnungen sind usw. für Wind vielleicht interessant.
Sleepy
Beiträge: 35
Registriert: 22.03.2010, 18:25

Re: [Projekt] Stonequest

Beitrag von Sleepy »

wird immer besser aber die schwerkraft musst bischen zurück schrauben, das ist ein bischen wie auf dem Mond zu laufen :)
Benutzeravatar
Zudomon
Establishment
Beiträge: 2257
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] Stonequest

Beitrag von Zudomon »

Irgendwie ist das mit der Schwerkraft seltsam. Das muss ich immer wieder in meinen Projekten feststellen. Vermutlich liegt es wohl daran, dass man höher springen kann, als in Wirklichkeit und das man schlecht die Höhe einschätzen kann... wenn ein Block ein Meter darstellt, dann macht man schon verdammt hohe Sprünge...

Man kann ja im Moment gute 2,5 Meter hoch springen.

Von den Formeln her ist es so implementiert:

Code: Alles auswählen

  Gravity := Vec( 0, -9.81, 0);
  Vel := Vel + Gravity * FrameTime;
  Pos := Pos + Vel * FrameTime;
Falls das falsch ist, möge sich bitte jemand dazu äußern ;)
joggel

Re: [Projekt] Stonequest

Beitrag von joggel »

Ich hab gestern einiges getrunken... deswegen bin ich heute nicht auf der Höhe :(
Eine Frage:
Wieso multiplizierst Du die Beschleunigung nochmal mit der FrameZeit?
Ist das korrekt so?
Benutzeravatar
Zudomon
Establishment
Beiträge: 2257
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] Stonequest

Beitrag von Zudomon »

Weil es doch, soweit ich das weiß, folgend abläuft:

Position = Position + Geschwindigkeit * Zeit + Bechleunigung * (Zeit)²
Antworten