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

Страница 52 из 91«1250515253549091»
Модератор форума: SLAwww, thecre, RealCrazyMan 
Форум » Serious Sam » Серьёзное редактирование » Помощь по SDK для Serious Sam 1.05/1.07 (Вопросы по комплекту средств разработки для Serious Sam 1.)
Помощь по SDK для Serious Sam 1.05/1.07
MasterST Четверг, 17.05.2012, 16:48 | Сообщение # 1531


Ground Angel
Сообщений: 2386
Награды: 10
Замечания: 0%
 
Quote (Psych)
Если посмотреть всю линию моего диалога с MasterST то можно заключить вывод только о том что я не знаю компилирование в дллшку. Но вывод об отсутствиии у меня SDK ну никак не напрашивается, причем сверху приведену доказательства, под спойлером

Quote (Psych)
Ок. А как компилировать?

Я разве утверждал, что у тебя нет СДК? Не утверждал, и не могу этого утверждать. Просто меня удивил факт умения работы с Сэмовским Software Development Kit при отсутствии Visual C++. Без него ты бы так и не узнал, успешно ли изменил что - то в коде, или нет.


Уже шесть лет на сайте... Возможно, это что-нибудь да значит...
seriously_petr Суббота, 26.05.2012, 14:10 | Сообщение # 1532


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

Вот только не понимаю как сделать чтобы коллизия моделей врага не уничтожала пулю которая в них попала. Нигде немогу найти код =)


SLAwww Суббота, 26.05.2012, 16:15 | Сообщение # 1533


Рряа? ^..^
Сообщений: 2366
Награды: 28
Замечания: 0%
 
Пуля - это не объект класса CProjectile, и уничтожить её невозможно. Когда нужно выстрелить пулю, то объект стрелка создаёт объект класса CCastRay, который отбрасывает луч в заданном направлении. Если луч ударяется об что-нибудь, и это что-нибудь можно повредить, то цели наносится повреждение (InflictDirectDamage). Естественно, дальше повреждаемого объекта луч не проходит. Чтобы он проходил "сквозь" врагов, нужно после каждого задетого врага создавать ещё один CCastRay, который будет стрелять в том же направлении, что и предыдущий, но будет начинаться уже не у объекта-стрелка, а в том месте, где остановился прежний луч. При этом, нужно использовать параметр cr_penIgnore у CCastRay для того, чтобы второй луч игнорировал того врага, в которого попал первый луч.

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.
SeriousAlexej Суббота, 26.05.2012, 17:06 | Сообщение # 1534


Serious Editor
Сообщений: 1200
Награды: 52
Замечания: 0%
 
Quote (SLAwww)
нужно после каждого задетого врага создавать ещё один CCastRay

Но его же можно продолжить. GetWorld()->ContinueCast(crRay);



$оучаснеG Суббота, 26.05.2012, 18:24 | Сообщение # 1535


ЫЫЫЙААУЩЕГ! XD
Сообщений: 414
Награды: 25
Замечания: 0%
 
..ну и завести цикл, чтоб при каждом заходе продолжался луч и наносимый урон уменьшался. [типо того]
Сообщение отредактировал $оучаснеG - Суббота, 26.05.2012, 18:25


SLAwww Суббота, 26.05.2012, 19:31 | Сообщение # 1536


Рряа? ^..^
Сообщений: 2366
Награды: 28
Замечания: 0%
 
А, ну да, можно и с помощью ContinueCast, результат будет тот же, может, даже, чуть быстрее. А если создавать в цикле новые экземпляры CCastRay вместо вызова ContinueCast, то не грех было бы сделать пули, отлетающие рикошетом от стен. )
Сообщение отредактировал SLAwww - Суббота, 26.05.2012, 19:32


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 Суббота, 26.05.2012, 20:51 | Сообщение # 1537


Сообщений: 434
Награды: 4
Замечания: 0%
 
Как всё сложно. :( Я это буду всё это делать 100 лет. :)
Я так понял запускать новый луч надо из crRay.cr_penHit и после.
Code
        if (crRay.cr_penHit->GetEntityInfo()!=NULL) {
           if( ((EntityInfo*)crRay.cr_penHit->GetEntityInfo())->Eeibt == EIBT_FLESH)


SLAwww Суббота, 26.05.2012, 23:13 | Сообщение # 1538


Рряа? ^..^
Сообщений: 2366
Награды: 28
Замечания: 0%
 
Ненене, то, что ты показал только что - это получение структуры типа EntityInfo. Тебе надо:
0) Создать и настроить объект класса CCastRay.
1) Бросить луч GetWorld()->CastRay(crYourCastRay)
2) Проверить, ударили ли мы что-нибудь (параметр cr_penHit должен быть ненулевым)
3) Если мы что-то ударили, проверить его rendertype (должен быть RT_MODEL). Или можно проверять на признак наследования от класса CEnemyBase, но тогда луч остановится на первой попавшейся модели, и не обязательно это будет CModelHolder2, так что лучше проверять rendertype.
4) Если действительно RT_MODEL, то нанести повреждение (не важно, если объект не может быть повреждён - тогда просто ничего не произойдёт). Затем либо выполнить ContinueCast, либо создать новый CCastRay, бросить его и вернуться к 2)


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.05.2012, 00:36 | Сообщение # 1539


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

$оучаснеG Воскресенье, 27.05.2012, 00:40 | Сообщение # 1540


ЫЫЫЙААУЩЕГ! XD
Сообщений: 414
Награды: 25
Замечания: 0%
 
seriously_petr, посмотри как кольт стреляет например, в PlayerWeapons.es. А ещё лучше у Scorpman.es.
Сообщение отредактировал $оучаснеG - Воскресенье, 27.05.2012, 00:43


seriously_petr Воскресенье, 27.05.2012, 01:20 | Сообщение # 1541


Сообщений: 434
Награды: 4
Замечания: 0%
 
$оучаснеG, А причём здесь стрельба из пулевого оружия. Делать выстрел пулей я умею. Я просто не знаю куда сувать код на создание следующего луча в CBullet :D

SLAwww Воскресенье, 27.05.2012, 18:55 | Сообщение # 1542


Рряа? ^..^
Сообщений: 2366
Награды: 28
Замечания: 0%
 
А не многовато ли ты хочешь? Всмотрись внимательно в цикл, который начинается с while(ctCasts<10), разберись, что делает каждый кусок кода, и вноси нужные тебе изменения.

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.05.2012, 16:33 | Сообщение # 1543


Сообщений: 434
Награды: 4
Замечания: 0%
 
SLAwww, Хм в конец оператора можно запихать ctCasts++; чтобы не было бесконечного цикла, а вместо 10 взять к примеру 3 :D

SLAwww Понедельник, 28.05.2012, 16:48 | Сообщение # 1544


Рряа? ^..^
Сообщений: 2366
Награды: 28
Замечания: 0%
 
Нет, тебе как раз нужен бесконечный цикл, из которого будет совершаться выход (break) только тогда, когда луч уйдёт в пустоту (cr_penHit==NULL), или когда ударится об кисть.

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.05.2012, 17:01 | Сообщение # 1545


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

Code

while(ctCasts<10)
{
   if((crRay.cr_penHit==NULL) || (crRay.cr_penHit->GetRenderType()==RT_BRUSH))
   {
    break;
   }
}


Так чтоли? :D
Сообщение отредактировал seriously_petr - Понедельник, 28.05.2012, 17:02


SLAwww Понедельник, 28.05.2012, 17:10 | Сообщение # 1546


Рряа? ^..^
Сообщений: 2366
Награды: 28
Замечания: 0%
 
while(TRUE), и там ещё очень многого не хватает.

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.05.2012, 17:31 | Сообщение # 1547


Сообщений: 434
Награды: 4
Замечания: 0%
 
SLAwww, А я тут заметил код, если ентитя из плоти то там луч продолжается(GetWorld()->ContinueCast(crRay);) для того чтобы зарендерить партиклы крови на стене, можно использовать это чтобы поразить уроном ентитю находящююся на линии луча если она является наследником класса CEnemyBase. :)

CAHEK Понедельник, 25.06.2012, 06:46 | Сообщение # 1548


Сообщений: 698
Награды: 7
Замечания: 0%
 
Вопрос 1. Я прицепил атачмент но мне надо чтоб при каждом движении у атачмента проигрывалась своя анимация (она в нем встроена).

Вопрос 2. Как называется система частиц исчезания трупа.


Всё очень серьёзно.
P.S. Не пишите мне на Email, пишите в Л.С.
SLAwww Понедельник, 25.06.2012, 19:21 | Сообщение # 1549


Рряа? ^..^
Сообщений: 2366
Награды: 28
Замечания: 0%
 
1) Чтобы проиграть анимацию у аттачмента:
Code
GetModelObject()->GetAttachmentModel( НАЗВАНИЕ_АТТАЧМЕНТА )->amo_moModelObject.PlayAnim( НАЗВАНИЕ_АНИМАЦИИ_АТТАЧМЕНТА , ФЛАГИ_АНИМАЦИИ_АТТАЧМЕНТА );

НАЗВАНИЕ_АТТАЧМЕНТА - посмотри в .h-файле, который был автоматически создан SeriousModeler'ом при создании основной модели. НАЗВАНИЕ_АНИМАЦИИ_АТТАЧМЕНТА - посмотри в .h-файле модели аттачмента. Оба эти файла, кстати говоря, нужно подключить к проекту и заинклюдить, хотя это и не обязательно, т.к. и название аттачмента, и его номер - лишь макроопределения обычных целых чисел, то есть, если у модели один аттачмент, то его номер всегда будет 0. ФЛАГИ_АНИМАЦИИ_АТТАЧМЕНТА - может быть 0, либо комбинация нескольких флагов, как AOF_LOOPING, AOF_NORESTART и т. п., которые, по сути, тоже являются обычными целыми числами, но желательно писать именно названия флагов (для понятности и переносимости).
2) void Particles_Death(CEntity *pen, TIME tmStart)


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 Понедельник, 25.06.2012, 21:27 | Сообщение # 1550


Сообщений: 434
Награды: 4
Замечания: 0%
 
Слав, у мЭня серьёзные траблы. Перестали показываться данные в Нетриксе. Везде пишет No messages. До этого она вообще не открывалась - вылетало с ошибкой памяти. Но после замены Player.es чистым(там были разные эксперементы, которые не представляли никакой ценности) - стала открываться с указанной мной уже проблемой. =((

SLAwww Вторник, 26.06.2012, 00:26 | Сообщение # 1551


Рряа? ^..^
Сообщений: 2366
Награды: 28
Замечания: 0%
 
Сообщения Инертана хранятся в m_acmiMessages. Это - CDynamicStackArray, то есть, ты можешь вызвать его метод Count(), чтобы проверить, есть ли в нём какие-либо сообщения. Если есть - значит, проблема в их отображении. Если нет - проблема в их добавлении.

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.
art-serious Вторник, 26.06.2012, 10:10 | Сообщение # 1552


Старый маппер
Сообщений: 630
Награды: 26
Замечания: 0%
 
HUD.cpp

Вотъ тут вопрос один возник - как заменить bar на изображение? То есть, чтобы часть картинки "обрезалась" при определенном значении переменной. К примеру тот же мод BTBA - Картинка начинает обрезаться с краю. Как осуществить на C++ - хз. Есть варианты? (буду благодарен)


[ zc-lab.org ] [ Memes list ] [ Operation "New Year" - 16% ]
CAHEK Вторник, 26.06.2012, 12:51 | Сообщение # 1553


Сообщений: 698
Награды: 7
Замечания: 0%
 
Спасибо SLAwww. Получилось как надо.
Такая штука. Мне надо чтобы атачмент (плоский квадрат имитирует огонь)
всегда был повернут к сему как дым. Ну или как еще можно прикрепить огонь к персонажу.(враг).
Ну и второе необязательное (так из интереса) как можно сделать чтоб в главном меню была не тексура а 3д модель.


Всё очень серьёзно.
P.S. Не пишите мне на Email, пишите в Л.С.
Heming_Hitrowski Вторник, 26.06.2012, 13:29 | Сообщение # 1554


Double Jumper
Сообщений: 816
Награды: 23
Замечания: 0%
 
CAHEK, Насчет модели в меню - Товарищ SeriousAlexej писал в статьях, как это сделать.

seriously_petr Вторник, 26.06.2012, 15:21 | Сообщение # 1555


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

Добавлено (26.06.2012, 15:21)
---------------------------------------------
Артём, BTBA полон загадок. Эх хочу тачки с физикой как там, хотя у меня уже есть пара задумок которые хорошо себя показали.

art-serious Вторник, 26.06.2012, 15:25 | Сообщение # 1556


Старый маппер
Сообщений: 630
Награды: 26
Замечания: 0%
 
То есть графический bar в XBOX mod и BTBA это тоже загадка?

[ zc-lab.org ] [ Memes list ] [ Operation "New Year" - 16% ]
seriously_petr Вторник, 26.06.2012, 15:48 | Сообщение # 1557


Сообщений: 434
Награды: 4
Замечания: 0%
 
В XBOX анимированная текстура и там рендарятся её фреймы. А BTBA там как раз урезается текстура.

P.S. Уже пальцы болят. Строчу с мобилки я щас на даче с ноутом. А инета как известно нет.

Добавлено (26.06.2012, 15:48)
---------------------------------------------
Арт. Полистай тему Слав где-то на 37 странице толковал метод с анимацией. А я у себя в моде использую 100 IF операторов и столько же ХУД-ДРАВОВ, чтобы достичь того же эффекта что в BTBA для жизней и брони

SLAwww Вторник, 26.06.2012, 16:07 | Сообщение # 1558


Рряа? ^..^
Сообщений: 2366
Награды: 28
Замечания: 0%
 
Quote (seriously_petr)
100 IF операторов


А модель в меню не имеет никаких оснований тормозить. Это уже ты там что-то не совсем то написал. Достаточно было посмотреть код, который отвечает за рендеринг моделей в Инертане, и скопировать его (с небольшими изменениями).

CAHEK, чтобы модель всегда смотрела на игрока - это задаётся не через СДК, а во время создания модели в Serious Modeler. Там в скрипте есть параметры FLAT и HALF_FLAT. Это - то, что тебе нужно.


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 Вторник, 26.06.2012, 16:13 | Сообщение # 1559


Сообщений: 434
Награды: 4
Замечания: 0%
 
ХНЫ ХНЫ у меня на мобиле не открываются спойлеры ¥£€$#₩~©¢®¤¿¡₩§% =((

art-serious Вторник, 26.06.2012, 16:18 | Сообщение # 1560


Старый маппер
Сообщений: 630
Награды: 26
Замечания: 0%
 
Code
switch(fValue) {    
        case fValue>100 : { HUD_DrawIcon( fCol+fMoverX, fRow+fMoverY, _toArmorMedium101, /*C_WHITE*/ _colHUD, fNormValue, FALSE); }    
        case fValue<101 : { HUD_DrawIcon( fCol+fMoverX, fRow+fMoverY, _toArmorMedium100, /*C_WHITE*/ _colHUD, fNormValue, FALSE); }     
        case fValue<100 : { HUD_DrawIcon( fCol+fMoverX, fRow+fMoverY, _toArmorMedium099, /*C_WHITE*/ _colHUD, fNormValue, FALSE); }    
        ...
        case fValue<1 : { HUD_DrawIcon( fCol+fMoverX, fRow+fMoverY, _toArmorMedium000, /*C_WHITE*/ _colHUD, fNormValue, FALSE); }    
        default : break;    
    }


Вот так и только? (отображение графического bar)




Сообщение отредактировал art-serious - Вторник, 26.06.2012, 16:53


[ zc-lab.org ] [ Memes list ] [ Operation "New Year" - 16% ]
Форум » Serious Sam » Серьёзное редактирование » Помощь по SDK для Serious Sam 1.05/1.07 (Вопросы по комплекту средств разработки для Serious Sam 1.)
Страница 52 из 91«1250515253549091»
Поиск: