diff --git a/armorpaint/sources/make_mesh.ts b/armorpaint/sources/make_mesh.ts index dbd2b6ef..0e2c7ce9 100644 --- a/armorpaint/sources/make_mesh.ts +++ b/armorpaint/sources/make_mesh.ts @@ -352,7 +352,7 @@ function make_mesh_run(data: material_t, layer_pass: i32 = 0): node_shader_conte kong.frag_vvec = true; node_shader_write_frag(kong, "var TBN: float3x3 = cotangent_frame(n, vvec, input.tex_coord);"); - node_shader_write_frag(kong, "n = ntex * 2.0 - 1.0;"); + node_shader_write_frag(kong, "n = ntex * float3(2.0, 2.0, 2.0) - float3(1.0, 1.0, 1.0);"); node_shader_write_frag(kong, "n.y = -n.y;"); node_shader_write_frag(kong, "n = normalize(TBN * n);"); @@ -490,13 +490,9 @@ function make_mesh_run(data: material_t, layer_pass: i32 = 0): node_shader_conte node_shader_write_frag(kong, "output[2] = float4(0.0, 0.0, input.tex_coord.xy);"); parser_material_finalize(con_mesh); + con_mesh.data.shader_from_source = true; - - let test: string = node_shader_get(kong); - - // iron_file_save_bytes("c:/users/lubos/desktop/test.kong", sys_string_to_buffer(test), 0); - - gpu_create_shaders_from_kong(test, ADDRESS(con_mesh.data.vertex_shader), ADDRESS(con_mesh.data.fragment_shader)); + gpu_create_shaders_from_kong(node_shader_get(kong), ADDRESS(con_mesh.data.vertex_shader), ADDRESS(con_mesh.data.fragment_shader)); return con_mesh; } diff --git a/armorpaint/sources/make_mesh_preview.ts b/armorpaint/sources/make_mesh_preview.ts index 246a8aba..4940d0f7 100644 --- a/armorpaint/sources/make_mesh_preview.ts +++ b/armorpaint/sources/make_mesh_preview.ts @@ -147,12 +147,8 @@ function make_mesh_preview_run(data: material_t, matcon: material_context_t): no } ///end - let test: string = node_shader_get(kong); - - // iron_file_save_bytes("c:/users/lubos/desktop/test.kong", sys_string_to_buffer(test), 0); - con_mesh.data.shader_from_source = true; - gpu_create_shaders_from_kong(test, ADDRESS(con_mesh.data.vertex_shader), ADDRESS(con_mesh.data.fragment_shader)); + gpu_create_shaders_from_kong(node_shader_get(kong), ADDRESS(con_mesh.data.vertex_shader), ADDRESS(con_mesh.data.fragment_shader)); return con_mesh; } diff --git a/armorpaint/sources/make_node_preview.ts b/armorpaint/sources/make_node_preview.ts index 8ef7a835..38da980f 100644 --- a/armorpaint/sources/make_node_preview.ts +++ b/armorpaint/sources/make_node_preview.ts @@ -76,12 +76,7 @@ function make_node_preview_run(data: material_t, matcon: material_context_t, nod parser_material_finalize(con_mesh); con_mesh.data.shader_from_source = true; - - let test: string = node_shader_get(kong); - - // iron_file_save_bytes("c:/users/lubos/desktop/test.kong", sys_string_to_buffer(test), 0); - - gpu_create_shaders_from_kong(test, ADDRESS(con_mesh.data.vertex_shader), ADDRESS(con_mesh.data.fragment_shader)); + gpu_create_shaders_from_kong(node_shader_get(kong), ADDRESS(con_mesh.data.vertex_shader), ADDRESS(con_mesh.data.fragment_shader)); return con_mesh; } diff --git a/armorpaint/sources/make_paint.ts b/armorpaint/sources/make_paint.ts index 35c8a6d0..abdc696e 100644 --- a/armorpaint/sources/make_paint.ts +++ b/armorpaint/sources/make_paint.ts @@ -493,12 +493,7 @@ function make_paint_run(data: material_t, matcon: material_context_t): node_shad parser_material_triplanar = false; parser_material_sample_keep_aspect = false; con_paint.data.shader_from_source = true; - - let test: string = node_shader_get(kong); - - // iron_file_save_bytes("c:/users/lubos/desktop/test.kong", sys_string_to_buffer(test), 0); - - gpu_create_shaders_from_kong(test, ADDRESS(con_paint.data.vertex_shader), ADDRESS(con_paint.data.fragment_shader)); + gpu_create_shaders_from_kong(node_shader_get(kong), ADDRESS(con_paint.data.vertex_shader), ADDRESS(con_paint.data.fragment_shader)); return con_paint; } diff --git a/base/shaders/world_pass.kong b/base/shaders/world_pass.kong index 60c812f4..f1859774 100644 --- a/base/shaders/world_pass.kong +++ b/base/shaders/world_pass.kong @@ -2,7 +2,7 @@ #[set(everything)] const constants: { SMVP: float4x4; - envmap_data_world: float4; // angle, sin(angle), cos(angle), strength + envmap_data_world: float4; // angle, empty, empty, strength }; #[set(everything)] diff --git a/base/sources/ts/uniforms_ext.ts b/base/sources/ts/uniforms_ext.ts index dc860c6b..5336ce81 100644 --- a/base/sources/ts/uniforms_ext.ts +++ b/base/sources/ts/uniforms_ext.ts @@ -278,7 +278,7 @@ function uniforms_ext_vec4_link(object: object_t, mat: material_data_t, link: st return vec4_create(context_raw.envmap_angle, math_sin(-context_raw.envmap_angle), math_cos(-context_raw.envmap_angle), scene_world.strength * 1.5); } else if (link == "_envmap_data_world") { - return vec4_create(context_raw.envmap_angle, math_sin(-context_raw.envmap_angle), math_cos(-context_raw.envmap_angle), context_raw.show_envmap ? scene_world.strength : 1.0); + return vec4_create(context_raw.envmap_angle, 0.0, 0.0, context_raw.show_envmap ? scene_world.strength : 1.0); } else if (link == "_stencil_transform") { let v: vec4_t = vec4_create(context_raw.brush_stencil_x, context_raw.brush_stencil_y, context_raw.brush_stencil_scale, context_raw.brush_stencil_angle);