コード例 #1
0
        /// <summary>
        /// Test lens flare
        /// </summary>
        public static void TestLensFlare()
        {
            Vector3 sunPos = LensFlare.DefaultSunPos;
            LensFlare lensFlare = null;

            TestGame.Start("TestLensFlare",
                delegate // Init
                {
                    lensFlare = new LensFlare(sunPos);
                },
                delegate // Render loop
                {
                    BaseGame.GlowShader.Start();

                    // Render sky cube map as our background.
                    BaseGame.skyCube.RenderSky(1.0f, BaseGame.SkyBackgroundColor);

                    lensFlare.Render(Color.White);

                    TextureFont.WriteText(1, 30,
                        "Sun pos to 2d=" + BaseGame.Convert3DPointTo2D(sunPos));
                    TextureFont.WriteText(1, 60,
                        "Sun pos in front=" + BaseGame.IsInFrontOfCamera(sunPos));
                    Vector4 resultVector4 = Vector4.Transform(
                        new Vector4(sunPos.X, sunPos.Y, sunPos.Z, 1),
                        BaseGame.ViewMatrix * BaseGame.ProjectionMatrix);
                    TextureFont.WriteText(1, 90,
                        "result=" + resultVector4);
                });
        }