Arcade yuvalarında oyun motorlarını (Unity, Unreal) kullanma

Arcade yuvaları sinematografi, istikrarlı FPS ve katı matematiksel dürüstlük gerektirir. Unity ve Unreal görsel, üretim araçlarını ve çoklu platformu kapatır ve sunucu RNG/ödemelerden sorumludur. Aşağıda mobil/web/PC için özellikleri ile çözümün çerçevesidir.

1) Temel mimari

```
[Unity/Unreal Client]
├─ UI/UX (UGUI/UI ToolkitUMG)
├─ Zaman ÇizelgesiSequencer
├─ VFX (VFX GrafiğiNiagara)
├─ Sahne/Minigame Mantığı (CC++)
└─ ağ (WebSocket/HTTP, Protobuf/JSON)
TLS + sabitleme
[Oyun arka ucu]
├─ Sunucu RNG/Slot Matematik (Sertifikalı)
├─ Ekonomi/Denge/Yapılandırma (Uzaktan Yapılandırma)
├─ İlerlemenin/geçişlerin/koleksiyonların depolanması
├─ Dolandırıcılıkla Mücadele/Sınırlar/Sorumlu Oyun
└─ Analytics/AB/Deneyler/Phicheflags
```

İlkeler: müşteri - görsel ve girdi; Spin ve meta-ödeme sonucu - sunucuda; Tüm ödüller/denge - sunucu doğrulaması ile yapılandırma içinde. RTP değişmezliği gereklidir.

2) Motor seçimi: Unity, Unreal olduğunda

Birlik: mobil ve WebGL'ye hızlı erişim, geniş SDK yığını, Adresler, C-yığını, UGUI/UI Araç Kiti, VFX Grafiği. 2D/stylized 3D, hafif istemci, hızlı yineleme, çok sayıda Başlık için tercih edilir
Ortak bir kod tabanı olan s.
Unreal: Üst düzey 3D, kutudan çıkan sinematografi, Sequencer, Niagara, güçlü C++ markası, tasarımcılar için bluprintler. Premium 3D sahneler, karmaşık oda üretimi, PC/konsol için tercih edilir; Mobil - deneyimli bir ekip ve düşünceli optimizasyon ile.
Seçim kriterleri: hedef cihazlar, gerekli eğlence, takım yetkinlikleri, son tarihler, yapı/yama kemikleri, web istemci gereksinimleri.

3) İçerik boru hattı ve veriler

Birlik

İçerik akışı için adresler; sürüm katalogları.
Ödeme tabloları, görevler, koleksiyonlar için ScriptableObjects; Remote Config ile çözümleme.
Bonus/büyük şarap sahnesi tanıtımları için zaman çizelgesi.
Profilli kazanç efektlerini toplamak için VFX Grafiği.

Gerçek dışı

Pak dosyaları/yamalar için Chunking; PrimaryAsset Etiketleri и ChunkId.
Yapılandırmalar için DataTable/DataAsset; Devletler için Oyun Etiketleri.
Kesilmiş sahneler için sequencer; LOD ile FX için Niagara.
Eşzamansız yükleme için StreamableManager.

Genel: katı sürüm şeması, "kod vs veri", "sıcak" parametrelerin ayrılması - yalnızca sunucudan.

4) UI/UX ve okunabilirlik

Unity: UGUI (güvenilir) veya UI Toolkit (modern düzenler).
Unreal: Özel widget'lar için UMG + Slate.
Oluşturma: bir kontur puanı (hareket hızı), net kontrastlar, aydınlatıcı kümeler/çizgiler için maskeler.
Önemli sinyalleri kaybetmeden sahneleri atlayın/hızlandırın.
Kullanılabilirlik: FX aşağı modu, renk renk profilleri, altyazılar, flaş uyarısı.

5) Animasyonlar/Kameralar/VFX

Şema "aşılama - darbe - yerleşme", büyük şarapların süresi ≤ 2. 5 p.
Kamera: statik çalışma planı + kısa (≤1. 2 c) olaylar; Roll/zoom sınırlaması.
FX: Yayıcı başlığı, GPU parçacıkları, saydamlık sıralaması, minimum overdrive ile Niagara/VFX Grafiği.
Ses lavabosu: Animasyonların zirvelerine 20ms ±, kazanırken arka plan parçasını örterek.

6) Mobil/web/PC için optimizasyon

FPS hedefleri: 60 (ideal), güvenli 30 başarısız. Çerçeve süresi 16. 7/33. 3 ms.
Aşama bütçeleri (kriterler):
  • Mobil orta menzil: 80-120k tris/frame, ≤120 çizim çağrıları, en az dinamik gölgeler.
  • Masaüstü: 180-300k tris, ≤200 -300 beraberlik çağrıları.
  • Dokular: atlaslar, sıkıştırma (mobilde ASTC/ETC2, masaüstünde BCn), mip seviyeleri, yalnızca büyük arka planlar için 4k sınırı.
  • Aydınlatma: pişmiş/karışık, Işık Probu/Yansıma Probu; UE'de - mobil cihazlarda pahalı GI'yi devre dışı bırakın; Unity - Basit gölgelendiricilerle URP (mobil için).
  • Loda/Mullions: 2-3 seviyeleri; agresif arka plan toplama.
  • Gölgelendiriciler: değişkenlik kontrolü, ön warm; на Birliği - SRP Batcher; UE üzerinde - kopyalar yerine örnek malzeme.
  • WebGL: Birlik WebGL - hafif sahneler; Ağır son efektleri kapatın, statik bir arka plan kullanın, paket boyutunu optimize edin. Pixel Streaming UE - yalnızca promosyon/yüksek bit hızı kanalları (gecikme).
  • Bellek: hedef mobil ≤ sahne başına 256-400 MB; Modları değiştirirken VFX/Ses boşaltma varlıkları için havuzlar.

7) Arcade mekaniğinin mantığı

Mini oyunlar (pick/timing/aim) - sunucuda yerel mantık ve doğrulama (ödül önemliyse).
Oyunlaştırma (seviyeler/görevler/geçişler) - ilerleme sunucuda saklanır; Müşteri sadece görünümü okur.
Freespin profilinin volatilitesi (çok × biraz vs biraz × çok) sunucu tarafından kontrol edilir, istemci seçimi gösterir.

8) RNG, ödemeler, uyumluluk

Spin/bonusun sonucu kesinlikle sunucu RNG/matematiktir, istemci tarafları saklamaz, EV'yi simüle etmez.
Sunucu sonuç + kanıtlanabilir iz döndürür; müşteri - görsel.
Kısıtlama "yanlış seçim": Önceden çizildiğinde, müşteri açılış emrinin EV'yi etkilemediğini bildirmek zorundadır.
Denetim günlükleri, limitler, sorumlu hatırlatıcılar (oturum, RMG'deki depozitolar veya sosyal ortamdaki yumuşak limitler).
RTP, sahne animasyonları/zamanlaması nedeniyle değişmez.

9) Montaj, yama ve çoklu platform

Birlik

AndroID:IL2CPP + ARM64; Bölünmüş APK/ABB; Sıcak güncellemeler için Adresler Uzak Katalog.
IOS: IL2CPP + Metal; Bitcode (gerekirse), App Thinning; Ağır varlıklar için Talep Üzerine Kaynaklar.
PC/WebGL: bireysel kalite profilleri; Paketler için CDN.

Gerçek dışı

Chunking ile Pak dosyaları, olaylar/mevsimler için DLC parçaları; IoStore.
Mobil: Ağır özellikleri kapatın (tam dinamik GI/pahalı gölgeler), bir mobil oluşturucu kullanın.
Yama: Yığın seviyesinin delta yamaları, veri sürümü koddan ayrıdır.

10) Analitik, A/B, uzaktan yapılandırma

Etkinlikler: 1. ödül zamanı, bonus girişlerinin sıklığı, sahne atlama yüzdesi, FPS/bellek, ilerleme derinliği, tamamlanan görevlerin paylaşımı, "kuru" oturumlar.
A/B: cutscene süresi, FX yoğunluğu, beacon ödül değerleri, görev karmaşıklığı, UI düzenleri.
Uzaktan Yapılandırma/ficheflags: serbest bırakmadan anında düzenlemeler.
Gizlilik: toplu metrikler, GDPR/CCPA; Kişisel tanımlayıcıları devre dışı bıraktı.

11) Müşteri güvenliği

TLS sabitleme, sertifika doğrulama, tekrar oynatma koruması.
Yapılandırmaların karma imzası; Anti-kurcalama (şaşırtma/bütünlük kontrolleri).
Tüm ödüllerin/ilerlemenin sunucu doğrulaması; Ekonomik açıdan önemli operasyonlar için "kör" müşteri.
Bot tespiti: zamanlama değişkenliği, oturum anomalileri, tekrarlayan modeller için sezgisel yöntemler.

12) Takım boru hattı

Ağır varlıklar için Git + LFS/Perforce (UE); Kısa fichevets ile gövde tabanlı.
CI/CD: montaj/boyut/profil kontrolü; Adreslerin otomatik üretimi/ChunkId.
Piyasaya sürülmeden önce kapı metrikleri: FPS 60 ± 5, referans cihazlarında düşüşler olmadan, bellek kararlılığı, önyükleme süresi <5-8 s (ilk giriş), büyük şarap sahnesi ≤ 2. 5 c.

13) Sayısal yer işaretleri (başlangıç için)

Çiz mobil çağrıları: ≤120; Masaüstü ≤300.
Dokular: Anahtar arka planlar için maksimum 2k, geri kalanı ≤1k; Hep miyavlar.
Ses: kazanan temalar ≤3 c; Sistemler (ortam/SFX/UI/fanfare), kanal açma -6... - 9 dB.
Yükleme: soğuk başlangıç ≤8 c, tekrarlanan ≤3 c; Tembel FX yüklemeleri/bonusları.
Bonus Sahne: Giriş 0. 8–1. 5 c, son ödül çerçevesi ≤1 c, anında dönüş.

14) Uygulama kontrol listesi

1. Hedefler belirleyin: platformlar, FPS, müşteri büyüklüğü, bütçeler.
2. Sunucu sorumluluğunun mimarisini ve sınırlarını tanımlayın (RNG/ekonomi/ilerleme).
3. Motoru eğlence/zaman/yetkinlik kriterlerine göre seçin.
4. Configure Content Pipeline (AdreslerPak/Parçalar), Remote Config.
5. Kazanılabilirlik ve kullanılabilirlik ile UI/UX uygulayın.
6. VFX/kameraları zamanlama/darbe/yerleşim şemasına göre monte edin, süreyi sınırlayın.
7. Telemetri, A/B ve performans uyarıları girin.
8. Hedef cihazlar için optimizasyona tabi tutulur (LOD, sıkıştırma, butching).
9. Yakın güvenlik (sabitleme, anti-kurcalama, sunucu doğrulama).
10. Cihaz testleri, sabit bütçeler, serbest bırakma kapısı yapın.
11. Uygulamayı güncellemeden yamayı/mevsimsel içeriği ayarlayın.
12. Verilerden ekonominin ve görsel yoğunluğun düzenli olarak yeniden dengelenmesi için plan yapın.

Sonuç: Unity ve Unreal, arcade slotlarının üretimini hızlandırarak yüksek görsel ve kullanışlı bir boru hattı sağlar. Sunucu otoritesini matematikte tutmak, kontrollü eğlence (kamera/FX/ses) oluşturmak ve performansı bütçelerde tutmak çok önemlidir. Bu yaklaşımla, slot RTP'de dürüst, cihazlarda hızlı ve sunumda muhteşem kalır - "Arcade slotları: sadece dönüşlerden daha fazlası" bölümünü tam olarak ne bekler.