#1 15.01.2006 15:52:57

artzuk
GodlikeMember
Ort: Leipzig
Registriert: 24.01.2005
Beiträge: 1164

Schattentechnologie

Ich stehe immer noch vor dem Thema, welche Schattentechnologie denn mir gefallen könnte. Die, welche ich kenne (das sind die alten gebräuchlichen), gefallen mir nicht wirklich. Aber ich lese im Internet immer wieder, dass es neue Techniken gibt, aber Paper dazu finde ich nie - ich bin zu blööd zum Googlen, bzw. klicke ich Seiten viel zu schnell wieder weg, bevor ich sie durchgelesen habe.

Was nutzt eigentlich NFS MW? Da wirft ja alles einen Schatten und der ist meiner Meinung nach realtime berechnet, weil der Winkel der Sonne sich schnell ändert und man das unmittelbar am Schatten sehen kann.

@Coolcat: Ich hab mir auch mal deine Netttank Demo gesaugt und da sehe ich, dass das Terrain Schatten auf den Panzer wirft. Wie hast du es dort gelöst?

Also mit der Technik soll es möglich sein, dass alle Objekte Schatten werfen und auch mehrere Lichtquellen möglich sind. Dazu bin ich kein Freund vom überdimensionalen Multipass-Rendering!


Mein kleiner .NET Blog: http://artzuk-interactive.de/

Offline

 

#2 15.01.2006 16:14:24

Coolcat
ProGuru
Ort: Aachen, NRW
Registriert: 24.01.2005
Beiträge: 2780
Web-Seite

Re: Schattentechnologie

Zitat:

@Coolcat: Ich hab mir auch mal deine Netttank Demo gesaugt und da sehe ich, dass das Terrain Schatten auf den Panzer wirft. Wie hast du es dort gelöst?

Hö? In Nettank2 gibt's keinen Schatten. :rock: Alles Licht ist einfach nur normales DX-Licht mit einer Lichtquelle (Sonne). Einzig die Normalen des Terrains sind recht aufwendig berechnet um einen coolen Smooth-Effekt hinzubekommen, aber eigentlich ist da auch nix hinter...

Coolcat


My software never has bugs. It just develops random features.

Offline

 

#3 15.01.2006 18:50:19

artzuk
GodlikeMember
Ort: Leipzig
Registriert: 24.01.2005
Beiträge: 1164

Re: Schattentechnologie

Echt jetzt?? Ich bin extra eine Extrarunde gefahren um den Schatten zu testen. Irgendwie konnte ich bemerken, dass sich der Panzer dann dunkel färbt, wenn ich in eine schattige Stelle fahre. Zudem dachte ich gesehen zu haben, dass man teilweise das Rohr als Schatten auf den Panzer sehen kann. Soll das alles Einbildung gewesen sein?  :doof:
Letztendlich war deine Demo Anlass für diesen Thread - vorerst gehts mir nur um die Theorie. Zur Praxis habe ich ja gar keine Zeit.


Mein kleiner .NET Blog: http://artzuk-interactive.de/

Offline

 

#4 15.01.2006 19:31:43

JorEl
ExtremeMember
Registriert: 29.01.2005
Beiträge: 894

Re: Schattentechnologie

Was spricht denn gegen shadow mapping? Ist meiner Meinung zur Zeit die beste Lösung - 100%ig in hardware realisierbar und für jeden Lichttyp gibt es inzwischen passende Verfahren mit denen man ganz gute Resultate bekommt. Setzt natürlich (sofern du nicht multipass rendering verwenden willst) voraus, dass du entweder verschiedene shader compilierst für 1,2,3,...n Lichtquellen und dann natürlich noch dass du genug texture slots zur Verfügung hast für die maps. Prinzipiell ist glaube ich 1 pass pro Lichtquelle durchaus akzeptabel, auch bei gamedev.net sehen das die Leute so - ist eben der flexibelste Weg und im Normalfall ist es ja nicht so, dass du um dich herum 30 Lichtquellen hast sondern eher eine, zwei oder vielleicht auch mal 4 bis 5. Das ist normalerweise schon vertretbar.

JorEl


Jesus hat gesagt - selig sind die, die da Leid erfahren, denn sie sollen getröstet werden... Ford Prefect hat gesagt - es ist unheimlich wichtig, dass wir miteinander reden und einen trinken.

Offline

 

#5 15.01.2006 20:51:01

artzuk
GodlikeMember
Ort: Leipzig
Registriert: 24.01.2005
Beiträge: 1164

Re: Schattentechnologie

1 Pass pro Lichtquelle ist akzeptabel, aber wenn ich mich nicht irre, braucht man ja noch einen extra Pass mit voller Geometrie, um den Schatten auf die Objekte drauf zu legen. In einen gehts bestimmt nicht immer, weil man ja noch andere geile Materials drauflegen will.
Oder irre ich mich jetzt gewaltig?  :doof:


Mein kleiner .NET Blog: http://artzuk-interactive.de/

Offline

 

#6 15.01.2006 21:14:07

JorEl
ExtremeMember
Registriert: 29.01.2005
Beiträge: 894

Re: Schattentechnologie

du brauchst pro lichtquelle mal einen pass um die map zu generieren (mindestens, bei pointlights siehts anders aus). dafür verwendet man im allgemeinen aber a) vereinfachte geometrie und b) materials sind völlig überflüssig weil man nur den depthbuffer haben will, d.h. du kannst für color einfach 0,0,0,0 rausschreiben im shader - das ist also kein sehr aufwändiger pass.

dann - im regulären pass - verwendest du eben die map in dem du in den light space transformierst und die depth werte vergleichst. In diesem pass kannst auch beliebig andere effekte einbauen solange du genug instructions und texture units zur verfügung hast.


Jesus hat gesagt - selig sind die, die da Leid erfahren, denn sie sollen getröstet werden... Ford Prefect hat gesagt - es ist unheimlich wichtig, dass wir miteinander reden und einen trinken.

Offline

 

#7 15.01.2006 21:14:20

DerPeer
GodlikeMember
Ort: Berlin
Registriert: 04.02.2005
Beiträge: 1291

Re: Schattentechnologie

Ich hab Volumen- und ShadowmapSchatten probiert. Wenn´s funktioniert, würde ich zu Shadowmaps raten. Für die braucht man aber ein wenig Zeit, bis die funzen und schick aussehen. Bei StencilShadows klappt das auf anhieb, wobei die langsamer werden können.

Mehr kenn ich nicht.

Peer

Offline

 

#8 15.01.2006 22:27:14

Coolcat
ProGuru
Ort: Aachen, NRW
Registriert: 24.01.2005
Beiträge: 2780
Web-Seite

Re: Schattentechnologie

In der Nettank2-Demo ist wirklich kein Schatten drin. Das Ding ist doch zwei, drei Jahre alt...


My software never has bugs. It just develops random features.

Offline

 

#9 16.01.2006 16:09:26

Chris
ExtremeMember
Ort: Erlangen, Bay
Registriert: 24.01.2005
Beiträge: 694
Web-Seite

Re: Schattentechnologie

Ich muss sagen, dass sich shadowmaps auf jeden fall lohnen.

Bei mir war es allerdings ein ewiges rumgewürge bis es endlich funktioniert hat.

Trotzdem bin ich froh, dass ich sie jetzt habe. Man kann damit jeden Schatteneffekt erzielen, den man so braucht.

Zäune: 6 Vertices, 1 RasterTextur werden mit gerasterdem Schatten dargestellt. Praktisch ohne weiteren Programmieraufwand.

mfg Chris


Nimm meinen Rat an - ich brauch ihn sowieso nicht

Offline

 

#10 16.01.2006 17:57:20

LarsMiddendorf
ProMember
Registriert: 24.01.2005
Beiträge: 103

Re: Schattentechnologie

Bei ATI Karten funktionieren seit neustem auch die DepthBuffer Texturen (ab Radeon 9800). Voher ging das mit D3D ja nur bei NVidia Karten.

Offline

 

Brett Fußzeile

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson