Exemplo n.º 1
0
 public SpriteRenderer(SpriteShader _shader)
 {
     UIQuad = Loader.LoadToVAO(Geometry.GetVertex(Geometries.Quad), Geometry.GetVertexName(Geometries.Quad));
     shader = _shader;
     shader.Start();
     shader.Stop();
 }
Exemplo n.º 2
0
        public override void Draw(SpriteShader shader)
        {
            int alpha = IsImmune ? (int)(Pulse(0.25) * 191) : 255;

            Sprite.Colour = Color.FromArgb(alpha, (Color)Sprite.Colour);

            base.Draw(shader);
        }
Exemplo n.º 3
0
        public override void Render(SpriteShader shader)
        {
            if (_invalidated)
            {
                UpdateImage();
                _invalidated = false;
            }

            base.Render(shader);
        }
Exemplo n.º 4
0
        protected override void OnLoad( EventArgs e )
        {
            mySpriteShader = new SpriteShader( Width, Height );
            myCellSprite = new Sprite( new BitmapTexture2D( ASMCellSim.Visualizer.Properties.Resources.cell, TextureMinFilter.LinearMipmapLinear, TextureMagFilter.Linear ), myCamScale / 32.0f );
            myCellSprite.UseCentreAsOrigin = true;

            GL.ClearColor( Color4.LightGray );

            myTimer.Start();
        }
Exemplo n.º 5
0
        public virtual void Render(SpriteShader shader)
        {
            if (VertsChanged)
            {
                _vertices    = FindVerts();
                VertsChanged = false;
            }

            shader.Texture = Texture;
            shader.Render(_vertices);
        }
Exemplo n.º 6
0
        protected override void OnLoad(System.EventArgs e)
        {
            Plugin.Register("MarsMiner.Shared.CorePlugin", true, true);
            Plugin.Register("MarsMiner.Shared.MarsMinerPlugin", true, true);

            ServerBuilder sb = new ServerBuilder
            {
                Name      = "Local Server",
                Password  = null,
                SlotCount = 1
            };

            myLocalServer  = new GameServer(sb);
            myServerThread = new Thread(myLocalServer.Run);
            myServerThread.Start();

            myLocalClient = new GameClient();
            myLocalClient.ConnectLocal();
            myClientThread = new Thread(myLocalClient.Run);
            myClientThread.Start();

            mySpriteShader = new SpriteShader(Width, Height);
            myUIRoot       = new UIObject(new Vector2(Width, Height));

            myFPSText      = new UILabel(Font.Large, new Vector2(4.0f, 4.0f));
            myFPSText.Text = "FT: ??ms FPS: ?? MEM: ??";
            myUIRoot.AddChild(myFPSText);

            Mouse.Move       += OnMouseMove;
            Mouse.ButtonUp   += OnMouseButtonEvent;
            Mouse.ButtonDown += OnMouseButtonEvent;

            /*
             * myTestWorld = new World();
             *
             * myGeoShader = new GeometryShader( Width, Height );
             * myGeoShader.UpdateTileMap( 16 );
             *
             * myGeoRenderers = new List<ChunkRenderer>();
             *
             * myTestWorld.ChunkLoaded += OnChunkEvent;
             * myTestWorld.ChunkUnloaded += OnChunkEvent;
             * myTestWorld.ChunkChanged += OnChunkEvent;
             *
             * myTestWorld.Generate( 1024, 1024, 4 );
             *
             * myGeoShader.CameraPosition = new Vector3( 0.0f, 1024.0f, 0.0f );
             */

            GL.ClearColor(new Color4(223, 186, 168, 255));

            myFrameTimer.Start();
        }
Exemplo n.º 7
0
        public void Initiliaze(Camera camera)
        {
            entityShader  = new EntityShader();
            terrainShader = new TerrainShader();
            shaderUI      = new SpriteShader();
            textShader    = new TextShader();
            skyboxShader  = new SkyboxShader();

            entityRenderer  = new EntityRenderer(entityShader);
            terrainRenderer = new TerrainRenderer(terrainShader);
            spriteRenderer  = new SpriteRenderer(shaderUI);
            textRenderer    = new TextRenderer(textShader);
            skyboxRenderer  = new SkyboxRenderer(skyboxShader, camera.GetProjectionMatrix());
        }
Exemplo n.º 8
0
 public void Draw(SpriteShader shader)
 {
     for (int i = 0; i < fullbarcount; ++i)
     {
         int starthp = i * 100 / fullbarcount;
         int endhp = (i + 1) * 100 / fullbarcount;
         if (ship.HP <= starthp)
         {
             continue;
         }
         sprite.Colour = Color.FromArgb(Math.Min(255,(ship.HP-starthp)*255/(endhp-starthp)), Color.Firebrick);
         sprite.Position = Position + new Vector2(i * sprite.Width, 0);
         sprite.Render(shader);
     }
 }
Exemplo n.º 9
0
        protected override void OnRender(SpriteShader shader, Vector2 renderPosition = new Vector2())
        {
            mySprite.Position = renderPosition;
            mySprite.Colour   = (IsEnabled ? OpenTK.Graphics.Color4.White : DisabledColour);
            mySprite.Render(shader);

            double timeSinceFlash = (DateTime.Now - myLastFlashTime).TotalSeconds;

            if (timeSinceFlash < 0.5 && IsFocused && IsEnabled && Text.Length < CharacterLimit)
            {
                myUnderlineChar.Position = renderPosition + new Vector2(PaddingLeft + myText.Width, PaddingTop + Math.Max(myText.Height, myFont.CharHeight) - myUnderlineChar.Height);
                myUnderlineChar.Render(shader);
            }
            else if (timeSinceFlash >= 1.0)
            {
                myLastFlashTime = DateTime.Now;
            }
        }
        protected override void OnLoad(EventArgs e)
        {
            GL.ClearColor(Color4.CornflowerBlue);

            _spriteShader = new SpriteShader(Width, Height);

            UpdateTitle();

            Mouse.ButtonDown += (sender, me) => {
                if (Graph != null && (me.Button == OpenTK.Input.MouseButton.Left || Graph.SelectedVertex == -1))
                {
                    Graph.SelectedVertex = Graph.GetNearestVertexScreen(new Vector2(me.X, me.Y));
                }
                else if (Graph.SelectedVertex != -1 && me.Button == OpenTK.Input.MouseButton.Right)
                {
                    int nearest = Graph.GetNearestVertexScreen(new Vector2(me.X, me.Y));
                    if (nearest != Graph.SelectedVertex)
                    {
                        int i = Graph.CurrentRoute.IndexOf(Graph.SelectedVertex);
                        int j = Graph.CurrentRoute.IndexOf(nearest);

                        Graph.CurrentRoute.Splice(i, j);
                        UpdateTitle();
                    }
                    Graph.DeselectVertex();
                }
            };

            Mouse.ButtonUp += (sender, me) => {
                if (Graph != null && me.Button == OpenTK.Input.MouseButton.Left)
                {
                    Graph.DeselectVertex();
                }
            };

            Mouse.Move += (sender, me) => {
                if (Graph != null && Graph.SelectedVertex != -1 && Mouse[OpenTK.Input.MouseButton.Left])
                {
                    Graph.MoveVertexScreen(Graph.SelectedVertex, new Vector2(me.X, me.Y));
                }
            };
        }
Exemplo n.º 11
0
        public void Render(SpriteShader shader, Vector2 parentPosition = new Vector2())
        {
            if (IsVisible)
            {
                parentPosition += Position;

                OnRender(shader, parentPosition);
                if (RenderObject != null)
                {
                    RenderObject(this, new RenderEventArgs(shader, parentPosition));
                }

                try
                {
                    foreach (UIObject child in myChildren)
                    {
                        child.Render(shader, parentPosition + myPaddingTopLeft);
                    }
                }
                catch (Exception)
                {
                }
            }
        }
        protected override void OnLoad(EventArgs e)
        {
            GL.ClearColor(Color4.CornflowerBlue);

            _spriteShader = new SpriteShader(Width, Height);

            UpdateTitle();

            Mouse.ButtonDown += (sender, me) => {
                if (Graph != null && (me.Button == OpenTK.Input.MouseButton.Left || Graph.SelectedVertex == -1)) {
                    Graph.SelectedVertex = Graph.GetNearestVertexScreen(new Vector2(me.X, me.Y));
                } else if (Graph.SelectedVertex != -1 && me.Button == OpenTK.Input.MouseButton.Right) {
                    int nearest = Graph.GetNearestVertexScreen(new Vector2(me.X, me.Y));
                    if (nearest != Graph.SelectedVertex) {
                        int i = Graph.CurrentRoute.IndexOf(Graph.SelectedVertex);
                        int j = Graph.CurrentRoute.IndexOf(nearest);

                        Graph.CurrentRoute.Splice(i, j);
                        UpdateTitle();
                    }
                    Graph.DeselectVertex();
                }
            };

            Mouse.ButtonUp += (sender, me) => {
                if (Graph != null && me.Button == OpenTK.Input.MouseButton.Left) {
                    Graph.DeselectVertex();
                }
            };

            Mouse.Move += (sender, me) => {
                if (Graph != null && Graph.SelectedVertex != -1 && Mouse[OpenTK.Input.MouseButton.Left]) {
                    Graph.MoveVertexScreen(Graph.SelectedVertex, new Vector2(me.X, me.Y));
                }
            };
        }
Exemplo n.º 13
0
 public RenderEventArgs(SpriteShader shader, Vector2 drawPosition)
 {
     ShaderProgram = shader;
     DrawPosition  = drawPosition;
 }
Exemplo n.º 14
0
 public virtual void Draw(SpriteShader shader)
 {
     Sprite.Render(shader);
 }
Exemplo n.º 15
0
        protected override void OnRender(SpriteShader shader, Vector2 renderPosition = new Vector2())
        {
            myText.Position = renderPosition;

            myText.Render(shader);
        }
        public void Render(SpriteShader shader)
        {
            Vector2 centre = new Vector2(400f, 300f);
            _sNodeSprite.Colour = new Color4(127, 127, 127, 191);
            _sNodeSprite.Scale = new Vector2(0.125f * 1.05f);
            for (int i = 0; i < Count; ++i) {
                _sNodeSprite.Position = ((_positions[i] - CameraPos) * Scale) + centre;
                _sNodeSprite.Render(shader);
            }

            if (HighlightedEdges != null) {
                _sConnSprite.Height = 4f;
                for (int k = (HighlightedEdges.Length >> 1) - 1; k >= 0; --k ) {
                    int i = HighlightedEdges[k, 0];
                    int j = HighlightedEdges[k, 1];

                    Vector2 diff = _positions[j] - _positions[i];
                    Vector2 mid = (_positions[i] + _positions[j]) * 0.5f;
                    float len = diff.Length;
                    float ang = (float) Math.Atan2(diff.Y, diff.X);
                    _sConnSprite.Position = ((mid - CameraPos) * Scale) + centre;
                    Color4 clr = _sConnSprite.Colour;
                    clr.G = 1f - OpenTKTools.Tools.Clamp(Math.Abs(len - this[i, j])
                        / (this[i, j] * 4f), 0f, 1f);
                    clr.B = clr.G;
                    _sConnSprite.Colour = clr;
                    _sConnSprite.Width = Scale * len;
                    _sConnSprite.Rotation = ang;
                    _sConnSprite.Render(shader);
                }
            }

            if (CurrentRoute != null) {
                _sConnSprite.Height = 8f;
                for (int k = 0; k < CurrentRoute.Count; ++k) {
                    int i = CurrentRoute[k];
                    int j = CurrentRoute[k + 1];

                    Vector2 diff = _positions[j] - _positions[i];
                    Vector2 mid = (_positions[i] + _positions[j]) * 0.5f;
                    float len = diff.Length;
                    float ang = (float) Math.Atan2(diff.Y, diff.X);
                    _sConnSprite.Position = ((mid - CameraPos) * Scale) + centre;
                    Color4 clr = _sConnSprite.Colour;
                    clr.G = 1f - OpenTKTools.Tools.Clamp(Math.Abs(len - this[i, j])
                        / (this[i, j] * 4f), 0f, 1f);
                    clr.B = clr.G;
                    _sConnSprite.Colour = clr;
                    _sConnSprite.Width = Scale * len;
                    _sConnSprite.Rotation = ang;
                    _sConnSprite.Render(shader);
                }
            }

            _sNodeSprite.Colour = Color4.White;
            _sNodeSprite.Scale = new Vector2(0.125f);
            for (int i = 0; i < Count; ++i) {
                if (i == SelectedVertex) continue;

                _sNodeSprite.Position = ((_positions[i] - CameraPos) * Scale) + centre;
                _sNodeSprite.Render(shader);
            }

            if (SelectedVertex != -1) {
                _sNodeSprite.Colour = Color4.LimeGreen;

                _sNodeSprite.Position = ((_positions[SelectedVertex] - CameraPos) * Scale) + centre;
                _sNodeSprite.Render(shader);
            }
        }
Exemplo n.º 17
0
 protected override void OnRender(SpriteShader shader, Vector2 renderPosition = new Vector2())
 {
     myFrameSprite.Position = renderPosition;
     myFrameSprite.Colour   = (IsEnabled ? OpenTK.Graphics.Color4.White : DisabledColour);
     myFrameSprite.Render(shader);
 }
        public void Render(SpriteShader shader)
        {
            Vector2 centre = new Vector2(400f, 300f);

            _sNodeSprite.Colour = new Color4(127, 127, 127, 191);
            _sNodeSprite.Scale  = new Vector2(0.125f * 1.05f);
            for (int i = 0; i < Count; ++i)
            {
                _sNodeSprite.Position = ((_positions[i] - CameraPos) * Scale) + centre;
                _sNodeSprite.Render(shader);
            }

            if (HighlightedEdges != null)
            {
                _sConnSprite.Height = 4f;
                for (int k = (HighlightedEdges.Length >> 1) - 1; k >= 0; --k)
                {
                    int i = HighlightedEdges[k, 0];
                    int j = HighlightedEdges[k, 1];

                    Vector2 diff = _positions[j] - _positions[i];
                    Vector2 mid  = (_positions[i] + _positions[j]) * 0.5f;
                    float   len  = diff.Length;
                    float   ang  = (float)Math.Atan2(diff.Y, diff.X);
                    _sConnSprite.Position = ((mid - CameraPos) * Scale) + centre;
                    Color4 clr = _sConnSprite.Colour;
                    clr.G = 1f - OpenTKTools.Tools.Clamp(Math.Abs(len - this[i, j])
                                                         / (this[i, j] * 4f), 0f, 1f);
                    clr.B = clr.G;
                    _sConnSprite.Colour   = clr;
                    _sConnSprite.Width    = Scale * len;
                    _sConnSprite.Rotation = ang;
                    _sConnSprite.Render(shader);
                }
            }

            if (CurrentRoute != null)
            {
                _sConnSprite.Height = 8f;
                for (int k = 0; k < CurrentRoute.Count; ++k)
                {
                    int i = CurrentRoute[k];
                    int j = CurrentRoute[k + 1];

                    Vector2 diff = _positions[j] - _positions[i];
                    Vector2 mid  = (_positions[i] + _positions[j]) * 0.5f;
                    float   len  = diff.Length;
                    float   ang  = (float)Math.Atan2(diff.Y, diff.X);
                    _sConnSprite.Position = ((mid - CameraPos) * Scale) + centre;
                    Color4 clr = _sConnSprite.Colour;
                    clr.G = 1f - OpenTKTools.Tools.Clamp(Math.Abs(len - this[i, j])
                                                         / (this[i, j] * 4f), 0f, 1f);
                    clr.B = clr.G;
                    _sConnSprite.Colour   = clr;
                    _sConnSprite.Width    = Scale * len;
                    _sConnSprite.Rotation = ang;
                    _sConnSprite.Render(shader);
                }
            }

            _sNodeSprite.Colour = Color4.White;
            _sNodeSprite.Scale  = new Vector2(0.125f);
            for (int i = 0; i < Count; ++i)
            {
                if (i == SelectedVertex)
                {
                    continue;
                }

                _sNodeSprite.Position = ((_positions[i] - CameraPos) * Scale) + centre;
                _sNodeSprite.Render(shader);
            }

            if (SelectedVertex != -1)
            {
                _sNodeSprite.Colour = Color4.LimeGreen;

                _sNodeSprite.Position = ((_positions[SelectedVertex] - CameraPos) * Scale) + centre;
                _sNodeSprite.Render(shader);
            }
        }
Exemplo n.º 19
0
 protected override void OnRender(SpriteShader shader, Vector2 renderPosition = new Vector2())
 {
     myButtonSprite.Position = renderPosition;
     myButtonSprite.Colour   = (IsEnabled ? Colour : DisabledColour);
     myButtonSprite.Render(shader);
 }
Exemplo n.º 20
0
 protected virtual void OnRender(SpriteShader shader, Vector2 renderPosition = new Vector2())
 {
 }
Exemplo n.º 21
0
 public override void Draw(SpriteShader shader)
 {
     Sprite.Scale = Sprite.Scale * 0.95f;
     base.Draw(shader);
 }