2010-12-07 7 views
2

작은 멀티 플레이어 레이싱 게임을 개발하기 시작했습니다. Half Life, Quake 및 Unreal에서 사용하는 모든 플레이어 예측, 데드 레커 온 및 지연 보정 기술을 사용하고 있습니다. 게임에서 수십 개의 인공 지능 자동차를 가지고 있습니다.멀티 플레이어 게임에서 인공 지능 NPC 동기화

  1. 모든 클라이언트는 AI 자동차를 실행하는 종자가 나타납니다 -

    는 처음에 우리는 단순히 모든 클라이언트에 임의의 씨앗을 보내하기로 결정하고 그들이 등 AI의 위치를 ​​계산합니다 그러나, 우리는 다음과 같은 문제에 도달했습니다

  2. 클라이언트는 광경을 자신의 라인에서 선수 이동 업데이트를받을
  3. 플레이어 A는
  4. 플레이어 B는 플레이어 A의 프레임에게로 들어가는 NPC 차를 명중
,

선수 B가 선수 A의 움직임을받지 못했기 때문에 그는 AI 자동차가 여전히 움직이고 있다고 가정하고 선수 A가 그 자동차 중 하나에 충돌했다고 계산하지 않습니다.

짧은 이야기 - 플레이어의 영향을받은 AI 유닛을 어떻게 동기화 할 수 있습니까?

+2

이 질문은 다음과 같아야합니다. http://gamedev.stackexchange.com/ –

+0

AI 태그를 제거하십시오. 이것은 인공 지능과는 아무 관련이 없습니다. – ziggystar

답변

1

아마도 서버는 충돌을 알고 있습니다. 이 경우 모든 클라이언트에게 충돌 결과를 알리십시오. 충돌 지점에서 새로운 방향, 속도, RNG 씨앗 등과 같은 클라이언트에 AI를 다시 시드해야합니다.

관련 문제