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

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


Rolan

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

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

Изменено пользователем Shadows
  • Согласен 2
  • Полезно 1

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


Ссылка на сообщение

Никто кроме нас

Тогда зачем спрашивать мнение окружающих? Если сможете грамотно интегрировать и сделать контент под новый физический движок - молодцы, что еще сказать.
  • Согласен 2

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


Ссылка на сообщение

Тут попросили спросить - в LA перенесли из ЗП апгрейд оружия, но никак не могут допилить до окончательного вида. dezodor спрашивает, может ли кто помочь с допилкой? :) Как я понял, там по LA DC осталось немного - допилить вот этот апгрейд и еще расставить гулаги по локациям. Если кто заинтересован, напишите в ЛС, дам контакты. Естественно, все привилегии члена команды, как я понял включены))

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


Ссылка на сообщение

А где можно посмотреть правку по смене модели из скрипта?

Если имеется ввиду например визуал ГГ, то это - CScriptGameObject::SetVisualName. Но, я эту функцию недавно ковырял и выявил, что визуал по сути нормально меняется только для ГГ. Для других неписей или предметов, особенно у которых есть анимация - функция работает не совсем корректно. Видимо, надо перезагрузить анимации, коллизию и параметры повреждений, иначе будет такое:

 

 

:D

Изменено пользователем Shadows
  • Нравится 1
  • Полезно 1

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


Ссылка на сообщение

Помимо перезапуска анимации, перекалькулируй скелет и будет счастье)

Делал уже, но разницы особой не заметил))

Надо в первую очередь анимки перезагрузить, дамаг и все остальное. Кароче все то, что на колбеке onChangeVisual у актора. Надо аналогичные виртуальные функции добавить для всех остальных объектов.

 

Сама функция для экспорта:

void CScriptGameObject::SetVisualName(LPCSTR visual)
{
	shared_str visual_name = visual;

	// для актора вызываем свою функцию
	CActor* pActor = smart_cast<CActor*>(&object());
	if (pActor) {
		return pActor->ChangeVisual(visual_name);
	}

	if (!visual_name.size() || object().cNameVisual() == visual_name)
		return;

	object().cNameVisual_set(visual_name);

	CKinematics* pKinematics = smart_cast<CKinematics*>(object().Visual());
	if (pKinematics) {
		pKinematics->CalculateBones_Invalidate();
		pKinematics->CalculateBones();
	}
}
Изменено пользователем RayTwitty
  • Полезно 1

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


Ссылка на сообщение

PNG Screenshots (SOC 1.0006)

 

Описание: игра теперь делает качественные скриншоты в формате png.

Установка: поместить библиотеки рендера в папку с программой и пропатчить.

 

http://rusfolder.com/44205472

  • Нравится 3

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


Ссылка на сообщение
@Дизель, фрапс это тормознутая штука, съедающая половину фпс (формат которой, к слову, плохо дружит в ютюбом). Для снятия видео есть nVidia Experience и аналог для AMD (вроде как), а для скринов теперь штатная фича игры. Зачем в этом случае мне ставить этот древний фрапс - не понятно. Изменено пользователем RayTwitty
  • Согласен 2
  • Полезно 2

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


Ссылка на сообщение

Кстати говоря, когда настраивал position и orientation через adjust mode, заметил баг с растягиванием модели:

thumb.png

 

Видимо где-то бьется расчет матрицы трансформации...

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


Ссылка на сообщение

У меня без BugTrap игра не умеет сворачиваться при вылете, а у K.D. наоборот, судя по его словам. Тем не менее, на xp-dev в репо BugTrap выпилен.

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


Ссылка на сообщение

А никто не делал что-нибудь на счет фикса вот этих вещей? Первая и вторая.

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

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


Ссылка на сообщение

Как пруфанешь - можно будет поговорить предметно. Пока для меня это звучит как чистая ахинея. У меня xrGame при любом раскладе не собирается за пол минуты (в Release конфиге разумеется), рекорд был где-то минут 15.

Бро, тебе видос записать? Или может сам почитаешь про отличия "Построения" и "Перестроения"? Изменено пользователем RayTwitty

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


Ссылка на сообщение

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

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

  • Нравится 1

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


Ссылка на сообщение

Дефайны ещё можно использовать в разных опциональных вещах. Например, если предполагается, что возможны разные конфигурации\наборы фич на выходе.

 

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

 

Я вроде нашёл причину

Там насколько я помню, много ресурсов (в геймдате) требует параллакс, детальный бамп и некоторые замененные шейдеры. Логично это сделать опциональным. Изменено пользователем RayTwitty

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


Ссылка на сообщение

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

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

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


Ссылка на сообщение

У WeaponGL может быть и прицел (wpn_fn2000, wpn_ak74, wpn_groza), так что я думаю придется так или иначе проверять режим "в подствольнике". Я не кастовал дочерний, а просто ввел новую переменную, ее же из WeaponGL можно напрямую поднять.

Потестил, в случае фикса подствольника, лучше да, использовать переменные, нежели добавлять функции-пустышки в CWeaponGL, так будет корректнее (можно будет переключать активное оружие колесом мыши). Только вводить надо не новую переменную, а перенести m_bGrenadeMode в родительский класс CWeapon.
  • Полезно 1

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


Ссылка на сообщение
хм, как оказалось, эта правка не исцеляет весь баг, там есть еще косяк, который тоже нужно поправить

У себя поправил по озвученному способу - вроде все норм. Или там какой-то нюанс есть?

 

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

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

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

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


Ссылка на сообщение
  • Недавно просматривали   0 пользователей

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