So it's been about three weeks since my tenure with Clusterfuck Inc. ended and the plan for a while has been to put sculpting on the back burner and concentrate on engine development. That way I have an end to end pipeline to something marketable and, thus, the foundation for my next business venture. Having looked at both unity and unreal engine a fair bit over the last couple of years, I decided to plump for UE. Unity is sickeningly "open source", in the sense that - it looks like an ugly, cobbled together pile of shit and, whilst UE comes with a license, it's a fairly generous one, especially during the initial growth phase. Effectively making it free to use and sell, until I'm making enough wedge to more than cover the fees.
Given that that's the case, I now have two choices - do I develop in native C++ or do I try my hand at this weird and whacky visual scripting system they've included in the bundle. My C++ is rusty as hell. Like actual rust. In actual hell. It's been close to 20 years since I even looked at it. I've been using PHP, almost exclusively for the last decade which might be similar enough to make it feel familiar but different enough that I'm sure to find myself constantly fucking up, trying to do PHP shit that has no place in a persistent memory space. Yeah, I got a lot of bad habits that don't really matter when your whole variable stack disappears every tick

So I figured I'd start with the "Blueprint" visual scripting and bite the bullet and switch to Visual Studio if it ended up feeling like I was handcuffed to the railings. So first I needed a project. Something simple, not too much in the way of art assets, as little in the way of animation as possible but with enough operational complexity to allow a decent deep-dive into what this engine can do and how to make it purr like a kitten.
Remember the movie Cube? I remember talking to a mate of mine years back about it. He's a screenwriter and he pointed out that the whole movie was shot using only one set, plus a partial seen through the open door. Blew my mind at the time. Film was awesome (even despite the shitty acting and dodgy script) and they'd shot it all for a back o five. Fuck yeah, I thought, that serves my mission admirably. I only got to actually model one room but, if I take it one step further, I can have the rooms spawning and being destroyed on the fly as doors open and close and the player navigates from room to room instead of building a static environment with however many cloned rooms I decide to fill it with. The upside of this is I'll have system resources all up the wazzoo and can essentially blow my entire budget on the two rooms that will be visible at any one time. This means I can go nuts with polycount and texture resolution and still have it running like a fucking cheetah in VR!
Side bonus - managing the room spawning and syncing up the doors and whatnot will be a non-trivial task that's going to require me getting my hands dirty from the get go. So that's what I did. Sure there's been wailing and gnashing of teeth and banging my head against a brick wall and rewriting the whole thing from scratch half a dozen times but I gotta admit - I haven't had this much fun coding in years. The node graph is live and shows dataflows during runtime with breakpoints and watches and everything you'd expect from a "proper" debug environment but syntax errors are impossible. I'm fucking loving this to the point where any lingering anxiety I might have had about my latest career choice has been kicked into the bushes.
When this is done I'm planning on it being more of a virtual tour of the movie than a game, per se. Because the level is generated procedurally, I have total control over what the player will experiance, regardless of which direction they go at any time. So they'll always start in the white room, the third room they go in will have the guy from the start of the movie lying in pieces, the fifth or sixth room will have a discarded boot, a couple of rooms later, the body of Rennes with his face melted off, etc. but, from the player's perspective they'll feel like they're exploring the map and just randomly coming across these things.
So far I got the doors synced up. Opening one will close any other that's open, destroy the room behind that one and then spawn another behind the doo you just opened. This video is illustrating that by exploiting a glitch that I haven't locked down yet, whereby it's possible to open a door on the other side of the next room, thereby destroying the room you're currently standing in. Handy glitch cos it lets me show off what I have to far
https://www.youtube.com/watch?v=LVevoDOI6SI&feature=youtu.be