예제 #1
0
        public override void Set(IShaderParameter shaderParameter)
        {
            switch (shaderParameter.Key)
            {
            case ShaderParameterKey.BaseColorFactor:
                BaseColorFactor = ((IShaderParameter <Vector4>)shaderParameter).Value;
                break;

            case ShaderParameterKey.BaseColorTexture:
                BaseColorTexture = ((IShaderParameter <SamplerParameters>)shaderParameter).Value;
                break;

            case ShaderParameterKey.MetallicFactor:
                MetallicFactor = ((IShaderParameter <float>)shaderParameter).Value;
                break;

            case ShaderParameterKey.RoughnessFactor:
                RoughnessFactor = ((IShaderParameter <float>)shaderParameter).Value;
                break;

            case ShaderParameterKey.MetallicRoughnessTexture:
                MetallicRoughnessTexture = ((IShaderParameter <SamplerParameters>)shaderParameter).Value;
                break;

            default:
                base.Set(shaderParameter);
                break;
            }
        }
        public override void Set(IShaderParameter shaderParameter)
        {
            switch (shaderParameter.Key)
            {
            case ShaderParameterKey.DiffuseFactor:
                DiffuseFactor = ((IShaderParameter <Vector4>)shaderParameter).Value;
                break;

            case ShaderParameterKey.DiffuseTexture:
                DiffuseTexture = ((IShaderParameter <SamplerParameters>)shaderParameter).Value;
                break;

            case ShaderParameterKey.SpecularFactor:
                SpecularFactor = ((IShaderParameter <Vector3>)shaderParameter).Value;
                break;

            case ShaderParameterKey.GlossinessFactor:
                GlossinessFactor = ((IShaderParameter <float>)shaderParameter).Value;
                break;

            case ShaderParameterKey.SpecularGlossinessTexture:
                SpecularGlossinessTexture = ((IShaderParameter <SamplerParameters>)shaderParameter).Value;
                break;

            default:
                base.Set(shaderParameter);
                break;
            }
        }
예제 #3
0
        public virtual void Set(IShaderParameter shaderParameter)
        {
            switch (shaderParameter.Key)
            {
            case ShaderParameterKey.NormalTexture:
                NormalTexture = ((IShaderParameter <SamplerParameters>)shaderParameter).Value;
                break;

            case ShaderParameterKey.NormalTextureScale:
                NormalTextureScale = ((IShaderParameter <float>)shaderParameter).Value;
                break;

            case ShaderParameterKey.OcclusionTexture:
                OcclusionTexture = ((IShaderParameter <SamplerParameters>)shaderParameter).Value;
                break;

            case ShaderParameterKey.OcclusionTextureStrength:
                OcclusionTextureStrength = ((IShaderParameter <float>)shaderParameter).Value;
                break;

            case ShaderParameterKey.EmissiveTexture:
                EmissiveTexture = ((IShaderParameter <SamplerParameters>)shaderParameter).Value;
                break;

            case ShaderParameterKey.EmissiveFactor:
                EmissiveFactor = ((IShaderParameter <Vector3>)shaderParameter).Value;
                break;

            //case ShaderParameterKey.AlphaCutoff:
            //    AlphaCutoff = (IShaderParameter<float>) shaderParameter;
            //    break;
            default:
                _extraParameters[shaderParameter.Key] = shaderParameter;
                break;
            }
        }