diff --git a/content/news/021/index.md b/content/news/021/index.md index 2e921edbf..1080f69d6 100644 --- a/content/news/021/index.md +++ b/content/news/021/index.md @@ -466,6 +466,43 @@ the recent engine updates: [rg3d_twitter]: https://twitter.com/DmitryNStepanov [rg3d_wasm_demo]: https://rg3d.rs/assets/webexample/index.html +### [Arcana] + +![arcana](tanks.gif) +_A demo Arcana game_ + +[Arcana] is a new game engine built with focus on ease of use +without compromising on level of control. +The engine is aimed to support a wide variety of games, +from pixel-art to fully ray-traced, +from single-player puzzles to online strategies. + +It is at a very early stage, not all necessary subsystems are done +and code is in flux. + +The demo shown above was coded in a single evening, +together with sprite sheet loading and sprite animations +which will be integrated into the engine later. + +Default 2D renderer renders sprites with auto-batching, +so all sprites are rendered in single instanced draw call, +allowing rendering millions of sprites in one frame. + +Rendering is done with [`sierra`] - Vulkan-like graphics API with +batteries included. + +Arcana uses [`hecs`] as ECS and rolls its own simplistic `System` trait +to define and run systems, once per frame or with fixed steps. + +[`rapier`] physics is integrated for 2D cases, but system is kept opt-in. + +Stay tuned for updates. + +[Arcana]: https://github.com/zakarumych/arcana +[`sierra`]: https://github.com/zakarumych/sierra +[`hecs`]: https://crates.io/crates/hecs +[`rapier`]: https://rapier.rs/docs/ + ## Learning Material Updates ### [Rust LA Meetup: Happiness in Rust][rust-la] diff --git a/content/news/021/tanks.gif b/content/news/021/tanks.gif new file mode 100644 index 000000000..aaebe4138 Binary files /dev/null and b/content/news/021/tanks.gif differ