Фонарь Продвинутый
|
|
AlexGordon | Дата: Понедельник, 09.08.2010, 07:56 | Сообщение # 1 |
Soldier
Группа: Проверенные
Сообщений: 487
Репутация: 23
Статус: Offline
| Здрасть форумчане! Возник вопрос: можно ли в Half-Life 1 сделать фонарик а-ля паранойа, но не прикручивать при этом рендер паранойи?
My Energy - 18000000000 g Моя визитка
|
|
| |
DetLeR | Дата: Понедельник, 09.08.2010, 09:12 | Сообщение # 2 |
Engineer
Группа: Администраторы
Сообщений: 1731
Статус: Offline
| Способ есть всегда, вопрос только в том сможешь ли ты его найти Я думаю без обновленного рендера, или рендера паранойи ты фонарь не сделаешь.
|
|
| |
AlexGordon | Дата: Понедельник, 09.08.2010, 10:59 | Сообщение # 3 |
Soldier
Группа: Проверенные
Сообщений: 487
Репутация: 23
Статус: Offline
| А разве нельзя подключить к фонарю TGA файл? Просто я не знаю как..
My Energy - 18000000000 g Моя визитка
|
|
| |
Andreazzz | Дата: Понедельник, 09.08.2010, 11:22 | Сообщение # 4 |
Spy
Группа: Проверенные
Сообщений: 996
Репутация: 55
Статус: Offline
| AlexGordon, вот что я шашёл Code //=============================== // buz: flashlight managenemt //=============================== void SetupFlashlight(vec3_t origin, vec3_t angles, float time, float frametime) { if (!g_flashlight) return;
static float add = 0; float addideal = 0; pmtrace_t tr; vec3_t fwd, right, up; AngleVectors(angles, fwd, right, up); fwd = origin + (fwd*150); gEngfuncs.pEventAPI->EV_SetTraceHull( 2 ); gEngfuncs.pEventAPI->EV_PlayerTrace( origin, fwd, PM_NORMAL, -1, &tr ); if (tr.fraction < 1.0) addideal = (1 - tr.fraction)*30; float speed = (add - addideal)*10; if (speed < 0) speed *= -1; if (add < addideal) { add += frametime*speed; if (add > addideal) add = addideal; } else if (add > addideal) { add -= frametime*speed; if (add < addideal) add = addideal; }
DynamicLight *flashlight = MY_AllocDlight(-666); flashlight->origin = origin + Vector(0,0,-13) + (right*5); flashlight->radius = 700; flashlight->die = time + 0.01; flashlight->angles = angles; strcpy(flashlight->spot_texture, "gfx/flashlight.tga"); flashlight->cone_hor = 50+add; flashlight->cone_ver = 50+add; flashlight->color = Vector(1.4, 1.4, 1.4); // make model dymanic lighting happy } если неошибаюсь эта функция есть и в чистом хл1сдк
|
|
| |
AlexGordon | Дата: Понедельник, 09.08.2010, 11:59 | Сообщение # 5 |
Soldier
Группа: Проверенные
Сообщений: 487
Репутация: 23
Статус: Offline
| Ну и что это дает?
My Energy - 18000000000 g Моя визитка
|
|
| |
DetLeR | Дата: Понедельник, 09.08.2010, 13:22 | Сообщение # 6 |
Engineer
Группа: Администраторы
Сообщений: 1731
Статус: Offline
| AlexGordon, это то от чего тебе надо отталкиватся. Или ты хочешь что б тебе всегда готовый код давали?
|
|
| |
Andreazzz | Дата: Понедельник, 09.08.2010, 16:48 | Сообщение # 7 |
Spy
Группа: Проверенные
Сообщений: 996
Репутация: 55
Статус: Offline
| AlexGordon, тебе нужен фонарь а вот и код, неполенись поискать где он, и где ета функция упоминается, а потом грамотно копипасть
|
|
| |
AlexGordon | Дата: Среда, 11.08.2010, 18:52 | Сообщение # 8 |
Soldier
Группа: Проверенные
Сообщений: 487
Репутация: 23
Статус: Offline
| Это из какого cpp?
My Energy - 18000000000 g Моя визитка
|
|
| |