From 9d91d3bbbcf47426ad420e92153a5a6d4aad760b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Branimir=20Karad=C5=BEi=C4=87?= Date: Wed, 15 Apr 2015 10:37:00 -0700 Subject: [PATCH] Reversed instance data bindings. Issue #309. --- examples/05-instancing/varying.def.sc | 8 ++++---- examples/06-bump/varying.def.sc | 8 ++++---- examples/14-shadowvolumes/varying.def.sc | 5 ----- examples/21-deferred/varying.def.sc | 4 ---- examples/24-nbody/varying.def.sc | 2 +- examples/24-nbody/vs_particle.sc | 6 +++--- .../shaders/dx11/vs_bump_instanced.bin | Bin 2170 -> 2170 bytes .../runtime/shaders/dx11/vs_instancing.bin | Bin 847 -> 847 bytes .../runtime/shaders/dx9/vs_bump_instanced.bin | Bin 1083 -> 1083 bytes .../runtime/shaders/dx9/vs_instancing.bin | Bin 474 -> 474 bytes examples/runtime/shaders/gles/vs_particle.bin | Bin 885 -> 885 bytes examples/runtime/shaders/glsl/vs_particle.bin | Bin 825 -> 825 bytes src/renderer_d3d11.cpp | 2 +- src/renderer_d3d9.cpp | 2 +- 14 files changed, 14 insertions(+), 23 deletions(-) diff --git a/examples/05-instancing/varying.def.sc b/examples/05-instancing/varying.def.sc index d8e2ca91..2ac2984d 100644 --- a/examples/05-instancing/varying.def.sc +++ b/examples/05-instancing/varying.def.sc @@ -2,8 +2,8 @@ vec4 v_color0 : COLOR0 = vec4(1.0, 0.0, 0.0, 1.0); vec3 a_position : POSITION; vec4 a_color0 : COLOR0; -vec4 i_data0 : TEXCOORD3; -vec4 i_data1 : TEXCOORD4; +vec4 i_data0 : TEXCOORD7; +vec4 i_data1 : TEXCOORD6; vec4 i_data2 : TEXCOORD5; -vec4 i_data3 : TEXCOORD6; -vec4 i_data4 : TEXCOORD7; +vec4 i_data3 : TEXCOORD4; +vec4 i_data4 : TEXCOORD3; diff --git a/examples/06-bump/varying.def.sc b/examples/06-bump/varying.def.sc index 716bbca5..34417e78 100644 --- a/examples/06-bump/varying.def.sc +++ b/examples/06-bump/varying.def.sc @@ -9,7 +9,7 @@ vec3 a_position : POSITION; vec4 a_normal : NORMAL; vec4 a_tangent : TANGENT; vec2 a_texcoord0 : TEXCOORD0; -vec4 i_data0 : TEXCOORD4; -vec4 i_data1 : TEXCOORD5; -vec4 i_data2 : TEXCOORD6; -vec4 i_data3 : TEXCOORD7; +vec4 i_data0 : TEXCOORD7; +vec4 i_data1 : TEXCOORD6; +vec4 i_data2 : TEXCOORD5; +vec4 i_data3 : TEXCOORD4; diff --git a/examples/14-shadowvolumes/varying.def.sc b/examples/14-shadowvolumes/varying.def.sc index 4adeb88b..f5bf981d 100644 --- a/examples/14-shadowvolumes/varying.def.sc +++ b/examples/14-shadowvolumes/varying.def.sc @@ -8,8 +8,3 @@ vec3 a_position : POSITION; vec4 a_normal : NORMAL; vec4 a_color0 : COLOR0; vec2 a_texcoord0 : TEXCOORD0; -vec4 i_data0 : TEXCOORD3; -vec4 i_data1 : TEXCOORD4; -vec4 i_data2 : TEXCOORD5; -vec4 i_data3 : TEXCOORD6; -vec4 i_data4 : TEXCOORD7; diff --git a/examples/21-deferred/varying.def.sc b/examples/21-deferred/varying.def.sc index 82e40e14..4fb6fcf9 100644 --- a/examples/21-deferred/varying.def.sc +++ b/examples/21-deferred/varying.def.sc @@ -11,7 +11,3 @@ vec4 a_normal : NORMAL; vec4 a_tangent : TANGENT; vec2 a_texcoord0 : TEXCOORD0; vec4 a_color0 : COLOR0; -vec4 i_data0 : TEXCOORD4; -vec4 i_data1 : TEXCOORD5; -vec4 i_data2 : TEXCOORD6; -vec4 i_data3 : TEXCOORD7; diff --git a/examples/24-nbody/varying.def.sc b/examples/24-nbody/varying.def.sc index c2bead99..16023cea 100644 --- a/examples/24-nbody/varying.def.sc +++ b/examples/24-nbody/varying.def.sc @@ -1,4 +1,4 @@ vec2 a_position : POSITION; -vec4 i_data3 : TEXCOORD7; +vec4 i_data0 : TEXCOORD7; vec3 v_texCoord : TEXCOORD0 = vec3(0.0, 0.0, 0.0); diff --git a/examples/24-nbody/vs_particle.sc b/examples/24-nbody/vs_particle.sc index 329bcc49..870c27ce 100644 --- a/examples/24-nbody/vs_particle.sc +++ b/examples/24-nbody/vs_particle.sc @@ -1,4 +1,4 @@ -$input a_position, i_data3 +$input a_position, i_data0 $output v_texCoord /* @@ -11,13 +11,13 @@ $output v_texCoord void main() { - vec3 eye = mul(u_view, vec4(i_data3.xyz, 1.0) ).xyz; + vec3 eye = mul(u_view, vec4(i_data0.xyz, 1.0) ).xyz; vec3 up = normalize(cross(eye, vec3(1.0, 0.0, 0.0) ) ); vec3 right = normalize(cross(up, eye)); float size = u_particleSize; vec3 position = eye + size * right * a_position.x + size * up * a_position.y; v_texCoord.xy = a_position; - v_texCoord.z = i_data3.w; + v_texCoord.z = i_data0.w; gl_Position = mul(u_proj, vec4(position, 1.0) ); } diff --git a/examples/runtime/shaders/dx11/vs_bump_instanced.bin b/examples/runtime/shaders/dx11/vs_bump_instanced.bin index 497c92e5cf0eecc96e0eaf8f756384e7b6d0a4a4..976e45ca04310b4fdd5d5203e34f3dfe7082a626 100644 GIT binary patch delta 97 zcmew*@JnEVp1_RsxV7)|x!(5~{ZTE9ta&ogu7{VM0RotT6wAc-;;O7b20u{r0gwi< dK>#Gl2E;INmd(P9vFu#p3}OtT3?d8-3;^u&5|01? delta 97 zcmew*@JnEVo`AporPO(RLN2~j6keBA_XbV0>)~Z#fB diff --git a/examples/runtime/shaders/dx11/vs_instancing.bin b/examples/runtime/shaders/dx11/vs_instancing.bin index 416166a7bbd067e525421e7768993b6a674ae7d2..242829adfeaf53e3c122d2b79b7b6d1f90b3f228 100644 GIT binary patch delta 79 zcmX@lcAjm5qJZ|za5JgPQC&G)w!cmaX-=MK7{kauu}_?lZQ?S0NfrhOUfY delta 79 zcmX@lcAjm5qQLPzYu#>b$UM}z!12`UtOtP;4PzLYC-#XmvP@j2FUiIL0n9*(6^Qxy b85s5hY4(lpLYa7k8AKRF8N?XG85|e@GR70a diff --git a/examples/runtime/shaders/dx9/vs_bump_instanced.bin b/examples/runtime/shaders/dx9/vs_bump_instanced.bin index 7a962587d58468fcb57008ccd36a2a0b74cbee8f..7e3fa3cbc1bdda5e7b4f4661efb6ec0ab1014ba3 100644 GIT binary patch delta 50 rcmdnZv72Lq3Zp7}0}BKH1bGGqCRPTv239zmwSf)JX4&k?_=yPs<|hbd delta 50 rcmdnZv72Lq3Zp7Z0}BKH1bGGqCRPU4239zmt$_{BX5Z||_=yPs<*x{4 diff --git a/examples/runtime/shaders/dx9/vs_instancing.bin b/examples/runtime/shaders/dx9/vs_instancing.bin index fc70843a61bb69a7a2921ec733bf855f514942e4..d99a711621f7db70d004223b8041830978e4f0ce 100644 GIT binary patch delta 59 tcmcb`e2aO)X+!n~CIUsageIndex = uint8_t(8-_numInstanceData+ii); + elem->UsageIndex = uint8_t(7-ii); // TEXCOORD7 = i_data0, TEXCOORD6 = i_data1, etc. elem->Offset = ii*16; ++elem; }