Example #1
0
        public Window(Game game,
                      IVisualManager manager) : base(
                1280, 720,
                GraphicsMode.Default,
                "Minecraft OpenGL 4.1",
                GameWindowFlags.Default,
                DisplayDevice.Default,
                4, 1,
                GraphicsContextFlags.Default)
        {
            VSync = VSyncMode.Off;
            keys  = new Dictionary <Key, bool>();
            foreach (Key key in Enum.GetValues(typeof(Key)))
            {
                keys[key] = false;
            }

            Texture.InitArray(Directory.GetFiles(Path.Combine("Textures"), "*.png").ToList());
            Model.Load(Directory.GetFiles(Path.Combine("Models", "source"), "*.fbx").ToList());

            this.game = game;
            game.Start();
            Location = new Point(100, 100);

            var camera       = new Camera(game.Player);
            var skyBoxRender = new SkyBox();
            var worldRender  = new World(manager, game);
            var linesRender  = new Lines(game);
            var entityRender = new Entity(game);

            render        = new Render(camera, skyBoxRender, worldRender, linesRender, entityRender);
            playerControl = new PlayerControl(keys, game.Player.Mover, game.World);
        }
Example #2
0
        public World(IVisualManager visualManager, Game game)
        {
            viewer             = game.Player.Mover;
            this.visualManager = visualManager;
            arrayTex           = Texture.ArrayTex;
            var size = visualManager.World.Size;

            Size          = size * size * 16;
            vao           = new int[Size];
            data          = new int[Size];
            shaderProgram = Shaders.Shaders.GetSideShader();
            GenBuffers();
            for (var i = 0; i < Size; i++)
            {
                InstallAttributes(i);
            }
            vPMatrixLocation = GL.GetUniformLocation(shaderProgram, "viewProjection");
        }
 /// <summary>
 /// The context call's this method and sets the current Visual Manager. This will happen before calling the Execute method.
 /// </summary>
 /// <param name="context">A reference to the current Visual Manager</param>
 public void SetContext(IVisualManager context)
 {
     this.context = context;
 }
Example #4
0
 /// <summary>
 /// Sets the VisualsManager.
 /// </summary>
 /// <param name="visuals">Visuals</param>
 public void SetVisuals(IVisualManager visuals)
 {
     this.visuals = visuals;
 }
Example #5
0
        /// <summary>
        /// Does nothing here.
        /// </summary>
        /// <param name="context"></param>
		public void SetContext(IVisualManager context){
		}