예제 #1
0
        protected override void OnBeforeRenderUIWithChildren(GuiRenderer renderer)
        {
            if (IsCustomShaderModeEnabled())
            {
                //enable custom shader mode

                List <GuiRenderer.CustomShaderModeTexture> additionalTextures =
                    new List <GuiRenderer.CustomShaderModeTexture>();
                additionalTextures.Add(new GuiRenderer.CustomShaderModeTexture(
                                           "GUI\\Textures\\Engine.png", false));

                List <GuiRenderer.CustomShaderModeParameter> parameters =
                    new List <GuiRenderer.CustomShaderModeParameter>();
                float offsetX = (EngineApp.Instance.Time / 60) % 1;
                Vec2  mouse   = EngineApp.Instance.MousePosition;
                parameters.Add(new GuiRenderer.CustomShaderModeParameter("testParameter",
                                                                         new Vec4(offsetX, mouse.X, mouse.Y, 0)));

                renderer.PushCustomShaderMode("Base\\Shaders\\CustomGuiRenderingExample.cg_hlsl",
                                              additionalTextures, parameters);

                ////second way: bind custom shader mode to this control and to all children.
                //EnableCustomShaderMode( true, "Base\\Shaders\\CustomGuiRenderingExample.cg_hlsl",
                //   additionalTextures, parameters );
            }

            base.OnBeforeRenderUIWithChildren(renderer);
        }
예제 #2
0
파일: GuiTestWindow.cs 프로젝트: Eneth/GAO
        protected override void OnBeforeRenderUIWithChildren( GuiRenderer renderer )
        {
            if( IsCustomShaderModeEnabled() )
            {
                //enable custom shader mode

                List<GuiRenderer.CustomShaderModeTexture> additionalTextures =
                    new List<GuiRenderer.CustomShaderModeTexture>();
                additionalTextures.Add( new GuiRenderer.CustomShaderModeTexture(
                    "Gui\\Various\\Engine.png", false ) );

                List<GuiRenderer.CustomShaderModeParameter> parameters =
                    new List<GuiRenderer.CustomShaderModeParameter>();
                float offsetX = ( EngineApp.Instance.Time / 60 ) % 1;
                Vec2 mouse = EngineApp.Instance.MousePosition;
                parameters.Add( new GuiRenderer.CustomShaderModeParameter( "testParameter",
                    new Vec4( offsetX, mouse.X, mouse.Y, 0 ) ) );

                renderer.PushCustomShaderMode( "Materials\\Common\\CustomGuiRenderingExample.cg_hlsl",
                    additionalTextures, parameters );

                ////second way: bind custom shader mode to this control and to all children.
                //EnableCustomShaderMode( true, "Materials\\Common\\CustomGuiRenderingExample.cg_hlsl",
                //   additionalTextures, parameters );
            }

            base.OnBeforeRenderUIWithChildren( renderer );
        }