2013-04-21 3 views
7

저는 Irrlicht가있는 2D 배경 및 3D 모델로 Final Fantasy와 같은 게임 엔진을 작성하고 있습니다.눈에 보이지 않는 메쉬와 Irrlicht 충돌

enter image description here

나는이 코드를 시도했지만 선수가 메시의 가장자리에 도달 할 때 아래로 떨어지면 :

내가 이런 보이지 않는 메쉬를 사용하여 백그라운드에서 물체와의 충돌을 계산하려면
TriangleSelector sel = device.SceneManager.CreateTriangleSelector(Program.field.currentScene.walkmeshLoaded, null); 
CollisionResponseSceneNodeAnimator coll = device.SceneManager.CreateCollisionResponseAnimator(sel, playerNode); 
playerNode.AddAnimator(coll); 
coll.Drop(); 
sel.Drop(); 

답변

1

나는 사용하고있는 시스템을 사용하지 않았지만 2 일이 지나서야 어둠 속에서 총을 맞았습니다. 이 글을 정확하게 읽는다면 미리 정의 된 시스템과 그 안에 메시가있는 것처럼 들립니다. 플레이어 개체가 메쉬의 가장자리로 이동하면 메쉬에서 떨어집니다. 맞습니까?

사용중인 엔진에 중력이 있고 그 메시가있는 경우 맨 아래에 메시가 있습니다. 메쉬를 다리처럼 생각하십시오. 당신이 떨어져 떨어지면 떨어집니다. 당신이 할 수있는 일은 메쉬의 가장자리를 따라 벽을 설치하여 플레이어가 다리에서 떨어지는 것을 방지하거나, 엔진이 허용하는 경우 플레이어가 가장자리를 넘지 않도록 메쉬에 충돌을 설정하는 것입니다. 나중에 적과 NPC가이 같은 경로를 따르고 벽이 단지 더 많은 충돌 탐지 만하고 (적을 날아 다니는 것과 같은 일을 방해 할 수 있음) 원하는 것으로 가정하기 때문에 나중에 더 좋은 아이디어가 될 것입니다.

나는 이것이 정확한 답변이 아니라는 것을 알고 있지만, 이것이 몇 가지 아이디어를 얻길 바랍니다. 아마 나는 벗어났다. 그러나 이것은 내가 제공하고있는 정보에서 계속되고 있다고 생각하고있다.