This media is not supported in your browser
VIEW IN TELEGRAM
Знаю, в оригинале было не так, но кто меня остановит!
(Дуров а еще более шакальное качество нельзя было сделать, м?)
(Дуров а еще более шакальное качество нельзя было сделать, м?)
😁2
Вы наверняка знаете что в играх весь мир обновляется за т.н. "игровой тик"
А то что в нашей с вами реальности тоже есть такой тик обновления вы знали?
Планковское время
А то что в нашей с вами реальности тоже есть такой тик обновления вы знали?
Планковское время
Wikipedia
Планковское время
мельчайшая физическая значимая единица времени
This media is not supported in your browser
VIEW IN TELEGRAM
я задолбался это делать даже с помощью агентов. Результат не идеальный но не хуже чем было в оригинале
🔥10
Вот так выглядит моя "серверная полка"
Сам сервер с пассивным охлаждением, но как вы могли догадаться по костылю сверху Майнкрафт с 300 модами в сочетании с 32 градусной жарой слишком жесткое сочетание даже когда весь корпус это сплошной радиатор (весит эта малютка килограмма два)
Однако 5$ контроллер и немного микропитона и пайки дают программно управляемый куллер который включается когда серверу нужно остыть (очень редко)
Сам сервер с пассивным охлаждением, но как вы могли догадаться по костылю сверху Майнкрафт с 300 модами в сочетании с 32 градусной жарой слишком жесткое сочетание даже когда весь корпус это сплошной радиатор (весит эта малютка килограмма два)
Однако 5$ контроллер и немного микропитона и пайки дают программно управляемый куллер который включается когда серверу нужно остыть (очень редко)
👍7❤2🆒1
This media is not supported in your browser
VIEW IN TELEGRAM
Вот еще один пример того как быть когда сложно обьяснить модели что с текущей реализацией не так и как надо сделать.
В игре есть механика мехов (😅) - во первых такие юниты не вижутся перпендикулярно земле на склонах, а во вторых их движение нелинейно - они не едут, а шагают.
В конфигах обнаружилось что у всех юнитов с флагом isMech - есть не одна а две скорости передвижения.
Очевидно между ними мех переключается тем самым создавая нелинейное движение, но больше там ничего нет.
Наивная реализация 50 / 50 дала очень плохой результат скользяших по льду анимаций, так что я описал модели какой мне нужен UI c какими ручками чтобы "нащупать" те самые параметры.
Забыл только попросить о кнопке "скопировать параметры", так что придется ручками их переписать
В игре есть механика мехов (😅) - во первых такие юниты не вижутся перпендикулярно земле на склонах, а во вторых их движение нелинейно - они не едут, а шагают.
В конфигах обнаружилось что у всех юнитов с флагом isMech - есть не одна а две скорости передвижения.
Очевидно между ними мех переключается тем самым создавая нелинейное движение, но больше там ничего нет.
Наивная реализация 50 / 50 дала очень плохой результат скользяших по льду анимаций, так что я описал модели какой мне нужен UI c какими ручками чтобы "нащупать" те самые параметры.
Забыл только попросить о кнопке "скопировать параметры", так что придется ручками их переписать
🔥2
Вот пример зачем я еще плачу за fable.
У некоторых моделей в некоторых анимациях оказались вывернутые во внутрь нормали.
GPT в xhight режиме сначала гайзлайтил меня что все нормально. Потом газлайтил что все пофиксил (нет). Потом отдельный gpt ревьюфил фикс первого и тоже ничего не добился (так я проверил теорию про то что качество модели может фликерить и один и тот же промпт может то выстрелить то нет)
Итого GPT в hight-x не смог решить проблему даже в паре с двух попыток суммарно за 60+ минут.
Fable xhight разобрался за 22 минуты (скушав правда ~20% недельного лимита на фейбл)
* CullFace - это оптимизация которая автоматически скипает в рендере и обсчетах стороны полигонов которые игрок не может увидеть в игре. Это очень базовый прием оптимизации 3д графики кратно снижающий нагрузку (плюс минус в двое).
Т.е. не сдохни вествуд сразу после поспешного релиза они могли выпустить патч улучшаяющий перф игры в двое =)
У некоторых моделей в некоторых анимациях оказались вывернутые во внутрь нормали.
GPT в xhight режиме сначала гайзлайтил меня что все нормально. Потом газлайтил что все пофиксил (нет). Потом отдельный gpt ревьюфил фикс первого и тоже ничего не добился (так я проверил теорию про то что качество модели может фликерить и один и тот же промпт может то выстрелить то нет)
Итого GPT в hight-x не смог решить проблему даже в паре с двух попыток суммарно за 60+ минут.
Fable xhight разобрался за 22 минуты (скушав правда ~20% недельного лимита на фейбл)
1. Исходные данные (AT_Conyard_HC.XBF, из него собирается состояние Build): у clonetread01/clonetread02 трансформ и все 576 кадров анимации имеют det < 0 (диапазон [-0.032, -0.012]) — это зеркальные копии («clone» — клон MCV на стройплощадке). Конвертер корректно выносит отражение в узел MirroredContent — с этим всё в порядке.
2. Ключевой факт: у обоих тредов все 13 нормалей вершин направлены внутрь геометрии в локальном пространстве (проверено численно против направления «центроид → треугольник»), и winding треугольников согласован с этими внутренними нормалями. То есть меш авторски пред-скомпенсирован под вечное зеркало: в мире исходной игры отражение выворачивало геометрию обратно «наружу».
3. Почему оригинал это скрывал: оригинальный движок (и CorrinoEngine — в его Engine нет ни одного GL.Enable(CullFace), нормали идут из файла как есть) рендерит без backface culling. Вывернутый меш под зеркалом выглядел цельным, а неправильное освещение (нормали и в мире остаются внутренними — отражение не меняет «внутрь/наружу») в 2001-м никто не заметил.
4. Почему Godot ломает: Godot 4 автоматически переворачивает cull mode для инстансов с отрицательным детерминантом глобального трансформа (renderer_geometry_instance.cpp:69: mirror = determinant < 0; переворот в rasterizer_scene_gles3.cpp — проверено в исходниках 4.7-stable). Для правильно авторенных зеркальных мешей это чинит картинку, а для пред-скомпенсированных (треды) — выворачивает её. Подтверждено рендер-диагностикой: FRONT_FACING-шейдер показывает у треда наружные грани «front» (в отличие от эталонного cloneBox02), т.е. winding в мире у него противоположен всем остальным мешам.
5. Доказательство фиксом: реверс порядка вершин треугольников + инверсия нормалей у двух мешей тредов в рантайме полностью чинит рендер — треды становятся цельными, с правильными боковинами гусениц и корректным освещением (скриншоты «до/после» снимал через хостовый Godot 4.7).
* CullFace - это оптимизация которая автоматически скипает в рендере и обсчетах стороны полигонов которые игрок не может увидеть в игре. Это очень базовый прием оптимизации 3д графики кратно снижающий нагрузку (плюс минус в двое).
Т.е. не сдохни вествуд сразу после поспешного релиза они могли выпустить патч улучшаяющий перф игры в двое =)
❤2🤡1
Work & Beer Balance
Вот пример зачем я еще плачу за fable. У некоторых моделей в некоторых анимациях оказались вывернутые во внутрь нормали. GPT в xhight режиме сначала гайзлайтил меня что все нормально. Потом газлайтил что все пофиксил (нет). Потом отдельный gpt ревьюфил фикс…
а еще у них треть текстур а формате TGA (этот формат поддерживает альфа канал) где вместо альфа канала использует розовую заливку (как dune 2000), тогда как альфа канал там часто черный (т.е. 100% прозрачность) что тоже нормальные движки сводит сума
🔥4
Править каждый кадр 34 курсоров у меня желания нет, но и куцые курсоры выглядт паршиво (рис 1)
Можно было бы отрисовать их в blender но я решил вместо этого постестить "3D Figma" - spline.design
Отрисовал там первй курсор и закинул в игру - вроде норм
ПОСЛЕ и ДО прикрепил, и хотя телега как обычно все зашакалит думаю разница все равно будет видна
Можно было бы отрисовать их в blender но я решил вместо этого постестить "3D Figma" - spline.design
Отрисовал там первй курсор и закинул в игру - вроде норм
ПОСЛЕ и ДО прикрепил, и хотя телега как обычно все зашакалит думаю разница все равно будет видна
Work & Beer Balance
Править каждый кадр 34 курсоров у меня желания нет, но и куцые курсоры выглядт паршиво (рис 1) Можно было бы отрисовать их в blender но я решил вместо этого постестить "3D Figma" - spline.design Отрисовал там первй курсор и закинул в игру - вроде норм ПОСЛЕ…
в итоге все таки все курсоры делаю в blender. Во первых не красиво было завязываться в опенсорсном движке на проприетарный платный редактор, во вторых CLI версии у него нет, в третих я так и не понял как там сделать поверхность которая сама не видна но тени на нее кастуются
🔥4
This media is not supported in your browser
VIEW IN TELEGRAM
Вчера весь вечер и до поздней ночи делал боевую систему.
Хотя казалось бы что сложного:
- Есть много-осевые "турели" с степенями свободы которые могут быть настаканы друг на друга. В них живет стадия наводки, начальная траетория и место вылета снаряда. Т.е. откуда будет лететь
- Есть снаряды которые бывают разных типов (навесные ядра, наводящиеся ракеты, лазеры и тп). Отвечают за траекторию полета, колизии и тп. т.е. как будет лететь
- Есть боеголовки. Несут в себе тип урона, количество урона, пробивную силу, радиус и тп. Отвечают за то что будет когда прилетит
Основная сложность кроется именно в FX части - у юнита есть вспышки по время выпуска пули, backfire, гильзы - у снаряда аэродинамический след, дуга траектория которой должна быть выпрямлена вдоль стволов, у боеголовки свет дым шрапнель и декали кратора в месте попадания (последнее я вчера доделать не успел).
Было сложно не логику описать а добиться "того самого" внешнего вида
Хотя казалось бы что сложного:
- Есть много-осевые "турели" с степенями свободы которые могут быть настаканы друг на друга. В них живет стадия наводки, начальная траетория и место вылета снаряда. Т.е. откуда будет лететь
- Есть снаряды которые бывают разных типов (навесные ядра, наводящиеся ракеты, лазеры и тп). Отвечают за траекторию полета, колизии и тп. т.е. как будет лететь
- Есть боеголовки. Несут в себе тип урона, количество урона, пробивную силу, радиус и тп. Отвечают за то что будет когда прилетит
Основная сложность кроется именно в FX части - у юнита есть вспышки по время выпуска пули, backfire, гильзы - у снаряда аэродинамический след, дуга траектория которой должна быть выпрямлена вдоль стволов, у боеголовки свет дым шрапнель и декали кратора в месте попадания (последнее я вчера доделать не успел).
Было сложно не логику описать а добиться "того самого" внешнего вида
👍3
Work & Beer Balance
Править каждый кадр 34 курсоров у меня желания нет, но и куцые курсоры выглядт паршиво (рис 1) Можно было бы отрисовать их в blender но я решил вместо этого постестить "3D Figma" - spline.design Отрисовал там первй курсор и закинул в игру - вроде норм ПОСЛЕ…
Самые внимательные могли заметить что курсоры изменились.
Дело в том что я, как выяснилось, пошел по ложному следу - не смотря на то, что в файлах игры были спрайты для всех курсоров, они... не использовались нигде.
Вероято в какой-то момент разработчики передумали и решили поступить нетривиально - засунуть 3д курсор в игру в виде полнцоенной модели с текустурами.
Так вообще никто не делает, ну хотябы потому что для этого приходится рендерить отдельную сцену поверх остальной игры чтобы камера, освещение и тп не влияли на курсор.
С другой стороны спустя 25 лет это полностью решило проблему низкого разрешения - ведь модель отлично скейлится!
Я так же нашел модели для всех меню в игре и прочих элементов интерфейса - так что даже на 4к разрешении все это должно выглядеть отлично.
P.S. эффекты сложно восстанавливать отчасти еще и потому что многое из этого тоже создавалось процедурно. Веротянее всего причина в том что игру надо было впихнуть на CD диски. Их и так было 4 в комплекте, и это при том что 3 из них были только с музыкой и видео
Дело в том что я, как выяснилось, пошел по ложному следу - не смотря на то, что в файлах игры были спрайты для всех курсоров, они... не использовались нигде.
Вероято в какой-то момент разработчики передумали и решили поступить нетривиально - засунуть 3д курсор в игру в виде полнцоенной модели с текустурами.
Так вообще никто не делает, ну хотябы потому что для этого приходится рендерить отдельную сцену поверх остальной игры чтобы камера, освещение и тп не влияли на курсор.
С другой стороны спустя 25 лет это полностью решило проблему низкого разрешения - ведь модель отлично скейлится!
Я так же нашел модели для всех меню в игре и прочих элементов интерфейса - так что даже на 4к разрешении все это должно выглядеть отлично.
P.S. эффекты сложно восстанавливать отчасти еще и потому что многое из этого тоже создавалось процедурно. Веротянее всего причина в том что игру надо было впихнуть на CD диски. Их и так было 4 в комплекте, и это при том что 3 из них были только с музыкой и видео
👀2
Work & Beer Balance
Вчера весь вечер и до поздней ночи делал боевую систему. Хотя казалось бы что сложного: - Есть много-осевые "турели" с степенями свободы которые могут быть настаканы друг на друга. В них живет стадия наводки, начальная траетория и место вылета снаряда. Т.е.…
Восстановил все спецэффекты на еще 3х юнитах.
Вы наверное думаете что я такой дотошный потому что мне важно не отсупить от оригинала? Отчасти. Но первопричина куда практичнее - это необходимо для реверса бинарных файлов эффектов.
4 юнита в которых по описанию точно по оригинальной игре захаржкожены параметры количества гильз, их размеры, время появления и затухания вспышек, дым от ствола после выстрела и т.п. - это набор данных которые затем LLM может смапить на бинарники и по совпадениям разметить где там были сохранены эти значения благодаря чему остальные юниты уже будут воссоздаваться не благодоря дотошному мне покадрово просматривающему запись игры, а из оргинильных данных.
Вы наверное думаете что я такой дотошный потому что мне важно не отсупить от оригинала? Отчасти. Но первопричина куда практичнее - это необходимо для реверса бинарных файлов эффектов.
4 юнита в которых по описанию точно по оригинальной игре захаржкожены параметры количества гильз, их размеры, время появления и затухания вспышек, дым от ствола после выстрела и т.п. - это набор данных которые затем LLM может смапить на бинарники и по совпадениям разметить где там были сохранены эти значения благодаря чему остальные юниты уже будут воссоздаваться не благодоря дотошному мне покадрово просматривающему запись игры, а из оргинильных данных.
🔥1