2012-12-16 1 views
0

나는 이것을 과도하게 생각하고 있습니다. 그러나 엔티티의 속도가 변화 할 때 속도 변화를 처리하는 간단한 충돌 접근법의 좋은 예를 찾을 수없는 것 같습니다./마우스의 입력에 따라구성 요소 엔티티 시스템 접근 방식에서 충돌 처리

  1. MovementSystem은 (는 속도 성분을 기반으로 기업의 위치 구성 요소를 업데이트)
  2. InputSystem (엔티티의 속도 성분을 갱신 : 무엇 처음에 마음에 오는 것은 순서로 실행 3 시스템을 가지고있다 키보드)
  3. CollisionSystem (엔티티의 속도 성분을 변경는) 다른 엔티티와

교차인지에 기반하지만 캐치 (22)는 여기가 아닌가? 만약 내가 이미 다른 존재와 충돌했다면, 지금은 빠져 나갈 수 없다. 왜냐하면 충돌 시스템이 계속 내 속도를 죽이기 때문이다. 아니면 충돌 시스템이 속도의 방향에 대해 이해하도록해야합니까?

답변

0

간단한 충돌 시스템은 물체가 들어온 각도를 알아야하고 반대 방향으로 보내야합니다. 이것은 속도 벡터를 180도 회전시켜 0,1에서 0, -1로 말합니다. 재 충돌을 방지하려면 다음 틱 전에 충돌 범위에서 "홉 (hops)"되어 있는지 확인하여 새 속도를 대상 위치 (p2 = p1 * velocity * tick)에 적용해야합니다.