Показать сообщение отдельно
Старый 03.11.2009, 16:40   #4
H@NON
Дэвелопер
 
Регистрация: 17.01.2007
Сообщений: 1,552
Написано 351 полезных сообщений
(для 774 пользователей)
Ответ: Работа с материалами

используй логику, при пикании получаем номер пикнутой поверхности, для этого не нужно перебирать и записывать все в тип. Юзай справку по команде PickedSurface(), а так то вот :
;graphics init==============
Graphics3D 800, 600, 32, 2
SetBuffer BackBuffer()
camera = CreateCamera()
AmbientLight 255, 255, 255
;testmesh loading==========
testl = LoadMesh( "map.b3d" )
    PositionEntity testl, 0, 0, 10
    EntityPickMode testl, 2
;======================
While Not KeyHit(1)
;texture detection==========
playerf_pick = CameraPick( camera, MouseX(), MouseY() )
If playerf_pick = testl Then
    surface = PickedSurface()
    brush = GetSurfaceBrush( surface )
    material = GetBrushTexture( brush )
    currtex$ = TextureName$( material )
EndIf
;======================
UpdateWorld
RenderWorld

Text 10, 300, currtex$
;======================
Flip
Wend
End
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
HorNeS (03.11.2009)