|
|
@@ -27,8 +27,8 @@ render_states = {
|
|
|
rgb_write_enable = true
|
|
|
alpha_write_enable = true
|
|
|
depth_func = "lequal"
|
|
|
- depth_enable = true
|
|
|
- depth_write_enable = true
|
|
|
+ depth_enable = false
|
|
|
+ depth_write_enable = false
|
|
|
blend_enable = true
|
|
|
blend_src = "src_alpha"
|
|
|
blend_dst = "inv_src_alpha"
|
|
|
@@ -219,7 +219,9 @@ bgfx_shaders = {
|
|
|
|
|
|
fs_code =
|
|
|
"
|
|
|
+ #ifdef DIFFUSE_MAP
|
|
|
SAMPLER2D(u_albedo, 0);
|
|
|
+ #endif // DIFFUSE_MAP
|
|
|
|
|
|
uniform vec4 u_light_pos; // In world-space
|
|
|
uniform vec4 u_light_dir; // In view-space
|
|
|
@@ -238,70 +240,11 @@ bgfx_shaders = {
|
|
|
float intensity = max(0.0f, dot(n, u_light_dir.xyz));
|
|
|
|
|
|
vec4 colorOut = max(intensity * (u_diffuse * u_light_col), u_ambient);
|
|
|
+ #ifdef DIFFUSE_MAP
|
|
|
gl_FragColor = colorOut * texture2D(u_albedo, v_uv0);
|
|
|
- }
|
|
|
- "
|
|
|
- }
|
|
|
-
|
|
|
- mesh_unlit = {
|
|
|
- includes = "common"
|
|
|
-
|
|
|
- varying =
|
|
|
- "
|
|
|
- vec3 v_normal : NORMAL = vec3(0.0, 0.0, 0.0);
|
|
|
- vec4 v_view : TEXCOORD0 = vec4(0.0, 0.0, 0.0, 0.0);
|
|
|
- vec2 v_uv0 : TEXCOORD1 = vec2(0.0, 0.0);
|
|
|
-
|
|
|
- vec3 a_position : POSITION;
|
|
|
- vec3 a_normal : NORMAL;
|
|
|
- vec2 a_texcoord0 : TEXCOORD0;
|
|
|
- "
|
|
|
-
|
|
|
- vs_input_output =
|
|
|
- "
|
|
|
- $input a_position, a_normal, a_texcoord0
|
|
|
- $output v_normal, v_view, v_uv0
|
|
|
- "
|
|
|
-
|
|
|
- vs_code =
|
|
|
- "
|
|
|
- void main()
|
|
|
- {
|
|
|
- gl_Position = mul(u_modelViewProj, vec4(a_position, 1.0));
|
|
|
- v_view = mul(u_modelView, vec4(a_position, 1.0));
|
|
|
- v_normal = normalize(mul(u_modelView, vec4(a_normal, 0.0)).xyz);
|
|
|
-
|
|
|
- v_uv0 = a_texcoord0;
|
|
|
- }
|
|
|
- "
|
|
|
-
|
|
|
- fs_input_output =
|
|
|
- "
|
|
|
- $input v_normal, v_view, v_uv0
|
|
|
- "
|
|
|
-
|
|
|
- fs_code =
|
|
|
- "
|
|
|
- SAMPLER2D(u_albedo, 0);
|
|
|
-
|
|
|
- uniform vec4 u_light_pos; // In world-space
|
|
|
- uniform vec4 u_light_dir; // In view-space
|
|
|
- uniform vec4 u_light_col;
|
|
|
-
|
|
|
- uniform vec4 u_ambient = vec4(0.5f, 0.5f, 0.5f, 0.0f);
|
|
|
- uniform vec4 u_diffuse = vec4(1.0f, 1.0f, 1.0f, 0.0f);
|
|
|
- uniform vec4 u_specular = vec4(0.0f, 0.0f, 0.0f, 0.0f);
|
|
|
-
|
|
|
- void main()
|
|
|
- {
|
|
|
- // normalize both input vectors
|
|
|
- vec3 n = normalize(v_normal);
|
|
|
- vec3 e = normalize(v_view.xyz);
|
|
|
-
|
|
|
- float intensity = max(0.0f, dot(n, u_light_dir.xyz));
|
|
|
-
|
|
|
- vec4 colorOut = max(intensity * (u_diffuse * u_light_col), u_ambient);
|
|
|
- gl_FragColor = texture2D(u_albedo, v_uv0);
|
|
|
+ #else
|
|
|
+ gl_FragColor = colorOut;
|
|
|
+ #endif // DIFFUSE_MAP
|
|
|
}
|
|
|
"
|
|
|
}
|
|
|
@@ -332,14 +275,14 @@ shaders = {
|
|
|
bgfx_shader = "mesh"
|
|
|
render_state = "mesh"
|
|
|
}
|
|
|
-
|
|
|
- mesh_notexture = {
|
|
|
- bgfx_shader = "mesh"
|
|
|
- render_state = "mesh"
|
|
|
- }
|
|
|
-
|
|
|
- mesh_unlit = {
|
|
|
- bgfx_shader = "mesh_unlit"
|
|
|
- render_state = "mesh"
|
|
|
- }
|
|
|
}
|
|
|
+
|
|
|
+static_compile = [
|
|
|
+ { shader = "debug_line" defines = [] }
|
|
|
+ { shader = "debug_line_noz" defines = [] }
|
|
|
+ { shader = "gui" defines = [] }
|
|
|
+ { shader = "gui" defines = ["DIFFUSE_MAP"]}
|
|
|
+ { shader = "sprite" defines = [] }
|
|
|
+ { shader = "mesh" defines = [] }
|
|
|
+ { shader = "mesh" defines = ["DIFFUSE_MAP"] }
|
|
|
+]
|