Sign up - or - Login

Recover password
×

To recover your password, you must enter the username or e-mail that you used during the registration. After that, a mail with a security code will be sent to your inbox.

Your username or e-mail :

Underhell: PrologueUnderhell: Prologue

Underhell – мод из рязряда тех, при игре в которые у игрока впервые со времён Research and Development возникает мысль «...

3/03/2011
Stat ( source models ), pcs.

Данная статья - перевод урока от OsirisGodoftheDead с ModDB...


  • Description
  • HOW TO INSTALL

Добавление эффектов блеска для энтити (entity)

Данная статья - перевод урока от OsirisGodoftheDead с ModDB...


Author/s of tutorial : OsirisGodoftheDead , The Sam
Views : 1250 ( +1 )
Uploader : The Sam
Created : 03/28/2020 8:19:41 PM
Source : https://www.moddb.com/games/half-life/tutorials/using-glowshell
Rating :
 ( 5 ) 
Share :
Tags : effects, entity, урок, ентити, блеск, эффект, как сделать, GoldSRC, goldsrc engine, Half-Life, glowshell


Following translations are available : | russian |

Лично от меня: данный эффект не выглядит особо реалистично, я бы лично его не добавлял в свой мод, но иногда такой эффект все же может пригодиться.

 

Перевод:

В этом туторе я расскажу как добавить эффект блеска для энтити (entity). Этот эффект может быть полезен, когда вы хотите, чтобы энтить была более заметна для игрока, например, оружие в темной комнате.

Мы начнем с добавления этого эффекта к зомби.
Вот зомби из Half-Life. У него нет эффекта блеска по умолчанию.

https://media.moddb.com/cache/images/members/1/640/639321/thumb_620x2000/glowshell_0003.png

Теперь мы рассмотрим код зомби (zombie.cpp в папке dll SDK).

Кода здесь много. Однако для этого урока нам нужно только немного изменить функцию спавна. Итак, перейдите к void CZombie :: Spawn () в строке 270. Это должно выглядеть так:

//=========================================================
// Spawn
//=========================================================
void CZombie :: Spawn()
{
	Precache( );

	SET_MODEL(ENT(pev), "models/system/monsters/zombie.mdl");
	UTIL_SetSize( pev, VEC_HUMAN_HULL_MIN, VEC_HUMAN_HULL_MAX );

	pev->solid			= SOLID_SLIDEBOX;
	pev->movetype		= MOVETYPE_STEP;
	m_bloodColor		= BLOOD_COLOR_RED;
	pev->health			= gSkillData.zombieHealth;
	pev->view_ofs		= VEC_VIEW;// position of the eyes relative to monster's origin.
	m_flFieldOfView		= 0.5;// indicates the width of this monster's forward view cone ( as a dotproduct result )
	m_MonsterState		= MONSTERSTATE_NONE;
	m_afCapability		= bits_CAP_DOORS_GROUP;

	MonsterInit();
}

Перейдите в конец функции и сразу после MonsterInit ();  добавьте этот код:

pev->renderfx = kRenderFxGlowShell

Если вы все сделали правильно, то зомби будет выглядеть примерно так:

https://media.moddb.com/images/members/1/640/639321/glowshell_0007.png

Отлично! Теперь у нас есть светящийся зомби!

Но... Что, если мы хотим сделать свечение другого цвета? Это просто.

Поместите эту часть кода после строки pev-> renderfx = kRenderFxGlowShell :

pev->rendercolor.x = (номер от 1 до 255);
pev->rendercolor.y = (номер от 1 до 255);
pev->rendercolor.z = (номер от 1 до 255);

Это может показаться странным, но это просто значения для цвета в формате RGB.

То бишь:

rendercolor.x - красный
rendercolor.y - зеленый
rendercolor.z - синий

Изменяя эти значения, можно добиться разного цвета блеска/света.

Например, pev-> rendercolor.x = 255; (при условии, что все остальные значения цвета стоят на единице) создаст красный цвет свечения/блеска. При значениях pev-> rendercolor.x = 128; pev-> rendercolor.z = 128; мы получаем фиолетовый цвет свечения/блеска.

Надеюсь, этот урок поможет кому-нибудь.



Similar1. Создание нового ствола - Создание нового ствола с новыми патронами
2. Как адаптировать код к модели - Допустим, вы сделали новую модель для автомата MP5, но порядок и кол-во анимаций не сходятся.
3. Цвет HUD - Цвет HUD
4. Замедление игрока - Довольно забавно наблюдать, как игрок одинаково быстро бегает как с монтировкой в руках, так и с тяжелой базукой, хотя логичнее, что держа в руках сей девайс, он будет бегать медленнее
5. Создание сценариев - Для создания сценариев (aka скриптов) в Half-Life существуют две энтити: scripted_sequence и scripted_sentence. Первая отвечает за движения, выполняемые монстром/персонажем, будь то ходьба, бег, нажатие кнопки, тряска автомата с газировкой или почёсывание подбородка. Вторая служит для того, чтобы персонаж произнес какую-то фразу. При этом его голова повернётся в сторону слушателя, и рот будет открываться в соответствии с амплитудой звука.
6. Sparks - Как добавить искры
7. Звук попадания как в HL2 - Работа на клиенте
pafos alexander 02/18/2023, 12:38:48 PM commented :
#1
а для оружия как сделать?
The Sam 05/01/2023, 12:11:02 PM commented :
#2
Если для оружия на земле то все то же самое - найти функцию спавна оружия на карте и проделать те же самые манипуляции. Я давно не работаю с ванильным хл сдк так что подробнее расписать по памяти вряд-ли смогу.
You cannot comment, because you are not logged-in.
    Isle of Jura (Раздача в Steam)
    Isle of Jura (Раздача в Steam)
    AKMSU Tactical [Chicago Typewriter]
    Resident Evil 4AKMSU Tactical [Chicago Typewriter]
    Leon B.S.A.A Táctical [Leon Normal]
    Resident Evil 4Leon B.S.A.A Táctical [Leon Normal]
    Barret M82A Standard [Rifle Semi Altomático]
    Resident Evil 4Barret M82A Standard [Rifle Semi Altomático]