Показать сообщение отдельно
Старый 23.11.2006, 11:33   #1
stone_evil
ПроЭктировщик
 
Регистрация: 17.10.2006
Сообщений: 170
Написано 18 полезных сообщений
(для 42 пользователей)
Вопрос EntityParent для элемента списка (Type)

Я человек в Blitz3D довольно новый, поэтому всех глюков/багов не знаю, просветите, кто может, в чем собака порылась.
Делаю стратегию, необходимо, чтобы текущий юнит выделялся желтым шариком (типа нимба). Далее описываю по шагам:
1. Создаю список для юнитов (упрощенно)
 
Type  ListOfUnits 
 Field entity 
End Type
2. Создаю шарик и создаю юнит
 
 CurrentPoint = CreateSphere(8)
 EntityColor CurrentPoint,255,255,0
 
 unitWorker=LoadMesh("Worker.3ds")
 ScaleMesh unitWorker,0.8,0.8,0.8
 HideEntity unitWorker
3. При создании юнита вешаю над головой шарик
 
  unit.ListOfUnits = New ListOfUnits
 
  unit\entity=CopyMesh(unitWorker) 
  RotateMesh unit\entity,0,-90,0
  PositionMesh unit\entity,cXPlane-30,0,0
 
  NameEntity unit\entity,Handle(unit)
  EntityType unit\entity, TypeUnit
  EntityPickMode unit\entity,2
 
  CurrentEntity = unit\entity
  EntityParent CurrentPoint,CurrentEntity,False
  PositionEntity CurrentPoint,0,10,0
Проблема в том, что шарик CurrentPoint не привязывается к юниту, появляется в точке (0,10,0) только в глобальных координатах.
Что я делал, пытаясь исправить данную ситуацию:
1. Создавал в списке юнитов пивот, и пытался привязать к нему - не помогло
2. При создании юнита вместо CopyMesh пробовал LoadMesh - не помогло. Также пробовал LoadAnimMesh (хотя она у меня статичная пока), но там и модель в самом центре давай появляться.
3. Пробовал менять в EntityParent чаилда с родителем, варьировать флагом - не помогло.
4. Варьировал флагом в PositionEntity - не помогло.
Пока возникает ощущение, что флаг False вообще не воспринимается в EntityParent. Или это баг, или что я не так делаю?
(Offline)
 
Ответить с цитированием