Willkommen im #Neuland
Login wie bei quake.ingame.de zuvor, die Passwörter aus der alten Datenbank wurden aber gelöscht - einmal hier neu anfordern.
Wer seine E-Mail-Adresse nicht mehr hat oder kennt, bitte eine Nachricht mit Infos schicken o. im Discord melden.

PQ Discord Server: #planetquake                                                                                                                                         Spenden? Hier entlang!

wasser, shader = not working

Im Editing-Forum könnt ihr Fragen übers Mapping, Modeling und Skinning oder andere Kreativfragen wie Coding für Mods usw. stellen. Darüber hinaus werden Fragen rund um das Erstellen von Movies und um vorhandene Movies geklärt.
Antworten
thrillseekea

wasser, shader = not working

Beitrag von thrillseekea »

Hey guys, hoffe hier ist noch jemand aktiv :)

habe erst vor kurzem mit dem mapping angefangen, bin aber dank zahlreciher tutorials schon ganz gut vorangekommen.

Nun habe ich mir eine art springbrunnen gebaut der sieht so aus

Bild

Nun zu meiner Frage: Ich habe den shader der wassertextur kopiert und tcmod scroll eingefügt sodas das wasser an der schräge quasi runterfliesst.

habe die map compiliert und den shader der pk3 hinzugefügt. starte ich jetzt die map wird mir aber die schräge nicht angezeigt ( also graue textur mit weissem streifen.

was habe ich falsch gemacht ?

Desweiteren wollte ich fragen kann ich den shader der wassertextur so ändern das sich zwar die textur bewegt, das wasser aber keine wellen schlägt ?

gruß thrill
sumatra
Klesk
Klesk
Beiträge: 726
Registriert: Feb 2005

Beitrag von sumatra »

Was hälst du davon den Code vom Shader mal hier zu posten?
Dann wissen wir besser wovon du erzählst.. :wave:
Bild
thrillseekea

Beitrag von thrillseekea »

Gute idee :)

Code: Alles auswählen

textures/liquids/flatripplewater_1501
{
	// Added to g3map_global texture on May 11, 1999
	qer_editorimage textures/liquids/pool2.tga
	q3map_globaltexture
	q3map_lightsubdivide 32
	surfaceparm trans
	surfaceparm nonsolid
	surfaceparm noimpact
	surfaceparm nolightmap
	q3map_surfacelight 500
	cull none
	

	
	{
		map textures/liquids/pool2.tga
		tcMod scale 0.5 0.5
		tcMod Scroll .3 0
		
	}
}
wie ihr seht habe ich einfach den bestehenden shader von flattripplewater_1500 genommen und ihn angepasst.

hiernochma wies dann ingame aussieht:

Bild

im oberen roten ramen sieht man wie das wasser wellen schlägt, kann man das weg machen ?

und warum erkennt er meine textur nicht ?

gruß thrill
TswiebelMad
Assist
Assist
Beiträge: 5417
Registriert: Sep 2005
Wohnort: Zuhause
Kontaktdaten:

Beitrag von TswiebelMad »

die textur kannst du mit dem befehl

tcMod stretch sin 0.5 0.1 0 0.5

erstellen.

jedoch wird das etwas schwierig einen springbrunnen zu basteln, wo das wasser an der y und x achse runterfließt, ohne gewisse "nähte" auf dem wasser zu hinterlassen.

das problem mit der fehlenden textur liegt nicht am shader sondern am brush. dieser brush sieht so aus, als besitzer er einen winkel von 45°. sst13 hatte ebenfals solche probleme mit solchen brushs gehabt, da diese keine trefferspuren gezeigt haben.
______________________________________
Bild
чаби знают кто это бабо!
b3ast
Dust Puppy
Dust Puppy
Beiträge: 4759
Registriert: Mai 2006
Wohnort: Germany
Steam: b3ast20
Kontaktdaten:

Beitrag von b3ast »

für mich sieht das so aus, als würde er die textur nicht finden. weiss jetzt nicht auswendig, welches dateiformat normalerweise verwendet wird, du kannst es aber mal mit *.jpg probieren.
Bild
thrillseekea

Beitrag von thrillseekea »

ok schonma vielen Dank für die antworten, ein fehler ist mir selbst aufgefallen ich habe beim packen der dateien vergessen das die texturen in den ordner Textures/liquids müssen hatte sie nur in Textures drinne- > findet die textur ingame aber immernoch nicht :P soll ich evtl ma ne andere nehmen ?

Vllt fangen wir erstma von vorne an:

Punkt 0: Wer kennt sich denn hier am besten mit shadern und texturen aus ?

Punkt 1: wie kann ich es erreichen das das Wasser keine wellen schlägt sich aber trotzdem noch seitlich bewegt ? ( auf und ab bewegung ausschalten )

Punkt 2: Ich habe also in meinem order für die map folgendes drinne:
Scripts ( hier die shader rein ) Textures/liquids ( die texturen ) levelshots, maps und env das ganze packe ich dann als pk3 im zip format und das geht auch alles, aber die textur wird immernoch grau mit weissem streifen angezeigt.

Punkt 3: ich habe im quake ordner die dateien Pak0.pk3 - pak8.pk3 woraus er alles bezieht ( ist das richtig so ?? )

Punkt 4: wenn ich beam_blue in einem 45 Grad winkel erstelle funktioniert es doch auch warum kann ich keine wasser textur dazu bringen so wie beam_blue4 zu scrollen müsste doch eigentlich sooooooo einfach sein :(

Tja Jungs und mädels was habe ich vergessen, wo liegt mein logischer denkfehler ?

p.S Die textur auf der schräge muss nicht zwangsläufig wasser sein, kann auch einfach nur die textur davon sein, da man diesen teil ja eh nicht "berühren" kann.

viele grüße thrill
acid
Humilation
Humilation
Beiträge: 10636
Registriert: Aug 2001

Beitrag von acid »

Steht deine Shader Datei überhaupt in der shaderlist.txt?
Bild
thrillseekea

Beitrag von thrillseekea »

klar die shaderlist.txt die im quake3 ordner ist logisch habs ja beim liquid shader reingepackt :/ Muss ich die shaderlist auch beim packen meiner mapfiles mit reintun ?

Hab grad ma versucht eine andere x beliebeige textur zum scrollen zu bringen hat auch nicht funktioniert, irgendwas mache ich falsch kA was :P
sumatra
Klesk
Klesk
Beiträge: 726
Registriert: Feb 2005

Beitrag von sumatra »

Ist "liquids.shader" nicht bereits ein Teilprodukt von Quake3?
Versuch es mal mit einer neuen Shader-Datei ("Test.shader" o.ä.) und kopiere deinen code rein.
Dann in der Shaderlist.txt. "Test.shader" hinzufügen und nochmal probieren.
Ich denk da gibt es momenant einen Konflikt...

Wenn du das ausgeschlosen hast, meld dich nochmal.
Bild
thrillseekea

Beitrag von thrillseekea »

sumatra ist mein neuer superheld :)
Nice es funktioniert :)

Aber eine Frage habe ich noch wie bekomme ich es hin das flatripplewater_1500 keine wellen mehr schlägt sondern so wie calm_clear einfach flach bleibt weil diese wellen schlagen über die kante meines beckens und dat sieht nich so gut aus. oder muss ich mir nu ne eigene wasser textur zulegen ?

hehehehhehee Danke an alle leute die so fleissig waren.

greetz thrill
sumatra
Klesk
Klesk
Beiträge: 726
Registriert: Feb 2005

Beitrag von sumatra »

Gerne doch.. :wave:

Da scheint was in deinem Code, den du gepostet hast, zu fehlen.
Irgendwo sollte die Kommandozeile "deformVertexes wave .." stehen.

Die ist für die "Deformation" der Textur zuständig, ergo die Wellen.

Hier aus dem Shader Manual:
3.3.1 deformVertexes wave <div> <func> <base> <amplitude> <phase> <freq>
Designed for water surfaces, modifying the values differently at each point. It accepts the standard wave functions of the type sin, triangle, square, sawtooth or inversesawtooth. The "div" parameter is used to control the wave "spread" - a value equal to the tessSize of the surface is a good default value (tessSize is subdivision size, in game units, used for the shader when seen in the game world).



Specific parameter definitions for deform keywords:
<div> This is roughly defined as the size of the waves that occur. It is measured in game units. Smaller values create a greater density of smaller wave forms occurring in a given area. Larger values create a lesser density of waves, or otherwise put, the appearance of larger waves. To look correct this value should closely correspond to the value (in pixels) set for tessSize (tessellation size) of the texture. A value of 100.0 is a good default value (which means your tessSize should be close to that for things to look "wavelike").

<func> This is the type of wave form being created. Sin stands for sine wave, a regular smoothly flowing wave. Triangle is a wave with a sharp ascent and a sharp decay. It will make a choppy looking wave forms. A square wave is simply on or off for the period of the frequency with no in between. The sawtooth wave has the ascent of a triangle wave, but has the decay cut off sharply like a square wave. An inversesawtooth wave reverses this.

<base> This is the distance, in game units that the apparent surface of the texture is displaced from the actual surface of the brush as placed in the editor. A positive value appears above the brush surface. A negative value appears below the brush surface. An example of this is the Quad effect, which essentially is a shell with a positive base value to stand it away from the model surface and a 0 (zero) value for amplitude.

<amplitude> The distance that the deformation moves away from the base value. See Wave Forms in the introduction for a description of amplitude.

<phase> See Wave Forms in the introduction for a description of phase)

<frequency> See Wave Forms in the introduction for a description of frequency)
Versuchs mal hiermit.

Code: Alles auswählen

deformVertexes wave 100 sin 0 1 .5 .5
Da steht die Base auf 0 und müsste somit das Wasser glatt lassen.

Hoffe das hilft...
Bild
sst13
Patriot
Patriot
Beiträge: 1269
Registriert: Jan 2002

Beitrag von sst13 »

Zum Thema original Shader verändern:

1. Den originalen Shaderscript in deine eigene Shaderdatei kopieren. Die Shaderdatei sollte dabei am besten den gleichen Namen wie deine Map haben.
2. Den Shadernamen (1. Zeile im Script) ändern damit er sich mit dem originalen auf keinen Fall überschneidet.
3. Shader Manual (deutsch) zur Hand nehmen und alle Befehle welche sich in dem Shaderscript befinden nachschlagen.
4. Wenn man rausgefunden hat was welche Zeile jeweils bewirkt, kann man den neuen Shader wie gewünscht abändern und speichern.

Das Ergebnis könnte dann so aussehen:

Code: Alles auswählen

textures/meine-map/wasser_flach
{
	qer_editorimage textures/liquids/pool2.tga
	surfaceparm trans
	surfaceparm nonsolid
	surfaceparm water
	surfaceparm nolightmap
	cull disable
	{
		map textures/liquids/pool2.tga
		tcMod turb 0 0.2 0 0.1
	}
}
- Das würde eine neue Textur Namens: "meine-map/wasser_flach" per Shader erzeugen
- Als Bild im Editor würde "liquids/pool2.tga" angezeigt werden
- Der Brush wäre Lichtdurchlässig (würde keinen Schatten werfen)
- Der Brush wäre nicht solide (blockt weder Player noch Projektile)
- Der Brush hätte alle Wassereigenschaften
- Es wird keine Lightmap erzeugt (immer gleich hell)
- Die Wasseroberfläche ist von oben und von unten sichtbar
- Die verwendete ingame Textur ist "liquids/pool2.tga"
- Die Textur bewegt sich als "Turbulenz"


Für die Bewegung der Oberfläche (geschwabbel) ist wie sumatra schon sagte "deformVertexes" verantwortlich. Diese Zeile brauch man einfach nur löschen wenn man es nicht haben will.

Joar das wars auch schon... :D
Bild Bild
thrillseekea

Beitrag von thrillseekea »

Hey guys,

Danke danke es funktioniert alles bestens :) die Textur der schräge wos wasser runterläuft sieht zwar etwas breiter aus aber das passt schon, werde da nochma n bisschen rumspielen mit der mosaik grösse.

Wasser ist nun flach :)

Was ich noch überlegt habe ist folgendes:

Bild

ihr seht ja das kleine grade stück am unteren ende der schräge kann ich es irgendwie bewerkstelligen das dort so eine animation passiert wie wenn fliessendes wasser auf stilles trifft, halt so bläschen oder sowas ? klingt echt kompliziert ich weiss :)

Naja Danke Danke an alle erstmal and map ooooooon ! ;D

l8er greetz thrill
sst13
Patriot
Patriot
Beiträge: 1269
Registriert: Jan 2002

Beitrag von sst13 »

Also wenn du nur die Naht zwischen den beiden Texturen kaschieren willst, kann man das einfach mit der Alphascale Funktion von q3map2 machen. Dabei würden dann beide Texturen fließend ineinander übergehen.

Wenn dir das reicht (ohne Blubberbläschen ect.) kann ich dir gern sagen wie's geht... :D
Bild Bild
Antworten