Die Voxelgrafik kehr zurück
-
Haller schrieb:
DieFrage schrieb:
Was hat man jetzt davon Voxel zu nehmen und nicht mehr Dreiecke? Irgendwie seh ich da nichts das ganze jetzt realistischer oder besser aussehen lässt. Wenn ich schönere Modelle will, dann nehm ich halt mehr Dreiecke. Was haben Voxel da für einen Vorteil?
Mach so etwas mit Polygonen:
http://foreverwar.sourceforge.net/screenshots.htmlAuch die 3d Welt Deformation.
naja, das sind polygone, generiert aus einem volume, mittels marching cubes. sowas in der art kann man auch nur mit polygonen erreichen wenn man z.b. csg und andere modifikatoren nutzt.
bei id-softwares renderer hat man das lustigerweise genau anders gemacht. polygon modelle genommen und voxelisiert.
-
rapso schrieb:
ID-software wird einfach mal wieder das spiel an die technik anpassen und es wird funktionieren.
Da wäre ich ohnehin mal gespannt, DX bewegt sich ja imerhin richtugn Raytracing und wenn ich schon lese das ID Soft nichtmal weis wo die Datenmengen hin sollen (und der aktuelle Gamer PC hat ja im Schnitt mal locker 4GB RAM) dann bin ich da her skeptisch ob sie das wirklich so durchziehen.
-
Xebov schrieb:
rapso schrieb:
ID-software wird einfach mal wieder das spiel an die technik anpassen und es wird funktionieren.
Da wäre ich ohnehin mal gespannt, DX bewegt sich ja imerhin richtugn Raytracing
meinst du wegen 'compute shader'?
und wenn ich schon lese das ID Soft nichtmal weis wo die Datenmengen hin sollen (und der aktuelle Gamer PC hat ja im Schnitt mal locker 4GB RAM) dann bin ich da her skeptisch ob sie das wirklich so durchziehen.
naja, sind sie nicht gerade selbst am massig daten generieren? mit alles unique texturen, geometrie komplett unique wegen voxeln usw. ?
ich glaube deren naechstes spiel mit voxeln wird viele kleine raeume beinhalten. jeder raum fuer sich wird ein voxel model sein. so umgehen sie die float probleme und auch die probleme mit datenmengen (weil man raum fuer raum reinladen kann, wie bei metroid prime und vieles kann dann einfach wieder instanciert werden).
-
rapso schrieb:
ich glaube deren naechstes spiel mit voxeln wird viele kleine raeume beinhalten.
Das wäre bei ID Software ja nichts neues.
jeder raum fuer sich wird ein voxel model sein. so umgehen sie die float probleme und auch die probleme mit datenmengen (weil man raum fuer raum reinladen kann, wie bei metroid prime und vieles kann dann einfach wieder instanciert werden).
Von welchen Datenmengen sprechen wir eigentlich bei Voxelgrafik?
Wenn der kleinste Voxel einem mm Spielwelt entsprechen würde, wieviele Quadratkilometer groß könnte man dann eine Spielwelt bauen, wenn das Spiel für Rechner mit 8 GB Arbeitsspeicher designed werden würde?
-
Halomet schrieb:
rapso schrieb:
ich glaube deren naechstes spiel mit voxeln wird viele kleine raeume beinhalten.
Das wäre bei ID Software ja nichts neues.
aber aus diesem bereich wollten sie ja eigentlich raus, was sie mit quakewars anfingen (dafuer hatte carmack ja megea texturing gemacht) und was sie mit rage fortfuehren wollen.
jeder raum fuer sich wird ein voxel model sein. so umgehen sie die float probleme und auch die probleme mit datenmengen (weil man raum fuer raum reinladen kann, wie bei metroid prime und vieles kann dann einfach wieder instanciert werden).
Von welchen Datenmengen sprechen wir eigentlich bei Voxelgrafik?
Wenn der kleinste Voxel einem mm Spielwelt entsprechen würde, wieviele Quadratkilometer groß könnte man dann eine Spielwelt bauen, wenn das Spiel für Rechner mit 8 GB Arbeitsspeicher designed werden würde?
es kann zwar sein dass ich mich falsch erinnere, aber ich glaube jon olick hatte zu der presentation vom video gesagt, dass er 1GB VRam verbraucht und das monster-model 6GB auf festplatte ist. wobei die generierung der daten einige stunden dauerte.
meine models koennen bis zu 65536^3 sein (ich glaube er hatte gesagt er hat in jeder achse +-16k, also vermutlich 32768, einheiten). wenn ich mich nicht verrechne, sind das bei mir theoretisch 1PB (32bit/voxel), aber ich generiere alles zur laufzeit und behalte nur 128MB im Vram.
Man kann voxel an sich aber auch sehr gut komprimieren, gerade mit wavelet artigen verfahren (z.b. EZW), aber dennoch sind das ne menge daten.
die megatextures hatte ID-software auch gut komprimiert bekommen (wenn auch die levels trotzdem weit mehr auf disk ziehen als andere spiele). siehe: http://www.beyond3d.com/content/articles/95/3
wie man sehen kann, kamen die nicht ganz weg mit unique-texturing und mussten altbewehrte detailmaps nutzen.
vermutlich gibt es also auch bei der voxel tech am ende ein wenig perlin.
-
rapso schrieb:
DieFrage schrieb:
Was hat man jetzt davon Voxel zu nehmen und nicht mehr Dreiecke? Irgendwie seh ich da nichts das ganze jetzt realistischer oder besser aussehen lässt. Wenn ich schönere Modelle will, dann nehm ich halt mehr Dreiecke. Was haben Voxel da für einen Vorteil?
der vorteil soll sein, dass man sich nicht mehr um dreiecke mit all den unmengen von tools kuemmern muss, sondern mit simplen 'sculpting tools' auskommt. dass man nicht UVs aufsetzen muss um die dinge zu texturieren, die dann sowieso verzogen sind, sondern einfach nur die voxel 'anpinselt'. dass man keine LODs braucht, sondern nur weniger hierarchy rendert. dass der datenaufwand ab einer gewissen detailmenge kleiner ist als bei polygonen. dass... naja, wenn es nicht ein paar gravierende nachteile haette.
ID-software wird einfach mal wieder das spiel an die technik anpassen und es wird funktionieren.Normalen für Reflektionen hast du dann auch nicht mehr, oder?
-
rapso schrieb:
dass man nicht UVs aufsetzen muss um die dinge zu texturieren, die dann sowieso verzogen sind, sondern einfach nur die voxel 'anpinselt'.
Kenne mich damit nicht aus, interessiert mich nur mal: Wo kommen denn die Farbwerte her, wenn nicht aus Bilddateien? Wenn doch, wie kommt man dann um UV-Koordinaten herum?
-
also wie würde man z.B. nun dieses ID-Monster texturieren?
-
Du würdest jeden Voxel einzeln texturieren. Klingt nach extrem viel Arbeit, aber mit entsprechenden Tools geht das recht einfach.
-
fdbdf schrieb:
Du würdest jeden Voxel einzeln texturieren.
Ich dachte man texturiert gar nicht, sondern jeder Voxel hat einfach nur eine Farbe -> was bei genügend Voxeln eben auch schön aussehen kann. (?)
-
fdbdf schrieb:
Du würdest jeden Voxel einzeln texturieren. Klingt nach extrem viel Arbeit, aber mit entsprechenden Tools geht das recht einfach.
Ja aber wo kommen die Farbwerte her?
Du willst mir doch wohl nicht sagen, dass sich ein "Designer" hinsetzt, jeden Voxel anklickt und Farbwerte zuteilt.
-
Oder was verstehst bieten diese Tools? So was wie ein Pinsel mit dem man großflächig Werte zuteilt?
Das scheint mir immer noch nicht ganz realistisch.
-
Badestrand schrieb:
fdbdf schrieb:
Du würdest jeden Voxel einzeln texturieren.
Ich dachte man texturiert gar nicht, sondern jeder Voxel hat einfach nur eine Farbe -> was bei genügend Voxeln eben auch schön aussehen kann. (?)
Und wenn man die Voxellandschaft zusammenschießt, dann bleiben die Farben immer noch schön.
-
DieFrage schrieb:
rapso schrieb:
DieFrage schrieb:
Was hat man jetzt davon Voxel zu nehmen und nicht mehr Dreiecke? Irgendwie seh ich da nichts das ganze jetzt realistischer oder besser aussehen lässt. Wenn ich schönere Modelle will, dann nehm ich halt mehr Dreiecke. Was haben Voxel da für einen Vorteil?
der vorteil soll sein, dass man sich nicht mehr um dreiecke mit all den unmengen von tools kuemmern muss, sondern mit simplen 'sculpting tools' auskommt. dass man nicht UVs aufsetzen muss um die dinge zu texturieren, die dann sowieso verzogen sind, sondern einfach nur die voxel 'anpinselt'. dass man keine LODs braucht, sondern nur weniger hierarchy rendert. dass der datenaufwand ab einer gewissen detailmenge kleiner ist als bei polygonen. dass... naja, wenn es nicht ein paar gravierende nachteile haette.
ID-software wird einfach mal wieder das spiel an die technik anpassen und es wird funktionieren.Normalen für Reflektionen hast du dann auch nicht mehr, oder?
ich speicher die zZ nicht ab. ID-software speichert 12byte grosse voxel wenn ich mich recht entsinne und die haben wohl noch normalen.
die lassen sich aber sehr gut komprimieren eigentlich, wie man anhand von 3dc von ATI/AMD sehen kann.
-
nordnordost schrieb:
rapso schrieb:
dass man nicht UVs aufsetzen muss um die dinge zu texturieren, die dann sowieso verzogen sind, sondern einfach nur die voxel 'anpinselt'.
Kenne mich damit nicht aus, interessiert mich nur mal: Wo kommen denn die Farbwerte her, wenn nicht aus Bilddateien? Wenn doch, wie kommt man dann um UV-Koordinaten herum?
bei voxeln kann man diese pro voxel abspeichern, statt als den UV wert, speicherst du die farbe, was oekonomischer ist und sich auch sehr gut komprimieren laesst.
bei polygonen machen UV koordinaten sinn, weil sie nur pro vertex abgelegt sind, das ist eben ein grund dafuer, weshalb voxel irgendwann weniger speicher verbrauchen als ein irsinning hoch aufgeloestes polygonmesh.Im Rays renderer benutzt man z.b. keine texturen auf den finalen dreiecken, man tesseliert sie nur wie warnsinnig (regel soll sein 2polys pro pixel, bei 32AA, also wohl 64polys... aber nagelt mich auf der aussage nicht fest, das ist nur was mir erzaehlt wurde
).
-
nordnordost schrieb:
also wie würde man z.B. nun dieses ID-Monster texturieren?
schau dir ZBrush oder Mudbox an (gibt viele videos auf youtube). da sieht man neben dem sculpting wohl auch wie manche farben drauflegen. es ist an die realitaet angelehnt. wie wuerdest du farbe auf objekte auftragen?

-
rapso schrieb:
Kenne mich damit nicht aus, interessiert mich nur mal: Wo kommen denn die Farbwerte her, wenn nicht aus Bilddateien? Wenn doch, wie kommt man dann um UV-Koordinaten herum?
bei voxeln kann man diese pro voxel abspeichern, statt als den UV wert, speicherst du die farbe, was oekonomischer ist und sich auch sehr gut komprimieren laesst.
bei polygonen machen UV koordinaten sinn, weil sie nur pro vertex abgelegt sind, das ist eben ein grund dafuer, weshalb voxel irgendwann weniger speicher verbrauchen als ein irsinning hoch aufgeloestes polygonmesh.
[/quote]Habe mir Videos angesehen zu ZBrush. So ungefähr habe ich mir die Texturierung auch vorgestellt.
Aber habe ich richtig verstanden, dass Voxel erst dann ökonomischer werden, wenn Polygone auf Pixelgröße schrumpfen? Warum und in welchen Anwendungen sind solch detaillierte Darstellungen notwendig sein? Bei sagen wir 5*5 Pixeln pro Polygon wären sie doch deutlich Ökonomischer, sogar mit Normalen, als Voxel, und ich kann mir nur schwer vorstellen, ob ein Unterschied sichtbar wäre zu einem Pixel/Polygon.
Was ist mit Beleuchtung? Teilt man Voxeln auch einen Wert für die Normale zu?