Сообщение от Medan
И опять же, функция, которую указал в 1ом посте. Она возвращает, не точку координат, где находится курсор, а лицо(объект) на котором находится курсор. Разве в 1ом посте я не понятно объяснил суть проблемы?
|
Держи пример...

Graphics3D 1024,768,32,2
SetBuffer BackBuffer()
Type obj
Field mesh%
Field name$
End Type
Global flag
Global cam=CreateCamera()
CameraRange cam,0.1,10000
TurnEntity cam,45,0,0
MoveEntity cam,0,100,0
TurnEntity CreateLight(),45,45,0
map=LoadMesh("data\mesh.b3d")
EntityPickMode map,2
;Грузим меши
a.obj=New obj
a\mesh=CreateCube()
a\name="cub"
HideEntity a\mesh
Repeat
;схватываем нажата ли мышь
mouse1=MouseHit(1)
; обзор камерой
If KeyDown(200) Then TranslateEntity cam,0,0,20
If KeyDown(208) Then TranslateEntity cam,0,0,-20
If KeyDown(203) Then TranslateEntity cam,-20,0,0
If KeyDown(205) Then TranslateEntity cam,20,0,0
; выбарнный обьект
If KeyHit(2) flag=1
CameraPick(cam,MouseX(),MouseY()); пикаем
Select flag ; в зависимости от флага
Case 1
For a.obj=Each obj
HideEntity a\mesh
If a\name="cub"
PositionEntity a\mesh,PickedX(),PickedY(),PickedZ() ; ставим меш куда нужно
ShowEntity a\mesh
If mouse1=True Then ; если нажата клавиша - ставим куда нужно копию меша
copy=CopyEntity(a\mesh)
PositionEntity copy,PickedX(),PickedY(),PickedZ()
End If
End If
Next
End Select
RenderWorld
Text 10,10,"Чтоб выбрать куб нажмите клавишу 1"
Flip
Until KeyHit(1)
End
Справка самый лучший друг программиста

Там все подробно описано...
Если работаешь на Xors3D не забудь изменить команды на ксорсовские...
Прилагаю media к примеру.