Korzystanie z silników gry (Jedność, Unreal) w gniazdach zręcznościowych

Gniazda Arcade wymagają kinematografii, stabilnego FPS i ścisłej uczciwości matematycznej. Unity i Unreal zamykają narzędzia wizualne, produkcyjne i wielopoziomowe, a serwer odpowiada za RNG/wypłaty. Poniżej znajduje się ramy rozwiązania ze specyfikami dla telefonów komórkowych/web/PC.

1) Podstawowa architektura

```
[Jedność/nierealny klient]
UI/UX (UGUI/UI Toolkit UMG)
Timeline Sequencer
VFX (wykres VFX Niagara)
• Scena/Minigame Logic (CC++)
Sieć └─ (WebSocket/HTTP, Protobuf/JSON)
TLS + szpilki
[Gra backend]
Server RNG/Slot Math (Certified)
Gospodarka/Równowaga/Config (Remote Config)
Przechowywanie postępów/przepustek/zbiorów
Przeciwdziałanie oszustwom/limity/odpowiedzialna gra
└─ Analytics/AB/Eksperymenty/Phicheflags
```

Zasady: klient - wizualny i wejściowy; wynik spinu i meta-wypłaty - na serwerze; wszystkie nagrody/saldo - w konfiguracji z walidacją serwera. Wymagana jest niezmienność RTP.

2) Wybór silnika: gdy jedność, gdy nierealny

Jedność: szybki dostęp do telefonów komórkowych i WebGL, szeroki stos SDK, adresy, stos C, zestaw narzędzi UGUI/UI, wykres VFX. Preferowane dla 2D/stylized 3D, lekki klient, szybka iteracja, duża liczba tytułu
s z wspólną bazą kodową.
Unreal: high-end 3D, kinematografia poza pudełkiem, Sequencer, Niagara, potężna marka C++, plany dla projektantów. Preferowane dla premium sceny 3D, złożona produkcja komory, PC/konsola; na telefonie komórkowym - z doświadczonym zespołem i przemyślaną optymalizacją.
Kryteria wyboru: urządzenia docelowe, wymagana rozrywka, kompetencje zespołu, terminy, kości budowania/łata, wymagania klienta internetowego.

3) Rurociąg treści i dane

Jedność

adresy treści strumieniowych; katalogi wersjonowane.
Pismo Święte Obiekty do płac tabel, misji, kolekcji; rozwiązywanie przez Remote Config.
Linia czasowa do premii/dużych przedstawień sceny wina.
Wykres VFX do dozowania profilowanych efektów wygranej.

Nierzeczywiste

Pliki Pak/Chunking dla łatek; ChunkId. ChunkId.
Tabela/Wartość aktywów dla konfiguracji; Gameplay Tagi dla stanów.
Sekwencer dla scen ciętych; Niagara dla FX z LOD.
Menedżer strumieniowy do asynchronicznego załadunku.

Ogólne: ścisły schemat wersji, oddzielenie „kodu od danych”, „gorące” parametry - tylko od serwera.

4) UI/UX i czytelność

Jedność: UGUI (niezawodny) lub UI Toolkit (nowoczesne układy).
Unreal: UMG + Slate dla niestandardowych widżetów.
Renderowanie: jeden punkt konturowy (ease-out), wyraźne kontrasty, maski do świetlnych klastrów/linii.
Pomiń/przyspieszyć sceny bez utraty sygnałów kluczy.
Dostępność: tryb FX w dół, profile kolorów, napisy, ostrzeżenie flash.

5) Animacje/kamery/VFX

Program „szczepienia → wpływ → rozliczenie”, czas trwania dużych win ≤ 2. 5 p.
Kamera: statyczny plan pracy + krótki (≤ 1. 2 c) zdarzenia; ograniczenie rolki/powiększenia.
FX: Niagara/VFX Wykres z nasadką emitera, cząstki GPU, sortowanie przezroczystości, minimum overdrive.
Zlew audio: ± 20 ms do szczytów animacji, kacząc ścieżkę tła przy wygranej.

6) Optymalizacja dla telefonów komórkowych/internetowych/PC

Bramki FPS: 60 (idealne), awaria bezpieczne 30. Czas ramki 16. 7/33. 3 ms.
Budżety etapowe (poziomy odniesienia):
  • Mobilny średni zasięg: 80-120k tris/frame, ≤ 120 wywołań ciągnienia, minimalne dynamiczne cienie.
  • Pulpit: 180-300k tris, ≤ 200 -300 wywołań remisowych.
  • Tekstury: atlasy, kompresja (ASTC/ETC2 na telefonie komórkowym, BCn na pulpicie), poziomy mip, limit 4k tylko dla dużych tła.
  • Oświetlenie: pieczone/mieszane, sonda światła/sonda refleksyjna; w sprawie UE - wyłączenie drogiego oznaczenia geograficznego na komórkach; na Unity - URP (dla mobilnych) z prostymi cieniami.
  • Lodas/Mullions: 2-3 poziomy; agresywne ubijanie w tle.
  • Shaders: kontrola zmienności, prewarm; на Unity - SRP Batcher; w sprawie materiałów UE - instancja zamiast duplikatów.
  • WebGL: Unity WebGL - sceny świetlne; wyłączyć ciężkie efekty post, użyć statycznego tła, zoptymalizować rozmiar wiązki. Pixel Streaming UE - promo/wysokie kanały bitrate tylko (latency).
  • Pamięć: cel mobilny ≤ 256-400 MB na etap; Puli dla VFX/Audio rozładunku aktywów podczas zmiany trybów.

7) Logika mechaniki arkadowej

Mini-gry (pick/timing/aim) - lokalna logika i walidacja na serwerze (jeśli nagroda jest znacząca).
Gamyfikacja (poziomy/misje/przepustki) - postęp jest przechowywany na serwerze; klient czyta tylko widok.
Zmienność wolnego profilu (dużo × trochę vs trochę × dużo) jest kontrolowana przez serwer, klient pokazuje wybór.

8) RNG, płatności, zgodność

Wynikiem spin/bonus jest ściśle serwer RNG/matematyka, klient nie przechowuje stron, nie symuluje XT.
Serwer zwraca wynik + możliwy do udowodnienia ślad; klient - wizualny.
Ograniczenie „fałszywy wybór”: w przypadku pre-draw klient jest zobowiązany poinformować, że zamówienie otwarcia nie wpływa na XT.
Dzienniki audytu, limity, odpowiedzialne przypomnienia (sesja, depozyty w RMG lub miękkie limity społeczne).
RTP nie zmienia się ze względu na animacje sceny/czas.

9) Montaż, łatanie i multiplatform

Jedność

AndroID:IL2CPP + ARM64; Split APK/ABB; Katalog adresów zdalnych do aktualizacji na gorąco.
iOS: IL2CPP + Metal; Kod bitcode (jeśli wymagane), App Thinning; Zasoby na żądanie dla ciężkich aktywów.
PC/WebGL: indywidualne profile jakości; CDN na wiązki.

Nierzeczywiste

Pliki Pak z Chunking, DLC kawałki dla wydarzeń/sezonów; IoStore.
Mobile: wyłączyć ciężkie funkcje (pełny dynamiczny GI/drogie cienie), użyć renderera mobilnego.
Łatanie: plastry delta poziomu kawałka, wersja danych jest oddzielona od kodu.

10) Analityka, A/B, zdalna konfiguracja

Wydarzenia: czas do 1. nagrody, częstotliwość wejść bonusowych, procent pominięcia sceny, FPS/pamięć, głębokość postępu, udział zakończonych misji, sesje „suche”.
A/B: czas trwania cutscene, gęstość FX, wartości nadajnika, złożoność misji, układy interfejsu użytkownika.
Zdalne konfiguracje/ficheflags: natychmiastowe edycje bez zwolnienia.
Prywatność: zagregowane wskaźniki, RODO/CCPA; wyłączone identyfikatory osobiste.

11) Bezpieczeństwo klienta

Pinning TLS, weryfikacja certyfikatu, ochrona powtórna.
Podpis hash konfiguracji; anty-manipulator (kontrola zaciemnienia/integralności).
Walidacja serwera wszystkich nagród/postępów; „niewidomy” klient dla ekonomicznie istotnych operacji.
Wykrywanie botów: zmienność czasu, anomalie sesyjne, heurystyka do powtarzania wzorów.

12) Rurociąg zespołowy

Git + LFS/Perforce (UE) dla aktywów ciężkich; na bazie bagażnika z krótkimi fichevetami.
CI/CD: montaż/wymiar/sprawdzenie profilu; automatyczna generacja adresów/ChunkId.
Metryka bramy przed zwolnieniem: FPS 60 ± 5 bez wyciągów na urządzeniach referencyjnych, stabilność pamięci, czas rozruchu <5-8 s (pierwsze wejście), duża scena wina ≤ 2. 5 c.

13) Zabytki numeryczne (na początek)

Ciągnij połączenia mobilne: ≤ 120; pulpit ≤ 300.
Tekstury: maksymalnie 2k dla kluczowych tła, reszta ≤ 1k; Zawsze meeps.
Audio: zwycięskie motywy ≤ 3 c; systemy (otoczenie/SFX/UI/fanfare), kaczka -6... - 9 dB.
Obciążenie: rozruch na zimno ≤ 8 c, powtarzany ≤ 3 c; leniwe ładunki/bonusy FX.
Scena bonusowa: Intro 0. 8–1. 5 c, końcowa ramka nagrody ≤ 1 c, natychmiastowy zwrot.

14) Lista kontrolna wdrażania

1. Ustaw cele: platformy, FPS, rozmiar klienta, budżety.
2. Zdefiniowanie architektury i granic odpowiedzialności serwera (RNG/ekonomia/postęp).
3. Wybierz silnik zgodnie z kryteriami rozrywki/czasu/kompetencji.
4. Konfiguracja gazociągu treści (adresyPak/Chunks), Zdalny konfig.
5. Wdrożenie interfejsu UI/UX z czytelnością wygranej i dostępnością.
6. Montaż VFX/kamery zgodnie z schematem timing/impact/settle, ograniczyć czas trwania.
7. Wprowadź telemetrię, A/B i alerty wydajności.
8. Zoptymalizować urządzenia docelowe (LOD, kompresja, masowanie).
9. Zamknij zabezpieczenia (szpilki, anty-manipulator, walidacja serwera).
10. Przeprowadzić testy urządzeń, stałe budżety, uwolnić bramę.
11. Skonfiguruj plaster/zawartość sezonową bez aktualizacji aplikacji.
12. Plan regularnego zrównoważenia gospodarki i gęstości wizualnej danych.

Wniosek: Jedność i Unreal przyspieszyć produkcję gniazd zręcznościowych, zapewniając wysoki wizualny i wygodny rurociąg. Kluczowe znaczenie ma utrzymanie autorytetu serwera w matematyce, budowanie kontrolowanej rozrywki (kamera/FX/audio) i utrzymanie wydajności w budżetach. Dzięki temu podejściu slot pozostaje uczciwy w RTP, szybko na urządzeniach i spektakularny w prezentacji - dokładnie to, co czeka na sekcję „Automaty Arcade: więcej niż tylko spiny”.