下载 App
荒野猎手 开发者日志(三)
10/1114 浏览
一、双端按键设计 手机端(主平台) 操作 触屏方式 位置 移动 左半屏虚拟摇杆 左下角,安全区避让 视角 右半屏滑动 右侧 寻找(望远镜) "寻找"按钮 右下角 举枪/开镜 "瞄准"按钮 右侧 开火 "开火"按钮 右侧 换弹 "换弹"按钮 右侧 退出寻找 "退出"按钮 右下角 查看线索 靠近后自动出现"检查" 线索上方 撤离猎场 "撤离"按钮 左上角 暂停 暂停按钮 左上角 装备快捷栏(5 槽位) 图标点击 右下角上方 切换弹种 按钮切换 右下角上方 辅助功能:陀螺仪瞄准(可选)、自动瞄准辅助(开则降分)、触觉反馈(开火震动)、左手模式(摇杆和按钮左右互换)、安全区适配(刘海/圆角避让)。
电脑端(调试与开发用) 按键 功能 WASD / 方向键 移动 鼠标移动 视角转动 Tab 切换鼠标模式(相对/绝对) 鼠标左键 点击地图 / 开火(取决于当前模式) E 检查线索 / 收获尸体 F 开火 R 换弹 Q 切换弹种(高穿透 / 高肉伤) G 撤离猎场 ESC 退出射击模式 设计说明:手机端是主交互,所有按钮放在拇指可及区域(右侧操作区+左下摇杆),左上角放低频功能(暂停、撤离)。电脑端用键鼠映射同一套状态机,方便开发调试;鼠标模式切换(Tab)是为了兼顾地图点击(绝对模式)和第一人称瞄准(相对模式)两种场景。
左手模式:镜像翻转,摇杆放右侧,操作按钮放左侧,照顾左利手玩家。

二、音频制作方法 语音合成(TTS) 使用百度语音合成(TTS)能力,支持 10 万字以内的文本转语音。

可调参数:
发音人:多种音色可选 语速:控制朗读速度 音调:调整音高 音量:输出音量大小 输出格式:MP3、WAV 等 适用场景:
游戏内 NPC 对话配音 教程引导语音 环境广播提示 音效制作建议 音效类型 制作方式 说明 枪声 实录 + 后期处理 不同枪械录制真实枪声,按等级分层 环境音 实地采样 / 素材库 森林、雪地、风声、鸟鸣 动物叫声 生物声学录制 按物种分类,区分警觉/逃跑/死亡状态 UI 反馈 合成器生成 短促清脆,不干扰主音效 背景音乐 原创作曲 / 授权音乐 按猎场场景定制氛围音乐 音频技术规范 格式:优先 MP3(压缩率高),关键音效用 WAV(无压缩损失) 采样率:44.1kHz 或 48kHz 位深:16bit 声道:背景音乐立体声,音效单声道便于空间定位 音量标准:背景音乐 -20dB ~ -15dB,音效 -10dB ~ -6dB 三、空间音频衰减计算公式
- 距离衰减(反比模型,最常用)
Volume = BaseVolume / (1 + k × Distance)
或
Volume = BaseVolume × (ReferenceDistance / (ReferenceDistance + Distance)) BaseVolume:音源原始音量(0~1) Distance:听众与音源的距离(米) k:衰减系数(通常 0.01~0.05,按场景调整) ReferenceDistance:参考距离,此距离内音量不衰减 示例:枪声 BaseVolume = 1.0,ReferenceDistance = 10m,Distance = 50m
Volume = 1.0 × (10 / (10 + 50)) = 0.167 50 米处音量衰减为原始的 16.7%。
- 平方反比定律(物理真实)
Volume = BaseVolume × (ReferenceDistance / max(Distance, ReferenceDistance))² 更符合真实物理,声音强度与距离平方成反比 max() 防止除零,保证最小距离内不衰减 示例:同上参数
Volume = 1.0 × (10 / 50)² = 0.04 50 米处仅为原始音量的 4%,衰减更剧烈。
- 对数衰减(适合环境音)
Volume = BaseVolume - k × log10(Distance / ReferenceDistance + 1) Volume = clamp(Volume, 0, BaseVolume) k:衰减斜率(通常 0.2~0.5) 适合远距离仍要有微弱感知的环境音(风声、远处水流) 示例:k = 0.3,Distance = 200m
Volume = 1.0 - 0.3 × log10(200/10 + 1) = 1.0 - 0.3 × 1.32 = 0.604 200 米处仍有原始音量的 60%,适合持续环境音。
- 方向衰减(3D 空间定位)
Pan = cos(θ) Volume_L = BaseVolume × (1 - Pan) / 2 Volume_R = BaseVolume × (1 + Pan) / 2 θ:音源相对听众水平面的角度(0° 正前方,+90° 右侧,-90° 左侧) 配合距离衰减叠加使用 示例:音源在右侧 30°
Pan = cos(30°) = 0.866 Volume_L = 1.0 × (1 - 0.866) / 2 = 0.067 Volume_R = 1.0 × (1 + 0.866) / 2 = 0.933 右耳音量是左耳的 14 倍,产生明显方向感。
- 综合公式(《荒野猎手》实际使用)
// 步骤1:距离衰减(平方反比) float distAttenuation = pow(ReferenceDistance / max(distance, ReferenceDistance), 2.0);
// 步骤2:方向平移(3D定位) float pan = cos(angle); float left = (1.0 - pan) * 0.5; float right = (1.0 + pan) * 0.5;
// 步骤3:地形遮挡衰减 float occlusion = terrainOcclusion ? 0.3 : 1.0; // 山体/建筑遮挡后只剩30%
// 步骤4:最终输出 float finalVolume = BaseVolume * distAttenuation * occlusion; outputLeft = finalVolume * left; outputRight = finalVolume * right; 按声音类型选用模型 声音类型 距离模型 参考距离 衰减系数 枪声 平方反比 10m 剧烈 动物叫声 反比 30m 中等 脚步声 反比 5m 中等 环境音(风声) 对数 50m 平缓 UI 音效 无衰减 — 全局一致 关键参数建议 ReferenceDistance:枪声 10m、动物 30m、脚步 5m 最大可听距离:枪声 500m、动物 200m、脚步 50m 地形遮挡系数:山体/岩石 0.3、树木 0.6、开阔地 1.0#TapTap聚光灯游戏创作挑战 #聚光灯gamejam开发者日志












