Gradyan Savaş Sisini nasıl oluşturabilirim?


14

Eğitim amaçlı yukarıdan aşağıya 2D RTS oyunu oluşturuyorum. Şu anda Starcraft'ın tasarımını / fikirlerini gerçekten kopyalıyorum. Muhtemelen Savaş Sisini de uygulamam gerektiğine karar verdim.

Beklentilerim:

  • Şu anda araştırılan alanlar (birimler var) aydınlatılmalıdır.
  • Alanlar previsouly araştırdı (birimler vardı daha koyu olabilir ama şeyler nelerdir göstermelidir orada) idi senin birim varken orada.
  • Keşfedilmemiş alanlar (birimlerinizin hiç gitmediği alanlar) tamamen siyah olmalıdır.
  • Her türden bir gradyan değişikliği olmalıdır (örn. Daha önce araştırılmış olarak araştırılmış) Aşağıdaki resme bakın.

görünürlük bölgeleri arasındaki gradyanlar

Sadece kaba ayrıntılar: Bunu nasıl yaparım?

Yanıtlar:


11

Oyunu nasıl uyguladığınız hakkında daha fazla bilgi eklemelisiniz, ancak işte birkaç öneri:

  • Tüm haritanın bir bitmap'ini saklayın, her yeni alan keşfedildiğinde ilgili bitleri görünür hale getirin. Aynı şeyi ortaya çıkan alan için de yapabilirsiniz.
  • Düşman birimleri, yalnızca ortaya çıkan alanda bulunuyorsa çekilir. FOW alanındaki binalar için 'son görülme' durumunu korumanız gerekir.
  • Her karede görünürlüğü güncellemenize gerek yoktur - maksimum birim hızınıza bağlı olarak 5 veya 10 fps yeterli olmalıdır.
  • Kare fayans kullandığınızı varsayarak, ihtiyacınız olan sonuçları almak için sadece 4 maskeye ihtiyacınız olacak: biri 'katı' (karartılmış) bir karo, bir 'dirsek' ve bir 'köşe' gradyanı ve bir 'düz kenar' gradyan. Diğerlerini rotasyonları ve farklı asetatları kullanarak alabilirsiniz.

Umarım yardımcı olur.


Ayrıca, oyun nesnelerinizi saklamak için bir boşluk dizini kullanın, böylece hangi nesnelerin oynatıcı tarafından görülebileceğini hızlı bir şekilde sorgulayabilirsiniz.
Kai
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.