Code Snippets.
Расширение VK_EXT_dynamic_rendering
Расширение VK_KHR_buffer_device_address или для буферов наконец завезли адреса
Механизм запросов (queries) в Vulkan
Разбор выравнивания буферов (UBO, SSBO) в Vulkan
Vulkan с классами - пишем deferred renderer
Анимация системы частиц при помощи вычислительных шейдеров в Vulkan
Программирование Vulkan при помощи классов - работа с текстурами
Программирование Vulkan при помощи классов
Vulkan with classes
Библиотека VMA (Vulkan Memory Allocator)
Особенности систем координат в Vulkan, отличия от OpenGL
Рендеринг треугольника во внеэкранный буфер
Шейдеры, pipeline layout, compute pipeline
Vulkan. Работа с памятью и буферами
Vulkan. Устройства
Vulkan. Начало
Visibility Buffer
Mesh-шейдеры и расширение NV_mesh_shader
Вихревой шум (curl noise)
Хэш-таблицы на GPU (CUDA и GLSL)
Реализация эффекта motion blur
Иерархический z-буфер: создание и использование для определения видимости
Indirect-рендеринг
Битоническая сортировка при помощи вычислительных шейдеров
Рендеринг поверхности под дождем
Рендеринг полос дождя
Непериодическое повторение текстуры
Проективное текстурирование
Скелетная анимация с ASSIMP
Трехмерные SDF и операции над ними
Рендеринг кожи
Physically Based Rendering
Что такое гамма ?
Текстуры движения
Detail normal maps
Using modern OpenGL with python
Order-Independent Transparency в OpenGL
Расширение ARB_bindless_texture
Вычислительные шейдеры в OpenGL
Расширение ARB_multi_draw_indirect
Работа с библиотекой GLFW
Расширение ARB_vertex_attrib_binding
Расширение ARB_multi_bind
Использование спецификатора layout в GLSL
ARB_shader_image_load_store
ARB_shader_storage_buffer_object
Расширение ARB_buffer_storage
Расширение ARB_texture_storage
Алгоритмы тесселляции треугольников
Расширение ARB_shader_storage_buffer_object
Расширение ARB_shader_image_load_store
Расширение ARB_debug_output
Двулучевая функция отражательной способности (BRDF)
Атомарные счетчики в OPenGL. Расширение ARB_atomic_counters
ARB_separate_shader_objects
Расширение GLSL в последних версиях OpenGL .
Дополнительные возможности OpenGL 3/4 .
Transform feedback в OpenGL 3.3 и 4.1 .
Нестандартные форматы float'ов в OpenGL.
Текстурные форматы в OpenGL 3.3 и выше.
Тесселляция в современном OpenGL
Геометрические шейдеры в OpenGL 3.3
Uniform-буфера и uniform-блоки в OpenGL 3.3
Расширение EXT_direct_state_access
Работа с OpenGL 3.3 с использованием библиотек freeglut и glew
Расширения по работе с текстурами, вошедшие в последние версии OpenGL
Расширения ARB_map_buffer_range и ARB_copy_buffer
Расширение ARB_sync
Асинхронные запросы в OpenGL. Расширения ARB_occlusion_query2 и ARB_timer_query
Кривая и код Мортона. Space filling curves
Расширение ARB_vertex_array_object
Расширение ARB_sampler_objects
Light Pre-Pass Rendering
Проверка двух Oriented Bounding Box на пересечение
Расширение ARB_get_program_binary
Модели освещения
Работаем с WebGL
Расширение NV_transform_feedback
Расширение NV_fence
Screen-Space Ambient Occlusion
Моделирование глубины резкости. Depth Of Field (DOF).
Реализация операции scatter на GPU на примере построения гистограмм.
Получение трехмерных координат в системе наблюдателя по значениям из буфера глубины
Расширение EXT_bindable_uniform.
Deferred Shading.
Soft Particles.
Расширение EXT_texture_array.
Расширения EXT_draw_instanced и EXT_texture_buffer_object.
Работа с целочисленными текстурами и целыми числами в шейдерах.
Рендеринг воды.
Работа с библиотекой GLew.
Сортировка на GPU. Битоническая сортировка.
Работа с OpenGL и GLUT в языке Python, библиотека PyOpenGL, расширение Python'а.
Работа с библиотекой DevIL.
Рендеринг в вершинный буфер.
High Dynamic Range Rendering в OpenGL.
Variance Shadow Maps.
Использование MRT в OpenGL.
Texture rectangles.
Скелетная анимация.
Рендеринг неба.
Основы CSG.
Основы Sampling Theory.
Как в вершинном шейдере правильно преобразовывать нормали и другие вектора, "привязанные" к объекту.
Depth Peel или разложение сцены по слоям.
Рендеринг травы.
Основы программирования GPU, реализация условных конструкций на современных GPU.
Вычисление коэффициентов Френеля.
Расширение EXT_pixel_buffer_object.
Расширение EXT_framebuffer_object.
Построение теней при помощи теневых карт.
Рендеринг отражений в текстуру.
Parallax and relief mapping.
Построение теней при помощи теневых объемов.
Рендеринг меха.
Эффект сгорания объекта как в Doom 3.
Пространственные индексы (spatial index) и их использование
Реализация bumpmapping'а - построение базиса касательного пространства, быстрая нормализация векторов
Анизотропная модель освещения
Расширение ARB_vertex_buffer_object в OpenGL
Работа с библиотекой Audiere.
Программирование 3D-звука при помощи библиотеки OpenAL.
OpenAL 1.1, расширение EFX.
Нефотореалистический рендеринг.
Extended cartoon shader.
Построение клеточных текстур.
Texture bombing.
Моделирование растений при помощи L-систем.
Cooperative groups в CUDA
Некоторые возможности CUDA, часть 2
Некоторые возможности CUDA, часть 1
Динамический параллелизм в CUDA
Команда Shuffle и ее использование в CUDA
Работа с Unified - памятью в CUDA
Работа с библиотекой thrust в CUDA
Основы CUDA.
Программирование на CUDA (часть 2).
Спецурс по CUDA на Google Groups.
Взаимодействие CUDA и OpenGL
История и основные особенности Mac OS X
Программирование для Mac OS X, работа с ресурсами.
Язык Objective-C.
Программирование для Mac OS X, делаем калькулятор.
Программирование для Mac OS X, пишем скринсейвер.
Программирование для Mac OS X. Пишем OpenGL-приложения с использованием GLUT.
Программирование для Mac OS X. Пишем OpenGL-приложения с использованием Cocoa.
Работа с кривыми Безье в Mac OS X.
Работа с Core Image
Cocoa-Bindings
Получение эффекта плавного изменение размера и содержимого окна как в утилите System Preferences
Компиляция кода из книги по шейдерам для Mac OS X
Моя страничка по Mac OS X
Интеграция скриптов на Lua с С++
Использование скриптового языка Lua
За что я не люблю С++.
Об использовании венгерской нотации.
Фрагментные программы. Расширение ARB_fragment_program
Вершинные программы. Расширение ARB_vertex_program
Эффективные методы попиксельного учета ослабевания интенсивности источника света в зависимости от расстояния до него (distance attenuation)
Использование Р-буферов для внеэкранного рендеринга. Расширения WGL_ARB_pbuffer, WGL_ARB_pixel_format и WGL_ARB_render_texture.
Что такое z-fighting и как с ним бороться
Reflective Bumpmapping в OpenGL
Расширение NV_texture_shader в его использование в OpenGL
Работа с расширениями OpenGL в Linux
Попиксельное бликовое (specular) освещение с использованием register combiner'ов
Попиксельное диффузное освещение с использованием register combiner'ов
Работа с картами нормалей (bumpmaps)
Расширение NV_register_combiners в OpenGL
Расширение ARB_texture_env_dot3 в OpenGL и простейший попиксельный bumpmapping
Расширение ARB_texture_cube_map в OpenGL
Расширение EXT_fog_coord в OpenGL
Расширения EXT_texture_env_combine и ARB_texture_env_combine в OpenGL
Мультитекстурирование в OpenGL
Расширения EXT_texture_env_add и ARB_texture_env_add в OpenGL
Работа с расширениями OpenGL
Copyright © Alexey V. Boreskoff 2003-2010