Железо → Трассировка пути на GPU, часть 2
Первая часть обнаружена тут.
Чтож, рассмотрим:
Видеокарта: Nvidia GeForce GTX580 (надо учитывать, что не каждый захочет ради еще не развитой технологии GPU рендеринга покупать топовую видеокарту), Частота шейдеров 800 MHz, 512 ядер CUDA.
Тестовая сцена: хоровод стендфордских высокополигональных дракончиков, танцующих вокруг светящейся шестиугольной призмы, висящей в воздухе.

Вот эти ребята.
Чего хотим добиться: минимального шума при минимальных вычислительных затратах.
Сложности:
1. Большинство испытаных рендеров не поддерживают SSS.
2. Демоверсии Octane Render и Arion Render имеют ограничение по разрешению, а сцены типа «шар на поверхности при дневном свете» очищаются от шума быстро даже на CPU рендерах, тем более при столь небольшом разрешении.
3. Сложностью для всех видов рендеринга является рендеринг непрямого освещения, в частности интерьеров, а особенно каустика, на которой мы и остановимся.
Чтож, рассмотрим:
Видеокарта: Nvidia GeForce GTX580 (надо учитывать, что не каждый захочет ради еще не развитой технологии GPU рендеринга покупать топовую видеокарту), Частота шейдеров 800 MHz, 512 ядер CUDA.
Тестовая сцена: хоровод стендфордских высокополигональных дракончиков, танцующих вокруг светящейся шестиугольной призмы, висящей в воздухе.

Вот эти ребята.
Чего хотим добиться: минимального шума при минимальных вычислительных затратах.
Сложности:
1. Большинство испытаных рендеров не поддерживают SSS.
2. Демоверсии Octane Render и Arion Render имеют ограничение по разрешению, а сцены типа «шар на поверхности при дневном свете» очищаются от шума быстро даже на CPU рендерах, тем более при столь небольшом разрешении.
3. Сложностью для всех видов рендеринга является рендеринг непрямого освещения, в частности интерьеров, а особенно каустика, на которой мы и остановимся.
Железо → Трассировка пути на GPU, часть 1 из песочницы
Железо и рендеринг
Наиболее популярные, на сегодняшний день, архитектуры процессоров — x86-64. Их относят к CISC. Они обладают огромным набором команд, что привело к большой площади ядра на кристалле. Это, в свою очередь, повлекло за собой сложность в реализации нескольких ядер на чипе. Процессоры x86 не идеальны для многопоточных вычислений, где требуются многократное выполнение небольшого набора команд (RISC).
В свою очередь, рендеринг — алгоритм, который отлично распараллеливается практически на неограниченное количество ядер.
Unbiased renders
В виду того, что производительность железа неуклонно растет — технические вопросы (например семплинг отражений материалов в V-Ray, количество биасов при антиалиасинге, размытии в движении, глубине резкости, мягких тенях) все больше переходят на плечи железа. Так, несколько лет назад появился первый коммерческий рендер «без допущений» (unbiased render) — Maxwell Render.
Основным его преимуществом было качество финальной картинки, минимум настроек, всевозможных «биасов». С течением времени качество картинки приближается к «идеальному». А недостатком было и есть — время рендеринга. Ждать, пока шум сойдет, приходилось очень долго, и многие люди после нескольких проб сразу от него отказались. Еще хуже обстояли дела с анимацией (по понятным причинам).

Наиболее популярные, на сегодняшний день, архитектуры процессоров — x86-64. Их относят к CISC. Они обладают огромным набором команд, что привело к большой площади ядра на кристалле. Это, в свою очередь, повлекло за собой сложность в реализации нескольких ядер на чипе. Процессоры x86 не идеальны для многопоточных вычислений, где требуются многократное выполнение небольшого набора команд (RISC).
В свою очередь, рендеринг — алгоритм, который отлично распараллеливается практически на неограниченное количество ядер.
Unbiased renders
В виду того, что производительность железа неуклонно растет — технические вопросы (например семплинг отражений материалов в V-Ray, количество биасов при антиалиасинге, размытии в движении, глубине резкости, мягких тенях) все больше переходят на плечи железа. Так, несколько лет назад появился первый коммерческий рендер «без допущений» (unbiased render) — Maxwell Render.
Основным его преимуществом было качество финальной картинки, минимум настроек, всевозможных «биасов». С течением времени качество картинки приближается к «идеальному». А недостатком было и есть — время рендеринга. Ждать, пока шум сойдет, приходилось очень долго, и многие люди после нескольких проб сразу от него отказались. Еще хуже обстояли дела с анимацией (по понятным причинам).

Высокая производительность → V-Ray и Iray. Сравнение и обзор
Скорость рендеринга или качество результата? – вот в чем вопрос. Рано или поздно приходится выбирать второе, и длительность рендеринга начинает составлять часы, сутки, недели. Денег на рендер-ферму нет, поэтому приходится обходиться одним 6-ядерным процессором.
Но вдруг, компания Mental Images, являющаяся дочерней компанией NVIDIA Corporation, выпускает новую систему рендеринга Iray, которая позволит выполнять рендеринг на графической карте. Это поселило надежду на то, что с помощью многоядерных GPU можно будет существенно сократить время рендеринга.
Я решил сравнить качество и производительность V-ray, который использует только CPU, и Iray, который считает и на CPU и на GPU. Проверять стал на картах NVIDIA с поддержкой CUDA и процессоре Intel Core i7-980.
Но вдруг, компания Mental Images, являющаяся дочерней компанией NVIDIA Corporation, выпускает новую систему рендеринга Iray, которая позволит выполнять рендеринг на графической карте. Это поселило надежду на то, что с помощью многоядерных GPU можно будет существенно сократить время рендеринга.
Я решил сравнить качество и производительность V-ray, который использует только CPU, и Iray, который считает и на CPU и на GPU. Проверять стал на картах NVIDIA с поддержкой CUDA и процессоре Intel Core i7-980.
Обработка изображений → Рендеринг искусственных объектов на фотографии
Мы предоставляем метод для реалистичного добавления искусственных объектов в существующие фотографии, не требуя необходимости доступа к сцене или других дополнительных измерений. С помощью одного изображения и небольшого количества аннотаций, наш метод позволяет создать физическую модель сцены, которая подходит для рендеринга на ней искусственных объектов с рассевающими, зеркальными или даже светящимися поверхностями, с учетом взаимодействия освещения между объектами и сценой.
Game Development → Euclideon отвечает на критику Unlimited Detail, показывает новое демо и отвечает на вопросы в 40 минутном интервью
Не так давно по интернетам прогремела новость от австралийской компании Euclideon которая утверждает что создала новый тип графического движка, который поддерживает «неограниченную детализацию» (Unlimited Detail). Оригинальное видео есть здесь и здесь.
После выхода видео, многие стали фанатами компании, предвидя тотальный переворот в мире 3d графики, но многие также и скептически отнеслись к новости, справедливо заметив что у этой технологии должны быть проблемы с анимацией, тенями, размером файлов в которых должен быть сохранён уровень, и т. д. Среди этих людей были и такие небезызвестные личности как Notch (создатель minecraft) (http://www.rockpapershotgun.com/2011/08/02/notch-vs-unlimited-detail/), и John Carmack (http://nwn.blogs.com/nwn/2011/08/is-the-future-of-immersive-3d-in-atoms-euclideoncom.html)
В своём новом видео Euclideon пытается ответить в том числе и на их опасения:
После выхода видео, многие стали фанатами компании, предвидя тотальный переворот в мире 3d графики, но многие также и скептически отнеслись к новости, справедливо заметив что у этой технологии должны быть проблемы с анимацией, тенями, размером файлов в которых должен быть сохранён уровень, и т. д. Среди этих людей были и такие небезызвестные личности как Notch (создатель minecraft) (http://www.rockpapershotgun.com/2011/08/02/notch-vs-unlimited-detail/), и John Carmack (http://nwn.blogs.com/nwn/2011/08/is-the-future-of-immersive-3d-in-atoms-euclideoncom.html)
В своём новом видео Euclideon пытается ответить в том числе и на их опасения:
Анимация и 3D графика → Технология программной трассировки лучей от Euclideon
Маленькая австралийская компания Euclideon сделала громкое заявление, что разработала новую технологию рендеринга 3D-графики, которая якобы «в 100 000 раз лучше» ныне существующих. Они имеют в виду количество полигонов: их графический движок (конвертер полигонов) Unlimited Detail способен рендерить более 21 триллиона вокселов на 20 FPS с помощью программной трассировки лучей (рейтрейсинга).
Алгоритмы → Четырехмерный рендеринг: особенности, проблемы, варианты решения

В комментариях к статье «Рейтрейсер на JavaScript» ее автор ankh1989 рассказал о планах написать рейтрейсер для четырехмерного пространства. Кое-какие свои мысли на эту тему я попробую изложить здесь.
.NET → Рендеринг картинок через WPF на примере Pivot
Pivot не нуждается в представлении. Если вбить это слово в поиск хабра, результатом будут 37 статей, среди которых есть как обзоры, так и туториалы. Поэтому я решил сосредоточить свои усилия лишь на одном аспекте работы с Pivot — на картинках.
Pixar → Pixar демонстрирует сервис рендеринга технологии RenderMan в облаке
Известная всем компания Pixar, создающая прекрасные мультипликационные ленты, разработала облачный сервис для своей технологии Renderman. Облачный Renderman – это сервис, который позволяет загрузить в облако исходные материалы для рендеринга и в короткие сроки получить обсчитанные результаты с помощью технологий Pixar. Все вычисления берет на себя сервис Renderman. Это предложение позиционируется как стартовая точка для небольших студий, которые не могут позволить себе большие рендер-фермы.
В ходе конференции PDC10 Крис Форд – бизнес-директор студии Pixar продемонстрировал работу облачного сервиса. Он загрузил в облако исходные материалы из Maya 3D, выбрал в своей учетной записи требуемые мощности и в короткие сроки получил обсчитанный результат.

Персональные блоги → 2D рендеринг в SDL
Долго я не хотел писать данную статью — думал как подавать материал. Но, видно сегодня удачно сложились звёзды и статье про SDL быть. Хотя, это всего лишь черновой вариант. В будущем данную статью разобью на несколько отдельных — материала и кода достаточно.Для тех, кто ещё не знаком с этой старой, но очень хорошей кроссплатформенной графической библиотекой, я бы советовал прочитать этот пост.
Скачать библиотеку можно с официального сайта, думаю это не составит большого труда. Я не буду вдаваться в подробности, так как статься получится просто необъятной, их можно найти тут.
Сегодня мы напишем с нуля программу, которая зальёт экран тремя цветами.