Я люблю трассировщики лучей и даже посвятил им половину своей книги. Менее известна моя любовь к ZX SpectrumЧитать полностью »
Рубрика «трассировка лучей»
Пишем трассировщик лучей для ZX Spectrum
2024-01-25 в 13:06, admin, рубрики: BASIC, raytracing, sinclair basic, zx spectrum, трассировка лучейApple M1 хорош, но насколько он хорош в трассировке лучей?
2021-02-10 в 8:00, admin, рубрики: apple, apple m1, Блог компании Pixonic, Компьютерное железо, Процессоры, разработка игр, трассировка лучейЧип Apple M1, установленный в новых MacBook Air, MacBook Pro и Mac Mini, уже стал предметом множества обсуждений, статей о бенчмарках и публикаций в блогах. Скорость и производительность его действительно впечатляют, особенно касаемо производительности на ватт.
Но конкретно сейчас мы остановимся подробнее на трассировке лучей — в частности, на трассировке лучей через API Metal, анонсированный на WWDC-2020.
SuperRT — чип для рейтрейсинга на Super Nintendo
2020-12-17 в 8:55, admin, рубрики: fpga, Verilog, Игры и игровые приставки, старое железо, трассировка лучейВ продолжение темы, представляем вашему вниманию перевод оригинала статьи от Бена Картера.
Ссылки на видео по этой статье:
У меня наконец-то появились результаты работы над проектом, которым я занимался в свободное время примерно около года.
Его идея возникла, когда я пытался придумать интересный проект для изучения Verilog и проектирования FPGA. Мне пришла в голову мысль о создании простого трассировщика лучей (частично я вдохновлялся успехами моего до ужаса умного друга, создавшего собственный GPU). Немного позже (наверно, потому, что мой мозг ненавидит меня и наслаждается придумыванием глупых заданий) всё это превратилось в вопрос: «а не будет ли интересно заставить SNES выполнять рейтрейсинг?». Так родилась идея чипа SuperRT.
Я хотел попробовать создать нечто, напоминающее чип Super FX, используемый в таких играх, как Star Fox. SNES в них выполняет игровую логику и передаёт описание сцены чипу в картридже, который занимается генерированием графики. Я намеренно ограничил себя использованием в конструкции единого самодельного чипа, а не ядра ARM на плате DE10 или любых других внешних вычислительных ресурсов.
Читать полностью »
Khronos Group выпустила публичную версию расширений Vulkan Ray Tracing
2020-03-19 в 13:32, admin, рубрики: api, Nvidia, Vulkan API, vulkan ray tracing, графический дизайн, игры, Игры и игровые приставки, трассировка лучей
Источник: Khronos
Khronos Group выпустила расширения для поддержки трассировки лучей в API Vulkan, основанные на стандарте NVIDIA RTX. Расширения позволят Vulkan API стать первым в отрасли открытым кроссплатформенным стандартом для ускорения трассировки лучей, который не будет зависеть от аппаратных решений. Читать полностью »
Как работает рендеринг 3D-игр: растеризация и трассировка лучей
2019-12-18 в 4:28, admin, рубрики: dxr, Nvidia RTX, ray casting, ray tracing, z-buffer, Работа с 3D-графикой, разработка игр, растеризация, трассировка лучейВ этой статье мы подробнее рассмотрим то, что происходит с 3D-миром после завершения обработки всех его вершин. Нам снова придётся стряхнуть пыль с учебников по математике, освоиться в геометрии пирамид усечения и решить загадку перспектив. Также мы ненадолго погрузимся в физику трассировки лучей, освещения и материалов.
Главная тема этой статьи — важный этап рендеринга, на котором трёхмерный мир точек, отрезков и треугольников становится двухмерной сеткой разноцветных блоков. Очень часто этот процесс кажется незаметным, потому что преобразование из 3D в 2D оказывается невидимым, в отличие от процесса, описанного в предыдущей статье, где мы сразу же могли увидеть влияние вершинных шейдеров и тесселяции. Если вы пока не готовы к этому, то можете начать с нашей статьи 3D Game Rendering 101.
Подготовка к двум измерениям
Подавляющее большинство читателей читают этот веб-сайт на совершенно плоском мониторе или экране смартфона; но даже если у вас есть современная техника — изогнутый монитор, то отображаемая им картинка тоже состоит из плоской сетки разноцветных пикселей. Тем не менее, когда вы играете в новую Call of Mario: Deathduty Battleyard, изображения кажутся трёхмерными. Объекты движутся по сцене, становятся больше или меньше, приближаясь и отдаляясь от камеры.
Читать полностью »
Nvidia создаёт студию по ремастеру старых игр на RTX
2019-10-14 в 12:14, admin, рубрики: Nvidia, rtx, графический дизайн, Игры и игровые приставки, разработка игр, трассировка лучей
Похоже, что Quake 2 RTX будет не единственным ремастером, для которого NVIDIA будет добавлять эффекты трассировки лучей в реальном времени. Согласно списку вакансий на сайте компании, NVIDIA занялась созданием студии, которая будет специализироваться на добавлении эффектов Ray Tracing к ремастерам классических компьютерных игр.
Как следует из описания этого списка вакансий, NVIDIA запустила новую программу ремастеринга игр.
«Мы выбираем некоторые из лучших игр прошлых десятилетий и переносим их в эпоху трассировки лучей. Таким образом, мы дадим им самые современные визуальные эффекты, сохранив великолепный геймплей», — заявляется в описании к вакансии.
Читать полностью »
Мир трехмерной гиперсферы. Геодезическая трассировка лучей в замкнутой вселенной со сферической геометрией
2019-07-29 в 3:38, admin, рубрики: javascript, WebGL, астрономия, геометрия Вселенной, гиперсфера, замкнутая вселенная, математика, Научно-популярное, сферическая геометрия, трассировка лучейХотели посмотреть на мир глазами существа живущего в компактной замкнутой вселенной со сферической геометрией? Посмотреть на мир без ночи? Мир, где на небе виден другой полюс планеты? Мир, где нет разницы между солнечным и лунным затмением? Добро пожаловать под кат!
Трассировка лучей на GPU в Unity — Часть 3
2019-05-02 в 11:20, admin, рубрики: gpu programming, ray tracing, unity, Алгоритмы, Работа с 3D-графикой, разработка игр, рендеринг, трассировка лучей, шейдерыСегодня мы совершим большой скачок. Мы отойдём от исключительно сферических конструкций и бесконечной плоскости, которые трассировали ранее, и добавим треугольники — всю суть современной компьютерной графики, элемент, из которого состоят все виртуальные миры. Если вы хотите продолжить с того, чем мы закончили в прошлый раз, то воспользуйтесь кодом из части 2. Готовый код того, что мы будем делать сегодня, выложен здесь. Давайте приступим!
Треугольники
Треугольник — это всего лишь список трёх соединённых вершин, каждая из которых хранит свою позицию, а иногда и нормаль. Порядок обхода вершин с вашей точки обзора определяет, на что мы смотрим — на переднюю или заднюю грань треугольника. Традиционно «передом» считается порядок обхода против часовой стрелки.
Во-первых, нам нужно иметь возможность определять, пересекает ли луч треугольник, и если да, то в какой точке. Очень популярный (но совершенно точно не единственный) алгоритм для определения пересечений луча с треугольником был предложен в 1997 году джентльменами Томасом Акенин-Меллером и Беном Трембором. Подробно о нём можно прочитать в их статье «Fast, Minimum Storage Ray-Triangle Intersection» здесь.
Читать полностью »
Wolfenstein 3D: трассировка лучей с помощью WebGL1
2019-03-21 в 8:01, admin, рубрики: forward rendering, Nvidia RTX, ray tracing, WebGL, Wolfenstein 3D, Работа с 3D-графикой, разработка игр, трассировка лучейПосле появления прошлым летом графических карт Nvidia RTX трассировка лучей (ray tracing) снова обрела былую популярность. За последние несколько месяцев мою ленту в Twitter заполнил бесконечный поток сравнений графики со включенным и отключенным RTX.
Полюбовавшись на такое количество красивых изображений, я захотел самостоятельно попробовать скомбинировать классический упреждающий рендерер (forward renderer) с трассировщиком лучей.
Страдая синдромом неприятия чужих разработок, я в результате создал собственный гибридный движок рендеринга на основе WebGL1. Поиграть с демо рендеринга уровня из Wolfenstein 3D со сферами (которые я использовал из-за трассировки лучей) можно здесь.
Читать полностью »
Три картинки за одно воскресенье: о создании бюджетных стереоизображений на пальцах (стереограмма, анаглиф, стереоскоп)
2019-02-03 в 20:48, admin, рубрики: c++, CGI (графика), raytracing, геометрия для пятого класса, компьютерная графика, математика на пальцах, Программирование, Работа с 3D-графикой, разработка игр, стереограммы, трассировка лучейПришли очередные выходные, надо написать пару десятков строк кода и нарисовать картинку, да лучше не одну. Итак, на прошлых и позапрошлых выходных я показал, как делать трассировку лучей и даже взрывать всякое. Это многих удивляет, но комьпютерная графика — очень простая вещь, пары сотен строк голого C++ вполне хватает на создание интересных картинок.
Тема сегдоняшнего разговора — бинокулярное зрение, причём сегодня даже до ста строк кода не дотянем. Умея рендерить трёхмерные сцены было бы глупо пройти мимо стерепар, сегодня будем рисовать примерно вот такое: