Bir 2D oyuna kamera / görüntü alanı uygulamanın en pratik yolu nedir?
Ekrana göre pozisyon yerine nesne dünya pozisyonunu saklamam gerektiğini okudum mu?
Mevcut durum:
XML dosyalarından nesneleri ve seviyeleri yüklediğim basit bir 2D oyun uyguladım. Şu anda düzey XML dosyası şuna benziyor:
<map>
<tile obj="ground" x="0" y="555" />
<tile obj="ground" x="16" y="555" />
<tile obj="ground" x="32" y="555" />
...
</map>
Tüm nesneler, geçerli konumlarını ekranda saklayan 2-vektörlü bir "konuma" sahiptir.
Ne olmasını istiyorum:
Resimde:
- Kamera 800x600 veya 640x480
- Bloklar ve spritelar 16x16 pikseldir.
- Dünya büyüklüğü değişebilir
- Koordinatlar muhtemelen ekrana göre değil, dünyaya göre normalleştirilmelidir?
- Oynatıcı x, y'ye göre görüntüleme konumu ve oynatıcı kamera ölü bölgesine ulaştığında hareket eder ( bu videoya benzer ).
Sahte örnekler / makaleler soruyorum, ancak geliştirme için ne kullandığımı bilmeniz gerekiyorsa: SDL & C / C ++.