public bool GetValueBoolean ()
{
if (ParameterClass != EffectParameterClass.Scalar || ParameterType != EffectParameterType.Bool)
throw new InvalidCastException();
#if DIRECTX
return ((int[])Data)[0] != 0;
#else
// MojoShader encodes even booleans into a float.
return ((float[])Data)[0] != 0.0f;
#endif
}