그라디언트 Fog of War를 만들려면 어떻게해야합니까?


14

교육 목적으로 하향식 2D RTS 게임을 만들고 있습니다. 현재 저는 실제로 스타 크래프트의 디자인 / 아이디어를 복사하고 있습니다. 아마 Fog Of War도 구현해야한다고 결정했습니다.

내 기대 :

  • 현재 탐사 된 지역 (단위가 있음)이 점등되어야합니다.
  • 사전에 조사 된 지역 (유닛 있었음)은 더 어두워 야하지만 유닛 있을 때 무엇이 있었는지 보여야합니다 .
  • 탐험하지 않은 지역 (유닛이가 본 적이없는 지역)은 완전히 검은 색이어야합니다.
  • 각 유형마다 그라디언트 변경이 있어야합니다 (예 : 이전에 탐색 한 것으로) 아래 그림을 참조하십시오.

가시성 영역 간 그라디언트

대략적인 세부 사항 : 어떻게해야합니까?

답변:


11

게임 구현 방법에 대한 자세한 정보를 추가해야하지만 다음과 같은 몇 가지 제안이 있습니다.

  • 새 영역을 탐색 할 때마다 해당 비트가 표시 될 때 플립하면 전체 맵의 비트 맵을 유지합니다. 공개 된 영역에 대해서도 동일한 작업을 수행 할 수 있습니다.
  • 적 유닛은 공개 영역에있는 경우에만 그립니다. FOW 지역의 건물에 대해 '마지막으로 본'상태를 유지해야합니다.
  • 최대 프레임 속도에 따라 5 또는 10fps이면 충분합니다. 프레임마다 가시성을 업데이트 할 필요는 없습니다.
  • 정사각형 타일을 사용한다고 가정하면 필요한 결과를 얻기 위해 4 개의 마스크가 필요합니다. 하나는 '고체'(검은 색) 타일, 하나는 '팔꿈치', 하나는 '코너'그라디언트, 하나는 '직선 모서리'입니다. 구배. 회전 및 다른 투명 필름을 사용하여 다른 모든 것을 얻을 수 있습니다.

희망이 도움이됩니다.


또한 공간 인덱스를 사용하여 게임 객체를 저장하면 플레이어가 볼 수있는 객체를 빠르게 쿼리 할 수 ​​있습니다.
Kai
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.