// --- Application Methods --- #region Init() /// <summary> /// <para> /// Initialize depth buffer, light source, material property, and lighting model. /// </para> /// </summary> private static void Init() { float[] materialAmbient = { 1.0f, 1.0f, 1.0f, 1.0f }; float[] materialDiffuse = { 1.0f, 0.2f, 1.0f, 1.0f }; float[] materialSpecular = { 1.0f, 1.0f, 1.0f, 1.0f }; float[] materialShininess = { 50.0f }; float[] light0Position = { 1.0f, 0.1f, 1.0f, 0.0f }; float[] light1Position = { -1.0f, 0.1f, 1.0f, 0.0f }; float[] lightModelAmbient = { 0.3f, 0.3f, 0.3f, 1.0f }; Gl.glMaterialfv(Gl.GL_FRONT, Gl.GL_AMBIENT, materialAmbient); Gl.glMaterialfv(Gl.GL_FRONT, Gl.GL_DIFFUSE, materialDiffuse); Gl.glMaterialfv(Gl.GL_FRONT, Gl.GL_SPECULAR, materialSpecular); Gl.glMaterialfv(Gl.GL_FRONT, Gl.GL_SHININESS, materialShininess); Gl.glLightfv(Gl.GL_LIGHT0, Gl.GL_POSITION, light0Position); Gl.glLightfv(Gl.GL_LIGHT1, Gl.GL_POSITION, light1Position); Gl.glLightModelfv(Gl.GL_LIGHT_MODEL_AMBIENT, lightModelAmbient); Gl.glEnable(Gl.GL_LIGHTING); Gl.glEnable(Gl.GL_LIGHT0); Gl.glEnable(Gl.GL_LIGHT1); Gl.glDepthFunc(Gl.GL_LESS); Gl.glEnable(Gl.GL_DEPTH_TEST); Gl.glEnable(Gl.GL_AUTO_NORMAL); nurb = Glu.gluNewNurbsRenderer(); Glu.gluNurbsProperty(nurb, Glu.GLU_SAMPLING_TOLERANCE, 25.0f); Glu.gluNurbsProperty(nurb, Glu.GLU_DISPLAY_MODE, Glu.GLU_FILL); }
// --- Application Methods --- #region Init() /// <summary> /// <para> /// Initialize material property and depth buffer. /// </para> /// </summary> private static void Init() { float[] materialDiffuse = { 0.7f, 0.7f, 0.7f, 1.0f }; float[] materialSpecular = { 1.0f, 1.0f, 1.0f, 1.0f }; float[] materialShininess = { 100.0f }; Gl.glClearColor(0.0f, 0.0f, 0.0f, 1.0f); Gl.glMaterialfv(Gl.GL_FRONT, Gl.GL_DIFFUSE, materialDiffuse); Gl.glMaterialfv(Gl.GL_FRONT, Gl.GL_SPECULAR, materialSpecular); Gl.glMaterialfv(Gl.GL_FRONT, Gl.GL_SHININESS, materialShininess); Gl.glEnable(Gl.GL_LIGHTING); Gl.glEnable(Gl.GL_LIGHT0); Gl.glDepthFunc(Gl.GL_LESS); Gl.glEnable(Gl.GL_DEPTH_TEST); Gl.glEnable(Gl.GL_AUTO_NORMAL); Gl.glEnable(Gl.GL_NORMALIZE); InitSurface(); nurb = Glu.gluNewNurbsRenderer(); Glu.gluNurbsProperty(nurb, Glu.GLU_SAMPLING_TOLERANCE, 25.0f); Glu.gluNurbsProperty(nurb, Glu.GLU_DISPLAY_MODE, Glu.GLU_FILL); Gl.glMatrixMode(Gl.GL_MODELVIEW); Gl.glLoadIdentity(); Gl.glTranslatef(0.0f, 0.0f, -5.0f); }
// --- Application Methods --- #region Init() /// <summary> /// <para> /// Initialize material property and depth buffer. /// </para> /// </summary> private static void Init() { float[] materialDiffuse = { 0.7f, 0.7f, 0.7f, 1.0f }; float[] materialSpecular = { 1.0f, 1.0f, 1.0f, 1.0f }; float[] materialShininess = { 100.0f }; Gl.glClearColor(0.0f, 0.0f, 0.0f, 0.0f); Gl.glMaterialfv(Gl.GL_FRONT, Gl.GL_DIFFUSE, materialDiffuse); Gl.glMaterialfv(Gl.GL_FRONT, Gl.GL_SPECULAR, materialSpecular); Gl.glMaterialfv(Gl.GL_FRONT, Gl.GL_SHININESS, materialShininess); Gl.glEnable(Gl.GL_LIGHTING); Gl.glEnable(Gl.GL_LIGHT0); Gl.glEnable(Gl.GL_DEPTH_TEST); Gl.glEnable(Gl.GL_AUTO_NORMAL); Gl.glEnable(Gl.GL_NORMALIZE); InitSurface(); nurb = Glu.gluNewNurbsRenderer(); Glu.gluNurbsProperty(nurb, Glu.GLU_SAMPLING_TOLERANCE, 25.0f); Glu.gluNurbsProperty(nurb, Glu.GLU_DISPLAY_MODE, Glu.GLU_FILL); Glu.gluNurbsCallback(nurb, Glu.GLU_ERROR, new Glu.NurbsErrorCallback(NurbsError)); }
// --- Application Methods --- #region Init() /// <summary> /// <para> /// Initialize depth buffer, light source, material property, and lighting model. /// </para> /// </summary> private static void Init() { float[] materialAmbient = {1.0f, 1.0f, 1.0f, 1.0f}; float[] materialDiffuse = {1.0f, 0.2f, 1.0f, 1.0f}; float[] materialSpecular = {1.0f, 1.0f, 1.0f, 1.0f}; float[] materialShininess = {50.0f}; float[] light0Position = {1.0f, 0.1f, 1.0f, 0.0f}; float[] light1Position = {-1.0f, 0.1f, 1.0f, 0.0f}; float[] lightModelAmbient = {0.3f, 0.3f, 0.3f, 1.0f}; Gl.glMaterialfv(Gl.GL_FRONT, Gl.GL_AMBIENT, materialAmbient); Gl.glMaterialfv(Gl.GL_FRONT, Gl.GL_DIFFUSE, materialDiffuse); Gl.glMaterialfv(Gl.GL_FRONT, Gl.GL_SPECULAR, materialSpecular); Gl.glMaterialfv(Gl.GL_FRONT, Gl.GL_SHININESS, materialShininess); Gl.glLightfv(Gl.GL_LIGHT0, Gl.GL_POSITION, light0Position); Gl.glLightfv(Gl.GL_LIGHT1, Gl.GL_POSITION, light1Position); Gl.glLightModelfv(Gl.GL_LIGHT_MODEL_AMBIENT, lightModelAmbient); Gl.glEnable(Gl.GL_LIGHTING); Gl.glEnable(Gl.GL_LIGHT0); Gl.glEnable(Gl.GL_LIGHT1); Gl.glDepthFunc(Gl.GL_LESS); Gl.glEnable(Gl.GL_DEPTH_TEST); Gl.glEnable(Gl.GL_AUTO_NORMAL); nurb = Glu.gluNewNurbsRenderer(); Glu.gluNurbsProperty(nurb, Glu.GLU_SAMPLING_TOLERANCE, 25.0f); Glu.gluNurbsProperty(nurb, Glu.GLU_DISPLAY_MODE, Glu.GLU_FILL); }
/// <summary> /// <para> /// Initialize material property and depth buffer. /// </para> /// </summary> private static void Init() { float[] materialDiffuse = {0.7f, 0.7f, 0.7f, 1.0f}; float[] materialSpecular = {1.0f, 1.0f, 1.0f, 1.0f}; float[] materialShininess = {100.0f}; Gl.glClearColor(0.0f, 0.0f, 0.0f, 0.0f); Gl.glMaterialfv(Gl.GL_FRONT, Gl.GL_DIFFUSE, materialDiffuse); Gl.glMaterialfv(Gl.GL_FRONT, Gl.GL_SPECULAR, materialSpecular); Gl.glMaterialfv(Gl.GL_FRONT, Gl.GL_SHININESS, materialShininess); Gl.glEnable(Gl.GL_LIGHTING); Gl.glEnable(Gl.GL_LIGHT0); Gl.glEnable(Gl.GL_DEPTH_TEST); Gl.glEnable(Gl.GL_AUTO_NORMAL); Gl.glEnable(Gl.GL_NORMALIZE); InitSurface(); nurb = Glu.gluNewNurbsRenderer(); Glu.gluNurbsProperty(nurb, Glu.GLU_SAMPLING_TOLERANCE, 25.0f); Glu.gluNurbsProperty(nurb, Glu.GLU_DISPLAY_MODE, Glu.GLU_FILL); Glu.gluNurbsCallback(nurb, Glu.GLU_ERROR, new Glu.NurbsErrorCallback(NurbsError)); }
/// <summary> /// <para> /// Initialize material property and depth buffer. /// </para> /// </summary> private static void Init() { float[] materialDiffuse = {0.7f, 0.7f, 0.7f, 1.0f}; float[] materialSpecular = {1.0f, 1.0f, 1.0f, 1.0f}; float[] materialShininess = {100.0f}; Gl.glClearColor(0.0f, 0.0f, 0.0f, 1.0f); Gl.glMaterialfv(Gl.GL_FRONT, Gl.GL_DIFFUSE, materialDiffuse); Gl.glMaterialfv(Gl.GL_FRONT, Gl.GL_SPECULAR, materialSpecular); Gl.glMaterialfv(Gl.GL_FRONT, Gl.GL_SHININESS, materialShininess); Gl.glEnable(Gl.GL_LIGHTING); Gl.glEnable(Gl.GL_LIGHT0); Gl.glDepthFunc(Gl.GL_LESS); Gl.glEnable(Gl.GL_DEPTH_TEST); Gl.glEnable(Gl.GL_AUTO_NORMAL); Gl.glEnable(Gl.GL_NORMALIZE); InitSurface(); nurb = Glu.gluNewNurbsRenderer(); Glu.gluNurbsProperty(nurb, Glu.GLU_SAMPLING_TOLERANCE, 25.0f); Glu.gluNurbsProperty(nurb, Glu.GLU_DISPLAY_MODE, Glu.GLU_FILL); Gl.glMatrixMode(Gl.GL_MODELVIEW); Gl.glLoadIdentity(); Gl.glTranslatef(0.0f, 0.0f, -5.0f); }