|
source_mesh - исходный объект
dest_mesh - объект, к которому прикрепляем первый |
|
Добавляет исходный объект(mesh) к другому объекту. AddMesh работает лучше всего с объектами, к которым были применены соответствующие команды для работы с mesh-ами. Так, если Вы хотите изменить объект перед добавлением его к другому объекту, удостоверьтесь, что Вы используете ScaleMesh, PositionMesh, PaintMesh и т.д, а не ScaleEntity, PositionEntity, EntityTexture и т.д. Однако, помните, что при использовании команд типа RotateMesh особенность состоит в том, что они работают в глобальных координатах с центром 0,0,0. Поэтому масштабируйте и вращайте mesh перед его позиционированием, иначе ваш объект может оказаться в неожиданных координатах. Кроме того, после использования AddMesh, координаты нового целостного объекта будут установлены в 0,0,0. После использования AddMesh, оригинал source_mesh будет все еще существовать, поэтому используйте FreeEntity, чтобы удалить его, если он больше не нужен.
|
|
; Использование AddMesh
; --------------- Graphics3D 640,480 SetBuffer BackBuffer() camera=CreateCamera() PositionEntity camera,0,0,-10 light=CreateLight() RotateEntity light,90,0,0 ; Создаем дерево (верхнюю половину) tree=CreateCone() green_br=CreateBrush(0,255,0) PaintMesh tree,green_br ScaleMesh tree,2,2,2 PositionMesh tree,0,1.5,0 ; Создаем ствол trunk=CreateCylinder() brown_br=CreateBrush(128,64,0) PaintMesh trunk,brown_br PositionMesh trunk,0,-1.5,0 ; Добавим ствол к верхней части, чтобы получить цельное дерево AddMesh trunk,tree ; Удалим оригинал ствола - он уже не нужен FreeEntity trunk While Not KeyDown( 1 ) TurnEntity tree,1,1,1 RenderWorld Flip Wend End |