It’s finally here, but buckle up, because we have a lot to talk about.
Continuum 2.1 Beta: A long time coming; why?
After many…many months, and this entire project going from a simple update to our then Optifine based shader, to a ‘port’ to our Focal Engine, and then evolving, for better or for worse, into essentially a complete rewrite, 2.1 has now entered Beta. This release is feature complete, true to the Beta name, and with the additional time we had working through mostly self imposed Focal issues, fairly polished.
With that being said, I’m sure some of you, particularly ones that don’t always read our blogs or check in on the Discord super often, are wondering why this took so long. Given the time since the last update, we can’t blame you, so let me explain. No excuses, just…a condensed version of what happened:
(if you don’t care and would prefer to skip to the features overview, head to the next section)
This all started shortly after we released 2.1 Alpha Build 12. We had begun work on weather at the time, one of the few remaining features to push the shader to Beta, and certainly the most major. At the time, Robobo was the one exclusively working on 2.1, while Jake and Dot worked on RT/Focal. The problem? Robobo was about to start University, and quickly found that he no longer had the time or motivation to work on 2.1 on top of school. We tried it out (probably for a few months too many), with very little progress before finally admitting that it wasn’t really working, but we also couldn’t really pull much time away from RT, and especially Focal back then, so we continued on till a bit after Focal 1.0’s release. Eventually we turned some attention back to 2.1, and instead of continuing the work done by Robobo for a potential Optifine Build 13, we decided to port 2.1 to Focal, to take advantage of some of the new features and potential performance improvements. Unfortunately, partly due to our unchecked enthusiasm, and partly due to not thinking ahead, we ended up essentially rewriting the whole shader, chasing both performance improvements, new techniques and increased quality. This not only took much, much more time than expected, but required many new features to be added to the OpenGL version of Focal. We also ran into issues that we should have expected, such as AMD driver woes (which we are still dealing with in fact), that we failed to adequately plan for, and a few other issues leading up to this release.
Essentially, we put more on our plates than we could manage, especially with some of our teams personal/life struggles, such as Robobo and University, or dotModded with a few health scares, some unfortunate mental health setbacks and motivation issues. The pandemic didn’t help things either, but in the interest of honesty, it didn’t affect most of us much more individually than it did the average person. The company as an entity did struggle a bit, but we managed. Regardless, the amount of time this update took to be released, no matter how much was rewritten, the features that were added, etc. is entirely on us, and it is not something we want to repeat. We will be striving to improve this going forward.
The features
As mentioned above, we ended up basically rewriting the entire shader. Pretty much every effect was touched at least touched upon, either being optimized, it’s quality improved, or replaced with an entirely new technique. Many missing features were added to bring the shader up to feature complete status, as well as a few we personally wanted…and a plethora of bugs were quashed along the way. We will put the highlights below, for a deeper dive into some of these effects/changes however, we would recommend having a look at a previous blog post here.
- Added Weather (cloud cover, fog, rain, puddles, ripples)
- Moved to a new sky model (dynamic, faster, better user configurability and Aerial Perspective support)
- Rewrote GI and AO (more stable; especially at distance, better quality, faster, support for specular occlusion for better specular quality)
- Moved to a new SSR model (faster, better quality, less noisy)
- Shadowmap distortion improvements
- Rewrote Volumetric Light (faster, better quality, less noisy in and out of water)
- Optimized Volumetric Clouds
- Added Emissive texture support (for oldPBR and LabPBR)
- Improved POM and POM Shadows
- Moved to Histogram-based Auto Exposure (better scene adaptation, better user configurability)
- Added End support and improved existing Nether support
- Added new, and hooked up previously non functional Post Process settings (LUT support, etc.)
- Implemented improved TAA method
- Water normals have been massively improved (no more stepping on waves)
- Added Lens Flares (disabled by default)
- Added Night Vision (potion) support
- Enabled Volumetric Clouds and Fog by default due to increased performance, and to better portray the default look we want from the shader
- Slightly improved and enabled Underground Shadow Fix by default
- Improved upscale/downscale quality via the ‘Render Quality’ setting
- Added a plethora of new user facing settings to tweak various effects to your liking, including Volumetric Cloud Scattering Coefficient to fine tune the look of cloud lighting to your preference, or Water Roughness Falloff, to better tune how close to your camera water smooths out, depending on your display resolution/preference, and more.
The above is just what we can remember at the time of writing this blog. There are certainly a few more minor features we forgot to mention.
Here’s a few screenshots taken with just a few of the user adjustable settings available within this release tweaked (click to view larger image)
Focal Engine 1.0.5
We mentioned up above that Focal was updated with new features to enable some of the new effects and performance of Continuum 2.1 Beta, but we also fixed numerous bugs, from issues with downloads, to odd behavior when resizing the game window, to logged out download bugs. We also updated the supported Minecraft versions, though we are not supporting as many as planned (more on that below).
A few Caveats;
AMD Support
As we touched on in the first part of this blog, we were still facing issues on the AMD driver side, not only because of a touch of poor planning on our end (main AMD test card ended up with a dev that didn’t have time to troubleshoot these issues for a while), but also because of their recent decision to play with their OpenGL driver, causing us to waste a not insignificant amount of time attempting to fix 2.1 Build 13 on one of our AMD test machines with a driver that had a broken OpenGL implementation to begin with due to using problematic drivers.
This means that as of right now, Continuum 2.1 Beta Build 13 is not guaranteed to work on AMD hardware. We did get it mostly working on our RX 480 test system, on the last recommended AMD driver for Java Edition shader usage (22.6.1), but we have yet to full stabilize the shader on our 5700xt. As such, we again cannot guarantee proper AMD support with this release. We will be continuing to work on fixing these issues and will be pushing a new build as soon as we can. In the meantime, AMD users should use Build 13 at their own risk.
Minecraft Version Support
We intended to target up to Minecraft 1.18 for this release…since setting that target, Minecraft 1.19 released, and we faced some major hurdles just getting 1.17.1 support, from both a Minecraft side, a backwards compatibility with RT side (more on that in a the next section), as well as some time constraints with our main contributor for Minecraft version updates (not blaming them, it is what it is).
This means that this release, and the accompanying Focal Version 1.0.5 (which is required for Build 13), only supports 1.14.4, 1.16.5 and 1.17.1 at this time. We will be working towards at least supporting 1.19.2 as soon as possible, and will consider 1.18 if we feel there is sufficient interest.
Continuum RT Backwards Compatibility
As we mentioned in the previous section, we faced a bit of an issue getting Builds 13, 14 and 15 of RT to work on the new 1.0.5 version of Focal.. This was due in part to a small oversight on our part on Focals side, which was easily remedied, but mainly a 1.17.1 specific issue that we could only fix by patching the shaders themselves. Thus, at least on 1.17.1, users will need to redownload Continuum RT Builds 13 through 15, if they have a version downloaded before today (September 28th). In rare instances, this may require you to delete the shader.bin files before redownloading, they are locating in your Minecraft profile directory > focal > shaderpacks.
Moving forward
We have mentioned most if not all of this in the previous sections, but to recap; wIth this update released, our priorities will be shifting.
- First, and hopefully shorter term, to getting AMD support back to where we want it, as well as getting 1.19.2 support.
- Once AMD is sorted out, our head shader developer, dotModded (Joey), will be moving almost exclusively to work on the Vulkan update/refactor for Focal Engine, as this is the future for both RT, and the future Continuum 3.0.
- While dotModded works on Vulkan, Jake and Robo will be mostly focusing on fixing bugs reported with 2.1 Beta, and generally moving the shader towards a full release, as well as assisting dot with Vulkan if need be.
- We are also exploring a potential Build 16 of RT that would include some of the new features from Build 13 of Continuum 2.1, just how many, we cannot say yet. Jake/Robo would be working on this when they need a break from 2.1 bugs, and it coming to fruition is highly dependant on the challenges we face when we really dig into it. We will provide updates on this in a future blog.
Stratum
It’s a bit late, due to us holding back this months normal progress update to work through the last 2.1 issues (didn’t intend for it to take this long), and a bit overshadowed by that release, but Stratum still got some meaningful updates this month. These updates include the addition of the long awaited Diamond Ore, and it’s Deepslate variant. This update brings us very close to rounding out the currently available ores!
We would like to note that we will likely revisit this Diamond Ore in the future when we have a few more shader side features centered around Gems fully fleshed out. We have some interesting ideas for them that we hope to explore one day.
As usual, you can find the full details about all of these changes, and some screenshots below.
Stratum Build 29 Changelog
Added
- Raw Gold
- Tuff
- Diamond Ore
- Deepslate Diamond Ore
Tweaked
- None
Click an image to enlarge and enable gallery view
Summer 2022 Screenshot Contest Winner Showcase
Before we close this blog out, we wanted to showcase the winners of our last screenshot contest. We ran this contest back in July, but got caught up working on 2.1 and didn’t feature them in our July Progress Update. You may have seen a few of them featured on our Social Media since then, or on the Project Showcase page, as they’ve been added to that, but if you haven’t here they are!
You can click each submission to view larger/full aspect versions, as well as see more details about each.
That was a long one. Thanks to all the fans that read to the end, as well as those who have stuck by us over the years. We hope you enjoy this update and we hope you come back to see what we have in store for you in the months and years to come!