Exemple #1
0
        private void TVHeadlights()
        {
            Vector4 headLightDir = new Vector4(-100.0F, 1.0F, 0.0F, 0.0F);
            Vector4 headlightsource = new Vector4(0.0F, 0.0F, -2.2F, 0.0F);

            headLightDir.Transform(Matrix.RotationZ((float)(OuterSpace.TV.theta * Math.PI / 180.0F)));

            // Set up the headlight.
            for (int i = 0; i < OuterSpace.TV.lightson; i++)
            {
                OuterSpace.device.Lights[i].Type = LightType.Spot;
                OuterSpace.device.Lights[i].Position = new Vector3(headlightsource.X, headlightsource.Y, headlightsource.Z);
                OuterSpace.device.Lights[i].Direction = new Vector3(headLightDir.X, headLightDir.Y, headLightDir.Z);
                OuterSpace.device.Lights[i].InnerConeAngle = 1.0F;
                OuterSpace.device.Lights[i].OuterConeAngle = 1.2F;
                OuterSpace.device.Lights[i].Falloff = 1.0F;
                OuterSpace.device.Lights[i].Attenuation0 = 1.0F;
                OuterSpace.device.Lights[i].Diffuse = Color.FromArgb(255, 255, 255, 255);
                OuterSpace.device.Lights[i].Range = 800.0F;
                OuterSpace.device.Lights[i].Enabled = true;
            }
        }