As a general rule: If I don't post for a while, it doesn't necessarily mean I don't work on the project. Most of the time it means, that I'm going down an alley (development-wise), of which I am not quite sure yet.
Over the last years I have been bouncing back and forth between various designs of the game world: A procedural world, that creates itself as the player progresses on the one hand, and a pre-generated world, that simply streams in and out levels as the player encounters them. At the same time I couldn't decide on how to optimize performance. That's why I had repeatedly incorporated "forest rooms", closed boxes, that aim to deliver the illusion of a deep dark wood. But every time I followed through with one of those concepts my FPS would eventually drop below a viable point. It always happened during the last stages of game world development and it crushed me quite frequently, because I knew I had wasted hours and hours of work for nothing.
Over the last month, I had the opportunity to try out many things with my new GPU. And this time there was no excuse. If the FPS drops below 90, it's bullshit. If there is overdraw, it's bullshit. If it looks shitty, it's bullshit. Because I knew performance-wise, that I was now on the high end of my previous bottleneck component - my GPU.
And then one night I returned to one of my earlier concepts: A maze-like structure, built from circular walls, with entrances on all four sides of it. About two years ago I had created a procedural maze like this, that would open it's doors to the player once he discovered a diamond hidden in the level. Back then I discarded the idea, because since the maze was procedural it quickly brought me to my limits regarding my skill in blueprint and c++ programming. But then an idea hit me: Manipura Chakra is frequently translated as "the city of jewels".... what if the gates correspond to certain types of gems, that in turn correspond to the five elements that the player encounters?
A unifying concept, that would give room to the entire gameplay I had already set up ... each segment could be optimized and separately streamed, and each part of the maze could be individually prepared as a separate level. There would be no overdraw, as all the other segments would not be streamed at the same time, and the player's line of view would be blocked by these circular walls. There would be no FPS drop, as I would be able to optimize each segment individually. If split into separate segments, I would even be able to use transformable landscape components, lakes, mountains, canyons, as long as they were limited to a single level segment. And the player would still be able to make his own decisions and his own way through the maze, since only one of those four gates needs to correspond with the gem contained in each segment. If one of the remaining three gates by chance corresponds with the gem he encounters, he can move forward in various completely unforeseen directions.
I would be able to use my previously created transition-gates, my destructible blueprints, my dharmapala palace meshes ... all the work was done, it just needed to be put into context and optimized in a way, so that the game was ready for VR.
And so I worked on it. And I created my gems, from public domain images of diamonds. And I recreated my transition gates, so they would respond to the color of the gems. And I set up 8x8 landscape segments and another 36 ocean segments, placed all gates inside the maze and connected them to their corresponding jewels. On top of that I built a randomization system, that places each gem in one of six random locations. So players will never be able to tell in advance where each gem is hidden.
And now all of this preparatory work is done and with a fresh pack of forest assets by the amazing MAWI company, I am ready to start detailed level design of each segment. And the best part? I don't need any outside help. It's all on me, and I love it.
Keine Kommentare:
Kommentar veröffentlichen