Project Overview:
This is a small tool I developed entirely in Unreal Engine Blueprint — a procedural bookcase generator that dynamically populates shelves with books of varying shapes, sizes, spacing, and rotation.
The goal was to create an easy-to-use setup for level artists or cinematic artists who need large shelves or libraries dressed quickly but with believable natural variation.
🎥 What You See in the Video
The uploaded video demonstrates:
Real-time parameter tweaks: The entire book row is driven by exposed parameters like Length, Random Seed, Spacing Frequency, Random Position, Random Rotation, Random Height, and an overall Randomness master control.
Scalability: One slider can fill a tiny shelf or generate hundreds of books stretching far into the horizon — instantly.
Controlled Chaos: Changing the seed instantly reshuffles every book’s offset, giving each shelf a unique feel.
🧩 Blueprint Breakdown
Uploaded screenshots include:
The main construction script shows how instances are spawned in sequence based on the length.
The randomization logic, where seeded noise drives variations in position, rotation, and height.
Parameter exposure: Cleanly organized so any artist can tweak it directly in the Details panel.
Comments and tooltips are embedded in the Blueprint to keep it user-friendly.
Key points:
Uses ForLoop nodes to drive mesh spawning.
Random Float in Range and Random Seed maintain consistent but controllable randomness.
Simple math nodes offset transforms along local axes, giving the slight imperfections that make rows look realistic.
✏️ How I Built & Tested It
Built entirely in Blueprint, no C++.
Kept everything modular: book meshes can easily be swapped.
Tested for performance by scaling up to hundreds of instances while keeping draw calls reasonable.
Designed with future expansion in mind — for example: adding randomized materials for different covers, or sockets for props like bookends and trinkets.
✨ Possible Next Steps
Adding material variation to break up visual repetition.
Implementing LODs for performance in massive libraries.
Hooking into Niagara for subtle FX — e.g., dusty motes or slight book shuffles.
Exposing the system to level designers as a plugin.
🔑 Tech Stack
Engine: Unreal Engine 5 Blueprint
Tools: Quixel Megascans (base meshes if needed)
Role: Design, scripting, testing, and presentation — fully solo.
💡 Why I Made This
I wanted a real production-ready test of:
Procedural workflows inside Unreal (not just Houdini to UE).
Simple setups that empower other artists — a junior designer can randomize a whole wall of books in minutes.
Understanding how far I can push instance spawning before needing C++ or HISM.
🤝 Always Open for Feedback & Roles
I’m sharing this to connect with more environment artists, tools TDs, and studios that care about procedural pipelines.
If you have suggestions, ideas, or opportunities, my inbox is wide open.
Showcase VIdeo