Marvel Rivals VFX 🎮, Procedural Cities 🏙️
🎮 Game Art & Visual Design
How Marvel Rivals balances character identity, combat readability, and performance
The Marvel Rivals art team preserves recognizable character traits while adapting shading and effects for multiplayer combat. Its custom shader combines nonphotorealistic shading with physically based highlights, while character lighting and local exposure controls maintain readable forms. Cyclops’ attacks use distinct laser profiles and effect intensity, keeping ordinary shots subdued and defining the ultimate’s impact area. For destruction, automated cutting tools create fragments, while visual effects animate falling debris instead of physics calculations; asset tiers and rendering budgets support performance across platforms.
How Frostpunk 2’s Council effect visualizes rising tension
Frostpunk 2’s Council visualizes city tension through an oily effect that becomes more distorted as tension rises. Adam Dyląg explains how radial masks and noise mapped with polar coordinates shape the post-process effect, while particle ribbons rendered into a texture add motion and blur. Material parameters animate the transition from idle to voting, and a shared circular mask blends UI tentacles with the post-process layer. Rendering particles into the texture was the main optimization issue; spawning them in one quarter of a circle conserved texture space.
🛠️ Tools, Tech & Worldbuilding
Sharing memory with a double-headed stack allocator
A double-headed stack allocator lets two systems allocate from opposite ends of one fixed memory block. Each side reclaims its allocations by resetting its cursor, avoiding the fragmentation illustrated with interleaved level and character data. The shared capacity allows either side to grow until the cursors collide, unlike two separately sized pools. A variation stores variable-size objects at one end and an offset table at the other for indexed access. The approach suits allocations reclaimed together; the sample does not automatically call object destructors.
Lucid Games builds procedural cities with PCG and Geometry Script
Lucid Games generates buildings, city blocks, and roads in Unreal using PCG and Geometry Script. Grammar rules assemble modular building panels, while reusable room graphs populate playable interiors. Artists define block boundaries first, then the tools derive road geometry, cut out entrances, and project surfaces onto terrain. Editor widgets control generation and bake dynamic geometry into static meshes. The team also explains profiling PCG graphs, repairing Boolean artifacts through remeshing, and separating transparent glass from Nanite building panels.