Skip to content

Releases: NightHawkHSI/UniView

UniView 2.3.1

Choose a tag to compare

@NightHawkHSI NightHawkHSI released this 27 Sep 09:10

Fixes

  • Font previews in Source, Source 2 and Unreal games: .ttf/.otf fonts now show their sample sheet instead of an error (they only worked in Unity games before).
  • Your game list and settings are safer: projects.json and settings.json are saved in one step, so a crash or full disk can't leave them half-written. If one can't be read, UniView keeps a copy as projects.json.bad / settings.json.bad instead of starting over and overwriting it.
  • A bad value in settings.json now only resets that one setting (and says so in the log) instead of being ignored silently.
  • More problems are written to viewer.log instead of being swallowed (textures that fail during OBJ export, Blender lookup, etc.).

For plugin authors

  • The plugin API in engines/sdk.py is fully type-annotated, with named shapes for the dicts plugins return (GameInfo, AssetStats, PluginOption, Rig, ...). Keep the template's type hints and your editor, or mypy, flags mistakes like a misspelled stats key. See Type checking in PLUGINS.md.
  • New optional GameSession.font(asset). By default it renders raw(), so returning the font file's bytes from raw() is enough.

Under the hood

  • The app's code moved from one 4,800-line file into a uniview/ package (unity_viewer.py still starts it). No change in behavior.
  • Automated tests for GLB export, skeleton/animation math, settings and plugin loading, run on every build.

Windows: download UniView-v2.3.1-win64.zip, unzip, run UniView.exe. No Python needed.

🤖 Generated with Claude Code

UniView 2.3.0

Choose a tag to compare

@NightHawkHSI NightHawkHSI released this 27 Sep 04:43

New

  • Humanoid animations (Unity): humanoid (muscle) clips now play on any humanoid character, using each character's Avatar the way Unity does. Most character animations in games like Valheim now play.
  • Rigged, animated GLB export: skinned models save to GLB with their skeleton and skin weights. Save animated GLB... on an animation adds the clip, so an animated character opens in Blender.
  • Fly camera: scenes, maps and terrains open in a game-style camera. WASD to move, Q/E down/up, drag to look, Shift for speed, a speed slider (and the mouse wheel), double-click to jump to a spot. Walls stay drawn up close, so you can go inside buildings. Press F to switch.
  • Source 2 data: compiled resources are readable: game data (.vdata, e.g. Deadlock hero stats), particles, materials, sound events, animation graphs, UI layouts, styles and scripts. .vsvg icons show as images.
  • More file types: Unreal .locres localization (all of a game's text, every language), SVG/ICO/CUR/PSD images, subtitles and more text formats in every engine.
  • Unity scripts: data assets without their own field layout borrow the one stored in the game's bundles (fixes localization tables); when fields can't be decoded, their readable text is listed.

Fixes

  • Animations are offered on the right model first when several creatures share bone names.
  • Fonts and videos save with the right file type in the save dialog.

Windows: download UniView-v2.3.0-win64.zip, unzip, run UniView.exe. No Python needed.

🤖 Generated with Claude Code

UniView 2.2.0

Choose a tag to compare

@NightHawkHSI NightHawkHSI released this 26 Sep 21:39

New for Unity games

  • Terrains: terrain heightmaps show as 3D ground, painted with the terrain layers blended by their splat maps, with holes cut out. They're listed as Terrain: name and also appear inside their scenes (tested with Schedule I, Megabonk, Car Mechanic Simulator 2018).
  • Sprite sheets: a texture outlines every sprite cut from it (toggle Sprite outlines) and links to them.
  • 2D sprite animations: sprite animation clips play frame by frame with Play sprite animation.
  • IL2CPP data fully readable: item stats, enemies, skins and other data in IL2CPP games (e.g. Megabonk) now decode completely instead of showing only the common fields. References to other objects say what they point to, e.g. icon → Texture2D 'ItemBattery'.

Fixes

  • Big scenes that use static batching (e.g. Schedule I) no longer run out of memory.
  • The window stays responsive while UniView measures assets right after a game loads.

Download

Unzip UniView-v2.2.0-win64.zip and run UniView.exe. You don't need Python. (Windows 64-bit.)

🤖 Generated with Claude Code

UniView v2.1.0

Choose a tag to compare

@NightHawkHSI NightHawkHSI released this 26 Sep 20:36

UniView is now a game asset viewer for many engines, not just Unity. This is the first release since v1.2.0 and includes everything from 2.0 and 2.1.

More engines

Engine Games (examples) What you get
Unity Valheim, Muck, Among Us, Megabonk models, textures, sprites, sounds, text, plus everything new below
Source TF2, HL2, Portal, CS:S, L4D2, GMod .mdl models with materials, whole maps (.bsp) with terrain and props, .vtf textures, sounds
Source 2 CS2, Deadlock, Dota 2, HL: Alyx .vmdl_c models with materials, .vtex_c textures, .vsnd_c sounds
Unreal 4/5 Satisfactory, Dead as Disco, Headliners .pak and IoStore (.utoc/.ucas), encrypted games with their AES key, textures (incl. virtual textures), static and skeletal meshes with their materials
Fallout 1/2 Fallout, Fallout 2 .dat archives, sprites, splash images, sounds, text
Loose files any other game images, sounds, text, .obj/.x models, files inside .zip/.gro/.pk3

Find games in Steam now finds games of every supported engine, and the Projects page can group and filter games by engine.

New for Unity games

  • Scenes & prefabs in 3D: open a level or a prefab and see every object in place. Static batching, lower-detail LOD copies and hidden objects are handled.
  • Material colors: parts without a texture show their material's color (low-poly games no longer look grey), and colors are saved in GLB/OBJ exports. The info panel shows a color swatch and the material's values.
  • Animations: pick a clip, choose a model with a matching skeleton and press Play on model (play/pause and a time slider), or save the keyframes as JSON.
  • Scripts & data: item stats, loot tables, configs and other data assets are shown as readable text and save as JSON. Fields are read from the game's own code (Mono and IL2CPP).
  • Fonts: preview as a sample sheet, save as .ttf/.otf.
  • Videos: VideoClips play in a built-in video player.
  • Sounds: AudioClips play in the built-in player.
  • Games that use Addressables (StreamingAssets/aa) load, and models find textures stored in other bundles.

For every engine

  • Textures per part: models with several materials show each part with its own texture.
  • Sound player with play/pause, seek, volume and autoplay. Wwise (.wem), FMOD banks and many other game audio formats play after Help → Install sound decoder (vgmstream), a one-time download of the free vgmstream decoder.
  • Engine plugins: add support for another engine by dropping a .py file into the plugins folder. Start from plugins/_template.py; see PLUGINS.md.

Fixes

  • Big maps no longer freeze the window, and Find games in Steam no longer blocks it while it scans.
  • Models without a texture no longer lose their lighting after changing a view option.
  • Models now stand upright in the 3D view.

Download

Unzip UniView-v2.1.0-win64.zip and run UniView.exe. You don't need Python. (Windows 64-bit.)

🤖 Generated with Claude Code

UniView v1.2.0

Choose a tag to compare

@NightHawkHSI NightHawkHSI released this 24 Sep 05:36

Unity version on every game

Each game box now shows the Unity version the game was built with (e.g. 2019.4.40f1) and its scripting backend (Mono or IL2CPP). It's read straight from the game files, so you don't need to load the game first. It also shows in the window title and status bar while a game is open.

Catalog your game library

  • Tags: right-click a game → Tags... (e.g. lowpoly, fps, dead game). Tags show on each box.
  • Search bar on the Projects page: plain words, or filters like tag:lowpoly unity:2019 backend:il2cpp status:works.
  • Filter by tag, group by tag / Unity version / backend / compatibility / loaded, and sort by recent, name, Unity version or asset count. Your choices are remembered.

Models open much faster

The first model you open in a big game no longer freezes the app. In BattleBit it took over a minute; now it takes under a second. Figuring out which objects use which mesh now happens in the background right after a game loads.

More models find their texture

Textures are now found for models whose mesh lives in a different file from the object that uses it. In a 300-model sample, BattleBit went from 113 to 215 textured models, and Car Mechanic Simulator 2018 from 216 to 266.

The compatibility list now also records each game's Unity version.

Download

Unzip UniView-v1.2.0-win64.zip and run UniView.exe. You don't need Python. (Windows 64-bit.)

🤖 Generated with Claude Code

UniView v1.1.2

Choose a tag to compare

@NightHawkHSI NightHawkHSI released this 23 Sep 12:25

New app icon

UniView has a proper icon now: a cube and a magnifying glass on a blue tile. It shows clearly on the taskbar, the window and UniView.exe, even at small sizes. The old placeholder was a squashed screenshot.

If you pinned an older UniView to the taskbar, unpin it and pin the new UniView.exe. Windows caches icons.

Everything from 1.1.1 is included (the empty-texture fix and 15 games marked as working).

Download

Unzip UniView-v1.1.2-win64.zip and run UniView.exe. You don't need Python. (Windows 64-bit.)

🤖 Generated with Claude Code

UniView v1.1.1

Choose a tag to compare

@NightHawkHSI NightHawkHSI released this 23 Sep 12:08

Fixes

  • Empty textures no longer crash. Textures that games build while running (like Font Texture) are only empty 0×0 placeholders in the game files. They used to fail with a confusing Permission denied error. Now UniView says clearly that the texture is empty.

Compatibility list

  • 15 games tested and marked as working, each with notes and measured numbers: Among Us, BattleBit Remastered, Car Mechanic Simulator 2018, Fallout Shelter, Mage Arena, Make Way, Megabonk, Muck, Papers Please, Probably Stolen, Robocraft, Schedule I, Trailmakers, Unturned and Valheim. They show on each game's box on the Projects page.

Download

Unzip UniView-v1.1.1-win64.zip and run UniView.exe. You don't need Python. (Windows 64-bit.)

🤖 Generated with Claude Code

UniView v1.1.0

Choose a tag to compare

@NightHawkHSI NightHawkHSI released this 23 Sep 11:48

What's new in 1.1.0

Finding things

  • Search filters: tris>1000, size>1mb, w>=512, type:mesh. Combine them, e.g. gun tris>2000 size<5mb.
  • Sortable columns: Name, Info (triangles or pixel size) and Size.
  • Favorites (Ctrl+D), saved per game, with a ★ Favorites view.
  • Grid view (Ctrl+2): big thumbnails you can flip through with the arrow keys.
  • Jump between related assets: model → texture, texture → every model that uses it, and sprite → sprite sheet.

Model viewer

  • UV set picker (UV0/UV1/…) and a UV layout window.

Export

  • GLB export: one file with the textures inside, opens in Blender.
  • Open in Blender (Ctrl+B).
  • Bulk export that can keep the game's folder structure.

Projects page

  • Notes for each game, pinned games, and drag and drop a game folder to add it.
  • Community compatibility list shown on each game's box. Right-click → Report compatibility… to add yours.
  • Progress bar while loading and exporting.

Fixes

  • Unnamed assets are named after their prefab.
  • Meshes with line/point parts no longer fail to load.

Download

Unzip UniView-v1.1.0-win64.zip and run UniView.exe. You don't need Python. (Windows 64-bit.)
If SmartScreen warns you, click More info → Run anyway.

🤖 Generated with Claude Code

UniView v1.0.0

Choose a tag to compare

@NightHawkHSI NightHawkHSI released this 23 Sep 11:19

First release of UniView - Unity Asset Viewer.

Download

Grab UniView-v1.0.0-win64.zip below, unzip it anywhere, and run UniView.exe. You don't need Python. (Windows 64-bit.)

Features

  • Projects page with a box per game (green = loaded, red = not), file/asset counts, and auto-detection of Unity games in your Steam libraries
  • 3D model viewer with auto-found textures, plus a panel listing the model's materials, textures and source file
  • Zoomable texture viewer
  • Thumbnails in the asset list
  • Export models as OBJ + MTL + PNG (open textured in Blender), textures as PNG, or everything in bulk
  • Console, viewer.log and crash.log for troubleshooting

Notes

  • Windows SmartScreen may warn the first time because the exe isn't code-signed. Click More info → Run anyway.
  • Game files are only read, never changed.

🤖 Generated with Claude Code