Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
MrGlide

Does PrBoom+ have any advantages over Eternity?

Recommended Posts

I see a lot of people that seem to use PrBoom a majority of the time, and after checking out Eternity I've got to say I'm really liking it, more so than the prBoom source port. So I've got to wonder what advantages does PrBoom have over Eternity, and if it doesn't have any, why don't more people use Eternity?

Share this post


Link to post

They're both descended from Boom, but they take very different directions.

 

PrBoom-Plus is geared mainly toward demo recording and playback, so it has lots and lots of features that specifically relate to playing and recording demos and maintaining backwards compatibility with them across different versions.

 

Eternity can play and record vanilla Doom 1.9-compatible demos, but its unique feature set is more geared toward adding new mapping and gameplay functionality, with features like freelook, linked portals, scripting, and custom monsters.

Share this post


Link to post

prboom-plus can record vanilla (1.2 with incorrect header, 1.666, 1.9), Boom, MBF and its own demos. Eternity can only record 1.9 and its own ones.

Share this post


Link to post

Honestly unless you want to playback vintage demos or there's something else that's being forgotten there's no reason to not use Eternity instead.

Share this post


Link to post

Well PrBoom+ comes with GLBoom+. There are a few mods out there that are made for GLBoom+ specifically. For example:

  1. VooDoo Guns
  2. Hell Ground
  3. Frozen Time

All three by the same author, incidentally.

Share this post


Link to post

GZDoom is off-topic, though, since we're comparing PrBoom+ with Eternity.

 

The wider range of demo playback profiles ("complevels") and the advanced OpenGL rendering features (complete with high-res textures and so on) are two things that GLBoom+ offers that Eternity doesn't. GZDoom offers one of these things and definitely not the other. Eternity also has things to offer that GLBoom+ doesn't, of course. Now which port you'll prefer using ends up depending largely on which features you want to have and which you don't especially care about. There's something for everyone.

Share this post


Link to post

I'm still surprised nobody has tried to make an OpenGL or Vulkan renderer for Eternity yet. It doesn't have to be a focus of the port but it would be a nice feature to help gain players, especially since it'd be a truecolor alternative.

Share this post


Link to post
59 minutes ago, Woolie Wool said:

Why wouldn't a GLBoom+ mod work with GZDoom, which is GL and fully Boom compatible?

GZDoom is beside the question, I suppose. Truth be told, I used GZ for all my casual needs as a port that can "do all the things", but when I now get my hands on anything that runs with PrBoom+, I use PrBoom+.

Share this post


Link to post

Odd advantage, PRBoom+ supports mp3 music; Eternity used to support it, but it apparently caused crashes. I think also it supports certain hi-res stuff that Eternity doesn't at the moment.

 

1 hour ago, Death Egg said:

I'm still surprised nobody has tried to make an OpenGL or Vulkan renderer for Eternity yet. It doesn't have to be a focus of the port but it would be a nice feature to help gain players, especially since it'd be a truecolor alternative.

 

When Vulkan was just released (as in days after) I toyed with the idea of a Vulkan renderer, but I'm way too much of a novice even now for that. A truecolour software renderer is in the cards, as the standalone Cardboard (Eternity's renderer) supports truecolour as well as paletted, though it's not as simple as just swapping stuff out (otherwise we'd have already done it). If I for some reason feel like taking the master's course at my university, I might try and make my 3rd year research project "transitioning software renderers to hardware" if they let me. I'm mostly a middle-end kinda guy though, so something that guts-y (not gutsy) would provide new as well as difficult. I have dealt with the renderer before though, so I'm not a total novice to it.

Share this post


Link to post
1 hour ago, Death Egg said:

I'm still surprised nobody has tried to make an OpenGL or Vulkan renderer for Eternity yet. It doesn't have to be a focus of the port but it would be a nice feature to help gain players, especially since it'd be a truecolor alternative.

The issue is more subtle in that Doom's style of rendering is not directly compatible with a polygon renderer. Add Eternities portals to the mix and you have yourself a problem. It would actually be easier to make the software pipeline true colour for Eternity than it would be to make a polygon renderer, and true colour still has its own fair share of issues (colormaps and Boom translucency maps).

 

Surprise surprise, changing things for the sake of change breaks compatibility with older maps, which Eternity actually tries to avoid.

Share this post


Link to post
1 hour ago, Edward850 said:

It would actually be easier to make the software pipeline true colour for Eternity than it would be to make a polygon renderer, and true colour still has its own fair share of issues (colormaps and Boom translucency maps).

I would say this is true, and my interest in creating a true-color renderer for Eternity extended mainly to software truecolor.

 

3 hours ago, Death Egg said:

I'm still surprised nobody has tried to make an OpenGL or Vulkan renderer for Eternity yet. It doesn't have to be a focus of the port but it would be a nice feature to help gain players, especially since it'd be a truecolor alternative.

 

Would it be nice for Eternity to have a true OpenGL (polygonal) renderer? Sure it would. But we already see just with GZDoom that there are issues with it - and while GZDoom may definitely be one of the more developed ones it still does expose a few problems with transitioning a 2.5D system into a true 3D world - and even has to have some compatibility patches, or in some cases even gross hacks, to try and make them a little less obvious.

 

Plus - and this is purely my opinion - Eternity has one of the best paletted software renderers out there. It's definitely slower than ZDoom's, but for that price it's more accurate and definitely has vastly improved portal support. In my view, if Eternity does go true-color it should definitely do it in software, first, before attempting the polygonal hardware version - because it would be a real shame to see people abandon that renderer. (Yes, I am actually jealous of it)

Edited by Rachael

Share this post


Link to post

Yeah Cardboard is a thing of beauty.

 

PrBoom+: GL and Demos

EE: Everything else

 

(oh and PrBoom+ has mouselook also :)

 

Oh, will EE do video capture?  That might be another thing.

Share this post


Link to post

PrBoom's complevel arguments are really convenient for making sure everything is set right for whatever wad you want to play.  It's a lot easier to add "-complevel 2" to a batch file than it is to go through menus.

Share this post


Link to post

It's a widescreen specific thing, because drawing it on the left wont do what you think it will if the resolution is 4:3. All hud elements are drawn to a virtual 320x200 screen to maintain scaling, and if you drew the text on the left, it would actually be on the left at all.

Share this post


Link to post
6 hours ago, Edward850 said:

The issue is more subtle in that Doom's style of rendering is not directly compatible with a polygon renderer. Add Eternities portals to the mix and you have yourself a problem.

 

GZDoom does implement portals in the GL renderer - in fact aside from edge portals it can already do everything Eternity needs. That part really isn't so hard, of course it required some creative thinking to do it without relying too much on data from rendering the outer scene. But regardless, you already have a template to work from.

 

 

6 hours ago, Edward850 said:

 

 

It would actually be easier to make the software pipeline true colour for Eternity than it would be to make a polygon renderer, and true colour still has its own fair share of issues (colormaps and Boom translucency maps).

 

You know, that "problem" is of an entirely different kind. Everybody knows that these two features are essentially dead ends when it comes to renderer modernization which is the main reason why ZDoom had tried to steer clear of them right from the start.

 

Just looking at the entire community of Doom players, inside and outside of Doomworld, you will quickly find out that the vast majority of them prefers hardware accelerated true color rendering which will make Eternity instantly one of the least appealing ports to them, because aside from the 'classic' ports it is the only one left without such a feature. I have wondered in the past if keeping the palette hack features is really worth that loss.

 

 

6 hours ago, Edward850 said:

 

Surprise surprise, changing things for the sake of change breaks compatibility with older maps, which Eternity actually tries to avoid.

 

What 'older maps'? While I have seen the odd colormap out that does something different than just colorizing the scene, I have never seen a single map that uses TRANMAP for anything else than applying translucency, outside of designated test cases. At some point you have to choose which kind of compatibility is more important - handling every degenerate case from the parent ports or looking forward into the future where Doom breaks loose of its more annoying restrictions.

 

Share this post


Link to post
48 minutes ago, Graf Zahl said:

What 'older maps'? While I have seen the odd colormap out that does something different than just colorizing the scene, I have never seen a single map that uses TRANMAP for anything else than applying translucency, outside of designated test cases. At some point you have to choose which kind of compatibility is more important - handling every degenerate case from the parent ports or looking forward into the future where Doom breaks loose of its more annoying restrictions.

 

Nothing you have to say on this matter is valid while you have a 700-odd lined compatibility.txt file filled with hand picked compatibility options.

Not every ports methodology has to be GZDoom's, especially when it comes to its "add now, fix later" attitude for boom compatibility, and that's only the maps people report. It's even more pointless when stuff can only be detected after somebody encounters the issue.

 

If Eternity just dropped everything it did just to add features, then it'd just be another ZDoom, which is entirely pointless. You of all people should understand that, unless your objective is to make the port entirely redundant. Yes sure TRANMAP is a niche feature, but seeing as the whole point is to maintain Boom compatibility...

Edited by Edward850

Share this post


Link to post
37 minutes ago, Edward850 said:

Nothing you have to say on this matter is valid while you have a 700-odd lined compatibility.txt file filled with hand picked compatibility options.

 

Well, if two thirds of that wasn't just IWAD map bugs (missing textures or bad sector references) or dealing with the fallout of poor decisions by the Boom developers, or some ZDoom maps that actually exploited an engine bug that would render a given feature unusable... (e.g. the setslopeoverflow option)

At least ZDoom tries to address these issues. Where's Eterntity trying to auto-fix maps that suffer from Boom's fix to ignore texture 0 for raising a sector by texture height, for example? Oh yes, you have to go to the menu and manually set the option - which is normally too late when you realize you need it...

 

 

Quote

Not every ports methodology has to be GZDoom's, especially when it comes to its "add now, fix later" attitude for boom compatibility, and that's only the maps people report. It's even more pointless when stuff can only be detected after somebody encounters the issue.

 

Yes, Edward at his best passive-aggressive self.

 

But be it as it may, it's just a perfect example of looking backwards instead of looking forward. It may be the engine you want - but is it also the engine your potential customers want?

I can only judge from the people I talk to in real life. These a casual players at best, people who grew up with games like Quake 2, Half-Life, Quake 3 or even more modern (i.e. people to whom a palette limited display is an alien concept), and from my experience I wish you good luck trying to make them understand why you have all these cool features and then choose to limit them with a renderer that reduces the fidelity of the output and justify it with support for some outlandish features that barely have seen any use in the real world.

 

Share this post


Link to post
15 hours ago, MrGlide said:

after checking out Eternity I've got to say I'm really liking it, more so than the prBoom source port

well, where are your arguments dude

Share this post


Link to post
5 hours ago, Graf Zahl said:

But be it as it may, it's just a perfect example of looking backwards instead of looking forward.

Those are some pretty words alright. There's just a tiny little problem.

 

GZDoom might look pretty advanced compared to - I dunno - vanilla Doom? But it doesn't look like future. It doesn't even look like present.

 

5 hours ago, Graf Zahl said:

It may be the engine you want - but is it also the engine your potential customers want?

This should be relevant why, exactly? The "potential customers" want GZDoom, and that's not gonna change any time soon.

 

Appeasing the casual players doesn't sound like a very appealing idea, unless there are some money involved. Besides, you've said it yourself: Doomsday is the people's choice when it comes to casually reliving the old days, and casually reliving the old days is the least niche thing you can do with Doom. Y U NO make GZDoom more like Doomsday?

 

I can't speak for everyone, but I know what I'll do if Eternity drops its "degenerate" software features. My ideas for Eternity projects will turn into ideas for GZDoom projects. That's the whole point, right?

 

Share this post


Link to post
10 minutes ago, Da Werecat said:

Those are some pretty words alright. There's just a tiny little problem.

 

GZDoom might look pretty advanced compared to - I dunno - vanilla Doom? But it doesn't look like future. It doesn't even look like present.

 

I'd say that how it looks largely depends on the mods being played.

 

 

10 minutes ago, Da Werecat said:

 

This should be relevant why, exactly? The "potential customers" want GZDoom, and that's not gonna change any time soon.

 

I don't agree with that statement as-is. I'd say the potential customers want an engine that is capable of presenting the content in a visually pleasing manner. It's not my fault that aside from GZDoom for many that means either Doomsday and 3DGE only. Of course then we get into the same old problem of 'lack of content' again. But at least 3DGE is going into the right direction so we'll see how it will develop.

 

 

10 minutes ago, Da Werecat said:

 

Appeasing the casual players doesn't sound like a very appealing idea, unless there are some money involved. Besides, you've said it yourself: Doomsday is the people's choice when it comes to casually reliving the old days, and casually reliving the old days is the least niche thing you can do with Doom. Y U NO make GZDoom more like Doomsday?

So you want Eternity to be 'Crispy-Doom enhanced'? Because that's the alternative: A niche port for a small target audience that precisely demands the existing set of features and 'please don't go beyond this, or else...'

 

10 minutes ago, Da Werecat said:

 

I can't speak for everyone, but I know what I'll do if Eternity drops its "degenerate" software features. My ideas for Eternity projects will turn into ideas for GZDoom projects. That's the whole point, right?

 

All I can say about these features has been said already but let's do it again just for completeness: These are typical proof of concept features - you occasionally see some demo project that uses them in a creative manner, but despite having been available for 20 years, where's the maps that actually use them?

 

 

On the downside, if they find adoption, 5 years down the line on the developer side: "How about adding a true color renderer to Eternity?" "Hmm... We got 10 showcase projects but 5 of them make use of hacked TRANMAPS and non-standard colormaps. No, we cannot make a true color renderer because it'd break half the mods we depend on." Ooops...

 

Or on the user side: "Cool map, but it requires an engine that uses software rendering exclusively and is slow as shit on my cool new 16K display. Avoid..."

 

So, by 'looking forward' I do not mean to become more like modern games but ensuring that the engine does not get overtaken by hardware advancements that render its design concepts ineffective - or putting such an emphasis on dead-end features that may eventually prevent adjustment to the advanced hardware.

Share this post


Link to post

Ugh. Yeah I never thought about that with people running 4k and 16k. Those are big-time CPU blockers, especially for Eternity.

 

That won't be a problem if Eternity picks up a multi-threaded renderer, at the very least, but it would have to split the entire screen and batch the rendering into vertical slices if it did it that way - not the way Q/GZDoom does it. That's the only way that renderer will survive being future proof - because as I see it, CPU's are getting more cores, but not more clock speed, but taking advantage of the new cores will at least somewhat make up for ever-growing display sizes, which if they keep expanding at this rate will still be unmanageable regardless, eventually, but at least it'll take a decade or two for that to happen.

 

Much as I love Eternity's software renderer - HWPoly is the only real future-proof solution to that problem. :(

Share this post


Link to post

What about Calamity? Anybody know whatever happened to that? That seems like it'd be the best solution for Eternity to have a hardware-based renderer that still looks close to the visual style it wants to achieve.

Share this post


Link to post
15 minutes ago, Graf Zahl said:

I'd say that how it looks largely depends on the mods being played.

Well, there's that one mod. But it still hardly looks like 2017, and even then it's more of a technical gimmick.

 

I know you didn't mean that kind of forward, but the point is: it's an old game. What you're seeing as clunky legacy ideas might still be interesting to mess with. 

 

17 minutes ago, Graf Zahl said:

So you want Eternity to be 'Crispy-Doom enhanced'? Because that's the alternative: A niche port for a small target audience that precisely demands the existing set of features and 'please don't go beyond this, or else...'

"Don't go beyond this" is simplifying things. Adding features is one thing. Adding features that can't coexist with old features is another. Removing features is the problem here.

 

I don't know what's better for Eternity: to be a niche port or another GZDoom. Maybe it will get some attention if it turns to the latter, but it's gonna be hard to convince people that they really need it.

 

43 minutes ago, Graf Zahl said:

On the downside, if they find adoption, 5 years down the line on the developer side: "How about adding a true color renderer to Eternity?" "Hmm... We got 10 showcase projects but 5 of them make use of hacked TRANMAPS and non-standard colormaps. No, we cannot make a true color renderer because it'd break half the mods we depend on." Ooops...

Which is why I'm not really sold on the true color renderer in Eternity. Right now it's the only advanced source port that uses 8-bit renderer exclusively, therefore having clear standarts for how everything looks in-game.

 

One way around this would be to allow the renderer to be forced by the mod, but I doubt anyone would implement such an "anti-freedom" feature.

 

49 minutes ago, Graf Zahl said:

Or on the user side: "Cool map, but it requires an engine that uses software rendering exclusively and is slow as shit on my cool new 16K display. Avoid..."

An average map today should run okay in 1080p. What more do you want? It's not D44M (or whatever's the current "state of the art" affair), you don't need to see every pixel on a face 2 miles away from you.

 

This is somewhat relevant to true color graphics with smooth lighting, but 8-bit rendering has different beauty standarts. Which you probably wouldn't know, because it seems to me that you just consider paletted rendering inherently ugly and irredeemable.

 

6 hours ago, Mordeth said:

This better not devolve in yet another zdoom-EE slugfest.

Don't worry, we'll try to keep it within 2-3 pages.

Share this post


Link to post
1 hour ago, Graf Zahl said:

"How about adding a true color renderer to Eternity?" "Hmm... We got 10 showcase projects but 5 of them make use of hacked TRANMAPS and non-standard colormaps. No, we cannot make a true color renderer because it'd break half the mods we depend on."

How is this a problem? GZDoom has long had features that only work in GL and not in software, and so people who normally use software have to switch to GL if they want to play the mods that use those features. This situation is no different. There's no requirement that both renderers have feature parity with each other.

Share this post


Link to post

I would accept a GL renderer if it could fake the appearance of 256-color software convincingly enough. Shaders are pretty powerful these days and I don't see any particular reason why you can't fake the effects of COLORMAP with some clever shader trickery. GZDoom's pixel fuzz shader is already the only way to do fuzz in high-res that looks remotely acceptable--the original software effect was clearly made with 320x200 in mind and looks worse the higher the resolution gets.

 

That said, I really, really do not see the point of software Doom in 4K because the sprite and texture resolution is so small and the practical size of areas in Doom so limited by its gameplay mechanics that you reach the point of diminishing returns around 800x600. If 4K is too much, why not just cap the software resolution at 1200p and multiply the pixels as necessary? A flexible, generalized pixel scaling system would also have benefits for crazy people like me who like the blurry, dreamlike nature of Doom in mode 13h or similarly low resolutions--wouldn't it just be nice to be able to dial a resolution and let the renderer upscale it to your native resolution without worrying about supported video modes or your windows being resized/moved around/otherwise fucked with when you quit back to desktop?

Share this post


Link to post

Personally I'd like a GL renderer in Eternity to be able to make use of hardware rendering features, rather than putting all its eggs into trying to emulate software perfectly when it already has the best software renderer around.

Share this post


Link to post

out of interest, what makes eternity's software renderer the best? performance? less slime trails? does it also have wiggle-fix-type things for pathological cases?

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×