Уроки, алгоритмы, программы, примеры

Материалы по разделам

Построения
на плоскости (2D)
Графика
в пространстве (3D)
Вычислительная
геометрия
Физическое
моделирование
Фрактальная
графика

Новые комментарии

У меня проблема вот с этим: gl.Clear(OpenGL.GL_COLOR_BUFFER_BIT | OpenGL.GL_DEPTH_BUFFER_BIT);. Вылезает ошибка: CS1061 "object" не содержит определения "GL_COLOR_BUFFER_BIT", и не удалось найти доступный метод расширения "GL_COLOR_BUFFER_BIT",...
Большое спасибо. Единственный код который прошел без каких либо ошибок. Ура!!!
Скажите пожалуйста, подскажите алгоритм по которому по заданным точкам можно определить тип многогранника, скажем это куб или прямоугольный параллелепипед. Нашел теорию по этим фигурам: https://www.mat... https://www.mat... Акцентировать внимание...
Всем у кого не работает. файл wizard.script Ещё одно упоминание Glut32 в строке "if (!VerifyLibFile(dir_nomacro_lib, _T("glut32"), _T("GLUT's"))) return false;" меняем на "if (!VerifyLibFile(dir_nomacro_lib, _T("freeglut"), _T("GLUT's"))) return...
Не получается, емаё

Счетчики и рейтинг

Рейтинг@Mail.ru Яндекс.Метрика
Среда программирования: 
NetBeans IDE

Для подключения OpenGL под Linux не имея при этом root прав нужно выполнить следующие действия:

  1. Получить бинарные файлы библиотеки freeglut
  2. Открываем терминал и выполняем команды

    cd $HOME
    wget -O freeglut-master.zip https://codeload.github.com/LuaDist/freeglut/zip/master
    unzip freeglut-master.zip
    cmake freeglut-master
    cd freeglut-master
    ./configure --prefix=$HOME/freeglut
    make all
    make install

    Альтернатива (готовая сборка под Debian):

    cd $HOME
    wget http://grafika.me/files/freeglut-bin.zip
    unzip freeglut-bin.zip

  3. Настроить текущий проект
  4. File -> Project Properties -> Build -> C++ Compiler -> Include Directories -> ... -> Add
    Открываем домашний каталог и выбираем ./freeglut/include

    Build -> Linker -> Libraries -> .. -> Add PkgConfig Library -> Добавляем gl и glu
    Build -> Linker -> Libraries -> .. -> Add Library File
    Открываем домашний каталог и выбираем ./freeglut/lib/libglut.a

  5. Проверка
  6. Заходим в Files -> Source Files -> main.cpp и вставляем в поле код, указанный в конце статьи. После этого запускаем проект (F6)

    Код:

    #include "GL/glut.h"
     
    void render() {
    	glClear(GL_COLOR_BUFFER_BIT);
     
    	//Рисуем треугольник
    	glColor3ub(0xff, 0xff, 0x00);
    	glBegin(GL_TRIANGLES);
    		glVertex2f(-0.5,-0.5);
    		glVertex2f(0.0,0.5);
    		glVertex2f(0.5,-0.5);
    	glEnd();
     
            glutSwapBuffers();
    }
     
    int main(int argc, char **argv) {
     
    	// инициализация
    	glutInit(&argc, argv);
    	glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGBA);
    	glutInitWindowPosition(100,100);
    	glutInitWindowSize(640, 480);
    	glutCreateWindow("Test");
     
    	// регистрация обратных вызовов
    	glutDisplayFunc(render);
     
    	// Основной цикл GLUT
    	glutMainLoop();
     
    	return 0;
    }

Прикрепленный файлРазмер
freeglut-bin.zip992.36 кб