Перейти к содержанию

Рекомендуемые сообщения

 
 
Demonfail
Цитата

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


Да, рано или поздно будет о всём. Я обо всех аспектах буду писать. Ведь статьи — это и есть дневник разработки.

Я просто делаю по своей схеме:

1) Статьи идут от самого простого и легкого до самого сложного и нереального (по моим выводам, выйдет от 100 до 200 и выше, если я правильно всё рассчитал). Так я больше контролирую процесс и не сбиваюсь с мысли о чём писать.

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

3) Это тупо уже штурм-мозга, то о чём я не буду публиковать пока или не планирую / пойдет потом в 1 или 2 пункт.

Так как я не могу на одном месте сидеть, мне нужно самореализовываться. Я не могу заниматься одним и тем же, это быстро надоедает мне. Это я говорю про свои дела. В работе я могу быть полностью монотонным, хоть это и надоедает бывает.

Т.е. сегодня я, допустим, изучаю более подробно погоду, эффекты, небо и т.д. Завтра могу оптимизировать модельки там, почитать архитектуру, послезавтра я могу построить оптимизатор для чего-либо или Level Manager и т.д. и т.п.

Могу переосмыслить вещи или структуру. Как обычно, ложусь спать, и в голову приходит мысль: "б№31ь, надо переделать, получилось говно, можно лучше, завтра сделаю." :)
 


По поводу пули, я не особо в этом копался, но да, это Projectile.

Там более сложная система с оптимизацией... Типа ObjectPool (порождающий шаблон проектирования) и ClientEntity (то, что мы видим на экране) / ServerEntity (то, что выполняется, потом передается в локальный псевдоодиночный сервер или мультиплеер), Raycast там вроде нужен только для начала выстрела, чтобы пуля летела прямо по траектории, а потом действует сила притяжения (поэтому и можно стрелять навесом, есть упрощенная баллистика).

Я мельком все это видел, могу что-то и спутать, не вдавался в подробности, но я изучу это, когда мне будет интересно или будет реализация оружия / инвентаря.

Изменено пользователем Demonfail

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
Demonfail

Короче говоря, не особо успеваю по многим аспектам, так что, хоть и хочется многим поделиться, придется ждать. Видео изначально кидал другу на оценку (чувствуется ли атмосфера), кидаю и кому интересно, мне даже интересно чужое мнение, как вам самим?

Да, видео ВК, мне просто впадлу заливать на YouTube, пока не доработаю всё, на ВК получается быстрее:

Вкратце, почти полная реализация: амбиент (включая звуки), окружения, небо, солнце, вырезанная луна, смена дня и ночи, время и календарь и т.е.

Почти вся адаптация из оригинала в Godot, но есть 2 проблемы:

1) Много багов, кукуха едет конечно у меня - но они исправляются.

2) Много ресурсов, для работы и адаптации...

В оригинале все хранится как дата-файлы в формате .ltx (он состоит из простых файлов конфигов (всем известный .cfg) и настроек формата .ini + наследование — короче, свой формат для хранения данных).

В Godot, это файлы ресурсов, они намного удобнее, масштабнее, и можно устроить им полный контроль через расширения (например, написать плагин, который кардинально меняет их визуальное представление). Но из этого большой минус: приходится всё руками переносить с .ltx в .tres.

Изменено пользователем Demonfail

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
Pavel2000
3 минуты назад, Demonfail сказал:

Автор ограничил доступ к видео

  • Смущение 1

 1540412914_ezgif.com-optimize(1).gif.ec7250e918399802d8fe85d6d4fd7081.gif

«Если долго мучиться, что-нибудь получится»
Испытуемый №28: Начало и Испытуемый №28: Игры Разума

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
Demonfail
3 минуты назад, Pavel2000 сказал:

Автор ограничил доступ к видео

Спасибо, исправил:)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
Narsul

А зачем переносить ту подделку кривую из стима, а не оригинальную игру? Там же очень много всего похерили и ничего не исправили, зато добавили новых багов и жуков. Я бы переносил на совершенно другой движок оригинал + неофициальный патч 1.6.03. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
Demonfail
5 минут назад, Narsul сказал:

А зачем переносить ту подделку кривую из стима, а не оригинальную игру? Там же очень много всего похерили и ничего не исправили, зато добавили новых багов и жуков. Я бы переносил на совершенно другой движок оригинал + неофициальный патч 1.6.03. 

Я был уверен, что меня про это спросят:)

Я не только портирую, EE версию, но и дорабатываю исправляю их косяки.


Дополнено 0 минут спустя

А ну ещё, я использую исходники оригинала, а не EE версии (их на руках у меня нет)


Дополнено 2 минуты спустя

А ресурсы в основном из ЕЕ версии, но я смотрю и решаю, какие лучше взять, включая даже из ТЧ, ЧН и т.е. (EE и оригинал)

Так как у них есть косяки, где в прошлых частях, ресурсы лучше сделаны, чем в новых версиях. Я не знаю, как они так делали)

Изменено пользователем Demonfail

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
Narsul

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
Demonfail
11 минут назад, Narsul сказал:

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

Я выбрал исключительно изначально "Сталкер: Зов Припяти" оригинал, потому что это любимая часть, и она действительно хорошо проработана в плане геймдизайна, баланса и сюжета. Я наслышан, как там люди старательно работали, и в итоге в игре меньше косяков, чем в прошлых частях.

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

Локации я не буду брать из EE, так как наслышан о вырезне. Русский язык полностью будет, как и другие.

Ачивки мне не нравятся как сделаны, я могу лучше сделать.

Короче я возьму только плюсы из EE, плюс другие движки посматриваю, как OpenXray, IX-Ray, Monolith т.е.

Изменено пользователем Demonfail

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
Demonfail

Всем привет.


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

Настроил большую часть конфигов (это то, что происходит в 9 утра по местному времени, оригинально игры).

С горем пополам дописал и доработал полностью PostFX - Lens Flare (с эффектами Halo, Gradient), теперь он соответствует оригиналу.

За остаток ночи я дописал Live Preview для окружения, теперь откладывать, редактировать и настраивать весь процесс можно в самом редакторе без запуска игры.

Спойлер

 

 

  • Мастер! 1
  • Аплодисменты 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
Demonfail

Отчёт по работе (01.06.2026):

Всем привет.


1) Я знаю, что новостей мало сейчас, но я построил для себя дорожную карту, по которой буду примерно следовать в плане реализаций всего, не только проекта.

Плюс я решал свои проблемы и делал дела, которые косвенно не пересекаются с проектом, — новостей поэтому долго нет.


2) Я слишком сильно углубился в исходный код и портирование/адаптацию, что забыл обо всем остальном, потому что портировать и офигевать от того, что всё работает, оказалось интереснее, чем писать статьи (но я это не отложил, если что). Я постараюсь доработать прошлые статьи и разные прошлые/текущие задачи как и говорил, да и впрочем о самом проекте не могу забывать: на минуточку, уже под 1 000 000 строк кода у меня и 246 файлов C# (*.cs) — это примерно 10-15% от всего исходного кода X-Ray Engine.


3) Ориентироваться я стал не только с оригинальным X-Ray Engine, но и его популярными модификациями IX-Ray Engine / Monolith Engine, так как в них меньше мусорного и больше исправлений. Хотел ещё и OpenXRay, но это перебор уже. А мусорного остатка в самих IX-Ray Engine / Monolith Engine не меньше, кстати. Если бы не проект / своё личное время, может быть, отправлял бы репорты на GitHub, но мне ещё и лень. Плюс наработки сообщества и идеи, но опять же с нуля, на свой лад.


4) Кроме выпуска статей, я отдельно запущу эссе по конкретным моментам и деталям.

  1. В статьях я буду простым языком объяснять вещи, с которыми я столкнулся и которые решал.
  2. В эссе же всё будет описываться более профессионально и конкретно. Код будет присутствовать лишь частично как мини-пример, будет использоваться профессиональная терминология и сложные моменты, так что тут либо чисто тупо читать по приколу, либо гуглить или шарить в этом — если грубо говоря. Я не стал это делить / дополнительно дробить, как то или что-то, потому что можно написать целый том книги "Как написать свой X-Ray Engine", чем я точно не хочу заниматься — я не писатель.

5) Собираюсь статьи аналогично одновременно выпускать на Boosty (там пока ничего нет и не сделано, только заготовка, если что), потому что не всем нравится формат Яндекс.Дзена, да и в принципе он сам — но как дубль оставлю.


Время было потрачено на разные идеи, реализации и возможности, так что время зря не терял.


1) Реализовал ядро консоли и систему ввода (управление и всё, что с этим связано: мыши, клавиатуры, геймпады, тачскрин и т.д.) — всё то же самое, что есть в X-Ray, только лучше. До конца нужно реализовать скриптовой движок для GDScript, аналог в LUA, чтобы можно было писать скрипты в стиле самого сталкера, но на другом ЯП.

К этому всему реализовано частично главное меню (оно, конечно, сырое, видно на скрине), биндинг для конфигов (.cfg) / управления.

Реализовал такое понятие, как секвенцы, они же последовательности (Sequence). Они нужны для реализации видеоскриптовых вставок, видеосцен, туториалов, интро/концовок, титров и т.д. Названо в оригинале, кстати, это ужасно и запутанно — GameTutorial, хотя там целый пласт возможностей для реализации скриптовых видеовставок, причем любых. Я с трудом тут разобрался, так как именно этот модуль звучит нелогично.

Спойлер

2026-06-01-135703.webp


2) Для тестов решил заняться рендерингом, а именно водой, чтобы проверить, смогу ли я портировать и сделать шейдер воды круче или ближе к ААА-играм. Спойлер: да, но чтобы довести до уровня ААА, надо применять другие методы, чем я займусь уже потом.

Шейдер брал основной из игры, смотрел, что сделано в IX-Ray Engine / Monolith Engine, плюс ещё поглядывал в сторону Screen Space Shaders [ Update 23.5 ] [ 1.5.3 ] от Ascii1457, и реализовал с нуля свой.

В принципе, я проверил, всё отлично работает. Лучше переписать его же с нуля потом опять, так как воду я хочу сделать не просто Parallax, а Volume, то есть чтобы вода была объёмной, а не фейком. К этому всему — не просто SSR (локальное отражение в пространстве с теми же артефактами), а Planar Reflection (та самая технология старая, которая жрёт на уровне SSR, но отражает всё в своей доступности). Наверное, думаю сделать гибридным (что будет логичнее и производительнее).

Спойлер

 


3) Думал, как оптимизировать ещё карты / локации, ведь секторов и порталов в Godot нет, да и сам метод устаревает. Писать прочие сомнительные оптимизации я не хочу. Об этом я, хоть и, наверное, потом буду думать.

Но заранее взялся написать за 1-2 недели тестовый редактор уровней, я его отложил пока в топку, так как на это надо отдельно силы + грамотно продумать конвертер локаций оригинальных, чтобы вручную не портировать каждую ямку/впадину на карте.

Но он частично реализован, и у него уже есть поддержка локации 64 на 64 кв. км. Это буквально можно запихать все локации на один уровень, а-ля S.T.A.L.K.E.R. 2 :)

Есть поддержка стриминга частей локации (пока без стриминга текстур; в Godot 4.7/4.8 это обещают сделать, я пока на версии 4.6). Плюс методы оптимизации для карт, которые буквально правильно отсекают / меняют детализацию ландшафта (LoD).

Это лишь попытка реализации в дальнейшем и домыслы на будущее.

Спойлер

2026-06-01-165703.webp


4) Переписал планировщик (Scheduler) с нуля и доработал полностью. По сути, он и так считает на уровне точки входа, а-ля `Main` в высокоуровневых ЯП, грех его не реализовать полностью и правильно. Плюс написал для него в режиме реального времени онлайн-отладчик в самом движке Godot (В нём надо только применить дизайн UI/UX, чтобы смотрелось красиво). По сути, от вас и так в оригинальном "Сталкере" скрыто это, а это отлично показывает производительность и работу с Объектами / ALife / Spawn / Server System. О нём, кстати, и будет моё первое эссе.

Спойлер

2026-06-01-165773.webp

2026-06-01-162303.webp

2026-06-01-164503.webp

2026-06-01-165573.webp

2026-06-01-165713.webp


На этом, пожалуй, всё :)


Дополнено 19 минуты спустя

P.S.: И да, забыл оговориться, я знаю, что от меня ждут результата, мол: "А как же игра? Хотя бы билд? Где мы играем сталкером, там стреляем?" — как многие кидают свои подделки (порты там же есть всякие на Unity или мобилки). Знаю, проходил, пытался сделать — нефига. Физика и поведение отличаются, это не "Сталкер", всё криво и косо работает, это лишь грубая и нелепая пародия, отлаживать такое говно сложно и нереально. Чтобы сделать адекватно и рабочее, надо идти от самого лёгкого и менее зависимого и модульного, потом повышать планку — так и работает программирование.

Изменено пользователем Demonfail
  • Лайк 2
  • Сталкерский лайк 2

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
BurRDA

Пытаюсь тоже тут что-то сделать на godot. Но увы, пока плохо получается :)
Желаю удачи в портировании!
spacer.png

  • Лайк 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
Demonfail
В 10.10.2026 в 21:10, BurRDA сказал:

Пытаюсь тоже тут что-то сделать на godot. Но увы, пока плохо получается :)
Желаю удачи в портировании!
spacer.png

Спасибо :)

Куратором я конечно не буду по Godot, я не учитель, но мои советы:


1. Я не рекомендую использовать голый формат .glb, производительность ужасная, так как собранная геометрия оригинальная не оптимизированная (точнее оптимизированная только для X-Ray) - это нужно производить вручную, через блендер и разбивать грамотно всё + настраивать коллизию + окклюдеры, а не полагаться на запекание от Godot. Из .glb надо переводить в сцену .scn

2. Рекомендую отказаться от лайтмапов, тем более от оригинальных (они для движка X-Ray) - лайтмапы нужны в основном для телефонов, а так скорее всего выбран Forward+, я сомневаюсь что мобилки планируются.
Но всё равно лайтмапы лучше запекать через Godot, он поддерживает динамику света и динамические объекты - что уже плюс по сравнению с X-Ray.
Но я отказался на пользу Full Dynamic Light - так как 80-90% устройств PC лайтмапы не нужны, нет смысла брать опцию кто не будет её использовать, а тебе лишь зря потраченное время, оптимизация, настройка.

3. Не рекомендую лепить много текстур (для теста можно, но не серьезно), у тебя годо 4.7.2 - там нет настройки текстур, нужно писать свою систему выбора качества текстур (и нет не методом перебора Mip-mapping'om, там сложнее через self-resources + gdscript + набор разных разрешений текстур - 4A Engine Style (Metro Redux / Exodus))

К чему это я... В ноябре выходит 4.8 Stable, с поддержкой стриминга текстур - не только адекватная/производительная загрузка для больших игр, работа с SSD (частичная), выбор качества текстур и не надо перезагружать игру/проект чтобы выставить нужные текстуры - что уже гвоздь в крышку гроба оригинального X-Ray.
 

Изменено пользователем Demonfail
  • Мастер! 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
ThuleanSpirit

Привет! Думаю ты точно в курсе про тренд на переписывание движков игр на Rust с работой с оригинальными ассетами. От тебя давно не было новостей, но как ты оцениваешь эту перспективу под сталкер?

  • Смех 1
  • Смущение 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
61dimon161

Пацаны красавчики! Ждём скриншотов и информации. Сам думал о том что бы запилить своего сталкера на Годо, но чет как то не зашёл движок. Очень жду игровой билд! Удачи:u1F4AA.0:

  • Лайк 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
Demonfail
В 19.10.2026 в 14:14, ThuleanSpirit сказал:

Привет! Думаю ты точно в курсе про тренд на переписывание движков игр на Rust с работой с оригинальными ассетами. От тебя давно не было новостей, но как ты оцениваешь эту перспективу под сталкер?

Привет, честно, не знаю :) Может, кому-то и надо, но моя перспектива — заменить/изменить прошлые косяки разрабов, а под движок — уйти от ресурсов оригинала, так как они по факту устарели и не оптимизированы, да и там, где я делаю, этого не надо.

А если прям конкретно, то перспектива, как по мне, у движка IX-Ray Engine, но он на C++. Так как даже я жду их детализированные текстуры PBR, мне как раз они и нужны.


Дополнено 0 минут спустя
В 20.10.2026 в 17:57, 61dimon161 сказал:

Пацаны красавчики! Ждём скриншотов и информации. Сам думал о том что бы запилить своего сталкера на Годо, но чет как то не зашёл движок. Очень жду игровой билд! Удачи:u1F4AA.0:

Спасибо, инфы и правда мало, так как выкладывать часто я не могу, потому что то, что я покажу, может уже и не быть или я переделаю. Я думаю, пачка скриншотов сойдёт :)

А так надеюсь сам доживу до билда, ранее и писал, что большая часть не код, а ресурсы, которые как родные должны работать под Godot Engine. Так например, чтобы восстановить частицы / эффекты (аномалии), мне потребовалось 1 месяц на ручную адаптацию 1:1, плюс ещё 1 месяц переработать то, что оказалось кривым и нафиг не нужным, после моих тестирований.

P.S. - Не всё на скринах идеально, я фикшу со временем.

Спойлер

2026-10-21-004531.webp

2026-10-21-004053.webp

2026-10-21-004604.webp

2026-10-21-004712.webp

2026-10-21-004737.webp

2026-10-21-004824.webp

2026-10-21-004850.webp

2026-10-21-005010.webp

2026-10-21-005057.webp

2026-10-21-005124.webp

2026-10-21-005200.webp

2026-10-21-005225.webp

2026-10-21-005318.webp

2026-10-21-005341.webp

2026-10-21-005405.webp

2026-10-21-005648.webp

 

Изменено пользователем Demonfail
  • Лайк 4

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
gosling123

А опубликуй альфу обрезуную и не доделуную игру и чтоб порадовать людей и мододелов етим проектом

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
Demonfail
4 часа назад, gosling123 сказал:

А опубликуй альфу обрезуную и не доделуную игру и чтоб порадовать людей и мододелов етим проектом

Там ещё сыро достаточно чтобы выкатывать подобное, даже для альфы, обычно альфу не обрезают, а делают пре-альфу, но мне пока тоже не до неё.

Обрезать не вариант, потому что всё строго и через github/систему git локально, тупо собирать из отдельных кусков это не корректно, мне главное не сломать ветку в репозиторий - так как, этой мой главный паритет.

Не в обиду конечно, но реально собирать и тратить время впустую на обрезок - это такое себе, я лучше/могу потратить время чтобы доработать что-то, сделать или заменить.

Если будет что-то более интересно как по мне, я думаю выложить видео на ютубе и если уже более-менее играбильно то и сам билд, так что всё своё время:)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
smalcom
9 часов назад, gosling123 сказал:

А опубликуй альфу обрезуную и не доделуную игру и чтоб порадовать людей и мододелов етим проектом

Там, скорей всего, нейросетка такого понаписывала, что и показать страшно. ))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
Demonfail
37 минут назад, smalcom сказал:

Там, скорей всего, нейросетка такого понаписывала, что и показать страшно. ))

С чего бы страшно? Исходниками я вроде не говорил что буду делится (пока я не планирую), моддинг будет, ИИ я не скрываю что пользуюсь "как тупо ассистентом" и статическим анализатором, так как статический анализатор стоит дороже типа PVS Studio под C#, чем таже нейронка тем более LM.

То что я не выкладываю разом, это как раз то что я не делаю на ИИ всё, так как ресурсы чисто ручные и всё с нуля не завязанное на оригинальном X-Ray Engine, типа в чём проблема подождать или то прикол такой у многих, просить то, что не готово на половину даже или они даже не понимают как работает продакшен и реализ?

Ну, а так если нейронка, ну я жду в принципе кто потягается со мной, мне это с первого дня разработки было интересно кто подобное делает/делал, по крайней мере всех кого я видел буквально брали исходники и ресурсы X-Ray на том же Godot - работало ужасно и прогорели на этом :)

Изменено пользователем Demonfail
  • Мастер! 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
warsk

Очень интересная тема, я буквально сегодня сидел-сидел и подумал насчёт возможностей godot'a и переноса сталкера на него. Оказалось не я первый(логично) и это охренеть какая трудоёмкая задача. Если провести параллель и от 0 до 100% на каком % сейчас ваша разработка? 

  • Лайк 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
Demonfail
20 часов назад, warsk сказал:

Очень интересная тема, я буквально сегодня сидел-сидел и подумал насчёт возможностей godot'a и переноса сталкера на него. Оказалось не я первый(логично) и это охренеть какая трудоёмкая задача. Если провести параллель и от 0 до 100% на каком % сейчас ваша разработка? 

Отвечу по возможности чуть позже и информативнее, так как есть основная работа и дела + обновлю шапку темы (добавлю скрины и нарежу гифки), спустя столько времени, а то без обид, бывает триггерит, отвечать на одно и то же... Заранее спасибо за поддержку :)

Изменено пользователем Demonfail
  • Жму руку 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
smalcom
16 часов назад, warsk сказал:

Очень интересная тема, я буквально сегодня сидел-сидел и подумал насчёт возможностей godot'a и переноса сталкера на него. Оказалось не я первый(логично) и это охренеть какая трудоёмкая задача. Если провести параллель и от 0 до 100% на каком % сейчас ваша разработка? 

Сами хотите переносить или нейросеткой?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
warsk
3 часа назад, smalcom сказал:

Сами хотите переносить или нейросеткой?

Конечно нейронкой. Я сам могу только в С и дельфи, что крайне слабо для таких задач. А вот клауд х5 - вполне неплохо делает, но лимиты улетают в стратосферу,  как будто нужен х20. И то не факт, что будет достаточно быстро. Самому разбираться в коде и всём этом месиве, конечно, круто, но... Но это минус время на огромное количество рутинных задач, которые с лёгкостью делает клауд за пару минут. Очень хочу сталкер сделать на своём сценарии, но инструментария очень мало, вот и задумался о переносе, а тут оказывается, что человек уже довольно долго пыхтит над этим вручную. 

  • Смех 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
Demonfail
В 08.11.2026 в 01:00, warsk сказал:

Очень интересная тема, я буквально сегодня сидел-сидел и подумал насчёт возможностей godot'a и переноса сталкера на него. Оказалось не я первый(логично) и это охренеть какая трудоёмкая задача. Если провести параллель и от 0 до 100% на каком % сейчас ваша разработка? 

Так, ну я чуть редактировал... Думаю, потом уже добавлю ещё инфы, описание и т.д. и т.п.

А то мне и так пришлось перевести все ресурсы фото и анимации на нормальный хостинг + оптимизировать все скрины и гифки (За лет 10 я уже всё подзабыл.).

Если провести параллель и от 0 до 100%, на каком % сейчас ваша разработка?

Не считал, да и не вёл пока точный процесс, но думаю, примерно 10-15%, если считать то, что скопилось как мусорное (отложено) и уже готовое (код, ресурсы и основа). Чтобы посчитать это, надо полноценную дорожную карту собирать, но вариант такой себе, не обязательный пока.

 

Это вообще тяжело сказать, на скольки я процентах. Потому что, надо все ресурсы переделать, так как я прохожусь чисто по всем, абсолютно всем, это примерно 16к файлов, из них мне еще сверху 16к не нужны (технические, так как это родные файлы X-Ray, в Godot Engine им делать нечего) — это я про всю папку Gamedata, если что.

Ресурсы почти все косячные, кривые, не оптимизированные. Разрабы везде либо ленились, либо болт клали, так как Call of Pripyat был с производственным и строгим адом, где половина уволилась, но довели саму игру до нуля (почти).

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

Примеры:

1) Звуки - прослушать все звуки, пройтись нормальным и последним кодеком (чтобы меньше весило и меньше жрало ресурсов), вырвать комментарии из звуков, они там не нужны (это нужно перенести в ресурсы .tres Godot, комментарии там настройки X-Ray Engine), Godot из-за этого захлебывается в предупреждениях - если просто взять и запихнуть оригинальный .ogg файл.

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

Пример в "gamedata\sounds\music\guitar_6.ogg": звукарь в начале говорит фразу "Пишем...", а потом игра на гитаре. Ну, еще и правильно их назвать, а не просто "pux_blast.ogg" (полусуржик какой-то).

2) Текстуры - отдельный вид мозго*бства, перевод из .dds в .webp (по моим замерам этот формат для хранения лучше) + есть уже нативная реализация стриминга текстур. Настройка VRAM текстур (уже в самом Godot): куда какая попадет и как попадет.

Проверка, не поломалась ли текстура при переводе из одного формата в другой (сжатие и компрессия). Работа с BUMP / BUMP#, перевод из DX в GL, при этом опять же не сломать его (при конвертации канала Green). Да, можно использовать шейдер, чтобы развернуть его — грубо говоря. Но зачем шейдеры задрачивать примитивными вещами? Которые скажутся на лишней трате GPU, когда они должны работать с тяжёлыми эффектами и графикой.

Плюс мелкие редактирования в самих текстурах и их исправления (никакого ИИ, чисто Photoshop и про. графический планшет). Есть некоторые и свои текстуры, но в основном малая UI часть. Аналогично как со звуками, переименовать, если плохо.

3) Модели/Уровни/Меши - Большую часть времени забирают модельки: я могу потратить от 5 минут до 3 дней, в зависимости от сложности: поломана UV-развертка (или ее вообще нет где-то) / геометрия, грамотное разбиение и построение окклюдеров вручную (так как Порталы / Сектора в Godot Engine нет и не нужны, это устаревшая технология — буквально, приходится по-другому оптимизировать и родное под Godot Engine), та же дилемма с грамотным разбиением и построением статических физических тел (так как принцип работы разный между двумя движками ODE и X-Ray Engine), настройка материалов или их исправление, восстановление мешей и геометрии и их оптимизация. Аналогично как со звуками, переименовать, если плохо.

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

Примеры:

Спойлер

2026-11-08-111848.webp

Описание: Уже разбиты, оптимизированы материалы/коллизия/меш, сделан окклюдер (это на каждой геометрии, если что - в основном статика). Примечательно восстановлены объёмные окна; в оригинале это просто квад с текстурой окна и материалом из стекла, то есть если стрельнуть по деревянному окну, ты выстрелишь в стекло.
2026-11-08-101708.webp

Описание: Аналогичное тому, что выше, просто показан объём работы, затон, место, лесничество.
2026-11-09-023714.webp

Описание: Прозрачные стекла с внутренним объемом для блочных стекол. В оригинале непрозрачная текстура блочного стекла и никакого объема внутри.
2026-11-09-023813.webp

Описание: Аналогичное тому, что выше, со зданием и окном. (Да разрабы и с этими окнами про*бались на затоне в лесопилке, да и я не перепутал что "про*ебались", на заправке окна нормальные.)

2026-11-09-023358.webp

Описание: Террейн затона - Разбиение на чанки и объединение всех чанков по нормалям и вершинам (чтобы не было швов). Я же отказался от секторов и порталов.

Это, по сути, самое тяжёлое из всех, так как очень монотонно. Остальное более-менее терпимо для меня.

Изменено пользователем Demonfail
  • Мастер! 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
Pavel2000
3 минуты назад, Demonfail сказал:

"Пишем..."

прикол


Дополнено 2 минуты спустя

Нет слов просто. Желаю не выгореть и довести начатое до конца!

  • Лайк 1

 1540412914_ezgif.com-optimize(1).gif.ec7250e918399802d8fe85d6d4fd7081.gif

«Если долго мучиться, что-нибудь получится»
Испытуемый №28: Начало и Испытуемый №28: Игры Разума

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

Важная информация

Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек. Оставаясь на сайте, вы подтверждаете свое согласие на их использование. Политика конфиденциальности | Условия использования