From: <jo...@us...> - 2006-10-24 07:05:59
|
Revision: 25671 http://svn.sourceforge.net/crystal/?rev=25671&view=rev Author: jorrit Date: 2006-10-24 00:05:47 -0700 (Tue, 24 Oct 2006) Log Message: ----------- - Jorrit merged r25564 into 1.0 (character2 animation shader fixes) Modified Paths: -------------- CS/branches/release/V1.0/data/kwartz.zip CS/branches/release/V1.0/data/shader/character/cg-skinning.inc CS/branches/release/V1.0/data/shader/character/character2.cgvp CS/branches/release/V1.0/data/shader/character/character_bump2.cgvp CS/branches/release/V1.0/docs/history.txt CS/branches/release/V1.0/docs/history10.txt Modified: CS/branches/release/V1.0/data/kwartz.zip =================================================================== (Binary files differ) Modified: CS/branches/release/V1.0/data/shader/character/cg-skinning.inc =================================================================== --- CS/branches/release/V1.0/data/shader/character/cg-skinning.inc 2006-10-24 06:53:57 UTC (rev 25670) +++ CS/branches/release/V1.0/data/shader/character/cg-skinning.inc 2006-10-24 07:05:47 UTC (rev 25671) @@ -26,7 +26,7 @@ struct Vert_Skinning { <?if vars."bones"?> - varying int4 BonesIndices; + varying float4 BonesIndices; varying float4 BonesWeights; uniform float4 Bones[78]; <?endif?> @@ -49,10 +49,10 @@ float4 SkinnedPosition (float4 pos) { <?if vars."bones"?> - int idx1 = skinningVert.BonesIndices.x*2; - int idx2 = skinningVert.BonesIndices.y*2; - int idx3 = skinningVert.BonesIndices.z*2; - int idx4 = skinningVert.BonesIndices.w*2; + int idx1 = int(skinningVert.BonesIndices.x)*2; + int idx2 = int(skinningVert.BonesIndices.y)*2; + int idx3 = int(skinningVert.BonesIndices.z)*2; + int idx4 = int(skinningVert.BonesIndices.w)*2; float4 Pos; Pos.xyz = (QuatMultVert(skinningVert.Bones[idx1], pos.xyz) + Modified: CS/branches/release/V1.0/data/shader/character/character2.cgvp =================================================================== --- CS/branches/release/V1.0/data/shader/character/character2.cgvp 2006-10-24 06:53:57 UTC (rev 25670) +++ CS/branches/release/V1.0/data/shader/character/character2.cgvp 2006-10-24 07:05:47 UTC (rev 25671) @@ -8,7 +8,7 @@ struct app2vertex { float3 Position : POSITION; float2 TexCoord : TEXCOORD0; - int4 BonesIndices; + float4 BonesIndices; float4 BonesWeights; }; @@ -31,10 +31,10 @@ uniform float4 Bones[78]) { vertex2fragment OUT; - int idx1 = IN.BonesIndices.x*2; - int idx2 = IN.BonesIndices.y*2; - int idx3 = IN.BonesIndices.z*2; - int idx4 = IN.BonesIndices.w*2; + int idx1 = int(IN.BonesIndices.x)*2; + int idx2 = int(IN.BonesIndices.y)*2; + int idx3 = int(IN.BonesIndices.z)*2; + int idx4 = int(IN.BonesIndices.w)*2; float4 position; position.xyz = (QuatMultVert(Bones[idx1], IN.Position.xyz) + Bones[idx1+1].xyz)*IN.BonesWeights.x; Modified: CS/branches/release/V1.0/data/shader/character/character_bump2.cgvp =================================================================== --- CS/branches/release/V1.0/data/shader/character/character_bump2.cgvp 2006-10-24 06:53:57 UTC (rev 25670) +++ CS/branches/release/V1.0/data/shader/character/character_bump2.cgvp 2006-10-24 07:05:47 UTC (rev 25671) @@ -11,7 +11,7 @@ float3 Position : POSITION; float3 TexCoord : TEXCOORD0; float3 Tangent : TEXCOORD1; - int4 BonesIndices; + float4 BonesIndices; float4 BonesWeights; }; @@ -40,10 +40,10 @@ { vertex2fragment OUT; - int idx1 = IN.BonesIndices.x*2; - int idx2 = IN.BonesIndices.y*2; - int idx3 = IN.BonesIndices.z*2; - int idx4 = IN.BonesIndices.w*2; + int idx1 = int(IN.BonesIndices.x)*2; + int idx2 = int(IN.BonesIndices.y)*2; + int idx3 = int(IN.BonesIndices.z)*2; + int idx4 = int(IN.BonesIndices.w)*2; float4 position; position.xyz = (QuatMultVert(Bones[idx1], IN.Position.xyz) + Bones[idx1+1].xyz)*IN.BonesWeights.x; Modified: CS/branches/release/V1.0/docs/history.txt =================================================================== --- CS/branches/release/V1.0/docs/history.txt 2006-10-24 06:53:57 UTC (rev 25670) +++ CS/branches/release/V1.0/docs/history.txt 2006-10-24 07:05:47 UTC (rev 25671) @@ -87,6 +87,12 @@ - Marten changed win32 version resource generation so it strips any RCxxx tags, appearantly they trip the mingw resource compiler. + - Erroroman changed render buffer "bones indices" elements type from + int to float because of slow hardware animation reported by people + that uses Windows and ATI video cards. Nvidia cards doesn't have + such problem so probably cases about driver problem. + - Erroroman adopted kwartz model and the animation shaders to the new + type of the render buffer. 4-Oct-2006 - Jorrit updated startme: - Made the icons show from top to bottom. Modified: CS/branches/release/V1.0/docs/history10.txt =================================================================== --- CS/branches/release/V1.0/docs/history10.txt 2006-10-24 06:53:57 UTC (rev 25670) +++ CS/branches/release/V1.0/docs/history10.txt 2006-10-24 07:05:47 UTC (rev 25671) @@ -6,6 +6,8 @@ individual changes for each given day, however, are in normal (ascending) chronological order. +24-Oct-2006 + - Jorrit merged r25564 into 1.0 (character2 animation shader fixes) 20-Oct-2006 - res merged r25652 into 1.0 (parallax shader fix). - res merged r25653 into 1.0 (static plugin linking issue reporting). This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |