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

Рендерер DirectX11, DirectX12, Vulkan

Страницы: 1 2 Следующая »
#0
23:27, 2 окт 2021

Мне хочется досконально разбираться с каждым GAPI по отдельности (Знаю только OpenGL), хочется взять готовый кусок кода содержащий в себе RHI + обертку для всякого добра по типу создания отдельных RenderPass с указанием шейдеров и текстур и че куда рендерить с каким блендингом и тп и тд. Т.е. некий готовый функционал, где не наворочено тонна всего для всех других платформ, чисто под PC. Для чего? Да просто хочется свой движок написать. Я как-то начал переписывать рендер на Unity, добрался до того что хочу кастомную сетку для скайбокса юзать и приехали ко всяким костылям в итоге, не нравится такое. В общем, захотелось чисто свое что-то забабахать, пусть и простое но "своё, родное" + набраться опыта + полный контроль есть над всем чтобы никто в лицензию не тыкал носом. Вполне ожидаю, что скажете: "Ну так бери и пиши, в чем проблема". Ну да. Я и могу чисто на OpenGL, но хочется что-то заюзать от мастодонта, где я увижу как надо такое делать и где не овер 1500000 строк, где понятно будет, что и как с архитектурой в таких вещах происходит. В общем,  подскажите, пожалуйста, что можно заюзать в моем случае как основу для своего движка. Чтобы мне не чисто прям всё с нуля городить, ибо пытался уже, но погряз в своих же костылях и в итоге перегорел. Но сейчас опять ломка началась и хочется свое сделать (итеративное явление какое-то). BGFX не предлагать, слишком он уж многофункционален, отпиливать от него функционал мне не охота, мне нужен просто чисто правильный каркас под разработку своего RenderPipeline, а не полностью готовый рендер где даже постэффекты за тебя напихали уже. С радостью бы принял некое наставление, направление, подсказки, что и куда. Сам я делаю игры на мобильные, но что-то тухло это и скучно, всегда хотелось с технологиями работать, потому припёрло. Спасибо за понимание)

#1
23:49, 2 окт 2021

Проектируют обычно сверху вниз, рендер должен учитывать пожелания сверху.
Одно дело рендерить миллионы партиклов, другое дело рендерить тысячи страниц текста и совсем третье рендерить интерактивное гуи.

#2
0:00, 3 окт 2021

Это пустая трата времени, выбери дх12 или вулкан и учи только его.
Для дх11/дх12 есть трансляция в вулкан, чтоб под линуксом работало.
Я бы советовал вулкан, так как у него документация наиболее подробная.

Лучше учи архитектуру гпу и как под них оптимизировать.

#3
0:05, 3 окт 2021

/A\
он хочет pip install ahuenno
написано же - "хочется что-то заюзать от мастодонта" и "не хочу кувырять *движок нейм*"

#4
0:06, 3 окт 2021

lookid
ну не настолько критично же)
Про OpenGL говорят, что он весьма стар уже и надо новое осваивать. Я на гитхабе просмотрел всякие фреймворки по типу того что мне понадобилось, понял что можно подсмотреть что и как устроено. Так что писать, видимо, опять буду сам, с нуля

#5
0:18, 3 окт 2021

Target
> Ну да. Я и могу чисто на OpenGL, но хочется что-то заюзать от мастодонта, где я
> увижу как надо такое делать и где не овер 1500000 строк
Бро, вот сейчас ты пытаешься свернуть куда-то не туда. Вот если бы ты наоборот хотел писать 100500 строк на каждый чих - тогда д12 / вулкан - самое то.
Подумай хорошо зачем тебе свой двиг.
Делать уникальные техники, которые сложно запилить в готовых движках - ок.
Подучить современные ГАПИ, и архитектуру ГПУ - тоже ок.
Но экономить строчки... Это совсем в другую сторону.

#6
0:23, 3 окт 2021

HolyDel Ну, тут либо полностью погружаться с головой в то, с чем будешь иметь дело, либо юзать что-то готовое, однако вот хотелки с реальностью редко дружат, ага( Так что без дофигалион строк не обойтись. Свой движок - ну это у меня мечта такая ещё с ранних пор, несколько раз приступал и бросал. Проходит время и снова меня колбасит начать писать своё, пусть корявое даже получится, но своё. А так меня, конечно же, и это естественно, отпугивает вулкан низкоуровневостью после OpenGL, скорее сейчас прям опять начну на нём писать. Я чего так сподхватился то, посмотрел сорцы CryEngine и захотелось так же) Там на каждую фичу свои RenderPass со всякими удобностями. Захотелось такую же или похожую обертку но для своего движка сделать, хоть бери и слизывай у них

#7
0:39, 3 окт 2021

Короче, ребят, не буду ни ваше ни свое время тратить, пойду вникать в Vulkan, а пост считайте криком моей ленивой натуры :D, кто хочет, тот делает. Всем спасибо)

#8
13:08, 3 окт 2021

Target
учи DX12, он проще

#9
13:54, 3 окт 2021

innuendo
> учи DX12, он проще
потому что на него документации нормальной нет и слои валидации почти ничего не ловят, поэтому пишешь в стиле "работает и ладно"

#10
14:04, 3 окт 2021

/A\
> и слои валидации почти ничего не ловят

dxdebug

#11
17:13, 3 окт 2021

innuendo Да я уже за ночь вник в несколько вулкановских вещей, буду дальше ковырять, прифигел, конечно, но ничего, сойдёт) Споткнулся уже и тупил, почему инстанс не создаётся, а оказалось VK_LAYER_LUNARG_standart_validation уже не нада юзать)

#12
17:38, 3 окт 2021

Target
> Да я уже за ночь вник в несколько вулкановских вещей
ну-ну

#13
18:12, 3 окт 2021

Target
Рано радуешься, большинство опенсорс проектов на вулкан сделаны очень неоптимально, так что когда ты будешь думать, что знаешь вулкан, то на самом деле будешь на уровне создателей этих проектов.
В не до ААА движках ситуация не сильно лучше.

#14
19:06, 3 окт 2021

/A\
> В не до ААА движках ситуация не сильно лучше.
А можешь привести пример, где оптимально? Я смотрел твои капчи УЕ-шки и Дума, и к их реализации тоже были вопросы. Если Эпики и АйДи не сделал идеально, то кто сделал?

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

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