X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=shaderlib%2Fcommon.glsl;h=849d97c9cef6d418024aff4604708ba2aa3141c9;hb=594f5277e988a5a7b3b4ae381993da68ed733733;hp=4a81636037be1224d0d2856cdfd90b67d8eef3fc;hpb=47853d7a557bf81131512832a9e531cb04d273ca;p=libs%2Fgl.git diff --git a/shaderlib/common.glsl b/shaderlib/common.glsl index 4a816360..849d97c9 100644 --- a/shaderlib/common.glsl +++ b/shaderlib/common.glsl @@ -1,25 +1,33 @@ import msp_interface; import shadow; -const bool use_normal_map = false; +uniform EnvMap +{ + mat3 env_eye_matrix; +}; + +uniform sampler2D normal_map; +uniform samplerCube environment_map; + +layout(constant_id=auto) const bool use_normal_map = false; #pragma MSP stage(vertex) -vec4 get_vertex_position() +virtual vec4 get_vertex_position() { return vertex; } -vec3 get_vertex_normal() +virtual vec3 get_vertex_normal() { return normal; } -vec4 transform_position(vec4 pos) +virtual vec4 transform_position(vec4 pos) { return eye_obj_matrix*pos; } -vec3 transform_normal(vec3 nor) +virtual vec3 transform_normal(vec3 nor) { return eye_obj_normal_matrix*nor; } @@ -44,16 +52,18 @@ void standard_transform() out vec3 tbn_halfway_dir = eye_halfway_dir*eye_tbn_matrix; out vec3 tbn_zenith_dir = eye_zenith_dir*eye_tbn_matrix; - out vec3 shadow_coord = (shd_eye_matrix*eye_vertex).xyz; out float fog_coord = eye_vertex.z; - for(int i=0; i