Графика
Страницы:
1 2 3 Следующая »
Recursive Tile-based architecture
Данная статья вводит понятие Recursive Tile-Based Architecture (RTBA), расширяющее возможности традиционной tile-based архитектуры. Предложенный подход позволяет работать с аппаратно-ускоренным тайловым растеризатором в терминах когерентного рейтрейсинга, каждый тайл рассматривается, как средство обработки пучка лучей.
Читать | Комментарии [116]
8 янв 2022
Освещение с использованием фотометрического профиля
Фотометрический профиль (ФП) описывает распределение интенсивности света точечного источника, полученные с помощью соответствующего измерительного оборудования. Используя данные ФП можно добиться эффекта симуляции сложных теней и нестандартного затухания света.
Читать | Комментарии [25]
3 июня 2020
Предрасчёт рейкаста для эффективного рендеринга травы и меха
Здравствуйте. В этой статье я хотел бы рассказать об алгоритме, который я разработал в результате своих экспериментов с предрасчётом трассировки лучей. Результат работы одной из промежуточных версий алгоритма можно увидеть здесь:
Читать | Комментарии [62]
18 авг 2019
На пути к эффективному алгоритму Global Illumination, часть 1
В этой статье мы рассмотрим небольшой исторический контекст разработки алгоритмов global illumination, а также поразмышляем, какими свойствами должен обладать оптимальный алгоритм расчёта global illumination.
Читать | Комментарии [157]
22 апр 2019
Синхронизации в Vulkan
Одно из важных отличий Vulkan от более старых графических API, это больший контроль над синхронизациями как с CPU, так и внутри GPU. И как всегда многопоточность и синхронизация — это достаточно сложная тема. Стоит помнить, что драйвер Vulkan не обязан оптимизировать вызовы API, поэтому для максимальной производительности синхронизации должны быть расставлены наиболее оптимальным образом.
Читать | Комментарии [36]
26 фев 2019
Пишем простой рейтрейсер используя Vulkan Raytracing
Всем привет! Сегодня я расскажу вам, как получить результат, изображенный на заглавной картинке к этой статье, используя Vulkan Raytracing.
Читать | Комментарии [62]
18 ноя 2018
Введение в Vulkan Raytracing
В какое время мы живем! Казалось, еще недавно мы часами ждали пока CPU просчитает знаменитое изображение за авторством Тернера Уиттеда, а сегодня нам доступны потребительские модели видеокарт с аппаратной поддержкой рейтрейсинга! Любой программист трехмерной графики скажет, что он мечтал об этом дне, когда мы, наконец, можем трассироваться в мировом пространстве в реальном времени.
Читать | Комментарии [183]
4 ноя 2018
Стоимость OpenGL команд.
В современных проектах для получения красивой картинки отрисовываются тысячи различных объектов: персонажи, строения, ландшафт, природа, эффекты и т.д. Разумеется есть разные способы отобразить на экране геометрию. В этой статье мы рассмотрим как сделать это эффективно, посчитаем и сравним стоимость различных API вызовов для отрисовки геометрии.
Читать | Комментарии [85]
8 фев 2017
Rectilinear Texture Warping
В данной статье я расскажу об адаптивном методе теневых карт под названием Rectilinear Texture Warping for Adaptive Shadow Maps, о его достоинствах и недостатках, а также о реальном опыте использования данного метода в проекте (и что из этого вышло).
Читать | Комментарии [29]
12 окт 2016
Vulkan API «Hello Triangle»
Статья описывает основные принципы работы с Vulkan API и включает в себя материал по установке SDK, обработке ошибок, работе с различными сущностями API и краткий курс по выводу треугольника, в качестве практической части. Работа позиционирует себя как быстрый экскурс в основы Vulkan API, не претендуя на полноту и оставляя детали на самостоятельное рассмотрение.
Читать | Комментарии [69]
15 сен 2016
Маленькая статья про Vulkan
Это небольшая статья для тех, кто хочет разобраться в основных концепциях нового графического API и его отличиях от предыдущего поколения. Я буду говорить о Vulkan vs OpenGL, но многие вещи можно применить и к другим API нового и старого поколений.
Читать | Комментарии [13]
1 сен 2016
Coverage Buffer из CryENGINE в деталях
Некоторое время назад я наткнулся в замечательной презентации Secrets of CryEGNINE 3 Graphics Technology от не менее замечательных Nickolay Kasyan, Nicolas Schulz и Tiago Sousa на описание любопытной технологии, названной авторами.
Читать | Комментарии [24]
21 окт 2015
Вставка одной поверхности в другую (многопоточный алгоритм)
В статье рассматривается метод встраивания одной поверхности в другую. Данная статья имеет некоторые «нечеткие» определения, и в ней не гарантируется работа метода на любой геометрии. Она носит скорее исследовательский и теоретический характер, но возможно и это кому-то поможет.
Читать | Комментарии [28]
9 сен 2015
Dynamic vertex pulling в Direct3D11
Данная статья рассказывает про то, как можно рисовать миллионы уникальных объектов в Direct3D11 с минимальным оверхедом на CPU и максимально близкой к D3D12 или «AMD Mantle» скоростью. В статье показан пример использования так называемых Structured Buffers.
Читать | Комментарии [38]
21 янв 2015
Screen space ambient occlusion с учетом нормалей и расчет одного отражения света.
В этой статье я расскажу, как я с нуля делал SSAO (Screen Space Ambient Occlusion — расчёт фонового освещения в экранном пространстве) с учетом нормалей. Сразу следует отметить, что это наиболее простая и прямолинейная реализация «в лоб», не претендующая на оптимальность или новизну. Статья будет полезна в первую очередь тем, кто имеет желание разобраться, как это работает.
Читать | Комментарии [69]
17 янв 2015
Объемы распространения света для непрямого освещения в режиме реального времени.
Данная статья описывает новый метод аппроксимации непрямого освещения динамических сцен для приложений реального времени, таких как видео игры. Мы используем трехмерные сетки и сферические функции для приближения пространственного и углового распределения света в сцене. Предложенный метод не требует предрасчётов и поддерживает большие сцены с помощью иерархии вложенных сеток.
Читать | Комментарии [78]
6 янв 2014
Кое-что о размытии изображения с помощью шейдеров.
Эта статья познакомит читателя с основными техниками размытия изображения при помощи GLSL шейдеров. Данные техники широко применяется в играх для создания таких эффектов как засветка (bloom), глубина резко изображаемого пространства (DOF), эфект движения на большой скорости итд.
Читать | Комментарии [44]
28 сен 2013
Скелетная анимация на пальцах.
Многие новички, которые только начинают постигать «скелетку», очень часто не понимают как она работает (даже при наличии многих статей на данном ресурсе) и что для её работы нужно, собственно им я и хотел бы объяснить на пальцах как работает скелетная анимация.
Читать | Комментарии [59]
26 дек 2012
Виртуальные текстуры
Виртуальная текстура (или мегатекстура ) — технология развитая Джоном Кармаком. Виртуальные текстуры снимают ограничения на арт, позволяют сделать игровой мир более уникальным, раскрасив неповторяющимися текстурами. В этой статье вы узнаете о структуре виртуальной текстуры и о процессе работы с ней.
Читать | Комментарии [103]
4 июля 2012
GPSM: Geometry Pitch Shadow Map
GPSM (Geometry Pitch Shadow Map) — еще один метод рендеринга теневых карт, дающий возможность реализовать тени, покрывающие огромные территории, используя всего одну текстуру, в которую происходит рендеринг (render target). Метод GPSM даёт для теней вдали от камеры наблюдения качество хуже, а вблизи — лучше. Этот метод я изобрел для своего движка и уже использую в двух проектах, решил поделится с вами, надеюсь, кому-то пригодится.
Читать | Комментарии [157]
30 апр 2012
OpenGL на Qt 4. Это просто! (часть 2)
Во 2-ой части продолжается рассмотрение работы с OpenGL на Qt 4. Читатель познакомится с настройкой контекста OpenGL, созданием анимации и простым наложением текстур. Заодно в рамках «чистого» OpenGL будет рассмотрена интерактивная графика с помощью режима выбора (выбираем объекты на экране для дальнейшей манипуляции с ними), в рамках «чистого» Qt будет продемонстрировано создание главного окна, меню (menu bar), задействованы механизм сигналов и слотов и технология дерева объектов (иерархии объектов).
Читать | Комментарии [17]
10 авг 2011
Software Occlusion Culling
Оклюжен кулинга сейчас, наверное, нет только у ленивых. Некоторые используют HW OC, у которых есть очевидные недостатки в виде латентности и дополнительной нагрузки на GPU. Другие используют софтовую растеризацию. К примеру, мы можем растеризовать глубину близлежащих оклюдеров (специальной или прямо рендер геометрии), затем проверять баунд боксы отрисовываемых объектов относительно этой глубины. Радостей от такого подхода может быть несколько.
Читать | Комментарии [134]
3 апр 2011
OpenGL на Qt 4. Это просто! (часть 1)
Это ознакомительная статья, посвящённая программированию 3D-графики OpenGL (Open Graphics Library — открытая графическая библиотека) с помощью кроссплатформенной библиотеки Qt 4 (Q + toolkit: «Q» — префикс классов (с красивым начертанием, по мнению разработчиков); toolkit — инструментарий). Я надеюсь, она окажется полезной для тех, кто впервые решил познакомиться с OpenGL и выбирает практичную и удобную библиотеку GUI (Graphical User Interface — графический интерфейс пользователя).
Читать | Комментарии [98]
19 янв 2011
Моделирование стеклянных поверхностей
С помощью современных графических адаптеров можно получать все более сложные динамические сцены. Это означает, что высококачественный (фотореалистичный) рендеринг переноситься из offline в реальное время. В частности, одной из насущных задач компьютерной графики является расчет и рендеринг глобального освещения и сложных материалов. В этой статье я хотел бы рассказать о моделировании стеклянных предметов.
Читать | Комментарии [63]
31 июля 2010
Графические файлы DDS. Что лучше: DXT1, DXT3, DXT5?
Файлы DDS. Описание формата DXTn, его возможностей, простые рекомендации по выбору формата компрессии.
Читать | Комментарии [43]
16 июля 2010
GPU Global Illumination (фейковый)
В этой статье будет обсуждаться реализация Глобально Освещения (Global Illumination) с использованием GPU, а фейк весь в том, что мы всё-таки будем использовать и CPU – для трассировки «фотонов».
Читать | Комментарии [22]
27 июня 2010
Каустика в реальном времени
Данная статья расскажет о создании и отрисовке каустики от прозрачных и полупрозрачных объектов.
Читать | Комментарии [75]
5 янв 2010
Детали использования сферических функций для интерактивного рендеринга.
В последнее время в компьютерной графике сильно возрос интерес к получению фотореалистичных изображений с использованием сложных материалов и источников света. Освещение от обширных источников света, мягкие тени, самоотражения и глобальное освещение (global illumination) – довольно важные эффекты в синтезе фотореалистичных изображений.
Читать | Комментарии [98]
12 окт 2009
Моделирование подповерхностного рассеивания
В этой статье речь пойдёт о быстром fake-методе реализации подповерхностного рассеивания (subsurface scattering) полупрозрачных материалов.
Читать | Комментарии [13]
30 июня 2009
Основы создания мягких теней (GLSL)
Читать | Комментарии [31]
19 июня 2009
Динамические тени, основаные на CubeMap
Это статья для начинающих, в которой приведён простейший пример построения динамических теней с помощью СubeMap'ов.
Читать | Комментарии [97]
18 июня 2009
Быстрая реализация модели освещения Кука-Торренса с использованием GLSL
С развитием технологий и увеличением вычислительно мощности видеокарт все легче становиться использовать в трехмерной графике сложные вычислительные алгоритмы. Иногда, конечно, приходится немного пожертвовать производительностью ради красивого вида. Но что поделаешь — красота требует жертв, а сама красота в трехмерной графике достигается использованием «честных», то есть физически обоснованных алгоритмов. Одним из таких алгоритмов и является модель освещения Кука-Торренса.
Читать | Комментарии [47]
15 июня 2009
Создание реалистичной поверхности воды с использованием GLSL
Современные игры трудно представить без реализации в них воды. И каждый добросовестный разработчик стремится сделать «свою» воду еще лучше, еще реалистичнее, чем ту, что была сделана до него.
Читать | Комментарии [480]
12 июня 2009
Intel Graphics Performance Analyzers (Intel GPA) 2.0.
В этой статье мы расскажем о недавно анонсированном новом продукте для профилирования и отладки графических приложений – Intel® Graphics Performance Analyzers (Intel® GPA) 2.0.
Читать | Комментарии [31]
11 апр 2009
Реализация карт теней с использованием GLSL шейдеров
У многих разработчиков возникают трудности при построении теней. Данная статья призвана помочь лучше понять OpenGL реализацию теневых карт на шейдерах.
Читать | Комментарии [226]
1 фев 2009
Использование мегатекстур (megatexture, clipmaps).
В данной статье пойдет речь о том, как вывести изображение ландшафта, который покрыт одной большой, ну просто огромной текстурой (занимающей мегабайты, а то и гигабайты дискового пространства). И все это на обычных видеокартах. Есть исходники на C++!
Читать | Комментарии [509]
9 ноя 2007
HSR-алгоритм: Рендеринг ландшафта на основе карты высот.
Здесь я представлю HSR-алгоритм для ландшафтов на основе карты высот без LOD-а, наиболее эффективный для случаев, когда камера смотрит на ландшафт сверху или под углом не более 30° от этого направления. Этим я и ограничусь в этой заключительной части статьи. Я нисколько не преумаляю значения всевозможных Quad-Tree/Octree, но по ним и так есть немало статей во всемирной сети и даже на этом сайте (например, Разбиение объектного пространства сцены путём построения octree-дерева.
Читать
28 окт 2006
Технологии эффективного рендеринга геометрии.
В этой статье я попытаюсь осветить такой банальный, пожалуй, вопрос как вывод геометрии. Однако несмотря на его «простоту», на форуме до сих пор частенько возникают вопросы, типа, а что лучше, VBO или CVA/VAR, как лучше выводить геометрию - стрипами или triangle lists с оптимизацией под кэш, какие индексы ushort или uint работают быстрее, можно ли использовать целочисленные типы данных для вершин/нормалей/текс.координат, а также масса подобных вопросов.
Читать | Комментарии [28]
28 окт 2006
Библиотека OpenIL
Привет всем! Я расскажу, как пользоваться простой и удобной библиотекой для загрузки изображения из графических файлов различных форматов. Библиотека OpenIL также известная как DevIL (второе название дали из-за вопросов торговой марки) свободно распространяемая.
Читать | Комментарии [103]
22 дек 2004
Доклад о порталах и секторах
Введение
Читать | Комментарии [40]
22 дек 2004
Страницы:
1 2 3 Следующая »