Крепление эффектов освещения к автомобилю
|
|
DK22Pac | Дата: Воскресенье, 16.10.2011, 01:03 | Сообщение # 46 |
$player_actor
Группа: Проверенные
Сообщений: 559
Статус: Offline
| Надо лезть в структуру авто, и записывать туда статус фар (ближний/дальний свет). А в процедуре, которая рисует хедлайт для авто, проверять это значение, и ставить нужные параметры)
|
|
| |
Den_spb | Дата: Суббота, 29.10.2011, 02:05 | Сообщение # 47 |
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
| Прочитал ещё раз эту тему - теперь думаю можно сделать вывод о том, что прицепка теней к объектам в игре вообще не предусмотрена. Тень, созданная скриптом, отстаёт от объекта видимо потому, что она размещается в устаревших координатах (т.е. дело в очерёдности выполнения процессов: скрипт создаёт тень в старых координатах -> exe пересчитывает и обновляет координаты объекта -> происходит отрисовка). Чтобы проекции не отставали, нужно внедрить их создание в одну из стандартных процедур (тот же CAutomobile__preRender, например).
|
|
| |
DK22Pac | Дата: Суббота, 29.10.2011, 12:32 | Сообщение # 48 |
$player_actor
Группа: Проверенные
Сообщений: 559
Статус: Offline
| Верно
|
|
| |
Den_spb | Дата: Суббота, 17.12.2011, 03:52 | Сообщение # 49 |
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
| Написал свою версию скрипта неоновой подсветки автомобилей. Экспериментально проверил то, что проекция, код создания которой внедрён в exe (в данном случае - в CAutomobile__preRender), не отстаёт от машины (заодно и ассемблер подучил ). А вообще при написании скриптов, цепляющих проекции к машинам и движущимся объектам, лучше и проще, конечно, использовать код CScriptEngine_update.cs от Wesser.
|
|
| |
DK22Pac | Дата: Суббота, 17.12.2011, 15:51 | Сообщение # 50 |
$player_actor
Группа: Проверенные
Сообщений: 559
Статус: Offline
| Quote (Den_spb) CScriptEngine_update.cs Это я его так назвал
Я хочу сделать проекции от поворотников ещё
|
|
| |
Den_spb | Дата: Суббота, 17.12.2011, 16:18 | Сообщение # 51 |
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
| Quote (DK22Pac) Я хочу сделать проекции от поворотников ещё Проекции не помешают. Можно ещё использовать flashlight.
|
|
| |
DK22Pac | Дата: Суббота, 17.12.2011, 16:27 | Сообщение # 52 |
$player_actor
Группа: Проверенные
Сообщений: 559
Статус: Offline
| С флешлайтом есть проблемы, а именно с радиусом его действия. Надо разбирать процедуру в .exe.
|
|
| |
Den_spb | Дата: Суббота, 17.12.2011, 16:34 | Сообщение # 53 |
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
| Можно воспользоваться стандартным опкодом: 09E5: create_flash_light_at 225@ 226@ 227@ RGB_mask 255 255 255 radius 200.0
|
|
| |
Monstr74 | Дата: Четверг, 15.03.2012, 01:25 | Сообщение # 54 |
Группа: Пользователи
Сообщений: 7
Статус: Offline
| А не покажете на примере как сделать проекцию от света фар у поезда?
|
|
| |
Den_spb | Дата: Четверг, 15.03.2012, 02:15 | Сообщение # 55 |
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
| Код будет выглядеть так:Code {$CLEO} 0AC7: 31@ = var 2@ offset 0A8D: 30@ = read_memory 0xC403F8 size 4 virtual_protect 0 while true wait 0 00BF: 0@ = current_time_hours, 1@ = current_time_minutes if or 0@ > 20 0@ < 6 then if 0AE2: 0@ = random_vehicle_near_point 0.0 0.0 0.0 in_radius 6000.0 find_next 0 pass_wrecked 1 //IF and SET then repeat 0A97: 1@ = car 0@ struct 0A8E: 2@ = 1@ + 1424 // int 0A8D: 2@ = read_memory 2@ size 1 virtual_protect 0 if 2@ == 6 then 1@ += 0x5D0 0A8D: 1@ = read_memory 1@ size 4 virtual_protect 0 if 1@ == 0 then if 8981: not train 0@ wrecked then 0441: 1@ = car 0@ model 07E4: get_model 1@ dimensions_cornerA_to 5@ 2@ 3@ dimensions_cornerB_to 4@ 1@ 6@ 1@ += 15.0 // РАССТОЯНИЕ ОТ ЛОКОМОТИВА ДО ПРОЕКЦИИ 0407: store_coords_to 2@ 3@ 4@ from_car 0@ with_offset 0.0 1@ 0.0 0174: 5@ = car 0@ Z_angle 02F6: 6@ = sine 5@ // (float) 02F7: 7@ = cosine 5@ // (float) 5@ += 90.0 02F6: 8@ = sine 5@ // (float) 02F7: 9@ = cosine 5@ // (float) 6@ *= 5.0 // ЗДЕСЬ МНОЖИТЕЛЬ - ШИРИНА ПРОЕКЦИИ 7@ *= 5.0 // ЗДЕСЬ МНОЖИТЕЛЬ - ШИРИНА ПРОЕКЦИИ 8@ *= 15.0 // ЗДЕСЬ МНОЖИТЕЛЬ - ДЛИНА ПРОЕКЦИИ 9@ *= 15.0 // ЗДЕСЬ МНОЖИТЕЛЬ - ДЛИНА ПРОЕКЦИИ 0AA5: 0x707390 16 pop 16 0 0 1.0 0 5.0 128 128 128 128 6@ 7@ 8@ 9@ 31@ 30@ 2 end end end until 8AE2: not 0@ = random_vehicle_near_point 0.0 0.0 0.0 in_radius 6000.0 find_next 1 pass_wrecked 1 //IF and SET end end end
|
|
| |
DK22Pac | Дата: Четверг, 15.03.2012, 02:34 | Сообщение # 56 |
$player_actor
Группа: Проверенные
Сообщений: 559
Статус: Offline
| Кстати, по теме. Если не ошибаюсь, 0x6E197A [dword] pTrainBacklightCoronaSizeMP Указатель на множитель размера корон задних фар для поездов.
Сообщение отредактировал DK22Pac - Четверг, 15.03.2012, 02:36 |
|
| |
Den_spb | Дата: Четверг, 15.03.2012, 02:48 | Сообщение # 57 |
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
| Да, на размер корон этот параметр влияет.
|
|
| |
Monstr74 | Дата: Понедельник, 19.03.2012, 12:56 | Сообщение # 58 |
Группа: Пользователи
Сообщений: 7
Статус: Offline
| Спасибо за код!!! Добавлено (19.03.2012, 12:56) --------------------------------------------- А как через память откл/вкл фары у игрока и у трафика в авто?
|
|
| |
Den_spb | Дата: Понедельник, 19.03.2012, 22:49 | Сообщение # 59 |
Создатель сайта
Группа: Администраторы
Сообщений: 1595
Статус: Offline
| Quote (Monstr74) А как через память откл/вкл фары у игрока и у трафика в авто? http://sannybuilder.com/forums/viewtopic.php?pid=3729#p3729
|
|
| |
DK22Pac | Дата: Среда, 04.04.2012, 23:07 | Сообщение # 60 |
$player_actor
Группа: Проверенные
Сообщений: 559
Статус: Offline
| Расскажи, пожалуйста, подробнее об этих четырёх параметрах размера и поворота.
|
|
| |