Gamestudio Links
Zorro Links
Newest Posts
Executing Trades on Next Bar Open
by vicknick. 06/13/24 08:51
Zorro Beta 2.61: PyTorch
by jcl. 06/10/24 14:42
New FXCM FIX Plugin
by flink. 06/04/24 07:30
AlpacaZorroPlugin v1.3.0 Released
by kzhao. 05/22/24 13:41
Free Live Data for Zorro with Paper Trading?
by AbrahamR. 05/18/24 13:28
AUM Magazine
Latest Screens
The Bible Game
A psychological thriller game
SHADOW (2014)
DEAD TASTE
Who's Online Now
1 registered members (henrybane), 1,246 guests, and 8 spiders.
Key: Admin, Global Mod, Mod
Newest Members
AemStones, LucasJoshua, Baklazhan, Hanky27, firatv
19059 Registered Users
Previous Thread
Next Thread
Print Thread
Rating: 4
Page 2 of 16 1 2 3 4 15 16
Re: Wasser Shader ? [Re: Hummel] #81647
07/18/06 13:38
07/18/06 13:38
Joined: Apr 2002
Posts: 4,801
Richmond B.C., Canada
Captain_Kiyaku Offline

Dichotomic
Happy Birthday Captain_Kiyaku  Offline

Dichotomic

Joined: Apr 2002
Posts: 4,801
Richmond B.C., Canada


My Blog

"Tag und Nacht schrei ich mich heiser,
Wind weht alle Worte fort,
Tag und Nacht schrei ich mein Krähenwort!"

Subway To Sally - Krähenkönig
Re: Wasser Shader ? [Re: Captain_Kiyaku] #81648
07/18/06 17:34
07/18/06 17:34
Joined: Mar 2006
Posts: 2,252
Hummel Offline
Expert
Hummel  Offline
Expert

Joined: Mar 2006
Posts: 2,252
Cool - Danke!
-> habs mir gleich gezogen!

Re: Wasser Shader ? [Re: Hummel] #81649
07/18/06 20:12
07/18/06 20:12
Joined: Apr 2005
Posts: 1,058
Luzern
Nicolas_B Offline
Serious User
Nicolas_B  Offline
Serious User

Joined: Apr 2005
Posts: 1,058
Luzern
ICH HABS GESCHAFFT!!! *ganzruigsei
Ich hab den Wasser Shader von Sylex 3 zum Laufen gekriegt. Grosses Lob an Xexes, sieht super aus. Aber beim manual von Sylex 4 erwarte ich eine Fehlerfreie (auf die Scripts bezogen) Dokumentation. aber sicher 4 Fehler im Script gefunden. Ok hier nun meine erneuerung:


Code:
 
// Aktion für Wasser mit Sylex 3.0

// Skilldefinitionen
define _PLANE_SIZE,skill1;
define _WAVE_SIZE,skill2;
define _WAVE_MAP_SIZE,skill3;
define _WAVE_SPEED,skill4;
define _COLOR_RED,skill5;
define _COLOR_GREEN,skill6;
define _COLOR_BLUE,skill7;
define _REFLECTMAP_SIZE,skill8;
define _REFRACTMAP_SIZE,skill9;
define _REFRACTION,skill10;
define _REFLECTION,skill11;
define _REFRACTION_ALPHA,skill12;
define _REFLECTION_ALPHA,skill13;
define ID_WATER,15;

// WED - Eibinden
// uses: _PLANE_SIZE, _WAVE_SIZE, _WAVE_MAP_SIZE, _COLOR_RED, _COLOR_GREEN, _COLOR_BLUE, _REFLECTMAP_SIZE, _REFRACTMAP_SIZE, _REFRACTION, _REFLECTION, _REFRACTION_ALPHA, _REFLECTION_ALPHA
// title: Ozeanwasserfläche
// desc: Aktion für Wasserfläche mit Sylex 3.0
// section: Einstellungen [ Skills / Flags ]

// Material für Ocean Water
material mat_oceanWater
{
// Eventfunktion festlegen
event = event_matOceanWater;

// Dummyeffekt
effect = "
// Erste Technik
technique tech_01
{
pass pass_01
{
}
}
";
}

function event_matOceanWater()
{
mat_oceanWater.enable_render = on;
// Objekt mit Wasser ID zeichnen
SLX3RenderDrawE(ID_WATER);

return(1);
}


action SLX_Water
{
// Wassereffekt erstellen
SLX3EffectCreate(5);
SLX3EffectSetPath(5,"slx3_water.fx");
SLX3EffectInitialize(5);

// Refraktions und Reflektionsviews anmelden
SLX3ViewRegister(15,"view_waterRefraction");
SLX3ViewRegister(16,"view_waterReflection");

// Erstellen und Zuweißen der ClipPlanes
temp.x = 0.0; temp.y = 0.0; temp.z = -10.0;
normal.x = 0.0; normal.y = 0.0; normal.z = 1.0;
SLX3ViewSetClipPlane(16,"temp","normal",1);
SLX3ViewSetRTT(16,1);

temp.x = 0.0; temp.y = 0.0; temp.z = 10.0;
normal.x = 0.0; normal.y = 0.0; normal.z = -1.0;
SLX3ViewSetClipPlane(15,"temp","normal",1);
SLX3ViewSetRTT(15,1);

// Größe der Views den der RenderTargets anpassen
view_waterReflection.size_x = my._REFLECTMAP_SIZE;
view_waterReflection.size_y = my._REFLECTMAP_SIZE;
view_waterRefraction.size_x = my._REFRACTMAP_SIZE;
view_waterRefraction.size_y = my._REFRACTMAP_SIZE;

// Erstellen der RenderTarget-Texturen und Zuweisen der Views
SLX3TexCreate(15,SLX3TT_NORMAL);
SLX3TexSetFormat(15,SLX3FMT_X8R8G8B8);
SLX3TexSetSize(15,my._REFLECTMAP_SIZE,my._REFLECTMAP_SIZE);
SLX3TexSetUsage(15,SLX3USAGE_RENDERTARGET);
SLX3TexSetViewID(15,SLX3TS_FRONT,15);
SLX3TexInitialize(15);

SLX3TexCreate(16,SLX3TT_NORMAL);
SLX3TexSetFormat(16,SLX3FMT_X8R8G8B8);
SLX3TexSetSize(16,my._REFRACTMAP_SIZE,my._REFRACTMAP_SIZE);
SLX3TexSetUsage(16,SLX3USAGE_RENDERTARGET);
SLX3TexSetViewID(16,SLX3TS_FRONT,16);
SLX3TexInitialize(16);

// Erstellen des Wasserobjekts
SLX3ObjectCreate(ID_WATER,SLX3OT_WATER);
SLX3ObjectSetSkill(ID_WATER,0,my._PLANE_SIZE);
SLX3ObjectSetSkill(ID_WATER,1,my._WAVE_SIZE);
SLX3ObjectSetSkill(ID_WATER,2,my._WAVE_MAP_SIZE);
SLX3ObjectInitialize(ID_WATER);

SLX3ObjectSetTexture(ID_WATER,0,16); // Refraktionstextur zuweißen
SLX3ObjectSetTexture(ID_WATER,1,15); // Reflektionstextur zuweißen
SLX3ObjectSetEffect(ID_WATER,5); // Wassereffekt zuweißen

// Material zuweißen
my.material = mat_oceanWater;

// Schleife übernimmt Parameter aktualsierungen und aktualisiert die Viewdaten
while(1)
{
proc_late();
vec_set(view_waterRefraction.x,camera.x);
vec_set(view_waterRefraction.pan,camera.x);
vec_set(view_waterReflection.x,camera.x);
vec_set(view_waterReflection.pan,camera.pan);
view_waterReflection.z = -camera.z;
view_waterReflection.tilt = -camera.tilt;
view_waterReflection.roll = -camera.roll;
view_waterReflection.arc = camera.arc;

SLX3ObjectSetSkill(ID_WATER,4,my._COLOR_RED);
SLX3ObjectSetSkill(ID_WATER,5,my._COLOR_GREEN);
SLX3ObjectSetSkill(ID_WATER,6,my._COLOR_BLUE);
SLX3ObjectSetSkill(ID_WATER,7,1.0);
SLX3ObjectSetSkill(ID_WATER,8,my._REFRACTION);
SLX3ObjectSetSkill(ID_WATER,9,my._REFLECTION);
SLX3ObjectSetSkill(ID_WATER,10,my._REFLECTION_ALPHA);
SLX3ObjectSetSkill(ID_WATER,11,my._REFRACTION_ALPHA);
SLX3ObjectSetSkill(ID_WATER,12,my.z);
wait (1);
}
}



macht einfach einen Functionsprototypen von der Function:*event_matOceanWater" und fügt diese zeilen in eure Main:
Code:

function main
{
// Bla bla bla
SLX3Initialize(SLX3_RUNMODE_DEBUG,"Game");
event_matOceanWater()
// Bla Bla Bla...
}



Ich hoffe bei euch gehts oder ich hab nix mer vergessen. ach ja. Im WED einfach die Oben definierte Action einem Terrain oder was auch immer Flachem Entity geben und volgende Propertions eingeben:

plane_size = 20000.0
wave_size = 10.0
wave_map_size = 256.0
wave_speed = 1.0
color_red = 1.0
color_green = 1.0
color_blue = 1.0
reflectmap_size = 512.0
refractmap_size = 512.0
refraction = 1.0
reflection = 1.5
refraction_alpha = 0.7
reflection_alpha = 0.3

Ich hoffe ich kan damit die Mystische welt von Sylex 3 ein bisschen weiter öffnen

GG Nicolas

Re: Wasser Shader ? [Re: Nicolas_B] #81650
07/19/06 05:56
07/19/06 05:56
Joined: Mar 2006
Posts: 2,252
Hummel Offline
Expert
Hummel  Offline
Expert

Joined: Mar 2006
Posts: 2,252
Year!!!! Kanns kaum erwarten den Effekt in Action zu sehen!!!
Muss das unbedingt auspropen!!!
User wie dich braucht das Forum!!!

Re: Wasser Shader ? [Re: Hummel] #81651
07/19/06 08:12
07/19/06 08:12
Joined: Jun 2003
Posts: 152
germany
innovater Offline
Member
innovater  Offline
Member

Joined: Jun 2003
Posts: 152
germany
Hm Funktioniert bei mir nicht, diese Zeile erzeugt ein feller

<event = ^event_matOceanWater;>
TEST.WDL 50.2 Error(0): Parameter unknown event_matOceanWater
usw...

dabei habe ich "sylex3_csr.wdl" eingebunden, sowie "Sylex3.dll" an die richtige adresse kopiert. (

Re: Wasser Shader ? [Re: innovater] #81652
07/19/06 10:38
07/19/06 10:38
Joined: Apr 2005
Posts: 1,058
Luzern
Nicolas_B Offline
Serious User
Nicolas_B  Offline
Serious User

Joined: Apr 2005
Posts: 1,058
Luzern
hmm... Der Fehler is in der Main oder? Hast du einen FunctionsPrototypen Gemacht? Alle Functionen die in der Main eigbunden sind müssen entweder vor der main sein oder ein Prototyp muss erstellt werden.
Schreib einfach diese zeile vor der Main

Code:
 
// Funktionsprototypen
function event_matOceanWater();



EDIT:
Quote:


< event = ^event_matOceanWater;>
TEST.WDL 50.2 Error(0): Parameter unknown event_matOceanWater





Hmmm... Hast du das genau so geschrieben also mit Event = blablabla?

Last edited by Nicolas_B; 07/19/06 10:41.
Re: Wasser Shader ? [Re: Nicolas_B] #81653
07/19/06 11:28
07/19/06 11:28
Joined: Mar 2006
Posts: 237
Deutschland, NRW, Recklinghaus...
TSG_Christof Offline
Member
TSG_Christof  Offline
Member

Joined: Mar 2006
Posts: 237
Deutschland, NRW, Recklinghaus...
Also bei mir spuckt er lauter fehler raus.



path "Images";

string level1_wmb = <test.wmb>;

include <c_vars.wdl>;
include <c_defines.wdl>;
include <c_camera.wdl>;
include <c_move.wdl>;
include <c_animate.wdl>;
include <c_actions.wdl>;
//include <c_shader.wdl>;
//include <c_compass.wdl>;
//include <c_specular.wdl>;
include <sylex3_csr.wdl>;

function main()
{
SLX3Initialize(SLX3_RUNMODE_DEBUG,"Testanwendung mit Sylex 3.02");
event_matOceanWater();
level_load(level1_wmb);
sleep(3);
}

// Benutzerdefinierte Exitfunktion mit Beendung von Sylex 3.0
function userdef_exit()
{
// Sylex 3.0 Deinitialisieren
SLX3DeInitialize();;

// Funktionspointer freigeben
on_d3d_lost = NULL;
on_d3d_reset = NULL;

// Acknex 6 Engine beenden
exit;
}

//Testendefinitionen:
ON_ESC = userdef_exit; // Behandlung der ESC Taste
ON_CLOSE = userdef_exit; // Behandlung des X im Systemmenü
ON_F10 = userdef_exit; // Behandlung der F10 Taste



// Aktion für Wasser mit Sylex 3.0

// Skilldefinitionen
define _PLANE_SIZE,skill1;
define _WAVE_SIZE,skill2;
define _WAVE_MAP_SIZE,skill3;
define _WAVE_SPEED,skill4;
define _COLOR_RED,skill5;
define _COLOR_GREEN,skill6;
define _COLOR_BLUE,skill7;
define _REFLECTMAP_SIZE,skill8;
define _REFRACTMAP_SIZE,skill9;
define _REFRACTION,skill10;
define _REFLECTION,skill11;
define _REFRACTION_ALPHA,skill12;
define _REFLECTION_ALPHA,skill13;
define ID_WATER,15;

// WED - Eibinden
// uses: _PLANE_SIZE, _WAVE_SIZE, _WAVE_MAP_SIZE, _COLOR_RED, _COLOR_GREEN, _COLOR_BLUE, _REFLECTMAP_SIZE, _REFRACTMAP_SIZE, _REFRACTION, _REFLECTION, _REFRACTION_ALPHA, _REFLECTION_ALPHA
// title: Ozeanwasserfläche
// desc: Aktion für Wasserfläche mit Sylex 3.0
// section: Einstellungen [ Skills / Flags ]

// Material für Ocean Water
material mat_oceanWater
{
// Eventfunktion festlegen
event = event_matOceanWater;

// Dummyeffekt
effect = "
// Erste Technik
technique tech_01
{
pass pass_01
{
}
}
";
}

function event_matOceanWater()
{
mat_oceanWater.enable_render = on;
// Objekt mit Wasser ID zeichnen
SLX3RenderDrawE(ID_WATER);

return(1);
}


action SLX_Water
{
// Wassereffekt erstellen
SLX3EffectCreate(5);
SLX3EffectSetPath(5,"slx3_water.fx");
SLX3EffectInitialize(5);

// Refraktions und Reflektionsviews anmelden
SLX3ViewRegister(15,"view_waterRefraction");
SLX3ViewRegister(16,"view_waterReflection");

// Erstellen und Zuweißen der ClipPlanes
temp.x = 0.0; temp.y = 0.0; temp.z = -10.0;
normal.x = 0.0; normal.y = 0.0; normal.z = 1.0;
SLX3ViewSetClipPlane(16,"temp","normal",1);
SLX3ViewSetRTT(16,1);

temp.x = 0.0; temp.y = 0.0; temp.z = 10.0;
normal.x = 0.0; normal.y = 0.0; normal.z = -1.0;
SLX3ViewSetClipPlane(15,"temp","normal",1);
SLX3ViewSetRTT(15,1);

// Größe der Views den der RenderTargets anpassen
view_waterReflection.size_x = my._REFLECTMAP_SIZE;
view_waterReflection.size_y = my._REFLECTMAP_SIZE;
view_waterRefraction.size_x = my._REFRACTMAP_SIZE;
view_waterRefraction.size_y = my._REFRACTMAP_SIZE;

// Erstellen der RenderTarget-Texturen und Zuweisen der Views
SLX3TexCreate(15,SLX3TT_NORMAL);
SLX3TexSetFormat(15,SLX3FMT_X8R8G8B8);
SLX3TexSetSize(15,my._REFLECTMAP_SIZE,my._REFLECTMAP_SIZE);
SLX3TexSetUsage(15,SLX3USAGE_RENDERTARGET);
SLX3TexSetViewID(15,SLX3TS_FRONT,15);
SLX3TexInitialize(15);

SLX3TexCreate(16,SLX3TT_NORMAL);
SLX3TexSetFormat(16,SLX3FMT_X8R8G8B8);
SLX3TexSetSize(16,my._REFRACTMAP_SIZE,my._REFRACTMAP_SIZE);
SLX3TexSetUsage(16,SLX3USAGE_RENDERTARGET);
SLX3TexSetViewID(16,SLX3TS_FRONT,16);
SLX3TexInitialize(16);

// Erstellen des Wasserobjekts
SLX3ObjectCreate(ID_WATER,SLX3OT_WATER);
SLX3ObjectSetSkill(ID_WATER,0,my._PLANE_SIZE);
SLX3ObjectSetSkill(ID_WATER,1,my._WAVE_SIZE);
SLX3ObjectSetSkill(ID_WATER,2,my._WAVE_MAP_SIZE);
SLX3ObjectInitialize(ID_WATER);

SLX3ObjectSetTexture(ID_WATER,0,16); // Refraktionstextur zuweißen
SLX3ObjectSetTexture(ID_WATER,1,15); // Reflektionstextur zuweißen
SLX3ObjectSetEffect(ID_WATER,5); // Wassereffekt zuweißen

// Material zuweißen
my.material = mat_oceanWater;

// Schleife übernimmt Parameter aktualsierungen und aktualisiert die Viewdaten
while(1)
{
proc_late();
vec_set(view_waterRefraction.x,camera.x);
vec_set(view_waterRefraction.pan,camera.x);
vec_set(view_waterReflection.x,camera.x);
vec_set(view_waterReflection.pan,camera.pan);
view_waterReflection.z = -camera.z;
view_waterReflection.tilt = -camera.tilt;
view_waterReflection.roll = -camera.roll;
view_waterReflection.arc = camera.arc;

SLX3ObjectSetSkill(ID_WATER,4,my._COLOR_RED);
SLX3ObjectSetSkill(ID_WATER,5,my._COLOR_GREEN);
SLX3ObjectSetSkill(ID_WATER,6,my._COLOR_BLUE);
SLX3ObjectSetSkill(ID_WATER,7,1.0);
SLX3ObjectSetSkill(ID_WATER,8,my._REFRACTION);
SLX3ObjectSetSkill(ID_WATER,9,my._REFLECTION);
SLX3ObjectSetSkill(ID_WATER,10,my._REFLECTION_ALPHA);
SLX3ObjectSetSkill(ID_WATER,11,my._REFRACTION_ALPHA);
SLX3ObjectSetSkill(ID_WATER,12,my.z);
wait (1);
}
}


Kann mir einer weiter helfen???
Alle dateien sind in richtigen ordnern.

Re: Wasser Shader ? [Re: Nicolas_B] #81654
07/19/06 11:35
07/19/06 11:35
Joined: Jun 2003
Posts: 152
germany
innovater Offline
Member
innovater  Offline
Member

Joined: Jun 2003
Posts: 152
germany
Feller kommt vor der Main.

// Eventfunktion festlegen
event = event_matOceanWater; (wird aufgerufen bevor die funktion erstellt wurde)

// Dummyeffekt
effect = "
// Erste Technik
technique tech_01
{
pass pass_01
{
}
}
";
}

function event_matOceanWater() <==
{
mat_oceanWater.enable_render = on;
// Objekt mit Wasser ID zeichnen
SLX3RenderDrawE(ID_WATER);

return(1);
}

>> wobei ich erlich sagen muss, dass ich nicht viel vond er scriptsprache verstehe, habs aber genau so gemacht wie oben bescrieben

Re: Wasser Shader ? [Re: Nicolas_B] #81655
07/19/06 11:54
07/19/06 11:54
Joined: Mar 2006
Posts: 2,252
Hummel Offline
Expert
Hummel  Offline
Expert

Joined: Mar 2006
Posts: 2,252
Ich habs - du must den Funktionsprototypen vor das
Dummymaterial schreiben:

// Funktionsprototypenfunction
event_matOceanWater();

material mat_oceanWater{
// Eventfunktion festlegen
event = event_matOceanWater;
// Dummyeffekt
effect = "
// Erste Technik
technique tech_01
{
pass pass_01
{
}
}
";
}
function event_matOceanWater()
{
mat_oceanWater.enable_render = on;
// Objekt mit Wasser ID zeichnen
SLX3RenderDrawE(ID_WATER);
return(1);
}

So! nun brauch ich aber auch en bissel Hilfe^^"
bei mir kommt die bösartige Meldung D3Derror:D3DERR_INVALIDCALL
mit nem fetten roten X an der seite...danach stürtzt die Engine ab!
EDIT:So und wenn ich statt dem Fullscreenmodus den Fenstermodus
verwende kommt ne andere Fehlermeldung( wieder bösartig und mit
nem fetten rotem X an der Seite ( diesmal stürtzt die Engine aber nich
ab...aber wenn ich dann manuel in den Fullsreen gehe gibt wieder
ne fehlermeldung und die Engine vertauscht bei meiner move_action
die Winkel...ach und eh ichs vergesse - das Wasser is nicht zu sehn
und meine Frames sind auf 50 abgesackt und es ruckelt irgendwie,
so nuin erstmal die kalmmern zu und meine neue Fehlermeldung)):
Crash in SLX3EffectInitialize -> nett was???^^"
Wenn mir jemand helfen könnte wäre das goool!

danke schon ma!

Last edited by Hummel; 07/19/06 13:11.
Re: Wasser Shader ? [Re: Hummel] #81656
07/19/06 13:07
07/19/06 13:07
Joined: Sep 2002
Posts: 8,177
Netherlands
PHeMoX Offline
Senior Expert
PHeMoX  Offline
Senior Expert

Joined: Sep 2002
Posts: 8,177
Netherlands
Überprüft mal ob der dll auch geladen wird ... wenn nicht, dann bekommst du den d3derr_invalidcall unsw. ... auch kann es sein das dann dem view_waterrefraction und der view_waterrefraction nicht erkannt wird ...

edit: bei mir ist im moment der dll das problem, dem wird gar nicht gestartet durch 3dgs ...

Mfg,

Last edited by PHeMoX; 07/19/06 13:13.

PHeMoX, Innervision Software (c) 1995-2008

For more info visit: Innervision Software
Page 2 of 16 1 2 3 4 15 16

Moderated by  Blink, Hummel, Superku 

Gamestudio download | chip programmers | Zorro platform | shop | Data Protection Policy

oP group Germany GmbH | Birkenstr. 25-27 | 63549 Ronneburg / Germany | info (at) opgroup.de

Powered by UBB.threads™ PHP Forum Software 7.7.1