Перейти к контенту
Rolan

Редактирование движка X-Ray

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

 

 

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

В некоторых глобальных модах колличество обьектов в игре
может вылезти за 65535, вылет по нехватке айди.
Если дать ей 32 бита памяти увеличит порог значительно.
Надо ли переписывать все функции которые ее пользуют,
или так прокатит?

Ссылка на комментарий

@CAHCAHbl4, на оригинале, доказано практикой, максимальное количество объектов 16580355, сильно сомневаюсь что не хватит для чего-то. То что хочешь сделать ты на раз-два не выйдет.

Ссылка на комментарий

86 раз используется ID().

И еще не понял как скажется увеличение пространства памяти ObjectProperties....

union ObjectProperties


{
struct
{
u32 net_ID : 16;
u32 bActiveCounter : 8;
u32 bEnabled : 1;
u32 bVisible : 1;
u32 bDestroy : 1;
u32 net_Local : 1;
u32 net_Ready : 1;
u32 net_SV_Update : 1;
u32 crow : 1;
u32 bPreDestroy : 1;
};
u32 storage;

 

union ObjectProperties
{
struct
{
u32 net_ID : 32;
u32 bActiveCounter : 8;
u32 bEnabled : 1;
u32 bVisible : 1;
u32 bDestroy : 1;
u32 net_Local : 1;
u32 net_Ready : 1;
u32 net_SV_Update : 1;
u32 crow : 1;
u32 bPreDestroy : 1;
u32 reserve : 16;
};
u64 storage;
};

 

 

Размер ID в xrObject ровно 16 бит...

 

Откуда тогда вылет на спавне "Not enough IDs"?

Изменено пользователем CAHCAHbl4
Ссылка на комментарий

"86 раз используется ID()."

:facepalm:

 

" не понял как скажется увеличение пространства памяти ObjectProperties"

никак не скажется, можешь сразу объем пакета пару гигов сделать, тоже нормально.

Ссылка на комментарий
Откуда тогда вылет на спавне "Not enough IDs"?

 

Открыть отладчик и посмотреть?

Но скорее всего

 

 

"86 раз используется ID()." :facepalm:

 

 

Ссылка на комментарий

Не больше, я перепутал там строчка 86.
В окошке поиска показало в скобках,
я думал что это колличество референсов.
Все тянется от ID_generator...

В спавне он (PerformIDgen) несколько раз вызывается.
Я в Ц++ нуб, пытаюсь врубиться...

Изменено пользователем CAHCAHbl4
Ссылка на комментарий

Я в этом посте писал о том как хорошо бы было если бы сделали перечитывание ресурсов игры, в частности текстур... А вот, что было дальше...

Не много лирики...

 

 

 RayTwitty написал мне, что есть репозиторий в котором реализована перезарузка текстур,  Project XRAY (SoC) вот он самый. Ознакомившись с правками, я не нашёл прямого упоминания на то что там есть что то, что перегружает текстуры, что то было близкое более менее по смыслу 

 

 

  • Переделано детектирование процессора и его возможностей в библиотеке xrCore. Детектирование сделано кроссплатформенно (x64/x86) с помощью __cpuid().
  • Сохранение текстур осуществляется с помощью кода из nvidia texture tools.

Обратившись снова  к RayTwitty я негодовал, что информации как перегружать эти злосчастные текстуры нету, луа хелп не откомментирован, кстати в луа хелп именно в методах классов я нашел наводки на то что есть какие то ф-ции работы с текстурами которых не было ранее, тем временем  RayTwitty тыкает меня носом на мод Худ ТЧ: Смена рук при смене костюма, мол смотри как тут и учись. Я прочитал скрипты из мода, скачал его (+ не пришлось собирать репозиторий). но меня терзали смутные сомнения на счет того что худ это не статика, тогда я  сам написал скрипт на смену текстур стат. обекта (Ёлки), протестил - всё работало.

 

 

Но меня терзали смутные сомнения на счет того что худ это не статика, тогда я  сам написал скрипт на смену текстур статического обекта (Ёлки), протестил - всё работало.

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

Ссылка на комментарий

@Graff46, посмотри функцию CTexture::LoadImpl, сделай загрузку из других мест, но не забывай добавлять пути в конфиг, у меня работает корректно, но не текстуры, я в общем о принципе, текстуры я не пробовал.

 

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

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

Изменено пользователем HellRatz
Ссылка на комментарий

 

 

но вот беда, текстуры террейнов лежат начиная от папки levels  и нам до них не добраться?

И код не приложен...

 

Может просто "$game_textures$" -> "$game_levels$"? Кто же узнает, если кода нет.

Ссылка на комментарий

@SkyLoader, код в открытом доступе полтора года, то что предлагаешь ты фигово скажется в дальнейшем, надо там добавлять еще один блок для $game_levels$, тогда в теории должно заработать.

Ссылка на комментарий

Я только сейчас смог запихнуть папку levels в textures без ущерба игре (редактировал fs_game.ltx) но текстуры напрочь не читаются по такому пути 

gamedata\textures\levels\l01_escape\terrain\terrain_escape

хотя фактически находятся именно там (и игрой читаются оттуда, проверено.). Возможно, что ф-ция не хочет видеть этот путь, потому что начиная с levels\ это другая переменная ($game_levels$ а не $game_textures$). Или же текстуры терейнов не так "работают" в движке что бы ф-ция их могла видеть.

Ссылка на комментарий

Ребят, тут вопрос возник, в LuaCap имеется библиотека luaxml. Её требуется подключать или она как-то связанна с другими библиотеками?


Всё, нашёл: 
в LuaCap.conf 

[config]
UserDLLs=luaxml
ShowConsole=1
KeyTerminate=35

[debug]
ParseLog=0

Изменено пользователем Forser
Ссылка на комментарий

Никто не исправлял это?

188 ревизия.

 

Кривая настройка конфига оружия - это проблемы не движка, а того, кто залез в конфиг шаловливыми ручонками))

Вообще как-бы и нет. Сначала партикл отыгрывается там где надо, а после какого-то момента съезжает, абсолютно у всего оружия. Ну и конфиги абсолютно стандартные. В общем это не конфиги, вот что я хотел сказать. Изменено пользователем Murarius
Добавлено RayTwitty,

Кривая настройка конфига оружия - это проблемы не движка, а того, кто залез в конфиг шаловливыми ручонками))

Ссылка на комментарий

Люди, кто знает как сделать слоты под нож, бинокль, фонарик и болт? Пожалуйста, научите или выложите исправленные  файлы, очень нужно.

Для Зов Припяти.

Изменено пользователем HellRatz
Добавлено  HellRatz,

Предупреждение по пункту 2.5 правил форума. Где знаки препинания? Заглавные буквы?

Ссылка на комментарий

Перед тем как задавать вопросы: "Как сделать что-то?", "Как исправить что-то?" и т.п. напишите, на какой версии движка, на основе какого проекта (если есть) вы хотите сделать эти изменения.

Занесено в шапку темы.

  • Нравится 1
Ссылка на комментарий

Собс-на вопрос: сей репозиторий кому-то нужен или я его могу сносить? 
https://bitbucket.org/ForserX/ray-tech-project-soc
(чтоб не засорять тему, ставим согласие или несогласие к посту)


 

 

Правок мало, но интересные вещи есть. Я бы не сносил.

У меня есть кое-какие планы на X-Ray, но:
1. Я буду это делать не раньше весны 2016

2. Всё это будет писаться на чистых исходниках

3. Уже начинаю путаться в репозиториях на битбейке

Добавлено RayTwitty,

Правок мало, но интересные вещи есть. Я бы не сносил.

Ссылка на комментарий

Когда мы собираем репозиторий, он соберется обязательно со всеми правками или можно только с нужными правками?

Ссылка на комментарий

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

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    Ни один зарегистрированный пользователь не просматривает эту страницу.

AMK-Team.ru

×
×
  • Создать...