HoloEco
Technologies Used
Game Info
System Requirements
Minimum
Windows 10 64-bit
Intel Core i5-6600K / AMD Ryzen 5 2600
8 GB RAM
NVIDIA RTX 2060 / AMD Radeon RX 6600 XT
15 GB available space
Recommended
Windows 10 64-bit
Intel Core i7-8700K / AMD Ryzen 7 2700X
16 GB RAM
NVIDIA RTX 3070 / AMD Radeon RX 6700 XT
15 GB available space
Gallery
Complete HoloEco platform walkthrough and boutique demonstration
HoloEco required embedding real-time web conferencing inside an Unreal Engine 5 scene. The initial approach of integrating vendor-specific SDKs (Zoom SDK, Agora SDK) proved untenable: each SDK had distinct API contracts, platform restrictions, and required separate certification processes. The pivot was to embed a full Chromium browser instance (CEF) as a WebView actor inside the 3D environment. This resolved the vendor lock-in: any meeting platform accessible via browser URL works identically, including Zoom, Google Meet, Microsoft Teams, and Jitsi.
The CEF WebView is rendered as a texture on a world-space UMG widget, so the video feed appears as a surface inside the boutique environment. Input events (mouse, keyboard) are forwarded from the Unreal input system to the CEF instance, giving the player full interaction with the web content while remaining in the 3D space.
Payments are handled by a custom C++ HTTP server running alongside the game server. When a player initiates a purchase in the boutique UI, the UMG widget posts a JSON order payload to the local server endpoint. The server calls the Stripe API to create a PaymentIntent, returning the client secret to the widget for Stripe.js to handle the payment form. On payment completion, Stripe fires a webhook to the server. The server verifies the Stripe-Signature HMAC header and writes the fulfilled order to PostgreSQL. This keeps all Stripe secret keys server-side with no exposure to the client.
Gameplay
Core Mechanics
Game Modes
Difficulty
Key Features
CEF Chromium WebView embedded as a 3D texture-mapped widget for platform-agnostic video meetings
Custom C++ HTTP server handling Stripe PaymentIntent creation and webhook HMAC verification
PostgreSQL order persistence with server-side Stripe secret key isolation
Avatar systems with customer twin representation in 3D boutique spaces
3D product visualization and virtual try-on systems
Multiplayer streaming and collaboration within boutique environments
Backend analytics and session management via custom login API
Architectural Implementation
CEF WebView as Meeting Surface
A Chromium Embedded Framework instance is hosted as a headless browser and its rendered frame is pushed to a dynamic UTexture2D each tick. The texture is applied to a UMG widget placed as a world-space actor inside the boutique scene. Raw input events from the player controller are translated to CefMouseEvent and CefKeyEvent and forwarded to the CEF host, enabling full interaction with any web-based meeting platform without SDK integration.
Stripe Webhook Verification and Order Persistence
The custom C++ HTTP server uses a lightweight socket listener to receive POST requests on a dedicated port. Incoming Stripe webhook payloads are verified by reconstructing the expected HMAC-SHA256 signature from the raw request body and the Stripe webhook secret, then comparing against the Stripe-Signature header. Only payloads passing this check trigger order writes to PostgreSQL via libpqxx, keeping the payment flow secure even in a local server context.
Outcomes
MVP delivered for PC platform with active company boutiques operational
CEF meeting integration working across Zoom, Google Meet, and Jitsi without SDK fragmentation
Stripe payment processing operational with webhook-verified order fulfillment