ПрограммированиеФорумГрафика

собственный software renderer (2 стр)

Страницы: 1 2 3 4 Следующая »
#15
11:58, 26 мая 2015

в свое время начинал изучение отсюда

#16
14:38, 26 мая 2015

просто непонятно, это я настолько неэффективно всё организовал, или просто  VS код обвязывает всякими проверками. Ну ладно.

#17
14:42, 26 мая 2015

static_cast
Это нормально.

#18
14:52, 26 мая 2015

а вот ещё вопросы. Допустим, моя цель - не симуляция работы гпу. То есть, я хочу сделать всё эффективно. От "шейдеров", буфера глубины, блендинга придется избавиться? Или они также и в программных растеризаторах используются?

#19
15:53, 26 мая 2015

static_cast
> Допустим, моя цель - не симуляция работы гпу. То есть, я хочу сделать всё
> эффективно.

А АМД и НВидия делают все неэффективно? Ты серьезно?

#20
16:05, 26 мая 2015

Не думаю что можно сделать эффективнее чем то ,что сделала целая корпорация , тем более на софт-эмуляции. В эмуляторах все 1 в 1 , только более дискретно. То что на ЦПУ делается в десяток команд а ГПУ будет всего одна + куча аппаратных (бесплатных ) оптимизаций.

#21
16:58, 26 мая 2015

Эффективнее имеющихся реализаций можно сделать только в одном случае - ты знаешь что-то такое, чего не знают другие. Пример: рендерер ку1. Там заведомо известна бсп-структура без наложений полигонов, а значит можно применить сканлайн-растеризацию без теста буфера глубины. Но универсальный софтварный рендер написать эффективнее растеризации гпу - это смелая задача.

#22
17:33, 26 мая 2015

даже если каким-то чудом рендер окажется "умнее" стандартного, то он всеравно проиграет в разы хардверному из-за выполнения задач процессором не оптимизированным под векторные вычисления.
не разумнее ли использовать новомодные API , позволяющие фактически "запрограммировать" конвеер GPU как угодно.

#23
17:41, 26 мая 2015

Mira
> не оптимизированным под векторные вычисления
че правда? у него просто блоков меньше

#24
17:42, 26 мая 2015

Может он "убицу" Frostbite делает) Софтрендер там используется для куллинга и рендер очень простой - никакие шейдеры и прочие штуки ненужны.

#25
18:08, 26 мая 2015

d.m.k
ну распиши дотпродукт и перемножение матриц на FPU (или даже SSE) и на шейдер ассемблере. и как там предсказуемо кешировать вершины
fullspektr
рисуют один фиг все на гпу)

#26
18:19, 26 мая 2015

Mira
> или даже SSE) и на шейдер ассемблере
и там и там 4 инструкции

#27
19:27, 26 мая 2015

Ogra,
Mira,
Моласар,
Mira

я не имел в виду "эффективнее, чем в видеокартах". Мне интересно, а нельзя ли что-то из этого исключить/реализовать по-другому, нежели в гпу. Незачем же (наверное) полностью копировать весь "конвеер" на cpu. Нужно всё-таки учитывать "особенности вычислительного процесса" на cpu. Чтобы реализовать всё эффективнее, чем могло бы быть [на cpu].

#28
19:53, 26 мая 2015

а что ты делаешь то, просто интересно

#29
20:20, 26 мая 2015

не понял вопроса. "Программный растеризатор". Минимум хотелось бы загрузить модель и "полетать" вокруг неё. Сейчас пока времени мало, медленно дело идёт.

Вот например, мне ведь незачем реализовывать поддержку овер нескольких десятков форматов для буфера глубины, или несколько видов текстурирования?

Страницы: 1 2 3 4 Следующая »
ПрограммированиеФорумГрафика

Тема в архиве.