При хостинг поддержке Интернет-сообщества VBIOS CS-Mapping.com.ua
Вернуться   CS-Mapping.com.ua > Forum > Разработка игр > Xash3D Engine
Ник
Пароль
Регистрация Правила форума FAQ Пользователи Администрация Календарь Поиск За 24 часа Пометить все разделы прочитанными

Закрытая тема
 
Опции темы Поиск в этой теме Опции просмотра
Старый 25.04.2016, 23:13  #1
Дядя Миша
Дядя Миша
Регистрация: 28.03.2010
Адрес: Кубань
Сообщения: 11,921


По умолчанию XashXT 0.65 rev.3 release [stable]

Для тех, кто слышит о проекте впервые добро пожаловать в FAQ.
Тем, кому проект понравился и они желают материально поддержать автора - сюда.

Единственное отличие rev 3 от rev 2 - это вот как раз таки поддержка
тайлинга на студиомоделях. Точно так же, как и в движке присутствует имплементация в рендерере, и самое главное - ответный код в студиомдл. Естественно данная поддержка присутствует и в параное, но над параноей мне еще предстоит как следует поработать, поэтому пока не выкладываю. Теперь касательно обещанной статьи по внедрению тайлинга в голдсорс. У меня есть серъезные сомнения, что это еще кому-нибудь нужно, соответственно, я пока что не тороплюсь писать.
Из приведенных исходников понятно, что это буквально пара новых условий в коде и одна новая функция. В принципе этот тайлинг можно добавить еще в первую параною или hlfx 0.6. Впрочем я полагаю, что и без меня это найдется кому сделать.

Запоминайте команды для studiomdl:
Команда $fixedcoords в qc-файле, на манер $cliptotextures. Она осталась в целях совместимости от прошлой попытки улучшить ситуацию. К сожалению старая версия этой команды (за 2015-й год) несовместима с новой. Надеюсь что её никто тогда и не юзал.
Вторая команда: $freecords - тоже глобальная. Она-то и даёт нам тот самый заветный тайлинг, который пришлось ждать почти 18 лет

Насколько мне известно, камрад Ксерокс уже добавил этот расширение в ДжекХаммер, правда я не в курсе вышла-ли уже эта версия в свет или еще нет.

www.hlfx.ru/xash/XashXT_065_rev.3.7z - 15.0 Mb
www.hlfx.ru/xash/PhysX.rar - 1.3 Mb (библиотеки физикса)

Билд стабильный, обновление рекомендуется всем разработчикам под ксаш-мод, в паре с движком.
Дядя Миша вне форума Ответить с цитированием
Старый 25.04.2016, 23:26  #2
XaeroX
XaeroX
Регистрация: 05.09.2008
Адрес: Новосибирск
Возраст: 31
Сообщения: 9,144


По умолчанию

[ Цитата ] камрад Ксерокс уже добавил этот расширение в ДжекХаммер
Я добавил поддержку fixed coords. Это оно?
XaeroX вне форума Ответить с цитированием
Старый 25.04.2016, 23:31  #3
Дядя Миша
Дядя Миша
Регистрация: 28.03.2010
Адрес: Кубань
Сообщения: 11,921


По умолчанию

[ Цитата ] Я добавил поддержку fixed coords. Это оно?
Если через халф-флоаты, то да. Различие между fixedcoords и freecoords - только в самом студиомдл. Первый случай клампит координаты перед компиляцией, подобно оригиналу, но точно так же сохраняет их в half. А вторая команда ничего не клампит и тоже сохраняет в half. Первая команда была оставлена в целях совместимости.
Дядя Миша вне форума Ответить с цитированием
Старый 06.07.2016, 06:37  #4
Qwertyus
Qwertyus
Подполковник
Регистрация: 13.08.2009
Сообщения: 1,143


По умолчанию

Тут выходит, что XashXT совместим только с устаревшими версиями PhysX. При наличии новой версии PhysX в системе XashXT зависает на загрузке любой карты, независимо от того, есть там физобъекты или нет. В том числе и при выключении квара PhysX. Последняя версия, с которой удалось "завести" XashXT - 9.13.0725 от 2013.08.20:
http://www.nvidia.ru/object/physx-9...-driver-ru.html
http://www.nvidia.com/object/physx-...725-driver.html

Версия 9.13.1220 от 2014.01.27 и все более поздние приводят к зависанию, движок пишет в логе "Error: unknown error: Internal Error: cannot receive device properties!".

А те файлы от старого PhysX 2010 года (9.10.0129), которые когда-то выкладывались архивом, как средство на случай, если PhysX не установлен (для копирования в папку Ксаш-мода), не помогают вообще. В логе пишется:
"PhysXLoader.dll loaded succesfully!
Error: InitPhysic: failed to initalize physics engine"
При этом карта загружается, но физика не работает.

Кстати, в случае полного отсутствия файлов PhysX, движок пишет "Error: InitPhysic: failed to loading NxPhysics.dll." При этом файл NxPhysics.dll вообще не входит в комплект PhysX (в старых версиях есть только NxCooking.dll).

П. С. Самая старая заработавшая версия PhysX - 9.09.1112.

Последний раз редактировалось Qwertyus, 06.07.2016 в 07:08.
Qwertyus вне форума Ответить с цитированием
Старый 06.07.2016, 11:01  #5
Дядя Миша
Дядя Миша
Регистрация: 28.03.2010
Адрес: Кубань
Сообщения: 11,921


По умолчанию

[ Цитата ] Версия 9.13.1220 от 2014.01.27 и все более поздние приводят к зависанию, движок пишет в логе "Error: unknown error: Internal Error: cannot receive device properties!".
Инициализация SDK устроена именно так, как это написано в документации. Зависание происходит непосредственно внутри самого PhysX. Почему оно так - я не знаю. Там что-то поменяли. Помоему они просто больные ублюдки.
Я сделал все фаллбэки на случай отсутствия или неправильно установленного PhysX, на случай зависания есть квар sv_allow_physx. Надо его в ноль установить и тада физика не будет инициализироваться.
Дядя Миша вне форума Ответить с цитированием
Старый 06.07.2016, 12:12  #6
a1batross
a1batross
Старший сержант
Регистрация: 06.01.2015
Адрес: Москва
Возраст: 19
Сообщения: 396


По умолчанию

2 Дядя Миша:
может написать реализацию для Bullet? Хотел это сделать, что-то только мотивации, а следовательно и желания нет.

Хотя там ломают всё не менее часто. Ну хотя бы можно тащить DLL-ку физики с собой.
a1batross вне форума Ответить с цитированием
Старый 06.07.2016, 12:21  #7
Дядя Миша
Дядя Миша
Регистрация: 28.03.2010
Адрес: Кубань
Сообщения: 11,921


По умолчанию

2 a1batross: они все поганые по качеству. Буллет то воще тормоз перестройки. Физикс был единственный кто меня хоть как-то устроил.
Дядя Миша вне форума Ответить с цитированием
Старый 06.07.2016, 19:00  #8
Qwertyus
Qwertyus
Подполковник
Регистрация: 13.08.2009
Сообщения: 1,143


По умолчанию

Хм, странно. Сейчас полностью обновил драйвера NVidia пакетом 368.22, там в комплекте идёт PhysX 9.16.0318. И теперь почему-то работает, хотя до этого ставил ту же версию PhysX отдельно, и она не работала. Может быть, антивирус или перезагрузка как-то влияет? Когда ставил драйвера NVidia, защиту отключил, ну и комп перезагрузил. Когда просто проверял версии PhysX, антивирус не отключал и комп не перезагружал. Тем не менее, старые-то версии почему-то работали в любом случае. До этого стояла какая-то версия PhysX, с которой Ксаш вис (почему и начал тестировать разные версии).

Qwertyus, подумав, добавил 06.07.2016 в 19:17
[ Цитата ] Сообщение от Дядя Миша: на случай зависания есть квар sv_allow_physx. Надо его в ноль установить и тада физика не будет инициализироваться.
Тем не менее, вис движок на старте карты и с кваром, выведенным в 0.

Последний раз редактировалось Qwertyus, 06.07.2016 в 19:17.
Qwertyus вне форума Ответить с цитированием
Старый 06.07.2016, 19:36  #9
ncuxonaT
ncuxonaT
Старший прапорщик
Регистрация: 05.05.2013
Сообщения: 662


По умолчанию

[ Цитата ] Буллет то воще тормоз перестройки.
На данный момент ничего не изменилось? Насколько вообще сложно интегрировать физический движок?
ncuxonaT вне форума Ответить с цитированием
Старый 06.07.2016, 20:16  #10
Дядя Миша
Дядя Миша
Регистрация: 28.03.2010
Адрес: Кубань
Сообщения: 11,921


По умолчанию

[ Цитата ] Тем не менее, вис движок на старте карты и с кваром, выведенным в 0.
Квар надо только из конфига выключать, в блокноте прописывать.
[ Цитата ] На данный момент ничего не изменилось?
Я за физ. движками уже года три не слежу. Вот с тех пор как к ксашу прикрутил.
[ Цитата ] Насколько вообще сложно интегрировать физический движок?
Я када прикручивал, сделал сразу несколько версий для разных движков и сравнивал результаты. Одни тормозили, другие проваливали тела. Физикс тоже неидеальный, но по сравнению с остальными самый адекватный. Сейчас бы я наверное попробовал новый Ньютон. А вообще физика должна быть самописной.
Во избежание.
Дядя Миша вне форума Ответить с цитированием
Старый 06.07.2016, 20:17  #11
Qwertyus
Qwertyus
Подполковник
Регистрация: 13.08.2009
Сообщения: 1,143


По умолчанию

[ Цитата ] Сообщение от Дядя Миша: Квар надо только из конфига выключать, в блокноте прописывать.
Так и делал, что характерно.
Qwertyus вне форума Ответить с цитированием
Старый 07.07.2016, 02:28  #12
KiQ
KiQ
Старший сержант
Регистрация: 12.07.2010
Сообщения: 367


По умолчанию

2 Дядя Миша:
А парентсистем с физикой не завелась. Хотел телеги сделать, ан нет. Да и тело физическое создается аппроксимированное, а хотелось бы повертнексно, или как в сорсе задавать приближенную физическую модель
KiQ вне форума Ответить с цитированием
Старый 07.07.2016, 11:58  #13
Дядя Миша
Дядя Миша
Регистрация: 28.03.2010
Адрес: Кубань
Сообщения: 11,921


По умолчанию

Причём тут парент-систем? MOVETYPE_PUSH тем и отличается, что двигает всех, а его никто не может.
Дядя Миша вне форума Ответить с цитированием
Старый 07.07.2016, 19:38  #14
mittorn
mittorn
Старший лейтенант
Регистрация: 22.04.2010
Сообщения: 815


По умолчанию

2 ncuxonaT:
не очень сложно заставить его работать, но сложно заставить его работать с игровым миром корректно. У нас Solexid запускал сервер с bullet (на hlsdk)
Тормозил он правда немного. Но я точно не знаю, как с этим дела в xashxt. Не видел годных примеров.
mittorn вне форума Ответить с цитированием
Старый 07.07.2016, 23:20  #15
Дядя Миша
Дядя Миша
Регистрация: 28.03.2010
Адрес: Кубань
Сообщения: 11,921


По умолчанию

Ну вот в ксаш-моде самая корректная связь квейковской физики со сторонним движком. Насколько это вообще возможно. Берите, улучшайте, экспериментируйте.
Я ж для того и выложил сорцы.
Дядя Миша вне форума Ответить с цитированием
Старый 13.07.2016, 20:46  #16
Cybermax
Cybermax
Генерал
Регистрация: 11.03.2008
Сообщения: 2,323
Замечания: 11


По умолчанию

А если я хочу поэкспериментировать в связке движок+мод и мне хочется рэгдолл для модели игрока. С чего бы мне стоило начинать?
Cybermax вне форума Ответить с цитированием
Старый 13.07.2016, 21:22  #17
mittorn
mittorn
Старший лейтенант
Регистрация: 22.04.2010
Сообщения: 815


По умолчанию

2 Cybermax:
С изучение системы рендера моделей и блендинга.
Можно кстати сделать псевдорэгдолл развесив контроллеры на руки-ноги иделая трейсы на сервере, какой-нибудь эвристикой определяя наиболее оптимальный вариант - тогда возможно даже изменений в клиенте не потребуется.
Кстати, не вижу никаких препятствий для реализации полноценного рэгдолла в клиенте даже в гс - ведь все преобразования костей можно делать прямо в рендере, соответственно надо только как-то записать информацию о весах и просунуть в клиент физ. движок.
Я бы сделал псевдофизику т.к это проще, быстрее и для анимации смерти достаточно.
mittorn вне форума Ответить с цитированием
Старый 14.07.2016, 06:39  #18
Cybermax
Cybermax
Генерал
Регистрация: 11.03.2008
Сообщения: 2,323
Замечания: 11


По умолчанию

2 mittorn:
Ясно, что ничего не ясно. В общем надо учить "матан", "матчасть" и донаты засылать. Хотелось бы физику как в хл2 без всяких имитаций, ну да ладно.
Cybermax вне форума Ответить с цитированием
Старый 14.07.2016, 15:52  #19
mittorn
mittorn
Старший лейтенант
Регистрация: 22.04.2010
Сообщения: 815


По умолчанию

2 Cybermax:
Я бы для своих целей сделал иммитацию. Например сейчас фейковая физика бочек очень неплохо себя показывает в мультиплеере.
Иммитацию рагдолла скорее всего никто и не заметит. Однако я со слабыми андроевыми железками работаю и с линуксами.
Для пкшного мода уозможно и лучше прикрутить физикс к клиенту.
Матан в таком случае как раз не нужен, а нужно лишь знать как работать с интерфейсами этого движка.
Т.е должен появиться мессаг becomeragdoll, который переключит рендер модели в специальный режим, где им будет управлять баллет/шизикс.
mittorn вне форума Ответить с цитированием
Старый 14.07.2016, 16:08  #20
gfdjr5
gfdjr5
[NULL]
Регистрация: 25.11.2012
Сообщения: 554


По умолчанию

[ Цитата ] Сообщение от mittorn: 2 Cybermax:
Я бы для своих целей сделал иммитацию. Например сейчас фейковая физика бочек очень неплохо себя показывает в мультиплеере.
Иммитацию рагдолла скорее всего никто и не заметит. Однако я со слабыми андроевыми железками работаю и с линуксами.
Для пкшного мода уозможно и лучше прикрутить физикс к клиенту.
Матан в таком случае как раз не нужен, а нужно лишь знать как работать с интерфейсами этого движка.
Т.е должен появиться мессаг becomeragdoll, который переключит рендер модели в специальный режим, где им будет управлять баллет/шизикс.
Именно поэтому нельзя выносить всю физику на сервер (привет, XashNT)
gfdjr5 вне форума Ответить с цитированием
Закрытая тема

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 13:12.


Designed by FT-502, TRUP@C. Originally by Ulric Spaak
Hosted by: VBIOS.COM, Powered by: vBulletin
copyright © 2002 - 2017 by CS-Mapping.com.ua Community