+ A desktop client for Perforce® · by Exbyte Studios
+
The Perforce client your Unreal team actually wants.
+
Exbyte Depot is a fast, native desktop client for Perforce Helix Core — real 3D asset previews, one-click exclusive locks, offline work, and live teammate activity. All the power of your Perforce server, none of the P4V pain.
+
+
+
+ It's a client, not a replacement. Exbyte Depot connects to your existing Perforce server through Perforce's own p4 command-line — your server, history and workflow stay exactly as they are. We don't clone Perforce or reverse-engineer anything; we just give you a nicer window into it.
+
+
+
+
+
+
+ You're on the list. We'll email you the moment early access opens.
+
+
Windows · early access · no spam, one launch email · — on the list
// M5 — deterministic POI placement over the road graphvoidURoadSampler::Build(constFRoadConfig& Cfg){ Graph = NewObject<URoadGraph>(this); Graph->Initialize(Cfg); Graph->EnsureGeneratedAround(INDEX_NONE, 0.0); Pois = NewObject<UPoiRegistry>(this);}
Perforce is the industry standard for a reason. Exbyte Depot keeps every bit of its power and finally makes it feel good to use.
+
+
+
+
+ Signature
+
+
Real 3D asset preview
+
Rotate the actual mesh inside a .uasset right in the app — plus embedded thumbnails, image, audio and video previews. See what you're committing before you commit it.
+
+
+
+
+
Exclusive locks, one click
+
Binary .uasset files can't be merged. Take an exclusive lock so only you edit a mesh or material at a time — and see everyone else's locks live. No more overwritten work.
+
+
+
+
+
Work offline, reconcile later
+
On a plane or the VPN's down? Keep editing. Exbyte Depot scans your workspace and reconciles adds, edits and deletes into a changelist when you're back — just like P4V, but nicer.
+
+
+
+
+
Live teammate activity
+
Lives in your system tray and sends a native notification the moment a teammate submits — with their message. A banner tells you when you're behind, one click to Get Latest.
+
+
+
+ AI
+
+
AI commit summaries
+
Draft a clear changelist message from your selected files, and get a plain-English summary of what any source file does — in your interface language.
+
+
+
+
+
Files & Sizes explorer
+
Browse the Depot and your Workspace as a tree and see exactly how much every file and folder weighs — heaviest first. Find what's bloating your repo in seconds.
+
+
+
+
+
Built-in code editor
+
Fix a header or a config right before commit — no external IDE needed. Full syntax highlighting, line numbers, and a proper editor, not a grey textbox.
+
+
+
+
+
The full Perforce toolbox
+
Labels, streams, integrate / merge / copy, jobs, file history with blame & diff, clean, .p4ignore, get-revision, shelve/unshelve — the depth is all there when you need it.
+
+
+
+
+
Signed auto-updates
+
Ships as a signed installer with a built-in updater. New versions land in place — the whole team stays current without chasing downloads.
+
+
+
+
+
+
+
+
+
+
+ Why switch
+
P4V is powerful. It's also from another era.
+
We're not replacing your Perforce server — we're replacing the client you look at it through. Exbyte Depot keeps every bit of Perforce power your studio depends on and rebuilds the experience around how artists and engineers really work: visual, fast, and forgiving.
+
+
See your assets, not filenamesLive 3D meshes, thumbnails, audio & video — right where you review a changelist.
+
Commit locally, submit when readyA GitHub-Desktop-style flow on top of Perforce — revertable local commits, then push.
+
Never lose work to a binary conflictExclusive locks on .uasset are one click, and everyone's locks are visible.
+
Know what the team is doingTray notifications on every submit and a clear "you're behind" nudge.
@@ -1408,7 +1521,12 @@ function Workbench({ info, session, light, toggleTheme, lang, setLang, zoom, set
{scanning && (
- {t("Scanning disk for changes…")}{!activePath && t(" for the whole workspace this is slow — pick a project folder above")}
+
+ {t("Scanning disk for changes…")}
+ {scanCount > 0 && {t("found {n} files", { n: scanCount.toLocaleString() })}}
+ {scanCount === 0 && !activePath && t(" for the whole workspace this is slow — pick a project folder above")}
+
+
)}
@@ -1420,7 +1538,7 @@ function Workbench({ info, session, light, toggleTheme, lang, setLang, zoom, set
{view.length === 0 ? (
- {scanning ? <>{t("Scanning disk for changes…")}> : <>
+ {scanning ? <>{t("Scanning disk for changes…")}{scanCount > 0 && {t("found {n} files", { n: scanCount.toLocaleString() })}}> : <>
{busy ? t("Loading…") : t("No open files yet.\nEdit assets in Unreal (Source Control → Perforce) — they show up here on their own.\n\nEdited files outside Perforce? Actions → “Rescan changes”.")}
>}
@@ -1440,7 +1558,11 @@ function Workbench({ info, session, light, toggleTheme, lang, setLang, zoom, set