AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Eigenes 3D MMORPG mit Delphi möglich?

Ein Thema von Zudomon · begonnen am 8. Dez 2011 · letzter Beitrag vom 2. Mär 2021
Antwort Antwort
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.962 Beiträge
 
Delphi 12 Athens
 
#1

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 6. Apr 2015, 15:49
Das sieht ja besser aus als manches kommerzielle Spiel.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Zudomon

Registriert seit: 14. Feb 2007
84 Beiträge
 
Turbo Delphi für Win32
 
#2

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 8. Apr 2015, 06:33
Ein bisschen Moss auf den Steinen!

20150408_2.jpg
  Mit Zitat antworten Zitat
Benutzerbild von PaddyVII
PaddyVII

Registriert seit: 20. Nov 2014
Ort: Pforzheim
75 Beiträge
 
Delphi XE6 Enterprise
 
#3

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 8. Apr 2015, 10:22
alsoo wirklich - respekt, hätte nicht gedacht, dass du da so dranbleibst hab mir neulich mal alles durchgelesen...Respekt und weiter soo großes Lob^^
"Irren ist menschlich, aber wenn man richtigen Mist bauen will, braucht man einen Computer."
Dan Rather
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.379 Beiträge
 
Delphi 12 Athens
 
#4

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 8. Apr 2015, 10:36
Kannst du eigentlich zur Laufzeit das Model auch verändern?

Wenn man drauf schießt oder mit'm Hammer drauf rumkloppt, dann einen ganzen Stein gegen einen Kaputten austauschen usw.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.962 Beiträge
 
Delphi 12 Athens
 
#5

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 8. Apr 2015, 11:05
War das nicht in einem der Videos schon zu sehen?
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Zudomon

Registriert seit: 14. Feb 2007
84 Beiträge
 
Turbo Delphi für Win32
 
#6

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 8. Apr 2015, 16:54
@PaddyVII
Vielen Dank!

Kannst du eigentlich zur Laufzeit das Model auch verändern?

Wenn man drauf schießt oder mit'm Hammer drauf rumkloppt, dann einen ganzen Stein gegen einen Kaputten austauschen usw.
An sowas denke ich auch. Aber ich will mich da noch nicht verlieren... aber möglich ist eigentlich ja alles

@jaenicke
Ne, das ist ja auch neu dazu gekommen. Das besondere ist ja eigentlich nicht, dass da nun Moos auf den Steinen ist, sondern dass diese Textur nicht von einem Foto stammt, sondern quasi während man spielt erzeugt wird...
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.379 Beiträge
 
Delphi 12 Athens
 
#7

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 8. Apr 2015, 17:06
Es kommt doch auch bestimmt bissl auf den Speicher an?
Meistens kann man ja zugucken, wie "Kaputtes" vor den Augen gleich wieder verschwindet oder wenn spätestens, wenn man mal kurz um die nächste Ecke guckt.

Bild in #127: Also bei dem Kreis mit Hals hab ich schon etwas überlegt, was dieser Smilie denn für ein Gesicht hat.

sondern quasi während man spielt erzeugt wird...
Es lebt .... tötet es, sonst reißt es noch die Weltherrschaft an sich.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu ( 8. Apr 2015 um 17:08 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von milos
milos

Registriert seit: 14. Jul 2008
Ort: Bern (CH)
510 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 8. Apr 2015, 18:15
Das besondere ist ja eigentlich nicht, dass da nun Moos auf den Steinen ist, sondern dass diese Textur nicht von einem Foto stammt, sondern quasi während man spielt erzeugt wird...
Und wieso machst du das?
Klar, es ist ja realistischer und hat (vielleicht?) keine die gleich aussehen, aber ist das nicht ein unnötiger Performanceverlust? ^^

Und btw, Hut ab für dein Projekt, verfolge den Thread schon länger (ist nur mein erster beitrag ^^) und finde es Klasse wie du den meisten hier das Gegenteil bewiesen hast

Freundliche Grüsse
Milos
  Mit Zitat antworten Zitat
Zudomon

Registriert seit: 14. Feb 2007
84 Beiträge
 
Turbo Delphi für Win32
 
#9

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 8. Apr 2015, 18:58
Ich mache das, weil es extrem viele Vorteile hat, wenn man erstmal die Hürde genommen hat, es zu implementieren.

Vielleicht kennt der ein oder andere das Megatexturing-Verfahren von Id. Da gehen die auch den Weg, dass alles in der Welt seine eigene Textur hat. So können die Künstler alles individuell gestalten und Schatten und indirektes Licht können dann in die Textur mit gebaked werden. Das ist zwar dann statisch, aber die Performance ist astronomisch, da die Shader nur noch recht simpel ausfallen. Überhaupt wird dadurch ein Teil der Pipepline recht einfach.
Das Problem ist eben, dass es statisch ist und auch astronomisch viel Speicher kostet. Vor allem auch für Bereiche, die sich der Spieler wahrscheinlich nie richtig anschaut.

Da ich meine Texturen zur Laufzeit erstelle, kosten das ganze auf Platte eigentlich keinen extra Speicher. Allerdings wird der Verwaltungsaufwand um einiges höher.

Aber nun mal zu den Vorteilen:

1. Kann ich nun hoch aufgelöste Texturen nutzen, ohne dass ich zusehen muss, die irgendwo von einem Foto her zu bekommen. Bei einem Foto hat man das große Problem, dass da schon Schattierungen drin sind, die man idealerweise durch die Engine erst drin haben möchte. Wenn z.B. schon Schatten abgebildet sind, wäre die Textur doppelt schattiert. Genauso mit indirektem Licht.

2. Brauch ich nicht mehr aufwendig Höhenkarten und Normalmaps zu erzeugen. Dies ist ein extrem aufwendiger Prozess, der Designer entsprechend Vollzeit arbeiten lässt. Manchmal ist es auch extrem schwer, solche Höhenkarten exakt anzufertigen. Dann nämlich, wenn man nicht mehr einfach durch globale Filter, die man auf das Bild anwendet, eine vernünftige Höhenkarte bekommt.

3. Kann die Textur verändert werden und das zur Laufzeit. Neben wegfallen der Auflösung sind damit extrem krasse spezialeffekte Möglich... z.B. könnte man das Moos über die Steine "wachsen" lassen.

4. Keine Texturbegrenzung mehr! Das "sich nicht widerholende" scheint erstmal nichts besonderes sein, aber es ist eines der krassesten Features, die ich mir in der Richtung vorstellen kann... denn dadurch kann man die Textur so groß machen, dass man überall kleine Details hat und im großen und ganzen sieht es trotzdem alles wie aus einem Guss aus. Ich nehme nochmal das Beispiel mit dem Moos. Man könnte das Moos dann nur da einsetzen, wo z.B. viel Regen ist, oder in Bodennähe. An anderen Orten könnten die Steine besser und sauberer sein... woanders dann wieder Brüchig. Also da sind der Fantasy keine grenzen gesetzt.

5. 3 Dimensionale Strukturen! Auch das ist ein wichtiger Punkt zur Immersion. Hat man eine 2D Textur, so bekommt man sie an den Texturkanten nicht bündig. Bei einfachen Mustern mag das noch funktionieren, aber nicht bei komplexen. Falls man sich das mit einem Block nicht vorstellen kann, dann mal folgendes Beispiel. Man kaufe sich Tapete mit Ziegel muster... und nun beklebe man eine Kugel so, dass alle Fugen passen. Ich glaube nicht, dass das irgendwie möglich ist. Kann man aber die Kugel selbst per Hand bemalen und malt dann die Steine so, dass man beachtet, wie die Steine in der Kugel liegen würden, dann würden die Fugen passen.

6. Geschwindigkeit. Auch wenn es viel Optimierungsbedarf kostet, um das ganze System schnell zu bekommen, so hat man hinterher sogar noch einen Geschwindigkeitsvorteil, einfach weil das Vorbaken der Texturen und dann anzeigen schneller geht, als sie wirklich bei jedem Frame per Shader zu berechnen. Und jetzt wird der ein oder andere sagen, kann nicht sein. Doch... folgendes Gedankenbeispiel:
Wenn man eine abgerundete Oberfläche Texturiert, dann muss ich 3 mal aus einer Textur pro Material lesen und das dann verblenden. Ist noch kein großer Akt. Nun will man aber auch meist eine Normalmap dazu. Blöderweise muss man da die Tangentspacetextur noch in den World-Space überführen. D.h. 3 x Normalmap lesen, transformieren und dann verblenden. Jetzt stelle man sich vor, man möchte noch eine zweite Textur da rein blenden... dann muss man das ganze zweimal machen und wieder verblenden.
Im Gegensatz dazu zeichnet man einmal die Diffusemap korrekt. Erzeugt die Normalmap und da die Textur ja nur einmal benutzt wird, kann man die Normalmap gleich beim Baken überführen. Das heißt, bei der Variante braucht, nachdem die Diffuse und Normalmap erzeugt sind, nur einmal im Shader gelesen werden. Die Normalmap muss ja dann noch nichtmals in den Worldspace gebracht werden. Das sollte dann extrem schnell sein.

7. Qualität. Ich bin am überlegen, ob ich in diesem Pre-Rendering Pass schon indirektes Licht mit verarbeite. Dieses ändert sich eh nur selten und wenn man es hier schon mit hineinberechnet fällt auch das später in der Pipeline nicht mehr ins Gewicht. Könnte man also nicht nur als Qualitäts sondern auch als Geschwindigkeitsoptimierung werten.

Dies sind bestimmt noch nicht alle Vorteile, die das ganze mit sich bringt. Z.B. glaube ich, dass es in Erweiterter Form nochmal mehr Geschwindigkeit für das Gras und Dinge, die in diese Richtung gehen, bringt. Außerdem könnte man vielleicht noch coole Sachen machen, wie kleine Insekten mit auf die Oberfläche rendern... also quasi mit in die Textur. Dadurch spart man sich viel Verwaltungsaufwand und wenn es dann eh nur kleine Pünktchen sind oder sowas, dann könnten die lässig über die Wand krabbeln.
Ich bin auf jeden Fall gespannt... ich hab die Technik nun übrigens Released... ist aber noch verbuggt und unoptimiert, aber muss halt auch schauen, ob das dann in freier Wildbahn läuft...
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:01 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz