Okay, thank you very much, SimonS! In that Case, I should indeed just switch over to Visionaire 5 (as that transparent Line at the Bottom and the Right you mentioned is most probably exactly what leads to my Problem), but I have a hard Time understanding how to implement Shaders there, i.e. utilizing the new "Shader"-Tab at the Top. The Problem is not writing the Shaders, I guess, but knowing how to activate them ingame, or how to apply them to just a specific Object. I have implemented the updated Shadertoolkit (i.e. shadertoolkit10.lua) into my Project to try in Visionaire 5, but alas to no Avail. Is there any Tutorial, Wiki-Page or Example-File that would help me getting re-started with that new Shader-Tab (in German or English)?None the less, since you have implicitly asked for it, here is my Script (the Object "TestClouds" being a 2048*512 px tilable Cloud-Texture):shader_effects["Wolkenmaske"] = {shader=basic_fsh..[[
uniform float daytime;
const vec2 ar = vec2(1.6, 0.9); //ASPECT RATIO
float cloudspeed = 0.0075;
vec2 cloudsize = vec2(0.33);
float cloudsoftness = 2.3-texcoord.x*2;
vec2 cloudmoveA = vec2(0.5, 0.0) * time * cloudspeed;
vec2 cloudmoveB = vec2(-0.2, 0.0) * time * cloudspeed;
vec2 Versatz = vec2(0.75,0.75);
void main()
{
vec2 uv = cloudsize * texcoord.xy;
vec4 colA = texture2D(iChannel0, fract(vec2(1.00) * uv.xy +cloudmoveA ) );
vec4 colB = texture2D(iChannel0, fract(vec2(1.11) * uv.xy +cloudmoveB +Versatz ) );
//ALTERNATIVELY CLAMP TEXTURE-COORDINATES -- very imperfect workaround...
// vec4 colA = texture2D(iChannel0, clamp( fract( vec2(1.00) * uv.xy +cloudmoveA ) ,0.0,0.99928) );
// vec4 colB = texture2D(iChannel0, clamp( fract( vec2(1.11) * uv.xy +cloudmoveB +Versatz ) ,0.0,0.99928) );
float wolkentransparenz = ((1.0+cos(daytime*0.5*3.142)) );
float subtraction = clamp(colA.r-colB.r, 0.0, 1.0) * wolkentransparenz;
vec4 finalColor = vec4( vec3(1.0) , pow( subtraction , cloudsoftness) );
float w = (0.75 - texcoord.x) *4;
float h = ( (daytime-0.21) - texcoord.y) *1;
float Sun = 2* pow( 1.0 - clamp( (sqrt(pow(w,2)+pow(h,2))/(0.5)), 0.0,1.0) , 10);
finalColor.a = abs(finalColor.a - Sun);
gl_FragColor = finalColor;
}
]]}
-----------------------------
local eff="Wolkenmaske"
local obj = "TestClouds"
local id = 2
-----------------------------
shaderAddEffect(eff)
shaderRemoveEffect(eff)
shader_effects[eff].num.strength=1
bind(eff, "time", field("shader_iTime"))
bind(eff, "daytime", field("Values.Daytime.Int"));
function updateWeltbildsonne()
shader_effects[eff].num.daytime = Values.Daytime.Int * 0.0125;
end
shaderSetOptions({{shader = shader_effects[eff].num(), comp_dst=5, comp_src=4 }}, id)
Objects[obj].ShaderSet = id
registerEventHandler("mainLoop", "updateWeltbildsonne") Thanks for the Help.