Документація

Посилання OpenGL

Інші туторіали

  • ogldev Гарний і ретельний туторіал
  • NeHe Детальний туторіал та ресурси по OpenGL 1.1. В основному все застаріло, але можна знайти цікаві речі.

Книги

  • Real-time Rendering 3. Фантастична книга для вивчення високорівневих концепцій.
  • GPU Pro book series. Детальні пояснення певних алгоритмів.

Інше

Інструменти для налагодження

  • NVidia Parallel NSight Дивовижний інструмент, який дає доступ до дуже детальних даних для профайлера. Рекомендується. Тільки для Visual Studio + Nvidia. Це те, що я використовую найбільше.
  • GLIntercept Генерує вебсторінку з списком OpenGL команд, кодом шейдерів, вмістом зображень, фреймбуферів. Трохи заскладний для освоєння, та дуже точний і корисний.
  • gdebugger профайлер

Бібліотеки

Вікна та різноманітне

  • GLFW , ми це використовуємо
  • GLUT, найстаріше, не підтримується, жахлива ліцензія, не рекомендується.
  • FreeGlut, те саме API, але з відкритим кодом.
  • SDL Я думаю, що тут трішки все дико, та деякі люди це люблять.
  • SFML. Включає кавоварку, пральну машину і мобільний телефон.

Завантаження розширень

Обережно, більшість бібліотек для завантаження розширень погано працюють з OpenGL 3+ Core. Насправді, я зміг заставити лише GLEW працювати, дещо змінивши код.

Якщо не впевнені, використовуйте GLEW, яка є в коді на сайті.

  • GLEW , це ми використовуємо
  • GLEE Я чув, що ця непогана
  • gl3w . Скрипт на Python, що генерує C++ файл.

Математичні бібліотеки

  • GLM, цю ми використовуємо. Добре зроблена. Пряма сумісність з OpenGl та CUDA.
  • Bullet’s Vectormath Ніколи не використовував, та здається, вона використовує SIMD (а це значить швидше, навіть якщо Ви не часто робите великі обчислення на CPU)
  • Boost.ublas . Дуже важка. Я не рекомендую її для OpenGL.
  • MathFu математична бібліотека від Google з SIMD оптимізаціями.

Завантаження зображень

  • stbimage Один сі файл до Вашого проекту і можна завантажувати jpeg, bmp та png файли !!!
  • SOIL Я рекомендую цю бібліотеку. Основана на stbimage, надає зручні функції для використання з OpenGL та DDS.
  • DevIL Бібліотека для завантаження зображень все в одному.
  • FreeImage … іще одна
  • Boost.GIL Велика і громіздка, не вміє jpg.
  • libjpg Типова бібліотека для завантаження jpg. Дещо складна для використання, та в інтернеті є достатньо прикладів.
  • libpng те саме для png.

Завантаження статичних об’єктів

Завантаження об’єктів поділених на частини (з’єданних)

  • Cal3D Завантажувач об’єктів Quake III чи Quake IV

Фізика

  • Bullet З відкритим кодом, використовується багатьма іграми і навіть фільмами.
  • Newton Безкоштовне, також дуже хороше.
  • ODE. Старе та нестабільне, уникайте.
  • PhysX
  • Havok (дорого)