Показать сообщение отдельно
Старый 01.10.2007, 03:48   #3
PaKo
Нуждающийся
 
Регистрация: 13.08.2007
Сообщений: 70
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Выделение объектов.

Delta_Q вот не большой пример с выбором объектов:

Graphics3D 800,600,32,2
SetBuffer BackBuffer ()

Type Tar
	Field shar
End Type

Global t

cam=CreateCamera()
CameraRange cam,.1,2000
PositionEntity cam,0,0,-10
light= CreateLight()

For i=1 To 10
s.tar = New tar
s\shar=CreateSphere(8)
EntityPickMode s\shar,1 
EntityType s\shar,1   ;указываем тип объекта можно задать для каждого объектасвой (шар, куб, цилиндр)
PositionEntity s\shar,Rnd(-5,5),Rnd(-5,5),0
Next


While Not KeyHit(1)


	If (MouseHit(1)) 
		who=CameraPick(cam,MouseX(),MouseY())
		If who<>0 t=GetEntityType (who) Else t=0 ;пров выбран ли объект
		Select t   
			Case 1   
			del(who) ;действие над объектом(с опрнд типом)
		End Select
	End If
	
RenderWorld 
Flip

Wend

End

Function del(who)

		For s.tar=Each tar
    		If who=s\shar Then Exit
		Next
		
		FreeEntity s\shar
		Delete s
		
End Function
(Offline)