home *** CD-ROM | disk | FTP | other *** search
/ GameStar 2005 April / Gamestar_72_2005-04_dvd.iso / Dema / Liquidator / Liquidator.tma / data / materials / parallax.fx < prev    next >
Text File  |  2004-12-24  |  2KB  |  39 lines

  1. sampler2D g_samColorMap : register(s0);   // decal ΓѬßΓπαá
  2. sampler2D g_samHeightMap : register(s1);  // ¬áαΓá óδß«Γ  
  3. sampler2D g_samColorMap1 : register(s2);   // decal ΓѬßΓπαá
  4.  
  5.  
  6. float4 parallax( float2 TexCoord : TEXCOORD0, // íẫóδÑ ΓѬßΓπα¡δÑ ¬««αñ¿¡áΓδ
  7.                    float3 TexCoord1 : TEXCOORD1 // óÑ¬Γ«α «Γ óÑαΦ¿¡δ ¬ ú½áºπ ó tangent »α«ßΓαá¡ßΓóÑ
  8. ) : COLOR
  9.  // »ÑαÑó«ñ óδß«Γδ ó ñ¿á»áº«¡ «Γ -1.0f ñ« 1.0f 
  10.  float fHeight = tex2D(g_samHeightMap,TexCoord).x * 2.0f - 1.0f;
  11.  // ¡«α¼á½¿ºáµ¿∩ óÑ¬Γ«αá ú½áºá
  12.  float3 fEye = normalize(TexCoord1);
  13.  // óδτ¿ß½Ñ¡¿Ñ óÑ¬Γ«αá ß¼ÑΘÑ¡¿∩ ¿ ¬«ααѬµ¿∩ íẫóδσ ΓѬßΓπα¡δ󠬫«αñ¿¡áΓ 
  14.  float2 fOffset = fEye.xy * fHeight * 0.015f;
  15.  float2 fNewCoords = TexCoord.xy + fOffset;
  16.  // óδí«α¬á decal ΓѬΓπαδ »« ¡«óδ¼ ΓѬßΓπα¡δ¼ ¬««αñ¿¡áΓá¼   
  17.  float4 ColorMap = tex2D(g_samColorMap,fNewCoords);
  18.  
  19.  return ColorMap;
  20. }
  21.  
  22. float4 parallax_blended( float2 TexCoord : TEXCOORD0, // íẫóδÑ ΓѬßΓπα¡δÑ ¬««αñ¿¡áΓδ
  23.                    float3 TexCoord1 : TEXCOORD1 // óÑ¬Γ«α «Γ óÑαΦ¿¡δ ¬ ú½áºπ ó tangent »α«ßΓαá¡ßΓóÑ
  24. ) : COLOR
  25.  // »ÑαÑó«ñ óδß«Γδ ó ñ¿á»áº«¡ «Γ -1.0f ñ« 1.0f 
  26.  float fHeight = tex2D(g_samHeightMap,TexCoord).x * 2.0f - 1.0f;
  27.  // ¡«α¼á½¿ºáµ¿∩ óÑ¬Γ«αá ú½áºá
  28.  float3 fEye = normalize(TexCoord1);
  29.  // óδτ¿ß½Ñ¡¿Ñ óÑ¬Γ«αá ß¼ÑΘÑ¡¿∩ ¿ ¬«ααѬµ¿∩ íẫóδσ ΓѬßΓπα¡δ󠬫«αñ¿¡áΓ 
  30.  float2 fOffset = fEye.xy * fHeight * 0.015f;
  31.  float2 fNewCoords = TexCoord.xy + fOffset;
  32.  // óδí«α¬á decal ΓѬΓπαδ »« ¡«óδ¼ ΓѬßΓπα¡δ¼ ¬««αñ¿¡áΓá¼   
  33.  float4 ColorMap = tex2D(g_samColorMap,fNewCoords);
  34.  float4 ColorMap1 = tex2D(g_samColorMap1,fNewCoords);
  35.  
  36.  return lerp(ColorMap, ColorMap1, ColorMap1.w);
  37. }