This year’s macOS update is out, and with it comes increased focus on protections against malicious software. The latest unstable build of 2.2 (#3209) now complies with the new requirements. I’m also looking into making an updated build of the stable 2.1 for macOS.
The new requirement is that applications must be pre-scanned by Apple (“notarized”) to ensure they are properly signed and contain no malware. It took a few builds to get this working right, as it turns out I was using quite an old version of the SDL2 frameworks on the macOS build machine and those were not being signed correctly.
Another issue you may encounter now with Catalina (and Mojave) is that looking around using the mouse/trackpad causes the player view to just spin around rapidly. This is because Doomsday’s mouse input relies on being able to reposition the mouse cursor while it is hidden. If an application wants to change the cursor position, this requires that the user has allowed it to control the computer in the Security & Privacy > Accessibility system preferences pane. If you encounter this problem, drag and drop Doomsday.app from the Finder to the list of apps on that pane.
2.1.1 is a patch release that improves the stability of the engine and fixes some incorrect behavior.
There were a couple of regressions in the renderer such as white flashes with additively blended dynamic lights, and black walls appearing in the sky. A few bugs have also been fixed in the game menus and resource file management.
Download build 2967
Doomsday 2.1 has been released (build 2900), coinciding with the 25th anniversary of DOOM!
This version contains several improvements for an all-around nicer experience:
Graphics optimization. While games still use the classic renderer like in 2.0, all graphics are now drawn using OpenGL 3.3. This enables optimizations for more efficient rendering of the player view, menus, text, and the Doomsday UI.
UI improvements. The Doomsday UI look and feel has been refreshed. The game library is now more flexible and powerful with further game customization settings and view options.
Multiplayer convenience. Clients will automatically download missing PWADs from the server before joining the game.
The third and possibly final release candidate of 2.1 is now available (build 2898).
This build comes with a couple of Windows-related updates: the Qt library has been upgraded, and the 32-bit Windows build now has a fully functional FluidSynth audio plugin. This has been available in the 64-bit build for a while.
Unless any showstoppers are discovered, the next build will be the stable 2.1.0.
2.1 RC2 was released today (build 2895).
The issues discovered in RC1 were fixed but a couple of new ones were found. If you download RC2, please note the following:
- MIDI sound font cannot be changed via the audio settings GUI. One can still change the sound font manually via the “music-soundfont” cvar, though.
- A resource error occurs during the Ultimate Doom (BFG Edition) title sequence.
- Some data files are inadvertently tagged as “hexen” (thanks to deus-ex for researching this!).
- Data file version numbers are not always parsed from the file name.
In addition to these, there is an older issue that the 32-bit Windows build does not support FluidSynth for music. This will be addressed before the next build.
2.1 RC1 is now available (build 2890).
I’ve listed many of the changes in the previous post. Since writing that I’ve been optimizing rendering performance. You should find the engine running a bit snappier now.
However, there are a couple of known issues in this build:
- Weapon switching keys are cycling weapons instead of switching to a particular weapon.
- There are warnings about random “renderer.pack” issues.
- Readme has not been updated with any of the new features, and some of the links are obsolete.
Let me know if you find any other issues. RC2 will be available once these are fixed.
Version 2.1 is now feature complete. While I originally hoped to focus on multiplayer-related enhancements in this release, it turned out a little differently. Roughly speaking the first half of 2018 was spent working on the foundations of the next revision of the renderer (not included in 2.1), and only during the second half I focused on 2.1 related work.
One important multiplayer improvement has been added for 2.1, though: clients can download mods (e.g., PWADs) from the server in case they are needed for joining a multiplayer game.
The stable 2.1.0 will be released before the end of the year. I intend to spend the remaining time on fixing bugs (some already listed in the roadmap).
Let’s have a quick look at the changes done over the past weeks.
Continue reading What’s new in 2.1
This is the final installment of a short series of posts detailing what I’ve learned while exploring the possible directions that a redesigned Doomsday renderer could take. This post is about integrating the new renderer into the existing engine.
Continue reading Further rendering explorations – Part 3
During the spring I’ve been exploring the possibilities and potential directions that a completely redesigned renderer could take. Continuing from part one, this post contains more of the results and related thoughts about where things could and should be heading.
Continue reading Further rendering explorations – Part 2
When it comes to graphics, things sure have changed since the beginning of the project. Back in the day — almost 20 (!) years ago — GPUs were relatively slow, you had a few MBs of VRAM, and screen resolutions were in the 1K range. Nowadays most of these metrics have grown by an order of magnitude or two and the optimal way of using the GPU has changed. While CPUs have gotten significantly faster over the years, GPU performance has dramatically increased in vast leaps and bounds. Today, a renderer needs to be designed around feeding the GPU and allowing it do its thing as independently as possible.
With so much computation power available, rendering techniques and algorithms are allowed to be much more complex. However, Doomsday’s needs are pretty specific — what is the correct approach to take here? During the spring I’ve been exploring the possibilities and potential directions that a completely redesigned renderer could take. In this post, I’ll share some of the results and related thoughts about where things could and should be heading.
Continue reading Further rendering explorations – Part 1