2021-11-24 10:41:04 -07:00

46 lines
1.1 KiB
Zig

const std = @import("std");
const minifb = @import("minifb");
const Width = 800;
const Height = 600;
fn grey(value: u8) u32 {
return minifb.rgb(value, value, value);
}
pub fn main() anyerror!void {
std.log.info("All your codebase are belong to us.", .{});
var win = minifb.Window.open("Hello minifb-zig", Width, Height) catch unreachable;
var color: u32 = grey(0);
const deltaColor = grey(1);
var increasing = true;
var rawBuffer: [Width*Height]u32 = undefined;
const buffer = rawBuffer[0..rawBuffer.len];
std.mem.set(u32, buffer, color);
while (win.waitSync()) {
if (increasing) {
if (color < grey(255)) {
color += deltaColor;
} else {
increasing = false;
}
} else {
if (color > grey(0)) {
color -= deltaColor;
} else {
increasing = true;
}
}
std.mem.set(u32, buffer, color);
var i: u32 = 0;
while (i < Width) {
buffer[i] = minifb.rgb(255,0,0);
i += 1;
}
_ = win.update(buffer) catch unreachable;
}
}