public void Draw(double time) { ParentStage.ShaderProgram.SetUniform("in_color", _colours.EvenBackgroundColour); BackgroundPolygon.Draw(time, 1); ParentStage.ShaderProgram.SetUniform("in_color", _colours.OddBackgroundColour); BackgroundPolygon.Draw(time, 2); ParentStage.ShaderProgram.SetUniform("in_color", _colours.EvenOutlineColour); _onsetDrawing.DrawOutlines(time, 1); ParentStage.ShaderProgram.SetUniform("in_color", _colours.OddOutlineColour); _onsetDrawing.DrawOutlines(time, 2); ParentStage.ShaderProgram.SetUniform("in_color", _colours.EvenOpposingColour); _onsetDrawing.Draw(time, 1); if (_onsetDrawing.DrawingIndex < _onsetDrawing.DrawingCount && Collided) { ParentStage.ShaderProgram.SetUniform("in_color", _colours.EvenCollisionColour); _onsetDrawing.DrawCurrentBeat(time, 1); } CenterPolygon.Draw(time, 1); ParentStage.ShaderProgram.SetUniform("in_color", _colours.OddOpposingColour); _onsetDrawing.Draw(time, 2); if (_onsetDrawing.DrawingIndex < _onsetDrawing.DrawingCount && Collided) { ParentStage.ShaderProgram.SetUniform("in_color", _colours.OddCollisionColour); _onsetDrawing.DrawCurrentBeat(time, 2); } CenterPolygon.Draw(time, 2); ParentStage.ShaderProgram.SetUniform("in_color", _colours.EvenOutlineColour); CenterPolygon.DrawOutline(time, 1); ParentStage.ShaderProgram.SetUniform("in_color", _colours.OddOutlineColour); CenterPolygon.DrawOutline(time, 2); if (CurrentColourMode == ColourMode.BlackAndWhite) { ParentStage.ShaderProgram.SetUniform("in_color", _colours.EvenOpposingColour); } else if (CurrentColourMode == ColourMode.Regular) { ParentStage.ShaderProgram.SetUniform("in_color", Color4.White); } Player.Draw(time); ParentStage.ShaderProgram.SetUniform("in_color", Color4.SkyBlue); //_p2.Draw(time); }
public override void Draw(double time) { GL.Disable(EnableCap.CullFace); _shaderProgram.Bind(); _shaderProgram.SetUniform("mvp", SceneManager.ScreenCamera.WorldModelViewProjection); _shaderProgram.SetUniform("in_color", Color4.White); //Draw the player _player.Draw(time); //Draw the center polygon _centerPolygon.Draw(time); _shaderProgram.SetUniform("in_color", Color4.Black); _centerPolygon.DrawOutline(time); //Cleanup the program _shaderProgram.UnBind(); _loadingFontDrawing.DrawingPrimitives.Clear(); float yOffset = 0; yOffset += _loadingFontDrawing.Print(_loadingFont.Font, _loadingText, _loadingTextPosition).Height; yOffset = MathHelper.Clamp(yOffset + 200 - 50 * SceneManager.ScreenCamera.Scale.Y, yOffset, SceneManager.GameWindow.Height * 0.5f); var pos = new Vector3(0, -yOffset, 0); yOffset += _loadingFontDrawing.Print(_loadingFont.Font, _songText, pos).Height; yOffset += _loadingFontDrawing.Print(_loadingFont.Font, _loadingStatus, new Vector3(0, -yOffset, 0), QFontAlignment.Centre).Height; _loadingFontDrawing.RefreshBuffers(); _loadingFontDrawing.Draw(); }
public override void Draw(double time) { _shaderProgram.Bind(); _shaderProgram.SetUniform("mvp", SceneManager.ScreenCamera.WorldModelViewProjection); _shaderProgram.SetUniform("in_color", Color4.White); //Draw the player _player.Draw(time); //Draw the center polygon _centerPolygon.Draw(time); _shaderProgram.SetUniform("in_color", Color4.Black); _centerPolygon.DrawOutline(time); //Cleanup the program _shaderProgram.UnBind(); _menuFontDrawing.RefreshBuffers(); _menuFontDrawing.Draw(); SceneManager.DrawTextLine("TURNT NINJA " + _gameVersion, new Vector3(-WindowWidth / 2 + 5, -WindowHeight / 2 + _versionFont.Font.MaxLineHeight, 0), Color.White, QFontAlignment.Left, _versionFont.Font); }