// функция отрисвки сцены private void Draw() { // в зависимсоти от установленног оредима отрисовываем сцену в черном или белом цвете if (comboBox2.SelectedIndex == 0) { // цвет очистки окна Gl.glClearColor(255, 255, 255, 1); } else { Gl.glClearColor(0, 0, 0, 1); } Gl.glClear(Gl.GL_COLOR_BUFFER_BIT | Gl.GL_DEPTH_BUFFER_BIT); Gl.glLoadIdentity(); // в зависимсоти от установленног оредима отрисовываем сцену в черном или белом цвете if (comboBox2.SelectedIndex == 0) { // цвет рисования Gl.glColor3d(0, 0, 0); } else { Gl.glColor3d(255, 255, 255); } Gl.glPushMatrix(); // определяем установленную камеру int camera = comboBox1.SelectedIndex; // используем параметры для установленой камеры Gl.glTranslated(camera_date[camera, 0], camera_date[camera, 1], camera_date[camera, 2]); Gl.glRotated(camera_date[camera, 3], camera_date[camera, 4], camera_date[camera, 5], camera_date[camera, 6]); Gl.glPushMatrix(); // отрисовываем сеточную плоскость, которая нам будет напоминать где находится земля ) DrawMatrix(50); // выполняем просчет взрыва motionStart.Calculate(globalTime); Gl.glPopMatrix(); Gl.glPopMatrix(); Gl.glFlush(); // refreshing the window GalacticWindow.Invalidate(); }
// form initialization public GalacticForm() { InitializeComponent(); GalacticWindow.InitializeContexts(); }