Delphi-PRAXiS
Seite 12 von 24   « Erste     2101112 131422     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Projektplanung und -Management (https://www.delphipraxis.net/85-projektplanung-und-management/)
-   -   Eigenes 3D MMORPG mit Delphi möglich? (https://www.delphipraxis.net/164975-eigenes-3d-mmorpg-mit-delphi-moeglich.html)

Zudomon 5. Apr 2015 12:10

AW: Eigenes 3D MMORPG mit Delphi möglich?
 
Freut mich sehr das zu hören! :D

Aber um ehrlich zu sein war die Idee ja logisch mit den Steinen... ich hatte ja damals diese textur benutzt:
Ziegelsteine
Und da fällt ja auf, dass die Steine in jeder zweiten Reihe doppelt so lang sind... zudem müssen die versetzt werden, damit die Fugen nicht übereinander sind. Wenn man sich nun bei diesen Steinen überlegt, wie die 3D gemauert sein müssten, dann ist klar, dass die einmal längs und einmal quer verlegt sind. Und bei der 2D Version hatte ich das Muster ja nachahmen können. Bei der 3D Version war es eigentlich gar nicht viel schwieriger, denn wenn man dann die tiefen Dimension dazu nimmt, dann hat man das eigentlich schon fast automatisch.

Und das Ambient Occlusion ist nicht in der Textur, sondern das kommt von der Engine selbst. Da ich bei mir ja echtes Displacementmapping verwende, kommt durch das SSDO die Schattierung dann automatisch zu stande. :D

Also ich freu mich sehr über das Lob, aber ich glaube, das ist etwas zu viel für die dahinter stehende Leistung.

Was aber wirklich erstaunlich ist, dass man nun so viele Texturen hat, bzw. für jede Würfelfläche eine eigene Textur generiert wird. Ich will heute mal probieren, dass diese über die Grafikkarte bemalt werden. Außerdem hat momentan auch noch jede Textur die gleiche Auflösung. Sinnvoll ist es, dann für nahe Flächen höhere Texturen zu nutzen, für entferntere dann nur noch kleine.
Bin mal gespannt. Wenn ihr möchtet, halte ich euch gerne auf dem laufenden. Weiß ja nicht, wie interessant diese kleinen Fortschritte sind. :D

stahli 5. Apr 2015 12:22

AW: Eigenes 3D MMORPG mit Delphi möglich?
 
Also ich verstehe nur teilweise, was Ihr diskutiert (soll auch nicht mein Kernthema werden ;-))

Was mich mal interessiert:
Wenn Du die Mauer prozedural berechnest, ist dann jeder Stein ein Objekt?
Könnte man also quasi Steine löschen und es würde ein Loch geben?
In dem Fall würde sich die "Außenansicht" der Mauer durch das Stapeln der Steine ja irgendwie automatisch ergeben.

PS: Ich wäre interessiert an Deinen Fortschritten.

BadenPower 5. Apr 2015 12:58

AW: Eigenes 3D MMORPG mit Delphi möglich?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Irgendwie komme ich mit der 3D-Darstellung nicht zurecht.
Das sieht für mich nicht real aus.
Müssten nicht alle Senkrechten auch senkrecht bleiben, oder täusche ich mich jetzt?
Einmal abgesehen von der Berücksichtigung der Erdkrümmung.

himitsu 5. Apr 2015 13:10

AW: Eigenes 3D MMORPG mit Delphi möglich?
 
Wenn man gradeaus guckt, dann schon, so in etwa, aber wenn ich nach unten guck, dann wird hier auch alles schief. :stupid:

Zudomon 5. Apr 2015 13:12

AW: Eigenes 3D MMORPG mit Delphi möglich?
 
@Stahli
Hier werden keine 3D Modelle erzeugt, sondern in dem Fall werden einfach die Wände bemalt. Normalerweise kommt ja überall eine Textur drauf. In diesem Fall eine Ziegelsteintextur. Durch geeignete Texturkoodinaten kann man bestimmen, wie eine Textur auf den Würfel zu sehen ist. Nun erhält aber bei mir jeder Würfel bzw. jede Würfelseite eine eigene Textur. Diese Textur wird bemalt. Eine Höhenkarte, die ebenfalls darauf gemalt wird, gibt dann an, wie weit die Steine hervorragen. Dadurch sieht es am Ende wirklich so aus, als ob die Mauer aus vielen 3D Objekten besteht, was sie aber in Wirklichkeit nicht tut :D

@BadenPower
Senkrechten sind nur Senkrecht, wenn man orthogonal darauf schaut. In diesem Fall blicke ich nicht geradeaus, sondern leicht nach unten. Stell dich mal hin und schau von schräg oben auf deinen Monitor. Die Außenlinien des Monitors, die vorher ein Rechteck gebildet haben, sollten dann Trapetzförmig sein... also das mit der Senkrechten in meinem Bild ist quasi nur durch die Projektion. Würde man die Senkrechte, die du eingezeichnet hast, von Oben betrachten und diese dann noch in das Zentrum des Bildes rücken, dann wäre nur ein Punkt zu sehen.

stahli 5. Apr 2015 13:59

AW: Eigenes 3D MMORPG mit Delphi möglich?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ok, dann ist das alles Betrug hier! :mrgreen:
(Aber die Berechnung dann wohl noch schwieriger.)

Die Perspektive, die BadenPower beanstandet, finde ich ok.
Aber rechts unten erscheint mir der rechte Winkel irgendwie nicht ganz korrekt.
In dem grünen Kreis ist das ok. In dem roten Rechteck sieht das irgendwie abgeflacht aus.
Ich weiß nicht, ob sich da noch etwas optimieren lässt...?

Zudomon 5. Apr 2015 14:03

AW: Eigenes 3D MMORPG mit Delphi möglich?
 
Die Projektion ist ganz normal und in anderen 3D Spielen auch so.

BadenPower 5. Apr 2015 14:23

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

Zitat von Zudomon (Beitrag 1296248)
Die Projektion ist ganz normal und in anderen 3D Spielen auch so.

Das mag durchaus sein und auch seine Richtigkeit haben und wie viele Andere bewundere auch ich Deine Arbeit und Dein Durchhaltevermögen.

Aber,
und jetzt bitte nicht lachen:

Ich habe mich gerade auf einen Stuhl gestellt und im Wohnzimmer den Fenstervorspung zur Balkontüre (ist so ähnlich aufgebaut wie auf dem Bild) aus der Perspektive des Bildes beobachtet.

Ich kann mir einfach nicht helfen, das sieht in der Realität alles nicht soooo... "schief" aus.

Vielleicht ist das ein Grund, weshalb ich in animierten 3D-Welten nicht zurecht komme und deshalb solche Spiele nicht spiele.

stahli 5. Apr 2015 14:39

AW: Eigenes 3D MMORPG mit Delphi möglich?
 
Ja, so ein leichter Fischaugen- oder Weitwinkeleffekt scheint dort schon drin zu sein. Kennt man auch von Actionkameras.

Ich bin Brillenträger und habe eine Hornhautverkrümmung. Wenn ich eine Tür oder einen Schrank o.ä. ansehe und den Kopf hin und her drehe, scheinen die Objekte zu schwanken. Das kommt halt daher, dass der Rand der Brillengläser das Licht anderes bricht.

Die Verzerrung im Mauerbild erinnert mich etwas daran und stört mich auch ein wenig.
Auch scheint die Mauer links von BadenPowers Linie etwas verwunden zu sein.

Wenn sich das noch verbessern ließe, würde das den (ohnehin schon genialen) Gesamteindruck sicher nochmal verbessern.
Wenn das technisch nicht besser geht ist es aber m.E. hinnehmbar.

Zudomon 5. Apr 2015 14:55

AW: Eigenes 3D MMORPG mit Delphi möglich?
 
Liste der Anhänge anzeigen (Anzahl: 3)
Ich glaube, das Hauptproblem ist, dass es sich um eine Planare Abbildung handelt. Und nun bin ich einfach überfragt, wie ich das, was ich bisher damit an Erfahrung gesammelt habe, in normale Worte formuliere. Also ich weiß es nicht wirklich auszudrücken.
Im Gegensatz zur echten Wahrnehmung hat man ja ein kleineres Blickfeld. Im Endeffekt kommen beim normalen echtzeit 3D Rendering ja eine bestimmte Projektion zustande. Mal angenommen man schaut mit der Kamera in die Z Richtung und die Punkte werden dann einfach XY auf dem Bildschirm abgebildet, dann kommt eine orthogonale Projektion zustande. D.h. es ist keine Perspektive vorhanden. Das ist nicht sehr realistisch, aber dadurch kann man Größen direkt vergleichen. In 3D Programmen mit verschiedenen Ansichten wird eine solche orthogonale Projektion benutzt. Wenn man nun Perskeptive haben möchte, nimmt man die XY Werte und teilt diese noch durch Z. Das bedeutet, umso weiter die Punkte weg sind, umso kleiner wird X und Y.
Stellt man sich nun das, was die Kamera im Raum abdeckt, als Volumen vor, so erhält man eine Pyramide, dessen Brennpunkt in der Kameraposition liegt. Eigentlich gibt es dabei noch eine Near- und Far-plane. Also alles was näher ist, als die Near-Plane und alles was weiter ist, als die Far-Plane werden nicht gerendert. Dadurch wird es dann tatsächlich zur einer Pyramide mit abgeschnittener Spitze. Nun ist das Problem an dieser ganzen vereinfachten Sache, dass man den Winkel der Kamera nicht beliebig öffnen kann. Stellt man sich diese Pyramide vor, wie diese immer weiter gestaucht wird, um immer größere bereiche abzudecken, so wird man feststellen, dass bei 180° die Pyramide unendlich groß sein müsste, um dies abzudecken... außerdem würden ja dann alle linien auf eine ebene fallen.
Anhang 42851
In dem Bild hab ich mal versucht, dass ein wenig abzubilden, was ich meine. Man sieht das das Viewfrustum von oben. Unten im Bild ist dann die Kamera.
Beim Raytracen hatte ich mal rumprobiert. Also da hat man die Außenlinien des Viewfrustum und interpoliert dann so, dass jeder Pixel ein Sichtstrahl bekommt. Wenn man nun die länge normalisiert, also dass dann quasi das Viewfrustum hinten (die Far-Plane) immer den gleichen Abstand zur Kamera hätte, dann würde das Bild automatisch so eine Fischaugenverzerrung bekommen. Dann wäre die Far-Plane auf den Bildern auch keine Linie mehr, sondern ein Bogen. So könnte man dann aber auch eine Perspektive mit beliebigen FOV abbilden, auch 360° und mehr. Aber wie gesagt, dass sind Raytracing Sachen und auch da würde es nicht aussehen, wie in der Wirklichkeit.
Bei Animationsfilmen fallen diese Randverzerrungen nicht auf, weil dort mit kleinen Winkeln gearbeitet wird. Also 30-60°...
Bei Spielen wiederrum müsst ihr mal drauf achten, wenn ihr euch ein Objekt aussucht, z.B. einen Ball und dann eure Sicht dreht, so dass dieser an den Bildrand kommt, dann sieht der Ball eher aus wie eine Elipse.
Anhang 42852Anhang 42853


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:32 Uhr.
Seite 12 von 24   « Erste     2101112 131422     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz