Skip to content

Commit

Permalink
water effect : water normale vector value plugged on environnment ref…
Browse files Browse the repository at this point in the history
…lector_normale : closing issue #42
  • Loading branch information
NevilClavain committed Mar 1, 2021
1 parent 94bdab9 commit 5dcc235
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 24 deletions.
25 changes: 3 additions & 22 deletions hlsl_4_0_project/src/water_normales_vs.hlsl
Original file line number Diff line number Diff line change
Expand Up @@ -42,27 +42,10 @@ struct VS_OUTPUT
};

VS_OUTPUT vs_main( VS_INPUT Input )
{

{
VS_OUTPUT Output;
float4 pos;
float4 pos2;

/*
float4x4 mat_WorldView_notransl = mat[matWorldView];
mat_WorldView_notransl[3][0] = 0.0;
mat_WorldView_notransl[3][1] = 0.0;
mat_WorldView_notransl[3][2] = 0.0;
float4 initial_n;
initial_n.xyz = Input.Normal;
initial_n.w = 1.0;
float3 oNormale = mul(initial_n, mat_WorldView_notransl);
Output.Normale.xyz = normalize(oNormale);
Output.Normale.w = 1.0;
*/

pos.xyz = Input.Position;
pos.w = 1.0;
Expand All @@ -84,13 +67,11 @@ VS_OUTPUT vs_main( VS_INPUT Input )
float3 delta_cam;
delta_cam.xyz = pos2.xyz - viewer_pos.xyz;

//Output.delta_cam.xyz = normalize(delta_cam);

float3 surface_normale = { 0.0, 1.0, 0.0 };
float4 surface_normale = vec[10];

Output.delta_cam.x = 0;
Output.delta_cam.y = 0;
Output.delta_cam.z = dot(normalize(-delta_cam), surface_normale);
Output.delta_cam.z = dot(normalize(-delta_cam), surface_normale.xyz);

return( Output );
}
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ waterquad.rendering_config =
rendering_order = 10000,
shaders_params =
{
{ param_name = "color", shader_index = 1, register = 0 }
{ param_name = "water_normale", shader_index = 0, register = 10 }
}
},
bump_rendering =
Expand Down Expand Up @@ -113,6 +113,13 @@ waterquad.update_from_scene_env = function( p_pass_id, p_environment_table, p_en

end

waterquad.update_normales_from_scene_env = function( p_pass_id, p_environment_table, p_entity_id )

local renderer = waterquad.models[p_entity_id]['renderer']
renderer:set_shaderrealvector( p_pass_id, 'water_normale', p_environment_table.reflector_normale.x, p_environment_table.reflector_normale.y, p_environment_table.reflector_normale.z, 1.0 )

end

waterquad.update_from_scene_env_bump = function( p_pass_id, p_environment_table, p_entity_id )

local renderer = waterquad.models[p_entity_id]['renderer']
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -258,7 +258,7 @@ waterquad_passes_bindings =
{
target_pass_id = 'waternormales_pass',
rendering_id = 'normales_rendering',
lit_shader_update_func = waterquad.update_from_scene_env
lit_shader_update_func = waterquad.update_normales_from_scene_env
}
}
waterquad.view.load('water', waterquad_passes_bindings, 'root')
Expand Down

0 comments on commit 5dcc235

Please sign in to comment.