在街机插槽中使用游戏引擎(Unity, Unreal)
街机插槽需要电影性,稳定的FPS和严格的数学诚实。Unity和Unreal关闭视觉,生产工具和多平台,服务器负责RNG/付款。下面-在移动/web/MS下具有特定细节的解决方案框架。
1)基本架构
```
[Unity/Unreal客户端]
原则:客户-视觉和输入;自旋和元支付的结果-在服务器上;所有奖项/均衡-在具有服务器验证的config中。RTP不变性是强制性的。
2)引擎选择:Unity何时,Unreal何时
Unity:快速移动和WebGL,宽源SDK,Addressables,C堆栈,UGUI/UI工具包,VFX Graph。优选于2D/风格化的 3D、轻量级客户机、快速迭代、大量Tytle
具有通用代码基础的ob。
虚幻:高端3D,开箱即用的电影,Sequencer, Niagara,强大的C++渲染,专为设计师设计。优选高级3D场景,复杂的室内制作,MS/控制台;在移动上-有经验丰富的团队和周到的优化。
选择标准:目标设备,所需的娱乐性,团队能力,时机,比尔/补丁骨头,Web客户端要求。
3)内容管道和数据
Unity
用于内容流媒体的Addressables;转学目录。
付款,任务,收藏表下的ScriptableObjects;通过Remote Config展开。
时间轴用于奖金/大酒场景介绍。
VFX图形(VFX Graph)通过战斗剖析获得胜利效果。
Unreal
Pak文件/用于补丁的Chunking;PrimaryAsset Labels и ChunkId.
Configs下的DataTable/DataAsset;用于状态的Gameplay Tags。
猫场景的Sequencer;Niagara for FX with LOD。
StreamableManager用于异步加载。
一般:严格的版本方桉,分离"code vs data"和"热"参数-仅来自服务器。
4) UI/UX和可读性
Unity:UGUI(可靠)或UI Toolkit(现代layauts)。
虚幻的:UMG+Slate用于定制小部件。
渲染:一个轮廓获胜计数器(ease-out),清晰的对比度,用于聚类/线路背光的掩码。
跳跃/加速场景而不会丢失关键信号。
可用性:FX降低模式、色谱、字幕、闪烁警告。
5) 动画/相机/VFX
"anticipation → impact → settle"方案,大葡萄酒持续时间≤ 2。5页。
相机:静态工作计划+短(≤1。2 (c)事件;滚动/变焦限制。
FX: Niagara/VFX Graph带有发射器机盖、GPU粒子、透明分级、最小透射率。
Sink音频:± 20毫秒到动画的高峰,在获胜时扣留背景轨道。
6) 在移动/Web/MS下进行优化
FPS目标:60(理想),假保险箱30。帧时间16。7/33.3毫秒。
舞台预算(地标):
中程移动:80-120 k tris/框架,≤120 draw calls,动态阴影最小。
Desktop: 180-300k tris, ≤200 -300 draw calls。
纹理:地图集,压缩(ASTC/ETC2在移动上,BCn在台式机上),mip级别,4k限制,仅适用于大型背景。
照明:烘烤/混合,光探测器/反射探测器;在UE-关闭移动设备上昂贵的GI;Unity是带有简单着色器的URP(用于移动)。
Lods/Imposters:2-3级;激进的洞察背景。
着色器:变异性控制,prewarm;на Unity — SRP Batcher;UE-实例材料而不是重复材料。
WebGL:Unity WebGL-轻量级场景;关闭沉重的后期效果,使用静态背景,优化乐队的大小。Pixel Streaming UE仅适用于促销/高额定频道(潜伏期)。
内存:移动目标≤每个阶段256-400 MB;VFX/音频池;在模式更改时卸载代理。
7)街机机械师的逻辑
迷你游戏(pick/timing/aim)-服务器上的本地逻辑和验证(如果奖励有意义)。
游戏化(级别/任务/pass)-进度存储在服务器上;客户端只读取视图。
Frispin配置文件的波动(很多×小vs ×大)-由服务器控制,客户端显示选择。
8) RNG,付款,合规性
自旋/奖金结果-严格来说是服务器RNG/数学,客户端不存储苹果酒,不模拟EV。
服务器返回结果+可证明的跟踪;客户端-视觉。
限制"false choice":在预绘制中,客户端必须告知打开顺序不会影响EV。
审计记录,限制,负责任的提醒(会话,RMG存款或社会软限制)。
由于动画/场景时间,RTP不会更改。
9)组装、修补和多平台形式
Unity
AndroID: IL2CPP + ARM64;Split APK/ABB;Addressables远程目录用于"热"更新。
iOS: IL2CPP + Metal;Bitcode(如果需要),App Thinning;重型资产中的按需资源。
PC/WebGL:单独的质量配置文件;帮派的CDN。
Unreal
带有Chunking的Pak文件,用于活动/季节的DLC钱卡;IoStore.
移动:关闭重型摄像头(完全动态的GI/昂贵的阴影),使用移动渲染器。
修补程序:delta-chunk level修补程序,数据版本与代码分开。
10)分析,A/B,远程配置
事件:获得第一奖项的时间,奖金输入的频率,场景跳过百分比,FPS/内存,进度深度,完成任务的比例,"干燥"会议。
A/B:过场动画的持续时间,FX密度,"灯塔"奖励值,任务复杂性,UI布局。
Remote Config/Ficheflags:即时编辑而无需发布。
隐私:GDPR/CCPA的强化指标;禁用个人标识符。
11)客户安全
TLS定位,证书验证,继电器保护。
Configs的哈希签名;反拭子(溷淆/完整性检查)。
所有奖项/进步的服务器验证;"盲人"客户从事具有经济意义的业务。
机器人检测:时间变异,会话异常,重复模式启发式。
12)团队管道
用于重型刺客的Git+LFS/Perforce(UE);基于trunk,带有短鞭子。
CI/CD:检查装配/尺寸/配置文件;自动生成Addressables/ChunkId。
发布前的大门度量标准是:FPS 60 ± 5,参考设备上没有缩写,内存稳定性,加载时间<5-8 c(第一次输入),大葡萄酒场景≤ 2。5 c.
13)数字地标(开始)
Draw calls mobile:≤120;≤300台式机。
纹理:关键背景最多2k,其余≤1k;总是溷蛋。
音频:获奖主题≤3 c;支架(ambient/SFX/UI/fanfare), ducking -6……-9 dB。
下载:冷启动≤8 c,重新启动≤3 c;懒惰的FX/奖金。
奖金场景:介绍0。8–1.5 c,奖品的最终框架≤1 c,即时回报。
14)实施支票
1.提交目标:平台、FPS、客户规模、预算。
2.定义服务器责任体系结构和边界(RNG/经济性/进度)。
3.根据视力/时间/能力标准选择引擎。
结论:Unity和Unreal通过提供高视觉效果和方便的管线,加快了街机插槽的生产。保持服务器权威的数学,建立可管理的视野(相机/FX/音频)并保持性能预算至关重要。通过这种方法,该插槽在RTP上保持诚实,在设备上快速并且在发球中壮观-正好是"拱廊插槽:不仅仅是旋转"部分所期望的。
1)基本架构
```
[Unity/Unreal客户端]
├─ UI/UX (UGUI/UI Toolkit | UMG) |
---|---|
动画├─ (Timeline | Sequencer) |
├─ VFX (VFX Graph | Niagara) |
├─场景/迷你游戏逻辑(C | C++) |
└─ Networking(WebSocket/HTTP,Protobuf/JSON) | |
│ | |
TLS + pinning | |
│ | |
[游戏背景] | |
├─服务器RNG/插槽数学(认证。) | |
├─ 经济学/资产负债表/config (Remote Config) | |
├─进度/进度/收藏 | |
├─ Antifrod/限制/负责任游戏 | |
└─ 分析/AB/实验/ficheflagi | |
``` |
原则:客户-视觉和输入;自旋和元支付的结果-在服务器上;所有奖项/均衡-在具有服务器验证的config中。RTP不变性是强制性的。
2)引擎选择:Unity何时,Unreal何时
Unity:快速移动和WebGL,宽源SDK,Addressables,C堆栈,UGUI/UI工具包,VFX Graph。优选于2D/风格化的 3D、轻量级客户机、快速迭代、大量Tytle
具有通用代码基础的ob。
虚幻:高端3D,开箱即用的电影,Sequencer, Niagara,强大的C++渲染,专为设计师设计。优选高级3D场景,复杂的室内制作,MS/控制台;在移动上-有经验丰富的团队和周到的优化。
选择标准:目标设备,所需的娱乐性,团队能力,时机,比尔/补丁骨头,Web客户端要求。
3)内容管道和数据
Unity
用于内容流媒体的Addressables;转学目录。
付款,任务,收藏表下的ScriptableObjects;通过Remote Config展开。
时间轴用于奖金/大酒场景介绍。
VFX图形(VFX Graph)通过战斗剖析获得胜利效果。
Unreal
Pak文件/用于补丁的Chunking;PrimaryAsset Labels и ChunkId.
Configs下的DataTable/DataAsset;用于状态的Gameplay Tags。
猫场景的Sequencer;Niagara for FX with LOD。
StreamableManager用于异步加载。
一般:严格的版本方桉,分离"code vs data"和"热"参数-仅来自服务器。
4) UI/UX和可读性
Unity:UGUI(可靠)或UI Toolkit(现代layauts)。
虚幻的:UMG+Slate用于定制小部件。
渲染:一个轮廓获胜计数器(ease-out),清晰的对比度,用于聚类/线路背光的掩码。
跳跃/加速场景而不会丢失关键信号。
可用性:FX降低模式、色谱、字幕、闪烁警告。
5) 动画/相机/VFX
"anticipation → impact → settle"方案,大葡萄酒持续时间≤ 2。5页。
相机:静态工作计划+短(≤1。2 (c)事件;滚动/变焦限制。
FX: Niagara/VFX Graph带有发射器机盖、GPU粒子、透明分级、最小透射率。
Sink音频:± 20毫秒到动画的高峰,在获胜时扣留背景轨道。
6) 在移动/Web/MS下进行优化
FPS目标:60(理想),假保险箱30。帧时间16。7/33.3毫秒。
舞台预算(地标):
中程移动:80-120 k tris/框架,≤120 draw calls,动态阴影最小。
Desktop: 180-300k tris, ≤200 -300 draw calls。
纹理:地图集,压缩(ASTC/ETC2在移动上,BCn在台式机上),mip级别,4k限制,仅适用于大型背景。
照明:烘烤/混合,光探测器/反射探测器;在UE-关闭移动设备上昂贵的GI;Unity是带有简单着色器的URP(用于移动)。
Lods/Imposters:2-3级;激进的洞察背景。
着色器:变异性控制,prewarm;на Unity — SRP Batcher;UE-实例材料而不是重复材料。
WebGL:Unity WebGL-轻量级场景;关闭沉重的后期效果,使用静态背景,优化乐队的大小。Pixel Streaming UE仅适用于促销/高额定频道(潜伏期)。
内存:移动目标≤每个阶段256-400 MB;VFX/音频池;在模式更改时卸载代理。
7)街机机械师的逻辑
迷你游戏(pick/timing/aim)-服务器上的本地逻辑和验证(如果奖励有意义)。
游戏化(级别/任务/pass)-进度存储在服务器上;客户端只读取视图。
Frispin配置文件的波动(很多×小vs ×大)-由服务器控制,客户端显示选择。
8) RNG,付款,合规性
自旋/奖金结果-严格来说是服务器RNG/数学,客户端不存储苹果酒,不模拟EV。
服务器返回结果+可证明的跟踪;客户端-视觉。
限制"false choice":在预绘制中,客户端必须告知打开顺序不会影响EV。
审计记录,限制,负责任的提醒(会话,RMG存款或社会软限制)。
由于动画/场景时间,RTP不会更改。
9)组装、修补和多平台形式
Unity
AndroID: IL2CPP + ARM64;Split APK/ABB;Addressables远程目录用于"热"更新。
iOS: IL2CPP + Metal;Bitcode(如果需要),App Thinning;重型资产中的按需资源。
PC/WebGL:单独的质量配置文件;帮派的CDN。
Unreal
带有Chunking的Pak文件,用于活动/季节的DLC钱卡;IoStore.
移动:关闭重型摄像头(完全动态的GI/昂贵的阴影),使用移动渲染器。
修补程序:delta-chunk level修补程序,数据版本与代码分开。
10)分析,A/B,远程配置
事件:获得第一奖项的时间,奖金输入的频率,场景跳过百分比,FPS/内存,进度深度,完成任务的比例,"干燥"会议。
A/B:过场动画的持续时间,FX密度,"灯塔"奖励值,任务复杂性,UI布局。
Remote Config/Ficheflags:即时编辑而无需发布。
隐私:GDPR/CCPA的强化指标;禁用个人标识符。
11)客户安全
TLS定位,证书验证,继电器保护。
Configs的哈希签名;反拭子(溷淆/完整性检查)。
所有奖项/进步的服务器验证;"盲人"客户从事具有经济意义的业务。
机器人检测:时间变异,会话异常,重复模式启发式。
12)团队管道
用于重型刺客的Git+LFS/Perforce(UE);基于trunk,带有短鞭子。
CI/CD:检查装配/尺寸/配置文件;自动生成Addressables/ChunkId。
发布前的大门度量标准是:FPS 60 ± 5,参考设备上没有缩写,内存稳定性,加载时间<5-8 c(第一次输入),大葡萄酒场景≤ 2。5 c.
13)数字地标(开始)
Draw calls mobile:≤120;≤300台式机。
纹理:关键背景最多2k,其余≤1k;总是溷蛋。
音频:获奖主题≤3 c;支架(ambient/SFX/UI/fanfare), ducking -6……-9 dB。
下载:冷启动≤8 c,重新启动≤3 c;懒惰的FX/奖金。
奖金场景:介绍0。8–1.5 c,奖品的最终框架≤1 c,即时回报。
14)实施支票
1.提交目标:平台、FPS、客户规模、预算。
2.定义服务器责任体系结构和边界(RNG/经济性/进度)。
3.根据视力/时间/能力标准选择引擎。
4.设置内容管线(Addressables | Pak/Chunks), Remote Config。 |
---|---|
5.以可读的赢家和可访问性实现UI/UX。 | |
6.按计时/冲击/设置模式组装VFX/相机,限制持续时间。 | |
7.引入遥测,A/B和性能差异。 | |
8.针对目标设备(LOD、压缩、战斗)进行优化。 | |
9.关闭安全性(pinning,反拭子,服务器验证)。 | |
10.进行设备测试,预算小说,发布门。 | |
11.无需更新应用程序即可配置修补程序/季节性内容。 | |
12.根据数据对经济和视觉密度进行定期重组的计划。 |
结论:Unity和Unreal通过提供高视觉效果和方便的管线,加快了街机插槽的生产。保持服务器权威的数学,建立可管理的视野(相机/FX/音频)并保持性能预算至关重要。通过这种方法,该插槽在RTP上保持诚实,在设备上快速并且在发球中壮观-正好是"拱廊插槽:不仅仅是旋转"部分所期望的。