[Projekt] .: AsTrAl-TrAnSmIsSiOn :.

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.
Benutzeravatar
Zudomon
Establishment
Beiträge: 2253
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Zudomon »

Also mir ist es egal... aber was wie wohin verschoben wird, müsst ihr euch überlegen ;)
Seraph
Site Admin
Beiträge: 1174
Registriert: 18.04.2002, 21:53
Echter Name: Steffen Engel

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Seraph »

Ich hatte auch schon ueberlegt es auseinanderzunehmen, bin aber ebenfalls daran "gescheitert", einen geschickten Schnitt zu machen, zumal diese Diskussion aus Zudomons "Vortrag" hervorgangen ist. Aber nun erstmal zurueck zur Diskussion. :D

Du hast recht, man muss teilweise zwischen Einzel- und Teamarbeit unterscheiden, aber wie hoch ist der Anteil der beiden? Dazu kommt noch hinzu, dass haeufig irgendwann der Zeitpunkt kommt, wo eine andere Person den selbst geschriebenen Code erweitern oder zumindest warten muss. Spaetestens da zeigt sich dann, wie gut der Code wirklich ist. Zugegebenermassen haengt das natuerlich dann auch von der neuen Person mit ab.

Ich selbst gehoere leider auch nicht zu den vorbildlichen Doku-Schreibern und muss mich immer zwingen mehr zu kommentieren als ich fuer notwendig erachte, da ich mich normalerweise auch noch Jahre spaeter recht problemlos in meinem selbstgeschriebenen Code zurechtfinde. Auch lege ich haeufig die Zusammenhaenge (auch fuer komplexe Dinge) schon vorher in meinem Kopf fest und merke sie mir auch sehr lange, was wohl aus meiner frueheren DB-Erfahrung kommt (allerdings nur Hobby). Dennoch kann es extrem praktisch sein eben diese auch niederzuschreiben, gerade wenn das Projekt ein wenig komplexer wird und die Vorgaenge nicht mehr so einfach nachvollziehbar werden. Sei es nur fuer andere oder aber auch fuer einen selbst.

Im uebrigen musste ich bei deinen Texten immer ein wenig schmunzeln. Bitte nicht missverstehen, es ist nicht negativ gemeint, denn einerseits freut es mich, dass man sich immer noch soviel vornehmen kann, andererseits steckt halt auch irgendwo die unzureichende Erfahrung mit drin. Ich haette fast gesagt, als ich so alt war wie Du, aber dann bekomme ich irgendwie dieses unangenehme Gefuehl, dass ich tatsaechlich aelter werde... ;) Wie auch immer, vor noch gar nicht mal so langer Zeit *hust* waren ich und ich denke auch einige andere in der gleichen Situation, haben grosse Plaene geschmiedet und mangels Teamkollegen haben wir natuerlich alles selbst gemacht. Das ging dann vielleicht sogar ein paar Jahre gut, aber irgendwann kommt der Punkt, wo man es dann aus einem Grund nicht mehr aufrecht erhalten kann, sei es die mangelnde Motivation, die geaenderten Lebensumstaende oder irgendetwas anderes. Aber vielleicht muss man diese Erfahrung einfach selbst machen, afair dachte ich damals auch, man kann alles allein erreichen, nun sieht es jedoch anders aus.

Das was Despotist am 20.05.2009, um 08:14 Uhr geschrieben hat ist uebrigens ansich richtig. Allerdings ist es nur ein Weg und man muss es nicht ganz so strikt halten. Es muss nicht alles von Anfang an bis ins kleinste Detail geplant und "feature complete" sein. Dieses richtet sich nach der Art des Spiels als auch deinen eigenen Vorstellungen. Jedoch sollte vieles schon von Anbeginn moeglichst genau ausgearbeitet sein, also so genau es halt in dieser Phase schon geht und mit jedem weiteren Schritt wird es verfeinert. Moeglichst genau deshalb, damit Du nicht auf einmal eine Kehrtwendung machen kannst und etwas ganz anderes moechtest.

Im Grunde genommen geht es darum, verwende ich das naechste halbe Jahr jeden Tag dazu mein Design-Doc mit allem drum und dran schon vorher genau festzulegen (wobei einige (besonders allein) bei umfangreichen Projekten da schon scheitern werden) oder programmiere ich einfach jetzt schon drauf los, alles was sich so im Laufe der Zeit ergibt wird entsprechend angepasst. Oder versuche ich vielleicht einen Kompromiss aus obigen Moeglichkeiten zu finden?

Ich denke ein Kompromiss hat auch noch den Vorteil, dass man schneller etwas vorzeigen kann, was einem sehr dabei helfen kann andere Personen fuer das eigene Projekt zu ueberzeugen. Zudem bietet es den neu hinzugekommenen Personen auch noch die Moeglichkeit der Einflussnahme auf das Projekt, was denke ein nicht ganz unerheblicher Motivationsfaktor fuer das Mitwirken an einem solchen Projekt ist.

Fuer das Projekt meines Teams verwenden wir uebrigens einen solchen Kompromiss, wobei dieses eine kurze Zeit lang in der Anfangsphase in einer Grundsatzdiskussion diskutiert wurde. Dafuer fuellt sich das Wiki mit der Zeit immer mehr, haeufig aber auch erst nach langen Diskussionen. *sigh* Dennoch wuerde ich Dir empfehlen, Dir frueher oder spaeter noch jemanden zu suchen. Es geht schneller, Aufgaben koennen verteilt werden, man kann sich gegenseitig motivieren, ... viele Vorteile stehen ein paar Nachteilen gegenueber.

Wie auch immer Du Dich entscheiden magst, viel Glueck/Erfolg bei deinem Projekt und halt uns auf dem Laufenden! :)

PS: Ich habe Crysis uebrigens nicht wegen der Grafik gespielt, allerdings auch nicht wegen der Story, sondern wegen der vermeintlichen Freiheit und dem tollen Anzug, mit dem man von Dach zu Dach springen und stealthen konnte. Leider hat sich das Spiel dann im weiteren Verlauf immer weiter in eine Richtung entwickelt die mir immer weniger gefallen hat. :(
Benutzeravatar
Zudomon
Establishment
Beiträge: 2253
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Zudomon »

Hi!
Meiner Meinung nach sollte der Thread am besten jetzt so bleiben. Es geht ja garnicht so extrem Off-Topic. Werde euch auch fleißig auf dem laufenden halten, versprochen!!
Ich danke dir Seraph, das du mir bzw. uns nochmal so ausführlich deine Erfahrungen geschildert hast. So extrem verschiedenen sind ja unsere Ansichten garnicht.

Habe gestern noch lange nachgedacht und bin nun auf folgender Erkenntnis gekommen:
Ich denke ja, dass das Planen bei solchen Projekten sehr Schwierig ist, weil ich garantiert nie alle Eventuallitäten bei der Engine beachten kann. Und ich erst durch die Implementierung sehe, wie sinnvoll das ein oder andere ist. Z.B. ist es essentiell für die Engine (alles immer meiner Meinung nach, kann sein, dass ich mich irre ;) ) ob man nun Stencil oder Shadowmaps nimmt, oder beides.
Habe halt gemerkt, das ich viel besser fahre, wenn ich erstmal von nichts ausgehe und wenn ich dann ein Feature in der Engine haben möchte, passe ich die Struktur an, bis es klappt. Nachdem dann am Ende alle Features drin sind und die Engine fehlerfrei läuft, dann hat man quasi die ideale Struktur entdeckt, die nötig war, um die Features, die man wollte, umzusetzen. Man kann halt kein Programm planen, das so dynamisch auf alle Eventualitäten, die in Zukunft kommen, angepasst ist.
Also wäre das zwischen Planung und Engine ja erörtert.

So, aber nun kommts:
Zwischen Spiel und Engine mache ich es genau falsch herum und komme deswegen überhaupt nicht klar!
Ich versuche erst, eine ideale Engine zu schreiben, um dann mein Spiel damit machen zu können. Wenn ich mein normales Vorgehen anwenden würde, dann müsste ich stattdessen aber erst das Spiel anfangen, und dann die Engine soweit aufpeppeln, dass das, was ich im Spiel möchte, mit der Engine umzusetzen ist.

Ich breche somit also meine eigene Konvention und brauch mich dann nicht wundern, wenn ich ewig in der Engineentwicklung feststecken bleibe und nicht ans Spielemachen komme.
Benutzeravatar
Schrompf
Moderator
Beiträge: 4838
Registriert: 25.02.2009, 23:44
Benutzertext: Lernt nur selten dazu
Echter Name: Thomas Ziegenhagen
Wohnort: Dresden
Kontaktdaten:

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Schrompf »

Sehr gut, Zudomon! Das ist konsequent gedacht und so ziemlich der Kern dessen, was ich Dir sagen wollte.
Früher mal Dreamworlds. Früher mal Open Asset Import Library. Heutzutage nur noch so rumwursteln.
Benutzeravatar
Zudomon
Establishment
Beiträge: 2253
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Zudomon »

Hallo!
Leider habe ich immernoch das Problem mit den Übergeben von Variablen über einen tbuffer. Habs jetzt erstmal provisorisch einfach über cbuffer implementiert.

Hier ist nun meine etwas abgewandelte Variante des Indexed Defered Shading. Es werden keine speziellen oder zusätzlichen Rendertargets benutzt. Mein Rendertarget hat das Format DXGI_FORMAT_R8G8B8A8_UNORM. :D

Das folgende Bild zeigt 200 kleine, zufällig verteile Lichtquellen: :)
20090526.jpg
Was haltet ihr davon?

Gruß
Zudo
Benutzeravatar
Lord Delvin
Establishment
Beiträge: 574
Registriert: 05.07.2003, 11:17

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Lord Delvin »

Jetzt müssten die nurnoch Schatten haben:D

Ne Spaß, ich finds schön:)
XML/JSON/EMF in schnell: OGSS
Keine Lust mehr auf C++? Versuche Tyr: Get & Get started
DeRaaZuul
Beiträge: 15
Registriert: 19.03.2008, 00:25

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von DeRaaZuul »

Das sieht klasse aus.Ich benutze zur Zeit auch einen Deffered Renderer.Leider ist er nicht sehr schnell und hat noch paar Wehwechen...Hast du den Renderer einfach auf gut glück selber programmiert oder dein Wissen aus Bücher , Tutorials bezoggen?
Benutzeravatar
Zudomon
Establishment
Beiträge: 2253
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Zudomon »

Danke :)

@DeRaaZuul

Fast alle Dinge, die ich gemacht habe, sind mehr oder weniger auf gut glück selber programmiert. Ich tue mich schwer, Dinge zu verstehen, die man mir nicht visuell über Animationsfilme oder ähnliches erklärt. Und das findet man ja sehr selten.
Ich habe nur 3 Bücher zu dem Thema:
* Inside Microsoft DirectX 9 - Spieleprogrammierung
Das hab ich mir leider zu spät gekauft, da war für mich DX9 eigentlich schon soweit ausgelutscht. Also umsonst gekauft.
* Introduction to 3D Game Programming with DirectX 10
Sehr gutes Buch um mit DX 10 loszulegen, kann ich nur empfehlen
* ShaderX 6
Scheint eine sehr krasse Buchreihe zu sein, bin leider nur noch nicht dazu gekommen, micht damit auch richtig zu beschäftigen. Habe da bis jetzt nur die ersten 2 Kapitel mal grob gelesen.

Tutorials, sind nett, um ein paar Grundlegende Dinge oder Tricks zu verstehen. Aber so direkt benutze ich eigentlich auch keine.

Deferred Shading bin ich früher selbst drauf gekommen, und war enttäuscht, hinterher festzustellen, dass es sowas schon gibt. Das neue Indexed Deferred Shading, war ja eigentlich nur eine logische Schlussfolgerung, auf die ich aber nie gekommen bin. Als du das dann in dem anderen Thread erwähnt hattest, ist es mir wie Schuppen von den Augen gefallen. Wobei mir dann noch gleich eine Erweiterung eingefallen ist. So wie ich das verstanden hatte, wird ja beim Indexed Deferred Shading, statt der Normalen usw. einfach nur der Index gespeichert, um dann auf die Lichtquellen zu schließen, dessen Informationen man dann in einer Lighttable hält.
Meien Erweiterung braucht dann schließlich keine extra Textur mehr. Die Lighttable wird an den Shader übergeben und dann werden alle Lichter die in Frage kommen, gesampelt. Jetzt wäre es sehr langsam, bei jedem Pixel über jede der Lichtquelle zu iterieren, deswegen wird das ganze nochmal über einen Octtree optimiert, der im Pixelshader läuft. :D

Gruß
Zudo
Benutzeravatar
Schrompf
Moderator
Beiträge: 4838
Registriert: 25.02.2009, 23:44
Benutzertext: Lernt nur selten dazu
Echter Name: Thomas Ziegenhagen
Wohnort: Dresden
Kontaktdaten:

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Schrompf »

Täte es nicht auch ein Zugriff in den Constant Buffer anhand der Licht-Indizes? Ein Octree im PixelShader dürfte ziemlich viel Dynamic Branches haben und damit reichlich lahm sein. Was dann auch die Framerate erklären würde. Ich glaube nämlich, das Orginal-IndexedDeferredRendering kam bei 200 Lichtern auf sehr viel höhere Framerates.
Früher mal Dreamworlds. Früher mal Open Asset Import Library. Heutzutage nur noch so rumwursteln.
Benutzeravatar
Zudomon
Establishment
Beiträge: 2253
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Zudomon »

Das kann ich dir auf anhieb nicht sagen. Aber vermutlich wirst du Recht haben. Das wäre eigentlich auch schon der zweite Octree in diesem Pixelshader, weil ich für die Texturen ja auch einen brauch, nur müssen dafür dann sogar die Werte sortiert werden, das fällt beim Licht ja weg. Ich bin noch mit mir am hardern, ob ich noch probiere, im Shader den Schatten zu raytracen. Wäre mal was anderes, als Stencil- oder Shadowmaps.
Eisflamme
Establishment
Beiträge: 412
Registriert: 26.05.2002, 17:42
Wohnort: Köln

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Eisflamme »

Sehe das gemischt. Einerseits sollte man immer aufpassen, dass man auf Grund einer sehr positiven Einstellung nicht zu sehr die Realität aus den Augen verliert und Entscheidungen macht, die man später bereut.

Auf der anderen Seite, und das finde ich viel wichtiger, sind Träume und Ziele immens wichtige Dinge. Sie motivieren einen. Und egal, auf welchem Stand man sich nach einem Projekt befindet, man hat etwas dazugelernt und sich selbst weiterentwickelt. Und das ist, was zählt.
Wirklich gut ist man erst dann, wenn man von anderen qualifizierten Leuten dafür gehalten wird. Sich selbst für grandios zu halten ist reichlich sinnlos.
Im professionellen Sinne mag das stimmen, aber explizit hast du das ja nicht gesagt. Wenn ich jetzt etwas aus dem Kontext reißen sollte, dann tut es mir Leid, aber allgemein genommen entspringt aus so einer Aussage für mich die Überzeugung, die Einschätzung der eigenen Personen im abstrakten Sinne nach anderen auszurichten. Und das ist imo auf's Leben bezogen ein grober Fehler. Ohne sagen zu wollen, dass man nicht stets selbstkritisch und äußeren Einflüssen und Erfahrungen aufgeschlossen sein sollte: Wer sich immer nur nach anderen ausrichtet, ist nicht froh und wird es auch nie wirklich sein. Man muss sich aus sich selbst heraus definieren und die Entwicklung folgt dem dann - bei manchen schnellern, bei manchen weniger schnell, das hängt von vielen Faktoren ab.

Ich lese begeisterte Beschreibungen und große, manchmal etwas übertriebene, Visionen der eigenen Projekte eigentlich gerne. Denn wenn man die gegenteilige Einstellung hat und sich immer nur nach dem Besten ausrichtet, entspringt daraus meiner Erfahrung nach kein fertiges Projekt oder ein nur mit viel Unmut entstandenes.

Lg
Benutzeravatar
Zudomon
Establishment
Beiträge: 2253
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Zudomon »

Hallo euch allen!

Ich wollte mal ein kleines Update machen, und mich etwas vom DA schreiben ablenken. ;)
Naja, eigentlich blöde, weil jetzt schreibe ich ja wieder. :(

Der Editor hat jetzt eine GUI bekommen. Es funktioniert da schon so einiges, allerdings fehlt noch ein Gitternetz. Auf der linken Seite ist allerdings das Erstellen und bearbeiten der Parameter schon komplett implementiert.

Da ich mir überlegt hatte, den Editor auch zum bauen von Minispielen zu missbrauchen, hab ich das ganze jetzt wieder auf DirectX 9 zurückgeschraubt. Ich denke, dass noch viele mit XP unterwegs sind und da möchte ich dann meinen Absatzmarkt nicht künstlich verkleinern. Ich hoffe, das ich bald wieder schneller voran komme. Mir fehlte etwas die Motivation in den letzten Wochen.
20090624c.jpg
Außerdem, als Verfechter von parametrisierten Objekten wollte ich euch gerne noch dieses Objekt zeigen:
Es stellt nichts besonderes dar, ist beim rumspielen rausgekommen.
20090624.jpg
und im Drahtgitter:
20090624b.jpg
Es hat 81920 Dreiecke.

Das coole daran, da es parametrisch ist, verbraucht es beim speichern 61 Byte :D :D :D
Benutzeravatar
Zudomon
Establishment
Beiträge: 2253
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Zudomon »

Soooo... ich habe beschlossen, mal die aktuelle Version des Editors online zu stellen. Vielleicht hat der eine oder andere mal Lust, sich das anzuschauen.
Es wird wohl noch die d3dx10_33.dll benötigt, die ich nicht dabei packe, weil ich nicht genau weiß, ob man die einfach so weiter geben darf.

Ich bitte euch, mir unbedingt ein Feedback zu geben!! Meckert ruhig über jede Kleinigkeit, die euch auffällt!!! :D

Was noch nicht geht:
Es gibt nur ein Objekt, und das lässt sich nicht transformieren, also versucht es garnicht erst ;)
Das Hilfesystem ist derzeit weder eine Hilfe noch Interaktiv...

Was schon geht:
Neu, Laden, Speichern, Erstellen und der Modifierstack.
Es wird immer direkt das aktuelle gespeichert und geladen, sobald man den Editor schließt oder öffnet. Allerdings werden die Fenstereinstellungen noch nicht mitgespeichert (sollte man die für ein Projekt oder für den gesamten Editor speichern??).
Vorischt: Das aktuelle Objekt bleibt immer aktiv. Geht man auf erstellen, so wird es ersetzt, allerdings wird der Modifierstack beibehalten. Wenn man nun ein Subdivide hat, was 6 Level produziert und man das Stanford Bunny lädt, dann wird das wohl crashen...

Grobe Hilfe:
Jedes 3D Fenster kann Optionen ausklappen (auf die obere Leiste klicken).
Einige sind über F-Tasten erreichbar:
[F3] Rendermode
[F4] Wireframe
[F5] Kamera Ortho/Persp.

Außerdem:
[g] Gitter umstellen
[w], [a], , [d] Kamera bewegen

Im Persp. Fenster:
Für folgende Funktion sollte unter der Maus das Objekt liegen, sonst klappt es nicht richtig:
Linke Maustaste gedrückt halten, um geklickten Punkt drehen (GENAU, das war aus dem heutigen Thread)
Rechte Maustaste, Kamera verschieben
Beide Maustasten, Kamera drehen
Mausrad, Zoom to Point

Im Ortho Fenster:
Rechte Maustaste, Kamera verschieben
Mausrad, Zoom to Point

[F10] Ansichten auf Objekt ausrichten

Das wars soweit erstmal. Bei vielen Modifikatoren fehlen auch noch so ein paar Einstellungsmöglichkeiten.

So, und nun hoffentlich viel Spass beim testen!!!!!!!!!
:D

Gruß
Zudo

Edit: Für neueste Version bitte weiter unten schauen ;)
Zuletzt geändert von Zudomon am 29.06.2009, 23:42, insgesamt 2-mal geändert.
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Krishty »

Zwei Systemabstürze …

… einmal habe ich eine Kugel und einen Zylinder erstellt, mich ein bisschen durch die Menüs geklickt und ein Fenster zum Fullscreen und wieder in den Fenstermodus zurückgeschaltet. Dann wurde meine Grafikkarte immer lauter und das System hat sich mit einem Bluescreen verabschiedet.

… beim zweiten Mal habe ich eine Kugel erzeugt, die GraKa hat wieder enorm hochgedreht. Ich wollte den Editor maximieren, da fror das Bild ein – zehn Sekunden später war dann auch der Cursor stehen geblieben und ich musste rebooten.

Ich würde ja fast wieder auf VSync tippen, möchte da aber nicht vorschnell sein, da Fraps nicht mehr mit dem Editor funktioniert.

Gruß, Ky
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Zudomon
Establishment
Beiträge: 2253
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Zudomon »

Danke für den Tipp und sorry für das crashen!

Es war tatsächlich kein VSync an. Habe damit selbst auch keine Probleme, seltsam dass das solche Probleme bei hohen Frameraten verursacht.

Ob nun die Abstürze wirklich daran lagen, kann ich noch nicht sagen, können aber gut auch noch einige Bugs drin sein.

Hier nun die neue Version, diesmal mit VSync und FPS-Anzeige:


Edit: Könnte es sein, dass Fraps nicht funktioniert, weil das eventuell nur auf den Hauptbackbuffer anspringt, nicht aber auf verschiedene Swapchains?

Edit2: Für neueste Version bitte noch weiter unten schauen :D
Zuletzt geändert von Zudomon am 02.07.2009, 21:09, insgesamt 1-mal geändert.
Benutzeravatar
Lord Delvin
Establishment
Beiträge: 574
Registriert: 05.07.2003, 11:17

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Lord Delvin »

Startet in wine nicht wirklich: Man sieht den editor und dann kommen ziemlich viele AVs, allerdings merkwürdigerweise nicht auf 0 sondern auf 0x2C, was auch immer das soll.
Keine Ahnung ob das an wine oder an dir liegt.
Gruß
XML/JSON/EMF in schnell: OGSS
Keine Lust mehr auf C++? Versuche Tyr: Get & Get started
Benutzeravatar
dv
Beiträge: 51
Registriert: 15.09.2002, 17:46
Benutzertext: Ugauga.
Alter Benutzername: dv
Wohnort: Südamerikanischer Dschungel
Kontaktdaten:

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von dv »

Da du das alleine machst, solltest du möglichst viel existierendes wiederverwenden. Ich rede jetzt nicht so sehr von Engines, sondern vielmehr von der Toolchain. Nimm bestehende Modeler und pass sie mit Plugins an als deine Toolchain. Damit bist du sehr viel schneller unterwegs. Modeller passen auch gut, weil Leveldesign mittlerweile rein auf Static Meshes basiert, siehe http://forum.leadwerks.com/viewtopic.php?f=20&t=2326 . Sprich: die Spielwelt ist nur ein "Grundmesh" mit niedriger Komplexität (ein paar tausend Dreiecke vielleicht) + viele kleinere Detailmeshes. Culling läuft per-Detailmesh. Das ist sehr simpel, sehr effizient fürs Rendern und Mappen, und du kannst bestehende Modeler ganz leicht verwenden. Du hast dann schnell eine brauchbare Spielwelt zusammengestückelt, die du rendern kannst, was motivationsfördernd ist.
Benutzeravatar
Zudomon
Establishment
Beiträge: 2253
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Zudomon »

Das wird nicht funktionieren, da ich meine Vorteile daraus ziehe, die Contentpipeline in mein Tool zu zwängen. Dadurch habe ich dann wenig Speicherverbrauch für die Geometrie, könnte LOD's automatisch generieren und habe kein sequentielles Workflow mehr, weil man alles im nachhinein ändern und austauschen kann.
Benutzeravatar
dv
Beiträge: 51
Registriert: 15.09.2002, 17:46
Benutzertext: Ugauga.
Alter Benutzername: dv
Wohnort: Südamerikanischer Dschungel
Kontaktdaten:

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von dv »

LODs kann man beim Exportieren bei einem Modellere generieren lassen. Die Contentpipeline kann man ebenfalls mit Plugins in Modeller zwängen. Der Speicherverbrauch ist unabhängig davon, und das mit dem sequentiellen Workflow ist unklar.

Modeller sind sehr, sehr flexibel. Ich glaube kaum, dass es weniger Zeit braucht, einen kompletten Editor selber zu schreiben, als die eigene Logik in einen Modeler hineinzutun.
Benutzeravatar
Zudomon
Establishment
Beiträge: 2253
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Zudomon »

Der Speicherverbrauch ist nicht unabhängig, weil man im eigenen Editor die Möglichkeit hat, alles parametrisiert zu speichern, statt der einzelnen Dreiecke. Ich glaube, das ist in einem vorhanden Modeller nicht umsetzbar.

Durch das halten der Contentpipeline eleminiert man den squentiellen Workflow. Darunter verstehe ich folgendes:
Normalerweise wird ein Modell erstellt, dann die Texturkoordinaten generiert. Anschließend die Textur für die Texturkoordinaten erzeugt. Jeder Arbeitsschritt baut auf den vorherigen auf. Wenn das Modell geändert wird, dann müssen die Texturkoordinaten neu positioniert werden. Wenn die Texturkoordinaten neu positioniert werden, stimmt die Textur nicht mehr mit den neuen Koordinaten überein.

In meinem Editor soll dagegen das Modell immer geändert werden können. Die Texturkoordinaten werden dazu automatisch erstellt und man kann parametrisch darauf Einfluss nehmen. Bei der Textur gibt man nur vor, wie die am Ende auszusehen hat. Dadurch wird für das Modell über die Texturkoordinaten dann automatisch auch die Textur generiert. Wenn man das Modell nun ändert, ist das vollkommen egal. Texturkoordinaten und Textur passen sich automatisch an. Der Vorteil ist dann eine extreme Zeitersparnis und die Möglichkeit, nachträglich ohne viel Aufwand, Content zu ändern.

Das gleiche habe ich übrigens auch für das Erstellen von Texturen vor. Die sollen auch so erstellt werden. Als Beispiel könnte man sich ein rostiges Schild vorstellen. Wobei das nur eine zusammengesetzte Textur aus z.B. Rost und Schild wäre. Ändert man hinterher die Textur für den Rost, wird die automatisch auch in der zusammengesetzten Textur geändert.

Der Zeitaufwand für solch einen Editor ist extrem, aber es wird sich lohnen.
Benutzeravatar
Zudomon
Establishment
Beiträge: 2253
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Zudomon »

Nochmal Hallo von mir!

Wollte noch ein kleines Update machen. Viele kleine Fehler wurden behoben.
- Um einen Punkt drehen wurde jetzt auf die mittlere Maustaste gelegt.
- Um sich umzuschauen muss man nun mittlere und rechte Maustaste gedrückt halten.
- Auf [Shift]+[g] kann das Gitter nun für jedes Fenster an und ausgestellt werden.
- Mit Shift lassen sich nun Objekte selektieren.
- Mit der linken Maustaste wird das markierte Objekt verschoben.
- Eingabewerte in den Editierfeldern im Modifierstack können nun direkt geändert werden. Ist der Wert ungültig, wird der nächst gültigste genommen, außerdem wird das Editierfeld dann rot unterlegt.
- Es existieren nun wieder verschachtelte Octrees, also einer für die komplette Szene und viele kleine für die einzelnen Objekte.
- Wenn nun das Anzeigefenster angepasst werden soll, wird auf das selektierte Objekt zentriert.
- Auf kann nun das selektierte Objekt wieder gelöscht werden.

Und nun alle, die nochmal testen wollen, viel Spass damit!

Wie gesagt, wenn ihr Fehler oder Makel findet, dann bitte her damit. Ihr dürft auch gerne schreiben, wenn euch irgendwas gefällt, oder ihr sonstige Kritik oder Anregungen habt! Würde mich sehr darüber freun! :D

Gruß
Zudo
Zuletzt geändert von Zudomon am 07.07.2009, 04:48, insgesamt 1-mal geändert.
Benutzeravatar
Zudomon
Establishment
Beiträge: 2253
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Zudomon »

Und wieder ein Update :D

- Die Renderfenster werden nur noch aktualisiert, falls nötig.
- Es gibt nun 3 Transformationsmodi, die in der Statusleiste angezeigt werden. [c] Bewegungsmodus.
- Im 3D-Fenster ist es nun möglich, die Verschiebeebene zu wählen. Wenn nichts gewählt ist, dann wird anhand des Kameraplanes verschoben. Drückt man einmal [x] [y] order [z], so wird an der jeweiligen Ebene ausgerichtet. Also [y] verschiebt dann in XZ-Ebene. Wenn zweimal diese Achsentaste gedrückt wird, dann wird wieder am Kameraplane ausgerichtet.
- [v] Skalierungsmodus (nur im 3D-Fenster), mit der Maus die Richtung wählen und zum skalieren linke Maustaste gedrückt halten.
auf [Backspace] wird die Skalierung auf 1,1,1 zurückgesetzt
- Rotationsmodus (nur im 3D-Fenster). Über [x] [y] [z] kann die Achse gewählt werden. Auf das Objektklicken und dann einfach die Mausbewegen zum rotatieren. [Backspace] um die Rotation zurückzusetzen.
- Ist kein Objekt markiert beim erstellen, so wird ein neues Objekt erstellt. Falls eins markiert ist, wird die Basis durch das neue Objekt ersetzt, die Modifikatoren bleiben.
- [m] schaltet für das selektierte Objekt die Texturen durch (3 Stück im Moment)

Schrompf hat geschrieben:http://developer.download.nvidia.com/wh ... ration.pdf

ist die einfachste Lösung, wenn Du eine funktionierende ShadowMapping-Implementation hast. Frisst zwar entgegen der Aussagen von NVidia Grafikkarten zum Frühstück, aber ist sehr einfach zu implementieren. Musst Du nur noch zu GlSlang konvertieren.

Danke nochmal an dich Schrompf für das Paper. Hab das nun auch drin.
:D
20090707b.jpg
20090707.jpg
Und hier nochmal der Editor in der aktuellen Version!

ACHTUNG: Bei Krishty haben die bisherigen Versionen ganz schön Theater gemacht... mitunter Bluescreens. Auf ein paar System habe ich bis jetzt getestet, ohne Probleme. Dennoch, testen auf eigene Gefahr! Und mit einem Absturz rechnen!! ;)

Und nun, wie immer, viel Spass beim testen :D

Gruß
Zudo

Edit: Vorerst gibt es keine Downloadfähige Editorversion.
Benutzeravatar
Zudomon
Establishment
Beiträge: 2253
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Zudomon »

Hallo ZFXler!

Wollte nochmal zwei Bilder von einem kleinen Testlevel zeigen. :D
So langsam wird das Dingen ganz brauchbar.
20090713b.jpg
20090713c.jpg
Der Schatten bewegt sich sogar, aber nur gaaaanz langsam, damit es realistisch wirkt. :D

Gruß
Zudo
Benutzeravatar
Schrompf
Moderator
Beiträge: 4838
Registriert: 25.02.2009, 23:44
Benutzertext: Lernt nur selten dazu
Echter Name: Thomas Ziegenhagen
Wohnort: Dresden
Kontaktdaten:

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Schrompf »

Sieht gut aus. Vor allem die Schatten sind schick... sehr sauber! Aber bei uns frickelt der Schatten enorm, wenn wir die Sonne jedes Frame rotieren... egal wie langsam. Hast Du da einen Trick dagegen gefunden?
Früher mal Dreamworlds. Früher mal Open Asset Import Library. Heutzutage nur noch so rumwursteln.
Benutzeravatar
Zudomon
Establishment
Beiträge: 2253
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Zudomon »

Ich habe in der Tat einen Trick dagegen... aber den will ich noch nicht verraten, solange das was innovatives ist, sorry ;)
Es fliert dabei aber nichts :D
Benutzeravatar
Schrompf
Moderator
Beiträge: 4838
Registriert: 25.02.2009, 23:44
Benutzertext: Lernt nur selten dazu
Echter Name: Thomas Ziegenhagen
Wohnort: Dresden
Kontaktdaten:

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Schrompf »

Was ist denn das für ein Unsinn? Dir helf ich nochmal...
Früher mal Dreamworlds. Früher mal Open Asset Import Library. Heutzutage nur noch so rumwursteln.
Benutzeravatar
Zudomon
Establishment
Beiträge: 2253
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Zudomon »

Wiso Unsinn? Wie soll man denn was besonderes machen, wenn man alle Dinge, die man sich ausdenkt, weitergibt?
Du wirst ja wohl auch nicht jede Idee einfach so verraten! Ich bin gerne bereit, jedem zu helfen, sofern ich kann. Aber wenn es um eigene Techniken geht, dann musst du aktzeptieren, dass ich nicht alles verate. Schließlich will ich hier kein Hobbyprojekt machen, sondern das auch kommerziell nutzen.
Benutzeravatar
eXile
Establishment
Beiträge: 1136
Registriert: 28.02.2009, 13:27

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von eXile »

Zudomon hat geschrieben:Wiso Unsinn? Wie soll man denn was besonderes machen, wenn man alle Dinge, die man sich ausdenkt, weitergibt?
Du wirst ja wohl auch nicht jede Idee einfach so verraten! Ich bin gerne bereit, jedem zu helfen, sofern ich kann. Aber wenn es um eigene Techniken geht, dann musst du aktzeptieren, dass ich nicht alles verate. Schließlich will ich hier kein Hobbyprojekt machen, sondern das auch kommerziell nutzen.
Also erst einmal meine Meinung dazu: Pfui.

Ein solches Forum wie hier beruht auf Gegenseitigkeit (und damit auch auf Vertrauen). Wenn du damit der (wenn auch hier im Forum eher nur implizit gegebene) Ansicht anderer nicht entsprichst, auch diese Gegenseitigkeit von deiner Seite aus zu betreiben, musst du mit den (bereits oben von anderen benannten) Konsequenzen leben.

Nur so als Blick über den Horizont: Wenn du das Teil mit deiner "tollen" Technik veröffentlichst, kann man im nu via Shader-Debuggern oder ein paar kleinen function-hooks an den API das Verhalten deiner Technik nachvollziehen, besonders dann, wenn es eine Abwandlung einer bestehenden Technik ist.
Benutzeravatar
Zudomon
Establishment
Beiträge: 2253
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Zudomon »

eXile hat geschrieben:
Zudomon hat geschrieben:Wiso Unsinn? Wie soll man denn was besonderes machen, wenn man alle Dinge, die man sich ausdenkt, weitergibt?
Du wirst ja wohl auch nicht jede Idee einfach so verraten! Ich bin gerne bereit, jedem zu helfen, sofern ich kann. Aber wenn es um eigene Techniken geht, dann musst du aktzeptieren, dass ich nicht alles verate. Schließlich will ich hier kein Hobbyprojekt machen, sondern das auch kommerziell nutzen.
Also erst einmal meine Meinung dazu: Pfui.

Ein solches Forum wie hier beruht auf Gegenseitigkeit (und damit auch auf Vertrauen). Wenn du damit der (wenn auch hier im Forum eher nur implizit gegebene) Ansicht anderer nicht entsprichst, auch diese Gegenseitigkeit von deiner Seite aus zu betreiben, musst du mit den (bereits oben von anderen benannten) Konsequenzen leben.
Schön dass das hier alles über einen Kamm gescherrt wird!! Also nochmal, ich helfe hier jedem gerne! Aber das man hier indirekt dazu gezwungen wird, eigene Techniken zu veröffentlichen, dass finde ich Pfui! Jeder hat ja wohl das Recht, zu entscheiden, was man weiter erzählt und was nicht. Mein Texturverfahren, in das ich Wochen investiert habe, habe ich auch hier mitgeteilt und außer, dass andere das nun nutzen können und die meisten hier geschrieben haben, doch lieber das normale texturieren zu benutzen, hab ich davon nichts gehabt.
Ich hoffe nicht das jeder der Meinung ist, man müsste hier jede Idee, die eventuell Potenzial hat, veröffentlichen, weil sonst die Berechtigung entfällt, dass einem bei Problemen geholfen wird.
eXile hat geschrieben: Nur so als Blick über den Horizont: Wenn du das Teil mit deiner "tollen" Technik veröffentlichst, kann man im nu via Shader-Debuggern oder ein paar kleinen function-hooks an den API das Verhalten deiner Technik nachvollziehen, besonders dann, wenn es eine Abwandlung einer bestehenden Technik ist.
Tja, da gibt es halt keinen Schutz gegen. Aber das ist mir auch egal, wenn sich da jemand die Mühe macht, bitte.

@Schrompf
Okay, bekommst die Schattentechnologie. Wie wärs, wenn ich dafür den Splitterwelt Quellcode bekomme? Achne, ist ja dann unfair, weil so ne einfache Technik ist natürlich viel weniger Wert.
Wie wärs dann mit Texturen oder ähnliches?
Schrompf hat geschrieben:Einige unserer Assets sind bereits im Umlauf, ich würde nur ungern sehen, dass es noch mehr werden. Das schließt natürlich auch die private Verwendung in Deinen Projekten aus. Ich erwarte, dass Du uns dazu zumindest vorher fragst und die Antwort darauf auch respektierst. In der heutigen Hobbyspieleentwicklung sind Assets das wertvolle... Code dagegen gibt's mehr als genügend.
Also mal ehrlich, wo ist jetzt der Unterschied? Achja, bei mir gehts letztlich nur um Code, den es ja zu genüge gibt.
Tut mir leid, dass ich hier aus einer alten PN zitiere, aber man sollte doch mal beide Seiten beachten!
Benutzeravatar
Chromanoid
Moderator
Beiträge: 4254
Registriert: 16.10.2002, 19:39
Echter Name: Christian Kulenkampff
Wohnort: Lüneburg

Re: [Projekt] .: AsTrAl-TrAnSmIsSiOn :.

Beitrag von Chromanoid »

Mmh ohne mich da besonders einmischen zu wollen...

also wenn deine Technologie tatsächlich einzigartig und selbst ausgedacht ist, kann ich das nachvollziehen. Vielleicht solltest du das dann mal als Paper bei einer Konferenz einreichen... Da du ja selbst angegeben hast, dass dein Projekt wahrscheinlich noch lange bis zur Fertigstellung braucht, solltest du so eine neue Technoloie auf jeden Fall irgendwie veröffentlichen, weil sie in 5 Jahren vielleicht technologisch keinen Wert mehr besitzt oder von jemand anders erneut erfunden wird... Mit einer Veröffentlichung kannst du wenigstens sicherstellen, dass du als Erfinder der Technologie gesehen wirst...

Andernfalls wäre ein Verweis auf ein Paper oder so vielleicht nicht schlecht gewesen...
Zudomon hat geschrieben:Und wieder ein Update :D
Schrompf hat geschrieben:http://developer.download.nvidia.com/wh ... ration.pdf

ist die einfachste Lösung, wenn Du eine funktionierende ShadowMapping-Implementation hast. Frisst zwar entgegen der Aussagen von NVidia Grafikkarten zum Frühstück, aber ist sehr einfach zu implementieren. Musst Du nur noch zu GlSlang konvertieren.
Danke nochmal an dich Schrompf für das Paper. Hab das nun auch drin. :D
---
Deine Screenshots sehen übrigens echt super aus! Was hat es eigentlich mit dieser Busenwunderkatze auf sich? ;)
Antworten