Epic Mega Jam 2025:
However vast the darkness, we must supply our own light

Setup

This time, I had the experience I learnt during my last game jam. So regardless of the time-constraints I had a better chance of setting up a good action plan that was realistic and would help me achieve the goals I had in mind before the deadline. I spent the first day setting up the project in Nvidia’s new branch, tweaking the various RTX settings, and above all, prepping a schedule that would help me during every day

One thing was clear to me from the beginning; I didn’t want to spend any more time that I needed doing Asset Development. So, I made use of the vast free options online - some from Megascans, some from Sketchup. This help make sure I was focusing on what mattered.

After setting up most of the characters, some tests with the environment assets I was planning to use, I knew I had a good concept to go forth. There were many details I was going to leave to the very end (post processing, fx, etc). So, I started getting on with Level 1. This stage taught me something invaluable I hadn’t anticipated. Good level design takes A TON OF TIME. Not sure the design for the game play itself (making sure it doesn’t drag, that the loop is efficient, etc) but decorating alone. While I always respected environment artists, going through the motions gave me another layer of respect. It can be so slow, but when done right, the reward is worth it. In total, I made 3 levels, I probably spent a combined total of 18 hours just making the environments look decent. But since I was going for a more realistic look (with RTX) I knew I had to spend the time.

A big concern I had during the development of the environments was performance. Regardless of RTX technology, I expected that having too many assets making up the environment, and adding a ton of different corals for the atmosphere could cause a performance bottleneck both in the CPU and GPU. Here’s where I got to play with one aspect of Unreal I hadn’t before. Foliage! A very effective tool to paint the corals around the maps knowing that they will be efficiently instanced. On top of that, combing all the environment assets to back them and force them to be instanced definitely helped big time.

The thing is, if the environment could look good, I needed to make sure everything else did too, and while for many this would not matter, I really wanted the goldfish the player plays to look good too and in particular FEEL good too. Here’s where I did possibly one of my favourite effects in the game. Using Control Rig, I made it so that regardless of what animation is being played (swimming, idle, etc), the fish’s body would lag behind any turn. Allowing for a more fluid-like movement that felt natural for a fish. I was pretty proud of how this turned out.

I knew from the beginning I was going to be using a fair bit of Niagara too. I did want to make more use of it but lacked the time. The main focus was on the one side, the plankton, which swirled around a particular spot, but also followed the player. Not only I wanted to feel like it moves nicely, but it was going to be big contributor to lighting too as each of those particles was a dynamic light on it’s own. Another good use of Niagara was the fake fog I created which leveraged Unreal’s default smoke sprite which I got playing in an effective way so that it looked like fog around the whole environment, in some parts it looked a bit too much like smoke, but I didn’t have time to address it further. And the final use of Niagara was for the Jellyfish’s lighting FX. Which consisted of beams that sparked out in electric-like shapes.

Premise

After my first MegaJam in 2023, and recovering from it. I decided to take part again in 2025. I had a particular interest in mind and this year’s theme was particularly interesting: Here We Go Again. The theme commemorated 10 years of MegaJams and brougth forth some Categories from the past as modifiers. In particular, the one I became fixated on was However vast the darkness, we must supply our own light.

A powerful quote from Kubrick, but in this case, I wanted to take it quite literally and make something special with lighting in Unreal.

Goal

One of the sub-categories in the contest was relating RTX technology. I had been curious for some time about NVIDIA’s RTX branch of Unreal Engine, so this felt like a good time to explore this and figure out what special technology they offer that could be of use in both personal and professional projects.

In particular RTXDI was my main interest. So, to that end, thinking about what kind of game I could put together that used multiple dynamic lights led me to the idea of Bioluminescence in deepwater sea. So with that in mind, I went ahead to make a game about collection bioluminescent plankton, that gets fed to corals in order to advance. This choice made it easy to think about challenges, because enemies were obvious such as an angler fish (with it’s own lightbulb) and Jelly Fish (with electric beams).

I had 7 days and a lot of work to do!

Result

I am very happy with how it turned out! It’s a big step up from my last submission and I know I was able to get the result I wanted because of good planning. As of this page, the contest just ended a couple days ago. This was a fantastic experience I got to share with colleagues who were also participating and doing their own game - where we would hang out in a call and help each other out where needed. Right now I need to recover some sleep, but I think I look forward to participating again next year.

If you’d like to check it out, feel free to download (including instructions) from Itch.io —> BioLume

Here you can see the impact of RTXDI - Where scenes with multiple dynamic lights get a much worse performance output when RTX is disabled.