.| Autor | Beitrag |
|---|---|
|
000 12.02.2001, 17:24 blair |
Hi Leute, ich bin zur Zeit auf der Suche nach guten Alternativen zum guten alten BSP Tree, gibt es da zur Zeit irgend etwas, daß sich da anbieten würde? --because our freedom sits at the end of a gun |
|
Profil || Suche |
|
001 13.02.2001, 17:49 apfelkorn |
ähh... was solls den dazu für vernünftige Alternativen geben??? -- |
|
Profil || Suche |
|
002 13.02.2001, 18:24 Prefect |
Hmm.. ich habe da ne Menge drüber nachgedacht. Die Frage ist: was bringt ein BSP-Tree:
Ich habe eine andere Methode entwickelt die relativ effektiv sein könnte - ich müßte dazu aber wissen wie viel ein Z-Buffer ausmacht. Also auf gut deutsch: ist es besser, mit VISing, Z-Buffer only-write, von hinten nach vorne (also mit Overdraw!) oder mir VISing, volles Z-Buffering und von vorne nach hinten (also ohne Overdraw!) zu rendern. Ersteres ist bei BSP-Trees der Fall, letzteres bei meiner rein Leafbasierten Methode. Diese Leaf-Methode sieht so aus, dass die Karte einfach als eine große Ansammlung an Leafs (also convexen Raumeinheiten) besteht, die über Portals miteinander verbunden sind.
- typische Gameengine-Funktionen müssen relativ umständlich optimiert werden (erfordert einiges Umdenken wenn man von HL kommt), näheres Coden an der Engine (was aber auch ein Vorteil sein kann)
Ich denke das wars. Ich habe diese Methode ganz allein in meiner computerlosen Zeit in Irland entwickelt *g* ich kann dir also keine Verweise auf Ressourcen im Netz geben oder so. cu,
Widelands - Gemütliche Aufbaustrategie, Free Software |
|
Profil || Suche |
|
003 14.02.2001, 17:54 apfelkorn |
Dann ist theoretisch auch der OpenGL-Bug ausgemerzt, dass man mit geleakten Treibern auch durch Wände durch sehen kann... -- |
|
Profil || Suche |
|
004 15.02.2001, 20:03 TheTinySteini |
Wie ist eigentlich die Methode von Unreal? Die Maps muss man ja auch nicht kompilieren. Ich hab ehrlich gesagt keinerlei Ahnung von Unreal (und auch kein Interesse), aber vielleicht kann mich ja mal jemand in dem Punkt aufklären... Prefect's Methode klingt ganz interessant (auch wenn ich aus der kleinen Beschreibung nicht kapiert habe, wie nun die einzelnen Leafes verbunden werden - über Portals, ok, aber wie genau?). Bei so einer Methode kann man dann zwar ne Lightmap vergessen (die müsste ja vorher berechnet werden) aber dafür sind dynamische Lichteffekte perfekt möglich. Und die Rechner von heute brauchen ja auch keine vordefinierte Lightmap - GHz lässt grüßen *g*
TheTinySteini |
|
Profil || Suche |
|
005 15.02.2001, 20:29 Linga Administrator |
infos zum bsp format, was dies beinhaltet etc gibts auf http://waste.informatik.hu-berlin.de/rpk/diplomarbeit/default.html ich zitiere von http://waste.informatik.hu-berlin.de/rpk/diplomarbeit/default.html : "Als Kern der Arbeit wird ein Raycastingalgorithmus entwickelt, bei dem der Rechenaufwand zur Erzeugung eines einzelnen Bildes unabhängig von der Gesamtgröße der Szene ist (d.h. es können beliebig große Szenen konstruiert werden, ohne das der Bildaufbau mit zunehmender Szenengröße langsamer wird). Im Prinzip basiert dies auf der Überlegung, nicht wie sonst in der 3D-Grafik festzustellen, welche Teile einer Szene nicht sichtbar sind, und dann nur den übrigbleibenden Rest zu rendern, sondern zu ermitteln, welche Teile sichtbar sind. Das Ergebnis ist – zwangsläufig – das selbe, der Rechenaufwand ist aber– insbesondere für "dichte" Szenen wie z.B. Gebäudekomplexe – erheblich geringer" also nichts weiter als eine raycaster engine wie sie auch in doom genutzt wurde (fact: 2 1/2 dimensionale Szenengeometrie (senkrechte Wände, waagerechte Böden und Decken) also keine voll-3d engine. doch setzt das mal auf 3d um: die engine sendet eine art laserstrahl in bestimmter dichte vom player(winkelbreite x) aus in den level und wenn der ray mit einem polygon kollediert wird es berechnet. die überlegung ist easy, das militär nutzt sowas schon lange um nachts entfernungen zu objekten festzustellen. die genaue umsetzung kenne ich nicht doch es funktioniert einwandfrei bis auf einige kleine nachteile ist das system dem von id-software haushoch überlegen. und das oben beschriebene system existiert bereits und arbeitet wunderbar. genauere facts und technische hintergründe kenne ich (noch) nicht doch der BSP tree wird durch ein neues format, AL1, ersetzt und leafs sind überhaupt nicht vorhanden. ausserhalb der lightmap ist kein compile von nöten, einzig diese muss berechnet werden was mit einem extra illumination-editor aber auch recht fix geht. und was unreal angeht hab ich die selbe frage heute schoneinmal gestellt. auch mich interessieren die routinen der unreal engine... -- |
|
Profil || Suche |
|
006 15.02.2001, 20:35 blair |
Ich bin wegen den Entitys von Unreal weg, weil es IMHO keine Brush sondern nur Points gibt (und es gibt auch keine art das anders zu regeln als mit zones, und das ist extrem nervig) @TTT:Wegen den Lightmaps muss ich widersprechen, Black& White sowie Loose Cannon verwenden soweit ich weiß Real Time Light Maps. @Prefect: Deine Methode kling Intressant, sag mal beschied wenn mehr draus wird, würde mich interressieren @Apfelkorn: Es gibt außer dem BSP Tree:
because our freedom sits at the end of a gun |
|
Profil || Suche |
|
007 15.02.2001, 20:42 TheTinySteini |
@Blair: Das mein ich doch, Licht muss dynamisch berechnet werden - dazu gehört in meinen Augen auch ne dynamische Lightmap. @Linga: Die Seite ist gut, ziemlich informativ. Muss ich mir bei Gelegenheit mal ganz reinziehen. --TheTinySteini |
|
Profil || Suche |
|
008 15.02.2001, 20:47 Linga Administrator |
real time pixel per pixel shadowing ist doch nichts seltenes mehr als beispiel new world oder von insomniasoftware. die technik besteht schon seit ~3 jahren und die facts verraten es: "- True realtime dynamic lighting, no lightmaps"
EDIT noch ein paar informationen zum bsp format an sich: "Die Verfahren basieren darauf, eine Szene in eine Menge von zumeist konvexen Regionen oder
"Binary-Space-Partitioning Tree: Die dieser Technik zugrundeliegende Idee ist
|
|
Profil || Suche |
|
009 16.02.2001, 19:16 blair |
@TTT: Ich weiß das du das meintest, aber wenn du dir zum Beispiel (ist kein besonders Gutes) das Black & White Winamp Plugin reinziehst, wirst du erkennen das es (trotz einer begrenzten Welt) schon auf einem P200 MMX mit Voodoo 2 relativ flüssig läuft, von Ghz kann IMHO da nicht die Rede sein. @Linga: Wirklich Super Material, danke für den Link! --because our freedom sits at the end of a gun |
|
Profil || Suche |
|
010 17.02.2001, 17:31 TheTinySteini |
@Blair: Wo gibt's denn das Plugin? Würd ich mir gerne mal angucken... --TheTinySteini |
|
Profil || Suche |
|
011 18.02.2001, 16:28 blair |
War auf der Gamestar CD... (ich schäm mich ja, die zu lesen,) außerdem kriegst du es hier: http://dance.bwgame.com/ --because our freedom sits at the end of a gun |
|
Profil || Suche |
|
012 18.02.2001, 16:34 Another1 |
@Linga: Das-per-pixel-rendering ist schon uralt .. wird von allen möglichen Cad und 3D Programmen zum Szenenrendern benutzt (bsp: 3D Studio Max) --Another1 ...relaxing..atm =) |
|
Profil || Suche |
|
013 19.02.2001, 19:08 Prefect |
@apfelkorn (von ganz oben): Leider nicht.. die 3d-Hardware (bzw. -treiber) kann immer noch manipuliert werden. Dynamische Schatten gibt's in Sonderfällen auch schon lange (Volumenschatten, und eine Art "Lichtquellen-Z-Buffer"). Allerdings funktionieren diese Methoden zumeist entweder nicht mit beweglichen Lichtquellen, oder eben nicht mit mehreren Lichtquellen. Ein Vorberechnen der Lichtverhältnisse ist immer noch am schnellsten (es sei denn man schraubt die Qualität herunter). Ach ja, Vorberechnen muß nicht unbedingt Lightmap heißen... cu,
Widelands - Gemütliche Aufbaustrategie, Free Software |
|
Profil || Suche |

