[Future Suggestion] 32bpp rendering & positional audio tip

Issue #157 new
Former user created an issue

First, I'll just quickly say I'm loving ECWolf and the brilliant way it brings modding to life. And Executor's Techdemo is a bloody brilliant mod in its own right. Playing through it, I think ECWolf is golden and can only get better — and I do have some thoughts for a couple of little things that could go a long way.

Definitely not bugs, nor really issues. Just tips for future dev.

First, proper true colour rendering! It'd make 24/32bpp hires textures (which are already supported!) display correctly without the naff palette-snapping and it'd also make the doom-style lighting/visibility thing look a lot healthier. (It'd probably also improve performance, I imagine, since the CPU won't have to be searching the palette for nearest-matches — I'm guessing that's the mechanic, obviously).

Maybe either have an option in the graphics settings to use 32bpp rendering. Or, even, just have a flag to enable it on a mod-by-mod basis. Bah, just an idea.

Also, I'd like to point you towards maybe implementing some "fancier" stuff to the audio in the future. I'd strongly suggest a lowpass filter. With a simple LPF, you could distinguish sounds positioned behind the player. You could also significantly roll off the high end for sounds coming from other rooms when doors are closed. Why not stick a simple reverb in there, too? Here's a tip for the reverb: have a single global reverb with a quiet output level, then have all sounds that send to it send before level-by-distance. That way, very distant sounds will be wetter reverb-wise than closer. Also, modders could specify the basic reverb parameters on a level-by-level basis. On the subject, "Freeverb3" might be worth looking at if you're ever interested in jazzing up ECWolf's audio.

Sure, these sound like things that would drift from vanilla. Vanilla's fine, but ECWolf has some good features that could also modernise it a bit (hires textures, widescreen support, sound mixing, etc). And there's nothing wrong with giving Wolf3D a facelift — it'll show kids today why it's better than the visually-superior but otherwise naff rubbish they're playing now! :-)

Comments (3)

  1. Christopher D

    32bpp textures won't improve performance - All the graphics in memory would take 3 times as much space (4 times if we support also alpha).

    It may be possible someday, though. (But wouldn't that need a renderer rewriting?)

    Also, "there's nothing wrong with giving Wolf3D a facelift" - there is, if it was to be made not optional. ECWolf, unlike most other source ports, tries to make the games appear quite similar to what they were like in '90s. (I still shiver on thought of all these blurry 64x64 sprites)

  2. Filipe Tolhuizen

    A discontinued port called WinWolf3D had hardware acceleration but used no filters at all, which made the game still look pixelated, but improved performance. It also had unfinished scripts for Blake Stone, Catacomb 3D and Catacomb Abyss. Maybe you should take a look at it (from the same guy who made WDC). He took it down from his page, but I still have it.

  3. Braden Obrzut

    Did I seriously not comment on this earlier? I guess I'll comment on the OP first then.

    ECWolf will always default to 8bpp software rendering. It's mostly a personal thing that I like to base the port around what can be done with the original rendering techniques. Which isn't to say that an option for true color or even hardware acceleration can't be added, but I have very low interest in doing that myself.

    As for the notion of 32bpp rendering being faster. It possible it could be once we start talking about alpha blending, but ZDoom and ECWolf palettize graphics once on load, so there's no a whole bunch of nearest match calculations happening. The matching is based on a 5 bit per channel lookup table so that's not particularly slow either, although it is imprecise.

    I'm keeping the thread open due to the note about the audio. When I get around to improving the audio code, I will be looking into what is said there.

    Filipe, I am aware of WinWolf3D. Adam Biser actually helped a bit with the UWMF specification. I do know about the scripts for the other games although he never mentioned them to me (at least as far as I remember). Don't know if there's a reason for that. Not that it matters much since we now have the source codes to work with. I'm probably better off getting the information from the source rather than second hand.

  4. Log in to comment