Shatten auf Terrain
Shatten auf Terrain
Hi, ich komme bis jetzt unerwartet gut klar mit der 3D Implementation von PB 4beta11. Aber zwei Dinge geben mir momentan Rätsel auf...
1. Ich kriege keine Schatten auf einem Terrain, wohl aber auf eine Entity. Ist das korrekt? Was müsste ich tun um trotzdem noch Schatten auf die Oberfläche zu zaubern? Muss es ein Mesh sein?
2. AmbientColor hat keine Auswirkung, MaterialAmbientColor schon.
Was verstehe ich da nicht?
Danke
1. Ich kriege keine Schatten auf einem Terrain, wohl aber auf eine Entity. Ist das korrekt? Was müsste ich tun um trotzdem noch Schatten auf die Oberfläche zu zaubern? Muss es ein Mesh sein?
2. AmbientColor hat keine Auswirkung, MaterialAmbientColor schon.
Was verstehe ich da nicht?
Danke
zu 1. Dasselbe Problem habe ich auch, ich hätte gerne ein schattiertes Terreain aber offensichtlich scheinen die Schattierungen nur Enities, also Wesen zu betreffen.
zu 2. AmbientColor() ist denke ich so etwas wie ClearScreen() im 2d Modus. Sie tritt nur dann in Erscheinung wenn du nicht schon den gesamten Berecih des Bildschirms bedeckt hast.
zu 2. AmbientColor() ist denke ich so etwas wie ClearScreen() im 2d Modus. Sie tritt nur dann in Erscheinung wenn du nicht schon den gesamten Berecih des Bildschirms bedeckt hast.
-
- Beiträge: 972
- Registriert: 04.10.2004 18:42
- Computerausstattung: Amiga, LinuxMint, Windows7
- Wohnort: gotha
- Kontaktdaten:
hast alles mitbekommenWas verstehe ich da nicht?

ein entity ist ein mesh
ein terrain ist ein..ich nenns mal dynamisches triangle geflecht
wenn du schatten haben willst ist das kein problem, es gibt lightmapper ohne ende fuer terrains (aus heigthmaps)
der erstellt eine textur die du aufs terrain blenden kannst (zb mit addblend)
oder wenn du ein terrain mit einer grossen textur hast , dann mal den schatten doch gleich mit drauf^^
andere version waere ein meshterrain, sprich einen 'fussboden' aus einem entity
milkshape bietet zb die moeglichkeit eine heightmap als mesh abzuspeichern..oder auch viele terraineditoren
dann hast du natuerlich realtime schatten drauf ^^
bei letzterem wird dir auffallen, das die poly anzahl schnell in die hoehe und die frames schnell in den keller gehen
..also einen kompromiss zwischen aussehen und geschwindigkeit suchen

have fun

nein, ein clearscreen ist es nichtzu 2. AmbientColor() ist denke ich so etwas wie ClearScreen() im 2d Modus. Sie tritt nur dann in Erscheinung wenn du nicht schon den gesamten Berecih des Bildschirms bedeckt hast
kenn jetzt nicht die ogre befehle aber da wirds nen clearscreen geben
und mit clearcolor hats auch nichts zu tun
ambientcolor stellt den farbton der ganzen scene ein, was sich (wenn gewuenscht oder im grundzustand) auf alle meshes in der scene auswirkt
will heissen, wenn du ambientcolor blau einstellst
werden alle meshes einen blauen schimmer haben, ohne das du
das material der entitys selber geaendert hast
sozusagen wenn du im zimmer ne rote lampe hast, dann schimmert dein t-shirt rot, obwohl du weiss anhast ^^
amiga rulez...
Rebirth Software
Rebirth Software
- dllfreak2001
- Beiträge: 2925
- Registriert: 07.09.2004 23:44
- Wohnort: Bayern
Die Schattendarstellung auf das Terrain funktioniert durchaus, allerdings nur im Fesntermodus und nicht mit Additiven Schatten.
Außerdem wenn du ein Objekt größer skalierst verliert es linear dazu an Helligkeit.
Wenn du das Terrain zu hoch skalierst dann erkennt terrainheight die Höhe nicht richtig.
Ambientcolor ist doch das Umgebungslicht...
Wenn du Ambientcolor auf 0 stellst und kein licht in deine Scene eibaust bleibt alles schwarz. Wenn du Rot eintellst erstrallt dein objekt in einem homegenen roten licht das von überall herzukommen scheint (deshalb ambient), dieses Licht kann aber keinen Schatten erzeugen. Außerdem
ist es bei starken Lichtquellen je nach intensität kaum sichtbar deshalb der siehst du scheinbar keinen Effekt.
Außerdem wenn du ein Objekt größer skalierst verliert es linear dazu an Helligkeit.
Wenn du das Terrain zu hoch skalierst dann erkennt terrainheight die Höhe nicht richtig.
Ambientcolor ist doch das Umgebungslicht...
Wenn du Ambientcolor auf 0 stellst und kein licht in deine Scene eibaust bleibt alles schwarz. Wenn du Rot eintellst erstrallt dein objekt in einem homegenen roten licht das von überall herzukommen scheint (deshalb ambient), dieses Licht kann aber keinen Schatten erzeugen. Außerdem
ist es bei starken Lichtquellen je nach intensität kaum sichtbar deshalb der siehst du scheinbar keinen Effekt.
I´a dllfreak2001
Auch wenn der letzte Beitrag schon eine Weile her ist, stellt sich bei mir die Frage wie man auf einem Terrain einen Schatten darstellen kann. Im letzten Beitrag wird behauptet, dass eine Schattendarstellung auf einem Terrain im Fenstermodus funktioniert- der Weg fehlt aber. Könnt ihr mir vielleicht mit einem Tipp weiterhelfen?
Danke
Danke
- dllfreak2001
- Beiträge: 2925
- Registriert: 07.09.2004 23:44
- Wohnort: Bayern
Oha die Codes dazu sind alle schon weg, leider.
Erstmal im vorraus ich habe ne Ati-Karte und keine NV deshalb kann ich dafür keine Garantie im Voraus geben.
War aber jetzt nix aufregendes also alles Standartcode.
Du brauchst nen Enitity und das Terrain und diesen Befehl:
Die Schatten auf das Terrain wurden nur dargestellt wenn man diesen Parameter eingestellt hatte:
Achja und du musst ggf. auch noch diesen Befehl ausführen: mit als Parameterwert...
Ambientlight sollte nicht zu hell sein sonst sieht man den Schatten nicht richtig. Außerdem haben die Lichter keinen Einfluss auf das Terrain selber aber immernoch auf das Entity.
Erstmal im vorraus ich habe ne Ati-Karte und keine NV deshalb kann ich dafür keine Garantie im Voraus geben.
War aber jetzt nix aufregendes also alles Standartcode.
Du brauchst nen Enitity und das Terrain und diesen Befehl:
Code: Alles auswählen
WorldShadows(Typ)
Code: Alles auswählen
#PB_Shadow_Modulative
Code: Alles auswählen
EntityRenderMode(#Entity, Modus)
Code: Alles auswählen
#PB_Entity_CastShadow
Ambientlight sollte nicht zu hell sein sonst sieht man den Schatten nicht richtig. Außerdem haben die Lichter keinen Einfluss auf das Terrain selber aber immernoch auf das Entity.
I´a dllfreak2001
hehe die zwei ersten Punkte über die ich mich bei OGRE genervt hab.Außerdem wenn du ein Objekt größer skalierst verliert es linear dazu an Helligkeit.
Wenn du das Terrain zu hoch skalierst dann erkennt terrainheight die Höhe nicht richtig.
Skalierte Objekte müssen normalen-normalisiert werden ( ka ob da mittlerweile ein command dafuer gibt ). Und der Terrainbug war ebenfalls auf meiner Abschussliste...
Bist du sicher das du mit Ogre rumspielen willst ? =p
Thalius
"...smoking hash-tables until until you run out of memory." :P
- dllfreak2001
- Beiträge: 2925
- Registriert: 07.09.2004 23:44
- Wohnort: Bayern