Показать сообщение отдельно
Старый 22.12.2009, 10:26   #13
Raion
Знающий
 
Аватар для Raion
 
Регистрация: 24.12.2008
Сообщений: 280
Написано 145 полезных сообщений
(для 775 пользователей)
Ответ: Динамическия подсветка

У меня в шутере используется такой вариант. Тут самое главное грамотно настроить глобальную подсветку, источники света и саму карту
(Maplight)

Нужна картинка с лайт мапом и 3Д модель с указателями в пространстве
границ этой картинки. понятна да


Type map_light
Field name$,image,pos,posx,posy,model,px#,py#,xr#,yr#,an im#,model2,model3,model4,model5
End Type
загрузка
ml.map_light=New map_light
ml\name=ReadLine(f)
ml\model=LoadAnimMesh("base\levels\maplight\"+ml\n ame+".3ds") это координаты в пространстве
ml\image=LoadAnimImage("base\levels\maplight\"+ml\ name+"_d.png",160,120,1,20) это анимационный свет
If ml\image=0 Then ml\image=LoadImage("base\levels\maplight\"+ml\name +".bmp") это статический свет
ml\pos=FindChild(ml\model,"pos")
ml\posx=FindChild(ml\model,"posx")
ml\posy=FindChild(ml\model,"posy")
проверка
Function update_map_light(target,model,model2)
For ml.map_light=Each map_light
ml\px#=EntityX(target,1)-EntityX(ml\pos,1)
ml\py#=EntityZ(target,1)-EntityZ(ml\pos,1)
x1#=EntityX(ml\posx,1)-EntityX(ml\pos,1)
y1#=EntityZ(ml\posy,1)-EntityZ(ml\pos,1)
ml\xr#=(1024/x1)*ml\px
ml\yr#=(1024/y1)*ml\py
SetBuffer ImageBuffer (ml\image)
GetColor ml\xr#,ml\yr#

Подсветить модель-model,model2

EntityColor model,ColorRed(),ColorGreen(),ColorBlue()
If model2<>0 Then EntityColor model2,ColorRed(),ColorGreen(),ColorBlue()

SetBuffer BackBuffer()
Next
Миниатюры
Нажмите на изображение для увеличения
Название: SC773.JPG
Просмотров: 891
Размер:	64.4 Кб
ID:	8604  Нажмите на изображение для увеличения
Название: MapLight.JPG
Просмотров: 857
Размер:	34.1 Кб
ID:	8605  Нажмите на изображение для увеличения
Название: POS.JPG
Просмотров: 797
Размер:	3.8 Кб
ID:	8606  
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Coks (03.01.2010)