Рубрики
C++ Программирование

STL: Итераторы

Введение Итераторы (iterators) в языке C++ представляют абстрактный механизм, обеспечивающий унифицированный доступ к элементам контейнеров, независимо от их конкретной внутренней реализации. В стандартной библиотеке они являются связующим звеном между контейнерами и алгоритмами. Итератор можно рассматривать как обобщенный указатель, инкапсулирующий операции перемещения и доступа к элементам контейнера. Стандарт языка определяет строгую иерархию категорий итераторов, каждая из […]

Рубрики
C++ Многопоточность Программирование

Введение в многопоточность: C++

С появлением стандарта C++11, библиотека STL была расширена, включив в себя прямую поддержку многопоточности через модуль в заголовочном файле <thread>. До стандарта C++11 приходилось использовать POSIX-потоки, а новый подход решал проблемы с портируемостью. Важное примечание: данная заметка опирается на знания двух предыдущих — теории и POSIX. Ознакомление с ними желательно. Принудительное завершение потоков в C++11 […]

Рубрики
3D мир Программирование

OpenGL 21: загрузка .glTF ч.3 — скелетные анимации

В данной заметке рассматриваются скелетные анимации в glTF

Рубрики
3D мир Программирование

OpenGL 20: загрузка .glTF ч.2 — базовые анимации

Внутреннее устройство и работа с файлами .glTF ч.2 — загрузка анимаций и применение их на сцене

Рубрики
Вольер с пингвинами Программирование

VS Code (flatpak) добавление библиотек

Данная заметка освещает использование дополнительных библиотек в vs code, установленный через flatpak (в примере на Steam Deck)

Рубрики
3D мир Программирование

OpenGL 19: загрузка .glTF ч.1 — статические сцены

Внутреннее устройство и работа с файлами .glTF ч.1 — загрузка моделей без анимации

Рубрики
3D мир Программирование

OpenGL 18: освещение ч.4 — физически-корректный рендеринг

Теория и реализация PBR средствами OpenGL и GLSL

Рубрики
3D мир Программирование

OpenGL 17: выбор объектов и элементы управления мышью

Заметка посвящена определению нажатия на объект путем записи идентификатора в текстуру и манипуляциям с объектом с помощью инструментов.

Рубрики
3D мир Программирование

OpenGL 16: рельефное текстурирование

В заметке рассмотрено использование карт нормалей и высот для рельефного текстурирования моделей с помощью методов normal mapping, parallax mapping, displacement mapping.

Рубрики
3D мир Программирование

OpenGL 15: гамма-коррекция

В заметке рассматриваются подходы к работе с гамма-коррекцией

Управление cookie