Status
SteamPeaks
ChartsSalesUpcomingPatchesEventsCalculator
New on SteamEvery app, DLC and depot the minute Steam creates itAppsEvery app on Steam, newest change firstPackagesSubs and bundles, and what each containsDepotsDepots, manifests and install sizesTagsSteam's user tags and the games under themDevelopers & publishersCompanies and their cataloguesTechnologiesEngines, SDKs and anti-cheat found in the filesChange historyEvery PICS changelist as it lands
SignalsNineteen readings of the whole catalogueCompareAny games side by sideRecordsAll-time peaks and the days they were setReportsWeekly and monthly write-upsAlerts & newsroomWatch a game, get told when it movesSteam statusIs Steam up, right nowWeb API explorerTry the endpoints in the browser
EventsSteam's own events and the sales calendarCalculatorWhat a Steam account is worth, and its pile of shame
/
Sign in
/
SteamPeaks
The ultimate resource for Steam data.
ExploreChartsSalesSales and festsUpcomingPatchesEventsRecordsTrendingSignals
DatabaseAppsPackagesDepotsTagsDevelopersTechnologiesChange history
ToolsCalculatorCompareSearchAlertsSteam statusAPI
SiteMethodologyFAQDiscordSupportSign in via Steam
Not affiliated with Valve or Steam. Game names and artwork belong to their owners. All times UTC.
PrivacyCookiesFair useStatus
Cowboy Life Simulator›Events›DEVLOG #17 – OPTIMIZATION
Community

DEVLOG #17 – OPTIMIZATION

Cowboy Life Simulator · published 15 months ago

All eventsPlayers around this dateRead on Steam

Howdy, partners!

Every game starts rough. At first, we’re focused on gameplay and visuals, not performance. It’s all prototypes, heavy assets, wild ideas… and suddenly, it’s running at 15 FPS. Yep, we’ve been there too. But now we’re on a mission to hit 60.

We optimize two big areas: CPU, meaning game logic, collisions, movement, AI, and GPU, so everything visual.

Optimization means finding smarter ways to do things and cutting what’s too heavy.

Farewell, Nanite

Early on, we were thrilled about Nanite, Unreal Engine 5’s fancy rendering tech that lets you use ultra-detailed models. But as our world filled up, problems piled on: stutters, memory spikes, performance dips... We ran a ton of tests and eventually accepted the truth: Nanite just wasn’t the right fit for our game.

So we cut it. Maybe we’ll get back to it in our next game? It worked wonders in Expedition 33, but our guess is that projects really need a Nanite-oriented approach from the get-go.

Nanite triangle visualisation of the main street in our town, Bravestand.
Anything black is not nanite – the colorful ones are. You can see how the triangles change when you get closer.

💡further reading: "What is Nanite?"

Draw Calls, LODs, and Distant Tree Drama

In an open world, managing draw calls is crucial. Each one is a command to the GPU to render something. We fight the flood with mesh instancing, meaning 100 identical trees are grouped together under a single draw call, and HLODs (Hierarchical Level of Detail), which simplify faraway stuff into chunky geometry.

We also rely heavily on LODs — simpler versions of objects used at a distance. Auto-generated ones usually work, but Unreal struggles with things like trees, often dropping entire branches. Our artist is currently handcrafting tree LODs to fix that.

Visualisation of the changing LODs of the train tracks and nature around them.

Visualisation of the density of the triangles in certain spots.

💡further reading: "Polycount, Optimization and Draw Calls"

Lighting on a Leash

We use fully dynamic lighting, which looks great but hits performance hard. Most games bake lighting (pre-render it), but we wanted a real-time sun, beautiful mornings, and picturesque sunsets.

To keep it manageable, we reduced light precision and added a graphics setting so players can choose how often the sun moves to best suit the might of their machines.

Visualisation of lighting of a scene, in this case the town of Bravestand from a different angle.
The orange blobs signify overlaps of light coming from different light sources, which is more costly performance-wise.

💡further reading: "Lighting the Environment"

CPU: Simpler Collisions, Smarter Code

First target? Collisions. And by collisions, we don’t mean just bumping into stuff – this concept includes overlaps and big trigger volumes: checking if animals are in their homes and if NPCs are at a certain location.

We simplified them to spheres, capsules, and boxes – as little complex shapes as possible. Most moving objects either have no real collision, or we fake it. Why? Because checking for hits and overlaps constantly drains CPU.

Visualisation of the collisions of different objects at the Saloon in town.
The bottles, for example, have spherical collisions.

💡further reading: "How to Optimize Collision Performance"

Data Loads and Animal AI

Our world runs on big databases for animals, plants, and buildings. And in the case of buildings, every single module is a separate entry, and some buildings have dozens of modules! Pulling data was slow, but our backend dev sprinkled some magic and sped things up — though it’s still a work in progress.

We’re also refining NPCs and animals, which are complex due to animation, AI, collisions, and skeletal meshes. For example, animals and characters have 5fps animations when you’re not looking. ;)

We keep tweaking their behavior logic to make them smarter and leaner.
To track what’s slowing us down, we use the Unreal Insights tool.

Our main investigation tool for diving deep into optimization issues – the Unreal Insights graph.

More from Cowboy Life Simulator

Other announcements

All events
Major update19 Aug 2026Update live: the bridge is open for everyone!Howdy, partners! The July update has left the unstable branch and is now live for everyone on the default branch. The bridge, the trappers' lands, and horses. All yours, no beta opt-in required. A big thank-you to everyone who rode ahead on the unstable branch these past weeks. Your reports are the reason this build is solid enough to open to the whole town. We spent the last three weeks fixing…Community24 Jul 2026Update incoming - rebuild the bridge!Howdy, partners! 🌉 The bridge You asked for this more than anything else: to rebuild the bridge. The one that's been sitting there since day one. And across, a brand new stretch of the map: the trappers' lands. There's a whole settlement out there to poke around, a missing trapper to track down, some Sly Fox chores, and a puzzle tucked away deep into the woods.. And you're not making that cros…Community13 Jun 2026ROADMAP!Howdy Partners - the New Roadmap is here! It took us a moment, but here it is! The Roadmap! We're heading back to our Wild West roots. Just two roadmap items this time, but both are big, beefy, and frankly some of the most exciting stuff we've ever built. We can't wait to show you what they are. If you've got questions, drop them in the comments. Thanks for hanging in there with us, partners. Y…