0465-Bomb-增加背景音乐
环境
- Time 2024-03-23
- Zig 0.12.0-dev.3152+90c1a2c41
- WSL-Ubuntu 22.04.3 LTS
- raylib 5.0
前言
说明
参考资料:
- 《游戏开发:世嘉新人培训教材》
- 图片素材:https://www.ituring.com.cn/book/1742
目标
增加背景音乐。
Sound
pub const Sound = struct {
sound: ray.Sound,
pub fn init(path: [:0]const u8) Sound {
return .{ .sound = ray.LoadSound(path) };
}
pub fn play(self: Sound) void {
ray.PlaySound(self.sound);
}
pub fn deinit(self: Sound) void {
ray.UnloadSound(self.sound);
}
};
stage.zig
const std = @import("std");
const engine = @import("engine.zig");
const map = @import("map.zig");
const state = @import("state.zig");
pub fn main() void {
var gpa = std.heap.GeneralPurposeAllocator(.{}){};
defer _ = gpa.deinit();
engine.init(gpa.allocator(), 640, 480, "炸弹人");
defer engine.deinit();
const sound = engine.Sound.init("data/sound/charara.wav");
defer sound.deinit();
sound.play();
map.init();
defer map.deinit();
var mainState = state.State.init();
defer mainState.deinit();
while (engine.shouldContinue()) {
mainState.update();
mainState.draw();
}
}
效果
总结
增加了背景音乐。到这里这本书就告一段落了,后面的 3D 模块,等需要的时候再看。

浙公网安备 33010602011771号