Dolphin, the GameCube and Wii emulator - Forums

Full Version: Problem with pixel shader SS attached
You're currently viewing a stripped down version of our content. View the full version with proper formatting.

3DFX

hi there folks im trying to load call of duty black ops without much joy at the moment ive attached the error screen hopefully someone can help me
Code:
//Pixel Shader for TEV stages
//9 TEV stages, 5 texgens, XXX IND stages
uniform sampler2D  samp0 : register(s0), samp1 : register(s1), samp2 : register(s2), samp3 : register(s3), samp4 : register(s4), samp5 : register(s5), samp6 : register(s6), samp7 : register(s7);

uniform float4 color[4] : register(c0);
uniform float4 k[4] : register(c4);
uniform float4 alphaRef[1] : register(c8);
uniform float4 texdim[8] : register(c9);
uniform float4 vtexscale[4] : register(c17);
uniform float4 czbias[2] : register(c21);
uniform float4 cindscale[2] : register(c23);
uniform float4 cindmtx[6] : register(c25);
uniform float4 cfog[3] : register(c31);
void main(
  out float4 ocol0 : COLOR0,
  in float4 rawpos : POSITION,
  in float4 colors_0 : COLOR0,
  in float4 colors_1 : COLOR1,
  in float3 uv0 : TEXCOORD0,
  in float3 uv1 : TEXCOORD1,
  in float3 uv2 : TEXCOORD2,
  in float3 uv3 : TEXCOORD3,
  in float3 uv4 : TEXCOORD4,
  in float4 clipPos : TEXCOORD5        ) {
  float4 c0 = color[1], c1 = color[2], c2 = color[3], prev = float4(0.0f, 0.0f, 0.0f, 0.0f), textemp = float4(0.0f, 0.0f, 0.0f, 0.0f), rastemp = float4(0.0f, 0.0f, 0.0f, 0.0f), konsttemp = float4(0.0f, 0.0f, 0.0f, 0.0f);
  float3 comp16 = float3(1.0f, 255.0f, 0.0f), comp24 = float3(1.0f, 255.0f, 255.0f*255.0f);
  float4 alphabump=float4(0.0f,0.0f,0.0f,0.0f);
  float3 tevcoord=float3(0.0f, 0.0f, 0.0f);
  float2 wrappedcoord=float2(0.0f,0.0f), tempcoord=float2(0.0f,0.0f);
  float4 cc0=float4(0.0f,0.0f,0.0f,0.0f), cc1=float4(0.0f,0.0f,0.0f,0.0f);
  float4 cc2=float4(0.0f,0.0f,0.0f,0.0f), cprev=float4(0.0f,0.0f,0.0f,0.0f);
  float4 crastemp=float4(0.0f,0.0f,0.0f,0.0f),ckonsttemp=float4(0.0f,0.0f,0.0f,0.0f);

clipPos = float4(rawpos.x, rawpos.y, clipPos.z, clipPos.w);
uv0.xy = uv0.xy * texdim[0].zw;
uv1.xy = uv1.xy * texdim[1].zw;
uv2.xy = uv2.xy * texdim[2].zw;
uv3.xy = uv3.xy * texdim[3].zw;
uv4.xy = uv4.xy * texdim[4].zw;
// TEV stage 0
tevcoord.xy = uv0.xy;
textemp=tex2D(samp0, (tevcoord.xy + 0.5f*vtexscale[0].xy) * texdim[0].xy).rgba;
// color combine
c0.rgb = saturate((textemp.rgb)+float3(0.0f, 0.0f, 0.0f));
// alpha combine
c0.a = saturate(textemp.a+float4(0.0f, 0.0f, 0.0f, 0.0f).a);

// TEV done
// TEV stage 1
rastemp = colors_0.gggg;
crastemp = frac(rastemp * (255.0f/256.0f)) * (256.0f/255.0f);
tevcoord.xy = uv1.xy;
textemp=tex2D(samp1, (tevcoord.xy + 0.5f*vtexscale[0].zw) * texdim[1].xy).bbbb;
// color combine
prev.rgb = saturate((crastemp.rgb)*(float3(1.0f, 1.0f, 1.0f)-(textemp.aaa)));
// alpha combine
prev.a = saturate(crastemp.a*textemp.a);

// TEV done
// TEV stage 2
tevcoord.xy = uv1.xy;
textemp=tex2D(samp1, (tevcoord.xy + 0.5f*vtexscale[0].zw) * texdim[1].xy).rgba;
cprev = frac(prev * (255.0f/256.0f)) * (256.0f/255.0f);
cc0 = frac(c0 * (255.0f/256.0f)) * (256.0f/255.0f);
// color combine
c0.rgb = saturate(lerp((cc0.rgb), (textemp.rgb), (cprev.rgb)));
// alpha combine
c0.a = saturate(c0.a+float4(0.0f, 0.0f, 0.0f, 0.0f).a);

// TEV done
// TEV stage 3
rastemp = colors_0.bbbb;
crastemp = frac(rastemp * (255.0f/256.0f)) * (256.0f/255.0f);
tevcoord.xy = uv2.xy;
textemp=tex2D(samp2, (tevcoord.xy + 0.5f*vtexscale[1].xy) * texdim[2].xy).bbbb;
// color combine
prev.rgb = saturate((crastemp.rgb)*(float3(1.0f, 1.0f, 1.0f)-(textemp.aaa)));
// alpha combine
prev.a = saturate(crastemp.a*textemp.a);

// TEV done
// TEV stage 4
tevcoord.xy = uv2.xy;
textemp=tex2D(samp2, (tevcoord.xy + 0.5f*vtexscale[1].xy) * texdim[2].xy).rgba;
cprev = frac(prev * (255.0f/256.0f)) * (256.0f/255.0f);
cc0 = frac(c0 * (255.0f/256.0f)) * (256.0f/255.0f);
// color combine
prev.rgb = saturate(lerp((cc0.rgb), (textemp.rgb), (cprev.rgb)));
// alpha combine
prev.a = saturate(c0.a+float4(0.0f, 0.0f, 0.0f, 0.0f).a);

// TEV done
// TEV stage 5
tevcoord.xy = uv4.xy;
textemp=tex2D(samp5, (tevcoord.xy + 0.5f*vtexscale[2].zw) * texdim[5].xy).rgba;
konsttemp = float4(k[3].rgb, 1.0f);
ckonsttemp = frac(konsttemp * (255.0f/256.0f)) * (256.0f/255.0f);
// color combine
c0.rgb = saturate((textemp.rgb)*(ckonsttemp.rgb));
// alpha combine
prev.a = saturate(prev.a+float4(0.0f, 0.0f, 0.0f, 0.0f).a);

// TEV done
// TEV stage 6
tevcoord.xy = uv3.xy;
textemp=tex2D(samp3, (tevcoord.xy + 0.5f*vtexscale[1].zw) * texdim[3].xy).rgba;
cc0 = frac(c0 * (255.0f/256.0f)) * (256.0f/255.0f);
// color combine
c0.rgb = (textemp.rgb)*(cc0.rgb);
// alpha combine
prev.a = saturate(prev.a+float4(0.0f, 0.0f, 0.0f, 0.0f).a);

// TEV done
// TEV stage 7
tevcoord.xy = uv3.xy;
textemp=tex2D(samp4, (tevcoord.xy + 0.5f*vtexscale[2].xy) * texdim[4].xy).rgba;
// color combine
c0.rgb = saturate(0.5f*((c0.rgb)+(textemp.rgb)));
// alpha combine
prev.a = saturate(prev.a+float4(0.0f, 0.0f, 0.0f, 0.0f).a);

// TEV done
// TEV stage 8
textemp = float4(1.0f, 1.0f, 1.0f, 1.0f);
cprev = frac(prev * (255.0f/256.0f)) * (256.0f/255.0f);
cc0 = frac(c0 * (255.0f/256.0f)) * (256.0f/255.0f);
// color combine
prev.rgb = saturate(2.0f*((cc0.rgb)*(cprev.rgb)));
// alpha combine
prev.a = saturate(prev.a+float4(0.0f, 0.0f, 0.0f, 0.0f).a);

// TEV done
prev.rgb = prev.rgb;
prev.a = prev.a;
prev = frac(4.0f + prev * (255.0f/256.0f)) * (256.0f/255.0f);
  ocol0 = prev;
}

above is from ps log
Did you read the error message? o_o

3DFX

does it mean i need a better graphics card?
(02-23-2012, 12:51 AM)3DFX Wrote: [ -> ]does it mean i need a better graphics card?

Yes, yes it does Rolleyes