Skip to content
← Back to Blog tutorials

Cut your demo's polygon count before Next Fest without Blender

By BitSoul3D5 min read50 views

Your demo runs fine with three test props and drops to 20fps the moment you populate a real scene. That's a polygon count problem, not a shader problem, and you don't need to open Blender to fix it two weeks out from a deadline. Drop the GLB into a browser-based decimator, set a target triangle count, and export — the mesh comes back lighter with UVs, materials and shape intact in under a minute per asset. BitSoul's 3D Studio does this for free at bitsoulhosting.com/marketplace/workspace, running the reduction on your own GPU instead of uploading anything.

Cut your demo's polygon count before Next Fest without Blender

What Next Fest's October deadlines mean for your build

Steam Next Fest runs October 19–26, 2026. Registration closed August 31, but the dates that matter for a polycount pass are September 21 — Valve's recommended date to have your demo build and store page finished if you want press-preview coverage — and October 5, the hard deadline for all required items. Miss the performance pass before then and you're patching a live demo mid-event instead of before it.

Marketplace props are the usual culprit, and the numbers explain why. Sentry Orb, a hero-detail sci-fi prop on BitSoul, ships at 1,964,163 triangles and 56MB — correct for a cinematic close-up, wrong for a background turret in a corridor. Populate a level with a dozen assets at that density before a single character or particle system exists and you've spent 15–20 million triangles on set dressing alone. That's not a defect in the source file — high-poly is the right default for a download when the seller doesn't know if you need a hero shot or a background prop. The reduction is supposed to happen downstream, per scene, and triangle budgets aren't only an AI-mesh problem; see Meshy 7 fixes geometry alignment, not your triangle budget for the same fight on generated meshes.

Reduce polygon count with 3D Studio's Poly Reduce tool

Reduce polygon count with 3D Studio's Poly Reduce tool — illustrated

Open bitsoulhosting.com/marketplace/workspace and drag in any GLB — a purchased BitSoul model or your own export. The Inspect panel shows live tris, vertex count, UV layout and material count before you touch anything, so you're working from a real starting number instead of a guess. Switch to the Poly Reduce tool, set a target triangle count or a reduction ratio, and it runs a quadric-error decimation pass on your own GPU — nothing uploads to a server, so a 56MB file isn't sitting in someone else's queue. A before/after preview lets you spin the model at the new count before committing; export drops a new GLB with the same materials and UV mapping carried by fewer triangles.

The target depends on what the asset does in your scene, not on what looked impressive in the store listing:

Asset role in your demoTypical source trisTarget after Poly ReduceWhy
Hero prop, close camera500k–2M (Sentry Orb ships at 1.96M)150k–300kSilhouette and normal-map detail both need to survive
Midground prop100k–500k20k–50kPlayers glance past it, they don't inspect it
Background set dressing50k–200k5k–15kScreen space per object is negligible past 10m
Inventory/UI renderanySeparate low-LOD mesh or a baked spriteThe full mesh is wasted GPU time off-screen

A free account's two monthly downloads cover this kind of evaluation pass fine; once you're pulling a full prop list for a demo you're actually shipping, that's commercial use and needs a paid membership — see pricing.

Clearing an entire downloads folder instead of one asset at a time is faster scripted than clicked through by hand:

# Pull a category from the public API, flag anything over a 200k-tri threshold
curl -s "https://bitsoulhosting.com/marketplace/api/models?category=vehicles&limit=50" \
  | jq -r '.models[] | select(.poly_count > 200000) |
      "\(.name)\t\(.poly_count) tris\t\(.file_size/1048576|floor)MB"'

That surfaces exactly which files are worth a decimation pass and which are already light enough to skip.

Where decimation breaks: rigs, UVs, and re-exports

Where decimation breaks: rigs, UVs, and re-exports — illustrated

Poly Reduce, like every browser decimator built on this approach, targets static meshes. Run it against anything rigged — a character, a creature, a mechanical joint — and skin weights don't survive a naive collapse; joints that deformed cleanly start pinching at the new vertex count. For rigged assets, use your engine's own LOD generation instead: Unity's LOD Group with automatic mesh simplification, Godot's import-time LOD settings, or UE5's Nanite/auto-LOD pipeline all operate after the skeleton is bound, so skinning survives. Unity in particular has a history of losing LOD data on the way out — see why Unity's glTF export discards your LOD levels if your LOD chain vanishes after export.

Push a static mesh past roughly 90% reduction and UV seams start showing as visible stretching, especially on tiling materials — back off the ratio a step before assuming the texture itself is broken. If your pipeline leans on Draco compression to keep GLB sizes down for a web or WebGPU build, recheck it after decimation: fewer triangles doesn't guarantee the exporter reapplies compression, and not every engine reads a Draco-compressed file the same way — the breakdown is in which engines actually load Draco-compressed GLB files.

The last check costs one menu command in Unity, because per-asset budgets drift once fifteen props are combined and none of them individually looks heavy:

// Editor menu: sums triangles across every MeshFilter in the open scene
[MenuItem("Tools/Log Scene Tri Count")]
static void LogTriCount() {
    long tris = 0;
    foreach (var mf in Object.FindObjectsOfType<MeshFilter>())
        tris += mf.sharedMesh ? mf.sharedMesh.triangles.Length / 3 : 0;
    Debug.Log($"Scene tris: {tris:N0}");
}

Run it after every prop swap, not just once before you zip the build — that's the number players' GPUs actually see on October 19.


This post is part of the Ultimate Guide to Free 3D Game Assets — BitSoul's complete reference for formats, texturing, rigging, optimization, and engine integration.

Tags: optimization workflow game-assets 3d-models tutorials indie-game-dev

Skip the modeling — download it instead

A free BitSoul3D account gets you 2 GLB downloads every month for personal use plus 25 one-time AI Engine credits, no card required. PBR-textured GLB downloads with a full 3D preview before you buy, for Unreal, Unity, Godot or Blender — OBJ and 3D-printable STL come with any purchase or paid plan.

Browse 1,051 models — from $4.99 or start free (2 downloads a month)