Ana içeriğe geç
Programlama

Batch betiklerinde çoklu iş parçacığıyla gerçek zamanlı oyun geliştirme yöntemi paylaşıldı

Öne çıkanlar

  • SET /P komutu yönlendirilmiş bir dosyadan okuma yaptığında engelleyici yapısını kaybederek arka planda çalışabiliyor.
  • Boru hatları ve geçici sinyal dosyaları sayesinde girdi yakalama ile oyun mantığı bağımsız süreçlere bölünüyor.
  • Tek satırdaki 8191 karakterlik sınır, render işlemlerini ek iş parçacıklarına dağıtarak aşılabiliyor.

Geliştirici, Windows Batch komut dosyası kullanarak sıra tabanlı olmayan, gerçek zamanlı oyunların nasıl yazılabileceğini bir kılavuzla paylaştı. Komut satırında CHOICE veya SET /P gibi standart komutların girdi alırken betiği durdurduğunu belirten geliştirici, çoklu iş parçacığı mimarisi kurarak bu engelin aşılabileceğini açıkladı. Yöntem, bir iş parçacığının kullanıcı girdisini yakalarken diğerinin arka planda oyun döngüsünü ve animasyonları kesintisiz işletmesine dayanıyor.

Mimaride girdi dinleyen kontrol süreci ile oyun mantığı süreci, boru hattı ve geçici dosya yönlendirmeleriyle birbirine bağlanıyor. SET /P komutu doğrudan standart girdiden değil de yönlendirilen bir dosyadan okuma yaptığında engelleyici yapısını kaybediyor. Bu yapı sayesinde Pacman gibi gerçek zamanlı oyunlar yazılabiliyor; ayrıca işleme mantığı ayrı bir iş parçacığına aktarılarak komut satırındaki 8191 karakterlik satır sınırı ve bellek performansı sorunları dengeleniyor.

Kullanıcı girdisi tarafında standart CHOICE aracının yanı sıra XCOPY /W parametresinden ve çoklu tuş basımları için PowerShell entegrasyonundan yararlanılabiliyor. Süreçlerin temiz bir şekilde sonlandırılması için bayrak dosyaları oluşturuluyor; girdi dinleyicisinin takılı kalmaması adına ise VT100 durum sorgu dizileri üzerinden otomatik çıkış tetiği gönderiliyor. Bu yaklaşımlar, Batch ortamında doğrudan eşzamanlı süreç yönetimini mümkün kılıyor.

Kaynak

Bu özet yapay zekâ ile hazırlanmıştır; ayrıntılar ve doğrulama için orijinal kaynağa başvurun.