TGViewer
Channel Public Channel
Meshgun

Meshgun

@meshgun_gd

Рендер-гик, застрявший в Neovim.

Видосы youtube.com/@meshgun_gd
Стримы twitch.tv/meshgun_gd
Бусти boosty.to/meshgun
Subscribers
169
Photos
179
Videos
73
Links
149
Recent Posts 14 shown
Post #444 107
Все выходные играл в The Legend of California. Не знал, что именно такой игры мне сильно не хватало 👀

Ощущения такие, будто играешь в условный вальхейм/майнкрафт, но с боёвкой из овервоча, и при этом все пикнули Маккри. Записал небольшой слайс-оф-лайв обычной ковбойской жизни на мифическом острове Калифорния (когда она успела стать островом?). В качестве бонуса: специальная техника перезарядки ружья по-американски.


Разработчики говорят, что до early access это ещё не дотягивает по качеству. Но мне кажется, многие аспекты уже сделаны лучше чем в других сюрвайвалах:
- Перемещение по миру хорошо продумано. Есть фаст-тревел до своей палатки/фермы (перезаряжается минут 15) и такси с крутой музыкой. Можно карабкаться по стенам и летать на планере. Благодаря всему этому исследование мира не ощущается утомительным, даже при его огромных размерах.

- Очень приятно стрелять и кидаться томагавками. Анимации перезарядки, эффекты и звуки (особенно звуки) - всё создаёт впечатление, как будто ты в кино. При этом в бою не теряешься: всегда понятно, откуда стреляют, а сами противники хорошо заметны.

- PvP только в некоторых зонах, в которые идёшь с определённой целью (сделать квест или найти нужный лут). В остальных местах атмосфера дружелюбная, игроки общаются, помогают зачищать форты.

- Воксельный террейн, в котором можно майнкрафтить туннели. А под своим участком можно вообще построить шахту с лифтом.

- Потрясающие пейзажи. Иногда останавливаешься на несколько секунд, просто чтобы насладиться видом.



Не понравилась пара моментов:
- Сильно не сразу понял, что нужно делать, чтобы перейти на второй тир компании. Игра никак не намекает в какую сторону искать.

- Участок для фермы квадратный, но когда клеймишь для него зону, пересечение с занятыми зонами проверяется по кругу. Из-за этого невозможно поставить два участка впритык. Получается куча свободного места между. Полчаса искал место, куда воткнуться.
  • 🔥 5
  • 🍓 2
  • 💅 1
Post #442 199
В последнее время делаю все диздоки в одностраничном формате. Структуру позаимствовал у архитекторов: проект у них обычно выглядит как одна крупная иллюстрация + сноски по краям.

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

На иллюстрацию приятнее смотреть, чем на стену текста, а значит к такому диздоку будут обращаться чаще. К тому же в визуальном языке больше средств выразительности, что позволяет разместить тонну информации на небольшой площади.
  • ❤ 9
  • 💅 2
  • 🔥 1
Post #441 326
RTX On

API для сетапа конечно более многословный, чем хотелось бы.
AccelerationStructureGeometryTrianglesDataKHR
WriteDescriptorSetAccelerationStructureKHR

и прочие названия на пол экрана.

Но шейдеры писать ощутимо проще. Кидаешь луч, читаешь что он там насобирал и готово.
  • 🔥 7
Post #439 325
Убийца DaVinci ☠️🪦
  • 🔥 11
  • 💅 3
Post #438 418
Post #437 388
Мега-удобный калькулятор для геймдев подсчётов. Есть все привычные операции типа floor(), fract() и тд. А ещё он умеет показывать графики.

https://antovsky.itch.io/naut
  • 🔥 6
Post #436 448
she was a if (NULL == r) girl
he was a .unwrap() boy
  • 😁 2
  • 🤯 2
  • 👾 2
Post #435 449
Чтобы нарисовать меш в традиционном-пайплайне, нужно привязать вершинный буфер. Если двум объектам нужны разные меши, придётся дважды вызвать bind + draw. На сложных сценах для минимизации дроуколлов приходится городить батчинг.


Указатели в шейдерах открывают более эффективные способы работать с вершинами.

Представим, что у нас есть огромный террейн. Его можно поделить на равные части и загрузить каждую из них в отдельный буфер (благодаря арена-аллокатору они будут лежать рядом в памяти). Правило триангуляции у всех частей одинаковое, поэтому индексный буфер нужен только один.

Теперь самое интересное: помимо матрицы в каждый инстанс нужно записать указатель (DeviceAddress: u64) на соответствующий буфер вершин. Указатель на буфер с инстансами можно передать через пуш константы.

Это позволит нарисовать любое количество патчей за один cmdDrawIndexed. А если террейн не просто огромный, а условно-бесконечный, можно легко организовать стриминг (с диска или генерить на лету), ведь патчи лежат в независимых друг от друга буферах.

Никаких дескрипторов, меньше вызовов в драйвер и CPU-процессинга.
  • 🔥 7
  • ❤ 1
  • 🍓 1
  • 🤓 1
Post #431 292
Знаки не врали, Guild Wars 3 канон.

Я долго искал MMO мечты и кучу всего перепробовал. Но почти везде, даже в сравнительно новых играх, боёвка и перемещение ощущались как-то пластмассово.

И вот год назад я наткнулся на GW2 (понятия не имею, как она от меня ускользала всё это время). И это оказалось буквально то, что я хотел.


Приятно сделано перемещение (особенно на маунтах), из-за чего просто бегать и исследовать мир одно удовольствие. Локации - это не просто террейн с крипами, а полноценный 3д платформер. Причём, когда забираешься в какое-нибудь труднодоступное место, игра тебя награждает. Напоминает последние Зельды: хочется облазить каждый угол, ведь почти везде есть что-нибудь интересное.

А какое здесь ПвП... Это буквально игра в игре, так как прогресс отвязан от основной прокачки. Пока ты в ПвП зоне, открываются все скиллы и можно собрать любой билд. Снаряжение отдельное. То есть можно играть на равных со всеми игроками почти со старта. Из-за этого матчи находятся мгновенно, а победить можно чисто засчёт тактики и скилла.


В общем, третью часть ждём. Думаю, это будет мегахайп.
  • 💯 6
  • 👾 1
Post #430 317
Мне нравятся игры, в которых существа реагируют не только на игрока, но и на окружение. Это добавляет жизни и разнообразия. И что самое важное, поощряет игрока за исследование и эксперименты. В последнее время работал над ИИ кобольдов и вот что получается:
  • ❤ 6
  • 🔥 5
  • 🤓 2
Post #429 415
Я попробовал табы в один пробел и ... мне понравилось. По ощущениям, код стал выглядеть аккуратнее, а во вложенных циклах проще понять, где находишься.
  • 💅 7
  • 🤮 2
Post #427 384
Post #426 370
В графике чаще всего встречается вот такой нейминг:
mat4 view_projection;
mat4 transform;
vec4 position;

vec4 frag_position = view_projection * transform * position;


В векторной математике порядок действий имеет огромное значение. И когда операций много, можно легко запутаться и написать потрясающие воображение визуальные баги. Проблема стандартного неймнга в том, что название говорит только о пространстве результата. А вот знание о том, какие данные ожидаются на вход - это неявный контекст.


В последнее время я начал использовать домино-нейминг (ещё встречается под названием destination_source):
mat4 projection_from_world;
mat4 world_from_local;
mat4 local_position;

vec4 frag_position = projection_from_world * world_from_local * local_position;


Идея в том, что название явно указывает откуда и куда трансформируется вектор. Ключевой момент здесь именно в использованиеи _from_, а не _to_. Так поиск ошибок становится предельно простым: если конец слова совпадает с началом следующего - всё правильно; если нет, значит это баг.
  • 🔥 19
  • 👾 1
Older posts →

About this channel

How can I read @meshgun_gd without a Telegram account?
TGViewer shows the public web preview Telegram publishes for Meshgun: recent posts, photos, videos and the subscriber count, with no app, login or account.
How many subscribers does Meshgun have?
Meshgun (@meshgun_gd) has 169 subscribers on Telegram, refreshed roughly every 30 minutes.
Does Meshgun know I viewed it here?
No. Public channel previews carry no viewer identity, and TGViewer has no accounts or tracking of what you look up.
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →