Seite 1 von 1

Entspiegeltes Glass

Verfasst: 21.12.2007, 13:47
von nf|fray
Halli Hallo! ;)

Bin gerade am mappen einer RA3 Arena, und nun bin ich am Ende meines Mapping-Lateins :D

Also, ich möchte Glas, das nicht (oder zumindest nur schwach) spiegelt, da es von einer Seite direkt mit Licht beschienen wird, man aber trotzdem sehr gut durchschauen können soll.

Momentan benutze ich die Textur base_wall/glass01, die doch sehr stark spiegelt!

Vielen Dank schonmal für eure Hilfe
Gruß
Fray

Verfasst: 21.12.2007, 14:53
von sst13
Da musst du wohl einen neuen Shader machen.

Dazu reicht es aber den original Glass-Shader etwas abzuändern, indem man eine dunklere environment-Textur wählt:

Code: Alles auswählen

textures/mapname/glass
{
	qer_editorimage textures/base_wall/shiny3.tga
	surfaceparm trans	
	cull none
	qer_trans 0.5
	{
		map textures/effects/tinfx3.tga
		tcgen environment
		blendFunc GL_ONE GL_ONE
		rgbGen identity
	}
	{
		map $lightmap
		rgbGen identity
		blendFunc filter
	}
}
Wie du das ganze erstellst wird hier beschrieben: http://home.arcor.de/q3michel/tutor/tutor28.html

Kurzfassung:
1. den Script an deinen Mapnamen anpassen (1. Zeile)
2. in eine Textdatei kopieren und als "mapname.shader" in "baseq3\scripts\" speichern
3. in der shaderlist.txt (baseq3\scripts\) den Shader (mapname) eintragen
4. im Radi die Textur "mapname/glass" auswählen...

Verfasst: 21.12.2007, 16:38
von nf|fray
tja, dass ich einen neuen shader machen muss, habe ich befürchtet.

Vielen Dank für die Anleitung, sst13!!

Was genau ist in dem Beispiel-Shader die Environment Textur ?
Diese hier :
map textures/effects/tinfx3.tga ?
Oder ist das schon der angepasste Shader, den du gepostet hast ? (Wenn ja, nochmal +tausend Dank :D )

Gruß
fray

Verfasst: 21.12.2007, 16:54
von sst13
tinfx.tga ist die originale und tinfx3.tga ist eine etwas dunklere Version.
Die sollte dann nicht mehr so sehr sichtbar sein weil mit "blendFunc GL_ONE GL_ONE" eingeblendet wird. (dunkel = durchsichtig)

Verfasst: 21.12.2007, 18:01
von nf|fray
Also, ich habe das jetzt alles mal ausprobiert und mich für die
invismap.tga
Textur entschieden - damit ist kaum Spiegelung erkennbar, es sieht aber trotzdem noch nach Glas aus.

Nochmals, vielen, vielen Dank - sieht genau so aus wie erhofft !

Verfasst: 29.12.2007, 21:26
von oregano4_inaktiv
Darf Kritisiert werden?

-Der Quick-E Markt hat zu!!! (eigentlich der Tod ;) )

Die Map sie Fantastisch aus, wirklich.
Ich frage mich wo die Frames beleiben.
Ich denke paar Sachen kannst du weglassen oder Optimieren ohne das die Qualität der Map leidet.

- Die Flaschen vor dem besagten Shop Ich denke die könntest du getrost durch einfache Kisten ersetzen
-Rundungen wie vor manch einer Einfahrt kann man sehr elegant mit einem Shader erledigen

Code: Alles auswählen

textures/o4texs/greenrund
{
q3map_nonplanar
q3map_shadeangle 70
qer_editorimage textures/deintexturordner/deinerundetextur.tga
	{
	map $lightmap
	rgbGen identity
	}
	{
	map textures/deintexturordner/deinerundetextur.tga
	blendFunc filter
	}
}
Ich meine damit das du die Rundung durch Brushes nur andeutest und dann mit der Textur belesgst, sieht dann lecker Rund aus :)

-Was ich echt Geil finde Ist Barts Zimmer, villeicht setzt du das Zimmer in eine Ecke der Map rein, damit es nicht in der Ganzwen Map Unsichtbar gerendert wird.

Wenn du keinen Bock auf mein genörgel hast dann sag nur Bescheid :)

Verfasst: 30.12.2007, 15:00
von starcow
Tach.
Ich hab mich mit dem Thema Glas relativ ausführlich auseinander gesetzt (auch für Doom3) und habe eine Lösung die imho am einfachsten handelbar ist und sich die Ergebnisse damit ohne probiererei am besten einschätzen lassen.

Im Prinzip braucht man 2 Stages.

1.
Das Glas "selbst" - spricht eine Map die für die Dreck-, Blutsprizer oder sonstige Trübungen verantwortlich ist. Hierbei wird im Alphakanal der tga Datei gleichzeitig die Transparenz, bzw. Teiltransparenz der einzelnen Pixel bestimmt.

2.
Der Glanz-Effekt. Den erreicht man über eine env-map. Auch hier ist es wichtig, das die tga Datei der env-map einen Alphakanal hat. Über diesen kann man wie bei der ersten Stage die Transparenz Pixel für Pixel definieren. So kann man relativ einfach verdreckte Stellen oder Kratzer im Glas ganz oder teilweise entspiegeln. Das wirkt unglaublich gut.