//int m_ParticleSize = 30; /// <summary> /// /// </summary> protected override void SwitchOn() { int count = this.SwitchList.Count; for (int i = 0; i < count; i++) { this.SwitchList[i].On(); } OpenGL.Enable(OpenGL.GL_VERTEX_PROGRAM_POINT_SIZE); OpenGL.Enable(OpenGL.GL_POINT_SPRITE_ARB); OpenGL.TexEnv(OpenGL.GL_POINT_SPRITE_ARB, OpenGL.GL_COORD_REPLACE_ARB, OpenGL.GL_TRUE); OpenGL.Hint(OpenGL.GL_POINT_SMOOTH_HINT, OpenGL.GL_NICEST); //GL.GetDelegateFor<GL.glBlendEquation>()(GL.GL_FUNC_ADD_EXT); //GL.GetDelegateFor<GL.glBlendFuncSeparate>()(GL.GL_SRC_ALPHA, GL.GL_ONE_MINUS_SRC_ALPHA, GL.GL_ONE, GL.GL_ONE); //float[] quadratic = { 1.0f, 0, 0, 1.0f }; //GL.PointParameter(GL.GL_POINT_DISTANCE_ATTENUATION_ARB, quadratic); //GL.PointParameter(GL.GL_POINT_FADE_THRESHOLD_SIZE_ARB, 10.0f); //GL.TexEnvf(GL.GL_POINT_SPRITE_ARB, GL.GL_COORD_REPLACE_ARB, GL.GL_TRUE); //GL.PointParameter(GL.GL_POINT_SIZE_MIN_ARB, m_ParticleSize); ////GL.TexEnvi(GL.GL_POINT_SPRITE, GL.GL_COORD_REPLACE, GL.GL_TRUE); //GL.PointParameter(GL.GL_POINT_SPRITE_COORD_ORIGIN, GL.GL_LOWER_LEFT); }
private void CreateRenderContext() { // Initialises OpenGL. var renderContext = new FBORenderContext(); // Create the render context. renderContext.Create(OpenGLVersion, Width, Height, 32, null); this.renderContext = renderContext; renderContext.MakeCurrent(); // Set the most basic OpenGL styles. OpenGL.ShadeModel(OpenGL.GL_SMOOTH); // 天蓝色背景 OpenGL.ClearColor(0x87 / 255.0f, 0xce / 255.0f, 0xeb / 255.0f, 0xff / 255.0f); OpenGL.ClearDepth(1.0f); OpenGL.Enable(OpenGL.GL_DEPTH_TEST); OpenGL.DepthFunc(OpenGL.GL_LEQUAL); OpenGL.Hint(OpenGL.GL_PERSPECTIVE_CORRECTION_HINT, OpenGL.GL_NICEST); }
/// <summary> /// /// </summary> protected virtual void CreateRenderContext() { // Initialises OpenGL. var renderContext = new FBORenderContext(); // Create the render context. renderContext.Create(Width, Height, 32, null); this.renderContext = renderContext; renderContext.MakeCurrent(); // Set the most basic OpenGL styles. OpenGL.ShadeModel(OpenGL.GL_SMOOTH); OpenGL.ClearDepth(1.0f); OpenGL.Enable(OpenGL.GL_DEPTH_TEST); OpenGL.DepthFunc(OpenGL.GL_LEQUAL); OpenGL.Hint(OpenGL.GL_PERSPECTIVE_CORRECTION_HINT, OpenGL.GL_NICEST); if (this.designMode) { GLCanvasHelper.ResizeGL(this.Width, this.Height); } }