If you haven't yet, follow us on X (Twitter)Mastodon, or Bluesky to know when we post new articles, and join our Reddit or Subscribe to us on YouTube to check out our content and interact with our awesome community. Thank you for supporting us!

I have known about Ari Buktu and the Anytime Elevator for awhile, but playing it during the Next Fest stunned me. The game is gorgeous and shines on the Steam Deck screen, but the best part is just how well it runs on the Steam Deck. The default settings kept the game looking great and at a solid 60 FPS. With this being a demo, I was very impressed given the 2.5D nature of the game and how great it's looking.

AriBuktuandtheAnytimeElevatorStock1

With how well it runs, I was curious what the team has done to get it running so well on the Steam Deck. I reached out to the developer Adventure Works Twitter/X account and asked about what they did to optimize it so well for the limited-power device, and I got some of the most detailed answers I have received when asking about optimization for the Deck.

In my conversation, I spoke to Jeffrey Ashbrook, the founder of Adventure Works. He pointed out seven specific parts of their development that have helped it run so well on the Steam Deck, and each of them helps play a part in how well the game is running:

Baked lighting

Since the game is very linear and each level takes place at the set time of day, the majority of our lighting is computed ahead of time. This not only allows for much more performant lighting but also results in high-quality global illumination and shadows even at a distance, as well as allowing artists to place many shadow-casting static lights to “paint” the lighting into the scene. We’re also cautious about dynamic lights. All of them have max drawing distance, so they don’t render unnecessary when not visible, and the directional light is fully disabled in interiors, allowing more headroom for dynamic spotlights.

Manual level loading

We’ve also built a level loading and preloading system over which we have full control. This allows us to keep only the necessary parts of the levels loaded and preload future levels when appropriate, e.g., during cutscenes.

“On rails” camera

At first glance, this doesn’t sound like an optimization, but full control of the camera's view allows us to focus the detail where it’s actually visible. We can place more objects with a higher level of detail near the camera and give them higher lightmap resolution, while far-away objects don’t need to be nearly as detailed.

Material optimizations

The majority of the game objects use a very simple shared material setup. All non-metallic objects use fully rough material with only color and normal textures, which gives the game a characteristic matte look. We also utilize other tricks, like dithered blending of different UV scales at a distance or variable POM.

Tessellation

Even though we’re using Unreal Engine 5, we’ve decided not to use two of the headline features – Lumen and Nanite. After evaluation, we’ve come to the conclusion that if we want to get the best performance and player experience in this game, we should stick to more traditional techniques. Our art style and static time of day didn’t benefit much from ultra-high polygon count or dynamic global illumination. Instead, we’ve decided to rely on older techniques such as LOD and baked lighting, as well as porting the tessellation from UE4, to get dynamic deformation for snow and other elements, at a much lower cost.

Instanced meshes

Our levels contain many individual objects. They’re built from modular pieces with a lot of additional decoration meshes. To make rendering more efficient, we use packed-level actors, which automatically group meshes into instanced components.

Good default settings

We’ve hand-picked the default settings for the Steam Deck that give players the best experience at high enough frame rates while not compromising too much on visuals. Of course, we still allow players to tinker and change the settings to their liking, but we think it’s very important to have good defaults for more casual players.

Jeffrey Ashbrook - Founder of Adventure Works

On top of these, Jeff went into how the team faced an issue with Ari Buktu not launching on SteamOS's game mode. There was a Vulkan resource load issue that would be caused by SteamOs not properly handling how Unreal Engine 5, the engine on which the game is built, using multiple windows. To fix this, they had to automatically inject the environment variable "ENABLE_GAMESCOPE_WSI=0" to make sure it ran on SteamOS.

AriBuktuandtheAnytimeElevatorStock2

The game was running on the beta branch of SteamOS before, while the stable version was having issues. This was before the SteamOS 3.6.19 update, so this issue may not be a problem anymore.

There is still some polishing going on before Ari Buktu releases, so the team may run into things to tweak and fix the game further. Even still, Adventure Works has clearly done a lot to make sure the game is very playable on the Steam Deck, and their hard work shows! The demo, which is just a slice of the incomplete game, already runs so well, and I am very confident that it will be essential on the Deck for all of our libraries.

AriBuktuandtheAnytimeElevatorStock3

Ari Buktu and the Anytime Elevator can be wishlisted on Steam ahead of its release and a demo is available now for you to try out for yourself. You can also check out our impressions of the demo, and why we think it will be a fantastic adventure that is worth being a part of.

If you enjoyed this article, check out the rest of the content on SteamDeckHQ! We have a wide variety of game reviews and news that will help your gaming experience. Whether you're looking for newstips and tutorialsgame settings and reviews, or just want to stay up-to-date on the latest trends, we've got you covered!

Noah Kupetsky
A lover of gaming since 4, Noah has grown up with a love and passion for the industry. From there, he started to travel a lot and develop a joy for handheld and PC gaming. When the Steam Deck released, it just all clicked.
Steam Profile