public Scene(Accessors accessors) { SceneRoot = new GameObject("root", 0); SceneRoot.Name = "SceneRoot"; sceneObjects = new List <GameObject>(); this.accessors = accessors; }
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"); }