Amethyst 0.6 has been released!

News from Oct 18, 2017Jan 06 2018

Happy New Year! We’re happy to announce that we’ve released Amethyst 0.6.0! to!

There are 106 pull requests in this release. If you want to see for yourself here’s a link!


  • Amethyst is considering participating in Google’s Summer of Code, but we need more mentors! If you’d like to volunteer please let us know on #412.

  • We’ve determined we’ll be moving the blog to an “as-needed” basis. So our updates are going to be irregular. We’re never completely sure when we’ll be ready to write a new post, so we’ve stopped trying to commit to a timetable.

What’s cooking on develop?

Notable additions

A lot of work has happened since the 0.5 release, so only major feature PRs will be in this list. There are many other heroes who worked on this release that we don’t have room to list here. Ordered by PR number descending:

  • #489 by @Xaeroxe: UI text input! Amethyst can now receive typed text, including copy and paste. One known issue with this is that if the text is longer than the field the text won’t render properly. We’ll get this fixed soon!

  • #480 by @Rhuagh: Removed the Engine structure and replaced its usage with the World structure. This changed a number of important function signatures so watch out for it when upgrading to 0.6!

  • #475 by @Rhuagh: Added spherical interpolation to animation. This makes our new animation system more robust!

  • #462 by @Xaeroxe: Use and expose cgmath! Game dev benefits from consistently used and powerful math types, so throughout the engine we now use and expose cgmath.

  • #453 by @Rhuagh: Added the animation system. You can now animate the various properties of LocalTransform!

  • #447 by @minecrawler: Significantly improved the movement options available with our LocalTransform structure. Thanks!

  • #445 by @torkleyy: Added asset hot reloading! Now with this turned on any changes you make to art assets will be reflected in the game in real-time!

  • #441 by @Xaeroxe: Added a UI framework! You can now display images and text in your game.

  • #440 by @Rhuagh: The camera is now a component rather than a resource, hooray!

  • #435 by @Rhuagh: You can now load game scenes from GLTF files. Thanks Rhuagh!

  • #411 by @Xaeroxe: Our renderer now supports BlendTargets. This means you can render things with transparency! (The built in passes don’t do this yet. However the UI pass does use this.)

  • #403 by @Aceeri: Transform system rewrite, making the system simpler and easier to understand.

  • #385 by @Xaeroxe: Refactor input to be event oriented. This fixes the problems that existed with using input with the fixed_update cycle.

  • #317 by @omni-viral: Refactor the rendering pipeline to use specs data. A truly heroic effort by omni-viral. This has made renderer passes much faster and easier to write!

Work in progress

  • 2D texture animation is in progress in #505 by @Xaeroxe. This PR will make 2D game development with Amethyst much easier!

  • A rewrite of the renderer in #463 to use the upcoming gfx hal is going to allow our renderer to support more backends, and generally be easier to work with! Thanks @omni-viral!

  • @torkleyy is currently working on adding logging support to Amethyst in #513. This will make execution paths easier to debug for us if we get your logs!

  • @futurepaul is writing chapter 3 of our Pong Tutorial in #507. You can also thank him for writing our first two re-written chapters in the book!

Breaking changes

There have been so many breaking changes since the 0.5 release that any projects using 0.5 will likely need to be rewritten in several ways. We apologize for the long delay we’ve had between releases, and we’re looking to improve this.

Calls for participation

While we don’t have any specific calls for participation this post please never hesitate to send us a PR if you’ve got something you want to contribute! We’re always happy to have more contributors!

If you have any suggestions or ideas for the blog, feel free to voice them on GitHub or the Gitter chat.