Devlog · tag
unreal-engine
69 entries tagged “unreal-engine”.
-
Mean Free Path
A MetaHuman neck tattoo that looks missing in PIE in Unreal Engine 5.8 but is rendering under the hair and across a UV seam; also a released player re-arrested inside the police station within four seconds, river water that reads opaque lime and then orange as its absorption path is tuned, the log line IXWORLDITEM no mesh row, and a scissor pouch skinned inside a pair of jeans.
-
Kicking-Out Time
A Local Fog Volume that vanishes around the player standing inside it in Unreal Engine 5.8; also an NPC who looks seated on nothing outside a kebab shop at four in the morning, a parcel of chips hidden inside her trousers, a barber who walks out of his own shop on a Monday, and a hairdresser's ceiling that renders black while the room below it is lit.
-
Clearance
Grass growing through the ground floor of walk-in houses in Unreal Engine 5.8, because the floor sits a few centimetres below the landscape and the grass blades are 35 cm tall; also a new estate with no navmesh at all, front gardens sealed off by the agent radius, benches imported facing backwards, a D3D12 "Too many residency sets" crash on loading a World Partition map twice, and a player left lying on a cell bed forever.
-
Under the Carpet
Ground-floor rooms in Unreal Engine 5.8 show grass or grey speckle through the floor because the house sits a few centimetres below the landscape; also a MetaHuman whose belly will not shrink from the side because the body is baked into the rig, tattoos that render as scattered fragments under a masked material, and Play In Editor crawling at 1 fps with VolumetricCloudShadow taking 668 ms a frame.
-
Pivot Point
Foliage with material wind placed in a HISM floats metres above the ground in Unreal Engine 5.8, because the branch-wind term measures distance from ObjectPivotPoint and in an instanced host that is the host's origin; also NPCs stuck walking into their own inward-opening front door because the nav link runs down the hinge line, NPCs brushing through hedges whose collision box is shorter than the mesh, and a simulated bin round that never picked up a bin because one data list was in street order and the other in visit order.
-
Blocking Wait
Unreal Engine 5.8 editor appears frozen on "Updating Texture Streaming Data 0%" and on the first save of a new material, with two ShaderCompileWorker processes idling at about 25% CPU for hours, because a Custom HLSL node read .w from a VectorParameter whose default pin is RGB (float3); also a council hi-vis vest cut from a Fab shirt, MetaHuman bodies whose pinned girths Fat and Muscularity sliders cannot move, road-profile FBX files that import 100 times too small at 0.01 scale, and 1.14 million cubic metres of cut and fill for a new estate.
-
Off Duty
NPCs stuck at zero speed just inside their own open front doors in mirrored houses, because the door's nav links ran along the hinge line where the open leaf lies; thousands of "Blueprint Runtime Error - Attempted to access BP_Citizen_C pending kill or garbage" lines from a None check that a destroyed actor passes; a council worker whose walk to work ended at a navmesh island; and a whole cast re-dressed in parametric MetaHuman garments from Fab, where a recolour bound on the mesh never showed because the build's Blueprint overrides material slot 0, a Fab shirt ignored OpacityMask, and a trouser waistband poked through every untucked shirt.
-
Home Lights
A third-party C++ plugin that would not build in Unreal Engine 5.8 (UHT "Unable to find" on a using alias, TWeakObjectPtr operator bool deleted C2280, GetPolyAreaID C2660, GetAnimationBudgetHandle private C2248); a PIE crash on "Attempting to use a container element which already comes from the container being modified" when closing a looped road spline; a DirectionalLight that switched itself off 41 seconds into PIE because a house-lights system adopted it as a house light; ShowFlag.EyeAdaptation 0 outliving PIE and blowing the editor viewport white; navmesh routes over 61 cm garden walls where AgentMaxStepHeight 55 changed nothing; and NPCs who arrive at the chippy and stand outside against the wall.
-
Loyal for Life
A skeletal mesh that explodes into giant shards in PIE in Unreal Engine 5.8 while its bounds read normal, because the Blender export put the root bone at scale 1 instead of 100; a stray dog AI that freezes when its flee point lands in fenced gardens; a Blueprint builder whose delete_node TypeError was swallowed so a graph doubled to 146 nodes with a clean readback; and a TextRender label that reads backwards.
-
Edge-On
A Niagara water jet that drew nothing in Unreal Engine 5.8 because velocity-aligned sprites seen along their own velocity are edge-on and a Vector2 size passed as "4,22" was stored as unreadable text, an NPC snooker match costing 40.7 ms a frame in another building because WasActorRecentlyRendered on a Nanite mesh is only a frustum test, a door tick gate where GetDistanceTo measured every door at 0 m, and fuel pump nozzles that doubled each time a World Partition cell streamed back in.
-
Out of View
A monster whose 3D sound played 14-30 m underground in Unreal Engine 5.8 because its stored position always had z = 0, a Blender character that imported 35 cm short because a x100 scale left the pose matrices in metres, Python-built Nanite track meshes that reported zero bounds after an editor restart and vanished, MP_Displacement hidden from UE 5.8 Python, three strip-club dancers, a worn mud track baked from 30 simulated races, and 2,986 houses placed on a hill.
-
Cut and Fill
An NPC dog in Unreal Engine 5.8 that slid along the pavement without moving its legs because SetAnimation in single-node mode loads a clip paused, a landscape hole cut with LandscapeVisibilityMask after the legacy hole material had crashed three editors, a stray hole punched by clicking the viewport with the Visibility brush armed, a road-gradient check that passed while the carved terrain had 13 m cliffs inside 28 roads, and eight autograss buggies built in Blender to the real rulebook.
-
The Queue
An NPC dog in Unreal Engine 5.8 that walked backwards after SetActorRotation(MakeRotFromX) and then lay on its side after MakeRotFromY, a CableComponent lead that ended a metre off the collar and vanished on tarmac, Blueprint officers who stopped 20 cm short of a front door forever, a looping dance clip that drifted an NPC off its actor with root motion off, a SceneCapture2D that rendered pure white at every exposure, and a parody energy drink can whose wordmark read NACKERED from the side.
-
Keyholder
A Fab outfit that imported into Unreal Engine 5.8 at about a fifth of its size because Interchange quietly took over the FBX import and ignored FbxImportUI, skin poking through a fitted MetaHuman garment under animation, an NPC who stood at home all day with no error because her MoveTo destination sat off the navmesh, a front door that opened into her own hallway and blocked her, and a receptionist the town only spawned when the player was nearby.
-
Party Wall
An Unreal Engine 5.8 river that drew no water for 2.9 km while buoyancy, current and water audio all still worked, a doorway cut into a wall mesh in Blender that made the navmesh vanish from a cellar staircase five metres away, a MetaHuman doorman who slid instead of walking because his in-place walk clip moved each foot about 1 cm, MetaHuman clothes that froze while the body animated, NPCs who could not open their own front doors, and a PIE session at 1 fps that made the MCP server report itself unavailable.
-
Downwind
Street litter in Unreal Engine 5.8 that blows with the live wind speed and direction and stops against the kerb, a write_graph_dsl call that silently wrote nothing because an IsValid macro sat mid-function, an otter that looked invisible in PIE because the capture camera was inside the riverbank, a salmon texture that came out grey and flat and a Python hash() seed that changed every run, NPC schedules that differ by day of the week, and virtual shadow maps that drew no shadows in PIE.
-
Reachable
Thirty collectible treasures in an Unreal Engine 5.8 cave that the player could never reach because every one sat past a sealed choke and two were inside stalagmites, street litter bins placed by script hanging 40 cm over the kerb on diagonal roads, pickup money in a World Partition level that would respawn when its cell reloaded, a robin material whose Custom node lerp kept only the red channel and rendered the patch grey, and an NPC that gives way at the kerb only to actors tagged Vehicle.
-
Root Lock
A seated MetaHuman in Unreal Engine 5.8 sinks back through his chair because Force Root Lock was on in a clip whose seat offset lives on the root track, raises his pint to his right eye instead of his mouth, never empties his glass, and carries it back from the bar tilted 60 degrees; plus a camera that looked inside two buildings with no collision that turned out to be HLOD stand-ins, and a bus that drove through the police car in the game's opening.
-
Only the Fins
A cooking overlay in Unreal Engine 5.8 that browned only the fins of a fish because the body was two-sided and the overlay was back-face culled, Niagara smoke that rendered as hard vertical glass sheets, a borrowed steam system whose spawn rate defaulted to zero, venue music that replayed the end of a track after a hitch, and white outlines round telegraph poles against grey cloud from r.VolumetricCloud.ApplyFogLate.
-
One Metre Past the Hook
A fishing fight in Unreal Engine 5.8 that snapped the line within 15 seconds whatever the player did, a caught fish that slid up the rod and ended up speared on it, and a CableComponent line that always finished a metre past the hook because EndLocation defaults to (100,0,0) relative to the end component - plus a fold-out chair, a five-minute snooze and a disposable BBQ you light with a lighter.
-
Fog in the Sky
A volumetric cloud storm that makes one in the afternoon as dark as night, exponential height fog with FogCutoffDistance 0 painting the whole sunset sky one flat colour, the white edge halos a 30 km fog cutoff leaves round every roofline in rain, an unlit horizon cloud band that glows white at night, and wet footprint decals laid back to front, all in Unreal Engine 5.8.
-
Two Bright Readings
Street lamps that switch on at dusk while the street stays black because the exposure is still pinned to daytime, a lightning bolt from Blender that imports invisible because FBX flips the UV V channel, a lightning flash light placed 312 m up that turns every roof and road white like snow, and a WidgetComponent petrol pump screen that is almost unreadable because the widget material is lit, all in Unreal Engine 5.8.
-
Background Hum
A decal that lays across parking bays, then renders upside down and paints the bollards green in Unreal Engine 5.8, an editor that runs out of memory setting material instance parameters with a big World Partition level loaded, an impure Blueprint call inside a return node pruned with "Exec pin is not connected" so no car lamp could ever light, and a refused pick-up that leaves an invisible item in the player's hand.
-
Crosshair First
An interaction line trace in Unreal Engine 5.8 that starts at eye height instead of the camera and misses small objects under the crosshair, a grow lamp that looks lit at start because another actor's BeginPlay resets it under World Partition, pressing E with a full hand silently destroying the held item, and a translucent ghost that is invisible at 5% opacity and darkens the room instead of glowing.
-
Substantially Enclosed
An NPC who stops three metres short of a nightclub toilet because a 1.05 m doorway is too narrow for a navmesh agent radius of 35 cm, a heater whose emissive material pulsed to the music, a light A/B test in Unreal Engine 5.8 where 400, 120 and 0 lumens all looked the same, and a hall and cellar blown out white by a pinned exposure and the editor sitting on Low scalability.
-
Shuffle Turns
A MetaHuman walk clip that made two snooker players walk 20 cm crouched because it carried another body's bone lengths, a turn-in-place animation whose planted foot skated 20-70 cm because the clip was a shuffle, a one-metre teleport at every corner of an offset path, and an Unreal Engine 5.8 editor crash in USoundCue::Parse from a SoundNodeRandom whose child_nodes were set from Python.
-
Two Frames
A Blueprint snooker solver in Unreal Engine 5.8 pinned at its MaxSubsteps cap and a
-
Empty Sleeves
A garment loaded in Marvelous Designer 2026.1.149 sits above the avatar with both arms
-
Collapsed to a Point
A mesh that imports into Unreal Engine 5.8 with smaller bounds than the file it came
-
Ground That Isn't There
Animals falling to their deaths through streamed-out landscape in Unreal Engine 5.8,
-
The First Time Anybody Looked
A day of green numbers on the snooker club - 30,009 rules checks passed, 139 voice
-
Agreeing on the Wrong Answer
A frame of snooker that looked like a close game turned out to be two players
-
One Key for Everything
Three separate keys stopped working in one nine-minute playtest, for three
-
Two Kinds of Black
A Wollaton-style manor went from a scoped idea to a quay, a boathouse and a
-
The Probe Said It Was Open
A corner pocket that measured shut, a probe that fired off the table and called it
-
A Gap Down Each Side
A Sunday spent on a secret society. Fourteen men who drove themselves in, parked
-
Named for What It Wasn't
A Saturday that ran from a riverbed to a secret society. Landscape grass standing
-
The River Went Black
A Thursday that ran past one in the morning on three faults with the same shape. Grass
-
The Fix That Emptied the Street
A Thursday spent putting gutters, downpipes, chimney pots, aerials and satellite dishes
-
Standing Up and Going Nowhere
A sit-and-stand bug that had been shrugged off in the pub for weeks turned out to be
-
Four Centimetres Under
A man stood outside the depot having a cigarette and James asked whether he was on
-
It Was Never the Frame Rate
A nine-second shot of a man in a lorry cab looked like it was running at fifteen
-
The Man Who Does It for a Living
A refuse loader who does the job for a living watched the bin round and said the
-
Forty-Five Listeners
Taking out a fishing rod switched the head torch off, because one key was feeding
-
The Box That Was Not a Box
A day building the physical kit for the eBike food-delivery gig - a top box, a paper bag, a rear rack and a branded courier jacket on a MetaHuman. Four things went wrong and every one of them passed a check first: a box whose faces all pointed inwards, a wheel radius three separate maths fits got wrong, materials that reported themselves bound while the mesh shipped grey, and a logo that was invisible because it was plugged into the wrong colour layer.
-
Signs in Mid-Air
Fitting out the bookies on the corner - carpet, wallpaper, a lowered branded ceiling raft, a counter and two fruit machines - and the four traps that made it take twice as long. A centre-pivot cube that threw the ceiling signage into mid-air, a rug that shipped as the engine checkerboard while every readback insisted it was perfect, a second run that refused to wallpaper the walls it had just papered, and an editor that reported an actor missing right up until two of them turned up in play.
-
Zero Bytes
A one-line find-and-replace destroyed 155 KB of hard-won build notes on a project with no version control, because opening a file for writing empties it before anything can go wrong. Ninety-six per cent of it came back out of the AI agent's own session transcripts, and the recovery had four wrong turns of its own. Also - the fruit machine that paid nothing because a perfectly correct function was called by absolutely nobody.
-
A Different Culprit Every Week
Six weeks of frame-rate work on an open-world Unreal project, three confident diagnoses, and the real answer was that the editor was open the whole time and holding most of an 8 GB graphics card. Closing it moved GPU time from 1038 ms a frame to 14.5. Also - why the frame rate limit in your config file has never once taken effect.
-
Two Ways to Draw Nothing
A train exhaust plume refused to draw for an entire session. There were two independent faults and either one alone produces an identical, perfectly silent blank, so fixing one changed nothing and the bisect read as noise. The system reported zero errors and UpToDate the whole time. The day's other lesson was that almost every instrument used to check the fix was quietly lying - the screenshot tool, the viewport reporter, and a property readback that echoed my own words back at me.
-
Bottles at Attention
Street litter placed by script stood to attention like a parade and hovered above the pavement. The obvious "is it tall, then lay it down" test passed the very bug it was written to catch, and the obvious verifier reported the street as 100 percent clean while it was still wrong. The rule that actually works is shortest-local-axis-vertical, and the day ended with a second lesson about surveys that lie differently at every resolution.
-
Seven Metres Above the Road
A town bus that hovered over its own route and froze behind pedestrians turned out to be three unrelated faults - a baked height array that had gone stale under a re-carved road, an interpolation target twelve metres too far ahead, and two waiting conditions with no timeout. Includes the ground-trace fix that looked obvious and turned out to be impossible.
-
Pressing It Did Nothing
Three teleport keys in the game were dead for months while every automated check said they were fine - because the test that "proved" the binding worked injected the action and skipped the keyboard entirely. Plus the key-availability audit that lied twice, in two different ways.
-
The Walls Would Not Hold Still
A whole-level z-fighting audit across 722 static meshes - and the four separate ways the measurement lied to me before a single surface was fixed, including a scanner that was reading decimated geometry that does not exist in the source files.
-
Nobody Walked In
Four sessions of navmesh work built a correct route from the street to the bar, and the NPC spawner never put a single body on it - plus the voxel arithmetic that stops stairs meshing, a door leaf that eats a doorway, and a coverage figure that read 100% because the question was wrong.
-
Thirty Defects in One Sitting
A human drove the game while an agent fired 2560x1440 captures and read every frame as it landed. It found about thirty defects in one sitting, closed a bug that had been open for twelve days, and - just as usefully - produced three confident diagnoses that a readback then demolished.
-
It Would Not Open
The Windows app exited on its own and then refused to open at all; three plausible fixes (Windows repair, pruning a 6 GB session-history folder, a GPU setting) all did nothing, and the real cause turned out to be the app restoring a saved in-app browser preview pointed at a local dev server.
-
A Job Nobody Wants
A pub cleaning job built on top of a toilet minigame reached eight-of-eight phases and passed a live in-editor test measuring exactly the predicted numbers - and a pre-test adversarial audit had already found six critical defects that every automated check in the project called clean.
-
Twelve Hours on the Grass
A day spent making 98 hectares read as a parkland golf course. The grass layer took twelve hours, got fixed, and was then deleted on purpose - what actually sold the course was 274 trees, 2,180 shrubs, 212 gorse bushes, 79 molehills, a fence, and a flock of rooks that first appeared eight centimetres underground.
-
Zero to Full Lock
A digital keypress was assigned straight to the steering axis, so the bike went from zero to full lock in one frame; here is the fix, a headlamp that came on three hours after dark for an unrelated reason, and an honest note that nobody has ridden any of it yet.
-
Four Sessions Down to One
The end-to-end route from a reference photo to a dressed, animated NPC in Unreal 5.8, and the traps that had to be paid for one at a time before it became repeatable.
-
Bugs Only a Fleet Could Find
Building a working taxi firm - book from the in-game phone, ride in the back, pay on arrival - and the failures that a single test vehicle had hidden for months.
-
On at Eight
Building a live turn in the pub - an NPC who leaves the bar, sings for an hour of game time and sits back down - and the two silent failures it cost: a walk target that defaulted to the middle of the map, and a graph edit that compiled perfectly into a chain nothing ever executed.
-
Seven Stops on an Empty Road
Putting a timetabled bus on a real route through the estate - how the stop siting quietly collapsed, why the driver ended up crumpled on the cab floor, and what is still untested.
-
The Pile That Never Settled
Building a working penny pusher out of several hundred real rigid bodies, and the feedback loop where slow frames stop a pile settling, which keeps the bodies awake, which keeps the frames slow.
-
A Blank White Rectangle
How this game's conversation UI stopped being one hand-drawn panel copied forward by duplication, and the class of silent failure that arrives the moment an agent can author widget trees for you.
-
A Card in the Hand
Rebuilding a full-screen scratchcard widget into a card held in the world, how the wax removal actually works, and why the card rendered pure black while the coin on top of it looked perfect.
-
Proving the Wheel
The betting shop's roulette wheel is a real rigid body in a real bowl, so the winning number is wherever it stops - which means fairness has to be measured rather than asserted, and the measuring is where all the interesting failures were.
-
A Missing Server
Adding a second agent server to the same live Unreal editor retired four "the human must do this by hand" rules overnight, and the real win was the observation loop rather than raw speed.
-
In Time With the Music
The nightclub got a music-reactive light rig and one dancer who moves in time with the track, and the reason it works is that tempo is measured offline and baked while only loudness is read at runtime.