Size: a a a

RU Rust GameDev — русскоговорящее сообщество

2020 December 04

p

polunin.ai in RU Rust GameDev — русскоговорящее сообщество
Ну единственное преимущество подхода @cykooz кмк это то, что можно тупо взять 3д движок и сделать там 2д. Таким образом не будет разделения экосистемы на два лагеря 2д и 3д. И это перевешивает плюсы от нативного 2д в виде чуть меньшего потребления ресурсов, кмк.
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
По 11 бит на xy и 10 бит на z
источник

MS

Mikola Summer Duck in RU Rust GameDev — русскоговорящее сообщество
Kirill (Cykooz) Kuzminykh
На вехнем уровне - да, но прежде чем передать это всё в 3d API придётся эту Z добавлять налету.
Нет. Я буквально передаю вертексы с 2д-координатами.
источник

MS

Mikola Summer Duck in RU Rust GameDev — русскоговорящее сообщество
Roman
По 11 бит на xy и 10 бит на z
источник

KK

Kirill (Cykooz) Kuzm... in RU Rust GameDev — русскоговорящее сообщество
Mikola Summer Duck
И так-то для моего кода это не будет обёртка вокруг 3д — на видеокарту я отправляю 2д-вертексы.
А как тогда вы планируете сделать слои, если видеокарта не знает про Z координату ваших вершин?
источник

MS

Mikola Summer Duck in RU Rust GameDev — русскоговорящее сообщество
Kirill (Cykooz) Kuzminykh
А как тогда вы планируете сделать слои, если видеокарта не знает про Z координату ваших вершин?
Передавать координату один раз за инстанс, конечно.
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
VK_FORMAT_B10G11R11_UFLOAT_PACK32
источник

KK

Kirill (Cykooz) Kuzm... in RU Rust GameDev — русскоговорящее сообщество
Mikola Summer Duck
Передавать координату один раз за инстанс, конечно.
Т.е. там какой-то вертексный шейдер будет 2d вершинки конвертить в 3d?
источник

MS

Mikola Summer Duck in RU Rust GameDev — русскоговорящее сообщество
Roman
VK_FORMAT_B10G11R11_UFLOAT_PACK32
Нет ну вроде и до этого паковали цвета в 64 бита, но мысль о применении этого к позициям открыла для меня новый мир 😁
источник

AT

Alexander Tchitchigi... in RU Rust GameDev — русскоговорящее сообщество
Kirill (Cykooz) Kuzminykh
А зачем в видео карте делать отдельный примитив 2d-вершина, если и 3d работают достаточно быстро (особенно для 2d игр, где не так много полигонов обычно).
Потому что 2D занимают меньше места и потому что 3D в конце концов нужно спроецировать на плоскость (ту, которая в фокусе виртуальной камеры) и получить 2D.
источник

MS

Mikola Summer Duck in RU Rust GameDev — русскоговорящее сообщество
Kirill (Cykooz) Kuzminykh
Т.е. там какой-то вертексный шейдер будет 2d вершинки конвертить в 3d?
Да, что мешает ведь.
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
Mikola Summer Duck
Нет ну вроде и до этого паковали цвета в 64 бита, но мысль о применении этого к позициям открыла для меня новый мир 😁
Лишь бы видяха поддерживала такие форматы для вершин
источник

AT

Alexander Tchitchigi... in RU Rust GameDev — русскоговорящее сообщество
Kirill (Cykooz) Kuzminykh
А как тогда вы планируете сделать слои, если видеокарта не знает про Z координату ваших вершин?
До чего мы дожили! Разработчики игр уже не знают как накладывать и смешивать спрайты без 3D! 😂
источник

MS

Mikola Summer Duck in RU Rust GameDev — русскоговорящее сообщество
Roman
Лишь бы видяха поддерживала такие форматы для вершин
Я больше с практической точки зрения. То есть, такое реально используется? 🙀
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
Mikola Summer Duck
Я больше с практической точки зрения. То есть, такое реально используется? 🙀
Возможно, я не знаю :)
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
Не, конечно 11 бит не хватит на экран точности
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
Надо хотя б 16
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
И интами тогда уж оперировать, не флотами
источник

KK

Kirill (Cykooz) Kuzm... in RU Rust GameDev — русскоговорящее сообщество
Alexander Tchitchigin
До чего мы дожили! Разработчики игр уже не знают как накладывать и смешивать спрайты без 3D! 😂
Вопрос не в том знают или нет - а в том умеет ли железка ускорять такие операции. Современные железки делают это не как дремучие видео-процессоры консолей, которые действительно работали по спрайтами и слоями. Современные делают это через 3d полигоны с текстурами, всякими шейдерами и режимами смешивания. И вот про это и надо знать.
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
А че тут знать то? Сортируй по слоям и рендери. Никакого буфера глубины не надо
источник