Esempio n. 1
0
        public Scene(Accessors accessors)
        {
            SceneRoot      = new GameObject("root", 0);
            SceneRoot.Name = "SceneRoot";
            sceneObjects   = new List <GameObject>();

            this.accessors = accessors;
        }
Esempio n. 2
0
        public GameEngine()
        {
            settings = new ApplicationSettings();
            settings.Load();

            int width  = settings.WindowWidth;
            int height = settings.WindowHeight;

            int render_width  = settings.RenderWidth;
            int render_height = settings.RenderHeight;

            resourceManager = new Resources.ResourceManager("data/");

            effectHandler   = new Rendering.PostProcessing.PostEffectHandler();
            window          = new Rendering.Window("Testing", width, height, settings.Resizeable);
            deviceResources = new Rendering.DeviceResources(window.GetHandle(), render_width, render_height, 60);

            // Load basic resources included in engine.
            // Some resources are required for renderer to function.
            InitializeEngineResources();
            PostResourceLoadInitialization();

            input    = new Input();
            gameTime = new GameTime();

            accessors = new Accessors(
                gameTime.Accessor,
                input.Acessor
                );

            stateMachine = new States.GameStateMachine(accessors);
            States.GameState testState = new States._TestState(accessors);
            stateMachine.Attach(testState);
            stateMachine.AddToStack("TestState");

            testState.Load(resourceManager, deviceResources.Device);
            testState.Init(resourceManager);

            light = new GameObject("light", 0);
            light.SetScale(new Vector3(0.1f, 0.1f, 0.1f));
            light.SetPosition(new Vector3(-5, 0, -5));


            // TODO: Work this out.
            // Renderer must be created after state has loaded resources.
            // Need to make CubemapRenderer play nice with Renderer.
            renderer = new Rendering.Renderer(window, deviceResources, render_width, render_height, 60, effectHandler);


            Logger.Write(LogType.Info, "Engine Initialized");
        }