Skip to content

Commit

Permalink
Release Mach v0.3
Browse files Browse the repository at this point in the history
Signed-off-by: Stephen Gutekanst <[email protected]>
  • Loading branch information
emidoots committed Feb 3, 2024
1 parent 4ff15fb commit 756972f
Show file tree
Hide file tree
Showing 6 changed files with 10 additions and 58 deletions.
4 changes: 4 additions & 0 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,10 @@ jobs:
git checkout v0.2
hugo --minify
mv public final/v0.2
# v0.3
git checkout v0.3
hugo --minify
mv public final/v0.3
# Finish up
mv final public
Expand Down
4 changes: 2 additions & 2 deletions config.toml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ baseURL = 'https://machengine.org/'
branch = 'main'

# Other branch-agnostic site params below
#alert = '**Mach v0.2 has been released!** For all the details check out [the announcement](https://devlog.hexops.com/2023/mach-v0.2-released/)'
alert = '**Mach now _nominates Zig versions for use!_** For details check out [the docs](/about/nominated-zig)'
alert = '**Mach v0.3 has been released!** For all the details check out [the announcement](https://devlog.hexops.com/2023/mach-v0.2-released/)'
#alert = '**Mach now _nominates Zig versions for use!_** For details check out [the docs](/about/nominated-zig)'
debug_opengraph_images = false

[markup.goldmark.renderer]
Expand Down
2 changes: 1 addition & 1 deletion content/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -283,7 +283,7 @@ a.p-community-icon {
<h1 style="font-size: 600%; padding: 0; margin: 0;">Mach</h1>
<h2 style="font-size: 150%; padding: 0; margin-top: -1rem;">Zig game engine & graphics toolkit</h2>
<p style="font-size: 100%; padding: 0; margin: 0; margin-top: 2rem; max-width: 36rem;">For building high-performance, truly cross-platform, robust & modular games, visualizations, and desktop/mobile GUI apps.</p>
<p><a href="https://devlog.hexops.com/2023/mach-v0.2-released/">What's new in v0.2?</a></p>
<p><a href="https://devlog.hexops.com/2023/mach-v0.3-released/">What's new in v0.3?</a></p>
</div>
<div>
<a href="https://media.machengine.org/core/example/deferred-rendering.mp4">
Expand Down
54 changes: 1 addition & 53 deletions content/engine/roadmap.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,56 +11,4 @@ rss_ignore: true

There is a _long_ road ahead: it's going to require a lot of work and time to get to where we are going.

We've been working on Mach for ~2 years now, primarily building out the Zig gamedev ecosystem, building [foundational packages](../../pkg) that we needed for [Mach core](../../core), and as a result we've really _just_ broken ground on the engine side of things.

Development is fairly linear, but developments _that you see_ aren't linear, we were focused on more foundational things before - but _today_ we're actively focused on higher-level APIs which will have more profound impacts for end-users.

Starting with Mach v0.3, we release a new version once every 6 months.

## v0.2 (finished)

* [x] Mach core is an actual alternative to the traditional GLFW+OpenGL or SDL combo
* Codebase is strictly separated and usable separate from Mach _engine_.
* Examples are decent, and a basic 2D sprite rendering example exists.
* We feel confident about the internals, feel good about the API design overall, etc.
* Multi-threaded rendering & input handling is resolved.
* [x] Build out the packages/bindings we need for Mach engine
* [x] mach-sysaudio: pure-Zig low-level cross-platform audio input/output
* [x] mach-flac: lossless audio decoding
* [x] mach-opus: lossy audio decoding support
* [x] mach-gamemode: Linux gamemode optimization client (rewrite in Zig)
* [x] mach-gpu: add infrastructure for automated updates & make it the best WebGPU interface for Zig
* [x] Adopt the Zig self-hosted compiler
* [x] Fully migrate to the experimental Zig package manager (eliminate all submodules)
* [x] Begin prototyping engine design
* [x] mach-ecs: prototyping & direction set for the future
* [x] Prototype gfx2d sprite rendering ECS module / example
* [x] Prototype gfx2d text rendering ECS module / example
* [x] New website that can hold documentation for the project going forward
* [x] Wrench automation infrastructure for managing Zig updates and other tedious time-consuming issues

## v0.3 (in progress)

- [ ] Mach engine becomes viable for basic 2D games
- [ ] Basic text rendering ECS module
- [ ] Basic sprite rendering ECS module
- [ ] Basic audio rendering ECS module
- [ ] ECS implementation begins to mature (extremely immature today)
- [ ] Basic 2D game demo
- [ ] Basic custom GUI ECS module
- [ ] Browser support
- [ ] mach-sysjs: rewritten for code generation approach ('bindgen-like')

## Future

- [ ] Mach engine becomes viable for basic 3D games
- [ ] Basic 3D model loading
- [ ] Custom GUI begins to mature
- [ ] Initial editor development support
- [ ] Mobile support
- [ ] sysgpu becomes our successor to WebGPU/Dawn and becomes the default.
- [ ] Mature Vulkan backend
- [ ] Mature Direct3D backend
- [ ] Mature Metal backend
- [ ] Mature shading language solution
- [ ] Physics
You can find the roadmap [here](https://github.com/orgs/hexops/projects/7)
2 changes: 1 addition & 1 deletion content/pkg/mach-sysgpu.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ This is an **experimental** project according to [our stability guarantees](../.

In [Mach v0.2 we announced an experiment](https://devlog.hexops.com/2023/mach-v0.2-released/#dusk-experimental-pure-zig-webgpu-implementation) to write a WebGPU implementation in Zig.

Since then, the project grew to have the goal of [superseding WebGPU](https://github.com/hexops/mach/issues/1055) for native applications. Although the API is still greatly inspired by WebGPU, and cozy to those familiar with it, sysgpu stands on its own with a goal of being a descendant/successor of WebGPU native.
In [Mach v0.3 we talked about](https://devlog.hexops.com/2024/mach-v0.3-released/#sysgpu) how the project has since grown to have the goal of [superseding WebGPU](https://github.com/hexops/mach/issues/1055) for native applications. Although the API is still greatly inspired by WebGPU, and cozy to those familiar with it, sysgpu stands on its own today - with a goal of being a descendant/successor of WebGPU native.

## Goals

Expand Down
2 changes: 1 addition & 1 deletion themes/minimal/layouts/partials/header.html
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,6 @@
</div>
{{ else }}
<div class="alert">
<span><strong>You are viewing an old version of Mach (v0.2)</strong> see the <a href="https://machengine.org">latest version here.</a></span>
<span><strong>You are viewing an old version of Mach ({{$.Site.Params.branch}})</strong> see the <a href="https://machengine.org">latest version here.</a></span>
</div>
{{ end }}

0 comments on commit 756972f

Please sign in to comment.