Axiom.Samples.Ocean.OceanSample.SetupScene C# (CSharp) Метод

SetupScene() защищенный Метод

protected SetupScene ( ) : void
Результат void
        protected void SetupScene()
        {
            // Set ambient light
            SceneManager.AmbientLight = new ColorEx( 0.3f, 0.3f, 0.3f );
            SceneManager.SetSkyBox( true, "SkyBox", 1000 );

            mainNode = SceneManager.RootSceneNode.CreateChildSceneNode();


            for ( int i = 0; i < NumLights; ++i )
            {
                lightPivots[ i ] = SceneManager.RootSceneNode.CreateChildSceneNode();
                lightPivots[ i ].Rotate( lightRotationAxes[ i ], lightRotationAngles[ i ] );
                // Create a light, use default parameters
                lights[ i ] = SceneManager.CreateLight( "Light" + i );
                lights[ i ].Position = lightPositions[ i ];
                lights[ i ].Diffuse = diffuseLightColors[ i ];
                lights[ i ].Specular = specularLightColors[ i ];
                lights[ i ].IsVisible = lightState[ i ];
                //lights[i]->setAttenuation(400, 0.1 , 1 , 0);
                // Attach light
                lightPivots[ i ].AttachObject( lights[ i ] );
                // Create billboard for light
                lightFlareSets[ i ] = SceneManager.CreateBillboardSet( "Flare" + i );
                lightFlareSets[ i ].MaterialName = "LightFlare";
                lightPivots[ i ].AttachObject( lightFlareSets[ i ] );
                lightFlares[ i ] = lightFlareSets[ i ].CreateBillboard( lightPositions[ i ] );
                lightFlares[ i ].Color = diffuseLightColors[ i ];
                lightFlareSets[ i ].IsVisible = lightState[ i ];
            }

            // move the camera a bit right and make it look at the knot
            Camera.MoveRelative( new Vector3( 50,0, 100 ) );
            Camera.LookAt( new Vector3( 0, 10, 0 ) );

            // Define a plane mesh that will be used for the ocean surface
            Plane oceanSurface = new Plane( Vector3.UnitY, 20 );

            MeshManager.Instance.CreatePlane( "OceanSurface",
                ResourceGroupManager.DefaultResourceGroupName,
                oceanSurface,
                1000, 1000, 50, 50, true, 1, 1, 1, Vector3.UnitZ );

            oceanSurfaceEnt = SceneManager.CreateEntity( "OceanSurface", "OceanSurface" );
            SceneManager.RootSceneNode.CreateChildSceneNode().AttachObject( oceanSurfaceEnt );
            oceanSurfaceEnt.MaterialName = materialControlsContainer[ 0 ].MaterialName;
        }