Skip to content

allyourcodebase/box2d

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Box2D

This is the Box2D physics engine packaged for the Zig build system.

Usage

Add the dependency to your build.zig.zon:

zig fetch --save git+https://github.com/allyourcodebase/box2d#main

Use the dependency in your build.zig:

pub fn build(b: *std.Build) void {
    const target = b.standardTargetOptions(.{});
    const optimize = b.standardOptimizeOption(.{});

    const box2d = b.dependency("box2d", .{
        .target = target,
        .optimize = optimize,
    });

    const exe = b.addExecutable(.{
        // ...
    });
    exe.addIncludePath(box2d.path("."));
    exe.linkLibrary(box2d.artifact("box2d"));

    // ...
}

Import and use the C library:

const c = @cImport({
    @cInclude("box2d/box2d.h");
});

pub fn main() void {
    const world_def = c.b2DefaultWorldDef();
    const world = c.b2CreateWorld(&world_def);
    // ...
}

Examples

This build script can also run the official examples. From this repository run:

zig build -Dtest run

About

Box2D packaged for the Zig build system

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages