Новые сообщения Участники Правила Поиск

Страница 46 из 91«1244454647489091»
Модератор форума: SLAwww, thecre, RealCrazyMan 
Форум » Serious Sam » Серьёзное редактирование » Помощь по SDK для Serious Sam 1.05/1.07 (Вопросы по комплекту средств разработки для Serious Sam 1.)
Помощь по SDK для Serious Sam 1.05/1.07
seriously_petr Вторник, 27.03.2012, 18:22 | Сообщение # 1351


Сообщений: 434
Награды: 4
Замечания: 0%
 
Извините за то что вмешиваюсь. :)
SLAwww, Может я ошибаюсь, но я обнаружил одну деталь - игрок вроде всё равно сможет увидеть исчезновение трупа смотря из-за угла с видом от 3л. (луч будет прерываться стеной и игра будет считать что игрок не видит, но на самом деле он увидит)

Можете считать мои слова за бред если они не верные, просто я хочу помочь =)

Добавлено (27.03.2012, 18:22)
---------------------------------------------
Да и у меня ещё возник вопросик - как сделать чтобы у трупов мобов и игроков были свои жизни, просто в оригинале трупы взрываются в куски только получая определённое значение урона.

SLAwww Вторник, 27.03.2012, 19:06 | Сообщение # 1352


Рряа? ^..^
Сообщений: 2365
Награды: 28
Замечания: 0%
 
Действительно, исчезновение модели можно заметить. ) В таком случае, рекомендую проверять CPlacement3D игрока, и если он отвернулся от модели (смотрит в противоположную сторону), находясь на достаточном расстоянии от неё, то модель гарантировано можно прятать.
А чтобы у трупов было здоровье, прячь их сразу же, когда появляются, и создавай на их месте идентичные им модели.


Where did all the dragons go?
We searched in the hills and we searched down the canyons,
we even scanned the depths of the caves with our armour, swords and lanterns.
Oh, if only had we seen him lurch, from his glorious skull covered perch.

CRACK went his claws and SMACK swipped the tail,
a ROAR of might, one big BITE.

and so ended our search.
seriously_petr Вторник, 27.03.2012, 19:57 | Сообщение # 1353


Сообщений: 434
Награды: 4
Замечания: 0%
 
SLAwww, Наверно то что я скажу вызовет массовый фэйспальм.

Как создать модель? :)
Сообщение отредактировал petr_kustov - Вторник, 27.03.2012, 20:01


SeriousAlexej Вторник, 27.03.2012, 20:03 | Сообщение # 1354


Serious Editor
Сообщений: 1200
Награды: 52
Замечания: 0%
 
petr_kustov,
Code
// synchronize with another model (copy animations/attachments positions etc from there)
    void Synchronize(CModelObject &moOther);

труп->GetModelObject()->Synchronize(игрок->GetModelObject());
Сообщение отредактировал SeriousAlexej - Вторник, 27.03.2012, 20:03



seriously_petr Вторник, 27.03.2012, 20:30 | Сообщение # 1355


Сообщений: 434
Награды: 4
Замечания: 0%
 
SeriousAlexej, Объясни поподробнее что вписывать и куда, я тупой ***** нифига не понимаю.

я понял только что

"труп->GetModelObject()->Synchronize(игрок->GetModelObject()); "
надо вписать после смерти.

oh


SLAwww Вторник, 27.03.2012, 22:29 | Сообщение # 1356


Рряа? ^..^
Сообщений: 2365
Награды: 28
Замечания: 0%
 
SeriousAlexej, по-моему, усложняешь задачу. Есть ведь у CModelObject:
Code
// copy from another object of same class
   void Copy(CModelObject &moOther);

petr_kustov, правильно понял. Только перед этим "труп" надо создать:
Code
CEntityPointer penCorpse = GetWorld()->CreateEntity_t(GetPlacement(), CTFILENAME("Classes\\ModelHolder2.ecl"));

А модель врага спрятать с помощью SwitchToEditorModel();


Where did all the dragons go?
We searched in the hills and we searched down the canyons,
we even scanned the depths of the caves with our armour, swords and lanterns.
Oh, if only had we seen him lurch, from his glorious skull covered perch.

CRACK went his claws and SMACK swipped the tail,
a ROAR of might, one big BITE.

and so ended our search.
Molodec Среда, 28.03.2012, 10:11 | Сообщение # 1357


Developer
Сообщений: 2398
Награды: 36
Замечания: 0%
 
SLAwww, SeriousAlexej, спасибо за помощь. Попробую :)

seriously_petr Среда, 28.03.2012, 11:24 | Сообщение # 1358


Сообщений: 434
Награды: 4
Замечания: 0%
 
SLAwww, Расскажи поподробнее как работает CCastRay и как им пользоваться :D

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

Добавлено (28.03.2012, 11:24)
---------------------------------------------
И как указать на саму ентитю на врага:

penCorpse->GetModelObject()->Synchronize(игрок->GetModelObject());
Сообщение отредактировал petr_kustov - Среда, 28.03.2012, 11:25


SLAwww Среда, 28.03.2012, 20:15 | Сообщение # 1359


Рряа? ^..^
Сообщений: 2365
Награды: 28
Замечания: 0%
 
petr_kustov, ну неужели сложно нажать Find in files и посмотреть CCastRay? Там ведь куча мест, где он используется. Что касается последнего вопроса, если эта строчка находится в коде энтити, которая оставляет за собой труп, то указывать на себя не обязательно, то есть, "игрок->" можно заменить на "this->", либо вообще убрать.

Where did all the dragons go?
We searched in the hills and we searched down the canyons,
we even scanned the depths of the caves with our armour, swords and lanterns.
Oh, if only had we seen him lurch, from his glorious skull covered perch.

CRACK went his claws and SMACK swipped the tail,
a ROAR of might, one big BITE.

and so ended our search.
seriously_petr Среда, 28.03.2012, 20:23 | Сообщение # 1360


Сообщений: 434
Награды: 4
Замечания: 0%
 
SLAwww,

Вписал
SwitchToEditorModel();
CEntityPointer penCorpse = GetWorld()->CreateEntity_t(GetPlacement(), CTFILENAME("Classes\\ModelHolder2.ecl"));
penCorpse->GetModelObject()->Copy(GetModelObject());

пишет

E:/Mymod/Sources/EntitiesMP/EnemyBase.es(2784) : error C2664: 'Copy' : cannot convert parameter 1 from 'class CModelObject *' to 'class CModelObject &'
A reference that is not to 'const' cannot be bound to a non-lvalue


SLAwww Среда, 28.03.2012, 20:45 | Сообщение # 1361


Рряа? ^..^
Сообщений: 2365
Награды: 28
Замечания: 0%
 
penCorpse->GetModelObject()->Copy(*GetModelObject());
Забыл указатель разименовать. И не забудь инициализировать труп после создания.
penCorpse->Initialize();


Where did all the dragons go?
We searched in the hills and we searched down the canyons,
we even scanned the depths of the caves with our armour, swords and lanterns.
Oh, if only had we seen him lurch, from his glorious skull covered perch.

CRACK went his claws and SMACK swipped the tail,
a ROAR of might, one big BITE.

and so ended our search.
seriously_petr Среда, 28.03.2012, 22:33 | Сообщение # 1362


Сообщений: 434
Награды: 4
Замечания: 0%
 
SLAwww,
Die(EDeath eDeath)
{
// not alive anymore
SetFlags(GetFlags()&~ENF_ALIVE);

SwitchToEditorModel();
CEntityPointer penCorpse = GetWorld()->CreateEntity_t(GetPlacement(), CTFILENAME("Classes\\ModelHolder2.ecl"));
penCorpse->GetModelObject()->Copy(*GetModelObject());
penCorpse->Initialize();

при убийстве любого врага вылетает игра с такой ошибкой

Прикрепления: 8836254.jpg(39Kb)


SLAwww Среда, 28.03.2012, 22:52 | Сообщение # 1363


Рряа? ^..^
Сообщений: 2365
Награды: 28
Замечания: 0%
 
Попробуй Initialize поставить перед копированием модели.

Where did all the dragons go?
We searched in the hills and we searched down the canyons,
we even scanned the depths of the caves with our armour, swords and lanterns.
Oh, if only had we seen him lurch, from his glorious skull covered perch.

CRACK went his claws and SMACK swipped the tail,
a ROAR of might, one big BITE.

and so ended our search.
seriously_petr Четверг, 29.03.2012, 17:23 | Сообщение # 1364


Сообщений: 434
Награды: 4
Замечания: 0%
 
SLAwww,

1. Как трупу дать физику

penCorpse->SetPhysicsFlags(EPF_MODEL_CORPSE);
penCorpse->SetCollisionFlags(ECF_CORPSE);

penCorpse->Initialize();

Даёт вылет редактор при Disappear time больше 0

2. Как трупу прописать свои жизни

3. Как у второго(старого трупа) убрать физику (колизию и физик флаги)


SLAwww Четверг, 29.03.2012, 20:35 | Сообщение # 1365


Рряа? ^..^
Сообщений: 2365
Награды: 28
Замечания: 0%
 
1) Меняй флаги после инициализации, а не перед.
2) ((CModelHolder2&)(*m_penCorpse)).m_fHealth = (здоровье) ;
3) SwitchToEditorModel();
Если нужно не прятать саму модель, а только убрать физику, то penCorpse->SetCollisionFlags(ECF_IMMATERIAL);


Where did all the dragons go?
We searched in the hills and we searched down the canyons,
we even scanned the depths of the caves with our armour, swords and lanterns.
Oh, if only had we seen him lurch, from his glorious skull covered perch.

CRACK went his claws and SMACK swipped the tail,
a ROAR of might, one big BITE.

and so ended our search.
MasterST Пятница, 30.03.2012, 11:02 | Сообщение # 1366


Ground Angel
Сообщений: 2386
Награды: 10
Замечания: 0%
 
А как запретить некоторые уровни сложности? Или это в СДК сделать нельзя?

Уже шесть лет на сайте... Возможно, это что-нибудь да значит...
seriously_petr Пятница, 30.03.2012, 12:44 | Сообщение # 1367


Сообщений: 434
Награды: 4
Замечания: 0%
 
MasterST, Попробуй посмотреть как устроена сложность "Ментал". :D

Добавлено (30.03.2012, 12:44)
---------------------------------------------
SLAwww, Почему у трупа не появляется колизия, он как призрак, а у того у которого SwitchToEditorModel(); у него остается физика, и он как невидимое препятсятвие

SLAwww Пятница, 30.03.2012, 18:19 | Сообщение # 1368


Рряа? ^..^
Сообщений: 2365
Награды: 28
Замечания: 0%
 
А откуда ты знаешь, чья это коллизия? У тебя ведь труп остаётся как раз на том месте, где находился враг или игрок.

Where did all the dragons go?
We searched in the hills and we searched down the canyons,
we even scanned the depths of the caves with our armour, swords and lanterns.
Oh, if only had we seen him lurch, from his glorious skull covered perch.

CRACK went his claws and SMACK swipped the tail,
a ROAR of might, one big BITE.

and so ended our search.
seriously_petr Пятница, 30.03.2012, 19:52 | Сообщение # 1369


Сообщений: 434
Награды: 4
Замечания: 0%
 
SLAwww, потомучто у меня 2 трупа(если не нажать 0 чтобы не видить ентити)

тот который невидимый - исчезает по истечении disapper time, а кукла остактся на месте неограниченное время.

Я хожу и проверяю у какого трупа есть колизия у какого нет, а когда "скрытый" пропадает то я понимаю что из них что


SLAwww Пятница, 30.03.2012, 21:09 | Сообщение # 1370


Рряа? ^..^
Сообщений: 2365
Награды: 28
Замечания: 0%
 
SetCollisionFlags(ECF_IMMATERIAL) и SetPhysicalFlags(EPF_MODEL_IMMATERIAL) должны делать модель полностью проходимой. Вероятно, ты выставляешь их раньше, чем нужно. Насколько я помню, в конце процедуры Death выставляется ECF_CORPSE, из-за этого, может, и ощущается коллизия.

Where did all the dragons go?
We searched in the hills and we searched down the canyons,
we even scanned the depths of the caves with our armour, swords and lanterns.
Oh, if only had we seen him lurch, from his glorious skull covered perch.

CRACK went his claws and SMACK swipped the tail,
a ROAR of might, one big BITE.

and so ended our search.
seriously_petr Пятница, 30.03.2012, 21:30 | Сообщение # 1371


Сообщений: 434
Награды: 4
Замечания: 0%
 
SLAwww,
С этими идиотскими колизиями я разобрался.

Почему при задании кукле физик флагов(Чтобы кукла падала), редактор вылетает с ошибкой памяти.

Code
    penCorpse->GetModelObject()->Copy(*GetModelObject());  
     penCorpse->SetCollisionFlags(ECF_MODEL);

     penCorpse->SetCollisionFlags(ECF_CORPSE);

Или
Code
    penCorpse->SetPhysicsFlags(EPF_MODEL_WALKING);


SLAwww Пятница, 30.03.2012, 22:26 | Сообщение # 1372


Рряа? ^..^
Сообщений: 2365
Награды: 28
Замечания: 0%
 
А что, разве без них не вылетает? )

Where did all the dragons go?
We searched in the hills and we searched down the canyons,
we even scanned the depths of the caves with our armour, swords and lanterns.
Oh, if only had we seen him lurch, from his glorious skull covered perch.

CRACK went his claws and SMACK swipped the tail,
a ROAR of might, one big BITE.

and so ended our search.
seriously_petr Пятница, 30.03.2012, 23:57 | Сообщение # 1373


Сообщений: 434
Награды: 4
Замечания: 0%
 
SLAwww, Нет, без них все работает без глюков :)
Я не понимаю что такого в этом коде, что это вызывает вылет редактора при смерти монстрика =)

Code
     penCorpse->SetCollisionFlags(ECF_CORPSE);


SLAwww Суббота, 31.03.2012, 00:03 | Сообщение # 1374


Рряа? ^..^
Сообщений: 2365
Награды: 28
Замечания: 0%
 
penCorpse->Initialize() стоит перед этой строчкой?

Where did all the dragons go?
We searched in the hills and we searched down the canyons,
we even scanned the depths of the caves with our armour, swords and lanterns.
Oh, if only had we seen him lurch, from his glorious skull covered perch.

CRACK went his claws and SMACK swipped the tail,
a ROAR of might, one big BITE.

and so ended our search.
seriously_petr Суббота, 31.03.2012, 00:13 | Сообщение # 1375


Сообщений: 434
Награды: 4
Замечания: 0%
 
SLAwww, да :D

SLAwww Суббота, 31.03.2012, 00:58 | Сообщение # 1376


Рряа? ^..^
Сообщений: 2365
Награды: 28
Замечания: 0%
 
Попробуй SetCollisionFlags(ECF_MODEL_HOLDER)

Where did all the dragons go?
We searched in the hills and we searched down the canyons,
we even scanned the depths of the caves with our armour, swords and lanterns.
Oh, if only had we seen him lurch, from his glorious skull covered perch.

CRACK went his claws and SMACK swipped the tail,
a ROAR of might, one big BITE.

and so ended our search.
seriously_petr Суббота, 31.03.2012, 02:01 | Сообщение # 1377


Сообщений: 434
Награды: 4
Замечания: 0%
 
SLAww, я идиот oh

Я по своей невнимательности написал про колижн флаги, а вылет у меня вызывает указание

penCorpse->SetPhysicsFlags(флаги);

если что я указывал после инициализации

Я просто хочу чтобы моя моделька падала, а не висела в воздухе

---------------------------------------------
убей меня на месте ;(
Сообщение отредактировал petr_kustov - Суббота, 31.03.2012, 12:47


SLAwww Суббота, 31.03.2012, 17:14 | Сообщение # 1378


Рряа? ^..^
Сообщений: 2365
Награды: 28
Замечания: 0%
 
Некоторые флаги подходят только для наследников CMovableModelEntity. Попробуй EPF_TRANSLATEDBYGRAVITY.

Where did all the dragons go?
We searched in the hills and we searched down the canyons,
we even scanned the depths of the caves with our armour, swords and lanterns.
Oh, if only had we seen him lurch, from his glorious skull covered perch.

CRACK went his claws and SMACK swipped the tail,
a ROAR of might, one big BITE.

and so ended our search.
seriously_petr Суббота, 31.03.2012, 20:34 | Сообщение # 1379


Сообщений: 434
Награды: 4
Замечания: 0%
 
SLAwww, Спасибо попробую.

И большое спасибо что ты мне помогаешь, я ценю твою помощь, кто-нибудь другой мог бы меня послать и сказать "разбирайся сам" :D

Добавлено (31.03.2012, 20:34)
---------------------------------------------
petr_kustov, Ура сработало, а еще я добавил

penCorpse->SetParent( this);

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

-----

И еще малюсенький вопросик =)

Почему лезет ошибка

E:/Mymod/Sources/EntitiesMP/EnemyBase.es(2902) : error C2039: 'm_fHealth' : is not a member of 'CModelHolder2'
E:\MyMod\Sources\EntitiesMP/ModelHolder2.h(25) : see declaration of 'CModelHolder2'

когда я прописал:
((CModelHolder2&)(*m_penCorpse)).m_fHealth = (30.0f);
Сообщение отредактировал petr_kustov - Суббота, 31.03.2012, 20:37


SLAwww Суббота, 31.03.2012, 21:04 | Сообщение # 1380


Рряа? ^..^
Сообщений: 2365
Награды: 28
Замечания: 0%
 
Потому что у CModelHolder2 нет такого параметра. ) Это я затупил, модели обязательно нужен CModelDestruction, чтобы её можно было разрушить. Ну или можно вписать код непосредственно в CModelHolder2, чтобы он был разрушаем сам по себе. Но лучше добавить в CEnemyBase новый CEntityPointer-параметр, который надо будет нацеливать на какой-нибудь CModelDestruction, например
Code
211 CEntityPointer m_penCorpseDestruction "ModelDestruction for corpse",

А затем, после инициализации трупа, направить его на этот ModelDestruction:
Code
((CModelHolder2&)(*penCorpse)).m_penDestruction=m_penCorpseDestruction;

Таким образом, в СЕДе на уровень нужно будет добавить ModelDestruction (один для всех врагов, либо по одному на каждого, либо ещё как-то вперемешку), настроить его и нацелить на него параметр ModelDestruction for corpse у врагов.


Where did all the dragons go?
We searched in the hills and we searched down the canyons,
we even scanned the depths of the caves with our armour, swords and lanterns.
Oh, if only had we seen him lurch, from his glorious skull covered perch.

CRACK went his claws and SMACK swipped the tail,
a ROAR of might, one big BITE.

and so ended our search.
Форум » Serious Sam » Серьёзное редактирование » Помощь по SDK для Serious Sam 1.05/1.07 (Вопросы по комплекту средств разработки для Serious Sam 1.)
Страница 46 из 91«1244454647489091»
Поиск: