当前位置: 首页>>代码示例>>C#>>正文


C# Effect.GetParameterBySemantic方法代码示例

本文整理汇总了C#中Effect.GetParameterBySemantic方法的典型用法代码示例。如果您正苦于以下问题:C# Effect.GetParameterBySemantic方法的具体用法?C# Effect.GetParameterBySemantic怎么用?C# Effect.GetParameterBySemantic使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Effect的用法示例。


在下文中一共展示了Effect.GetParameterBySemantic方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: ShaderLight

            public ShaderLight( Effect fx, EffectHandle elem )
            {
                this.fx = fx;

                diffuse = fx.GetParameterBySemantic( elem, "DIFFUSE" );
                ndlBias = fx.GetParameterBySemantic( elem, "NDLBIAS" );
                specular = fx.GetParameterBySemantic( elem, "SPECULAR" );
                specSharpness = fx.GetParameterBySemantic( elem, "SPECULARSHARPNESS" );
                direction = fx.GetParameterBySemantic( elem, "DIRECTION" );
            }
开发者ID:pdjonov,项目名称:x42view,代码行数:10,代码来源:ModelWindow.Preview.Shaded.cs

示例2: GetLights

            public static ShaderLight[] GetLights( Effect fx )
            {
                EffectHandle lights = fx.GetParameterBySemantic( null, "LIGHTS" );
                int count = fx.GetParameterDescription( lights ).Elements;

                ShaderLight[] ret = new ShaderLight[count];
                for( int i = 0; i < ret.Length; i++ )
                    ret[i] = new ShaderLight( fx, fx.GetParameterElement( lights, i ) );

                return ret;
            }
开发者ID:pdjonov,项目名称:x42view,代码行数:11,代码来源:ModelWindow.Preview.Shaded.cs

示例3: LoadSurfaceShaders

        private void LoadSurfaceShaders()
        {
            shaders.Clear();

            Libx42.Model m = model.Model;

            if( m == null )
                return;

            Device device = pn3D.Device;

            string errs;
            shadedEffect = Effect.FromFile( device, Path.Combine( Application.StartupPath, "Media/ShadedPreview.fx" ), null,
                null, ShaderFlags.None, null, out errs );

            ehMv = shadedEffect.GetParameterBySemantic( null, "MODELVIEW" );
            ehMvp = shadedEffect.GetParameterBySemantic( null, "MODELVIEWPROJECTION" );
            ehCamPos = shadedEffect.GetParameterBySemantic( null, "CAMERAPOSITION" );

            ehAmbient = shadedEffect.GetParameterBySemantic( null, "LIGHTAMBIENT" );
            shaderLights = ShaderLight.GetLights( shadedEffect );

            ehBumpUnpack = shadedEffect.GetParameterBySemantic( null, "BUMPUNPACK" );

            defaultDiffuse = TextureLoader.FromFile( device, Path.Combine( Application.StartupPath, "Media/DefaultDiffuse.bmp" ),
                0, 0, 0, Usage.None, Format.Unknown, Pool.Managed, Filter.Box, Filter.Box, 0 );
            defaultNormal = TextureLoader.FromFile( device, Path.Combine( Application.StartupPath, "Media/DefaultNormal.bmp" ),
                0, 0, 0, Usage.None, Format.Unknown, Pool.Managed, Filter.Box, Filter.Box, 0 );

            foreach( Libx42.Group g in m.Groups )
            {
                if( shaders.ContainsKey( g.MaterialName ) )
                    continue;

                SurfaceShader shader = LoadSurfaceShader( g.MaterialName );

                if( shader != null )
                    shaders.Add( g.MaterialName, shader );
            }

            surfaceShadersLoaded = true;
        }
开发者ID:pdjonov,项目名称:x42view,代码行数:42,代码来源:ModelWindow.Preview.Shaded.cs


注:本文中的Effect.GetParameterBySemantic方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。