Plagman, on 19 September 2011 - 08:34 PM, said:
the way voxels work in Polymost is by doing exactly this, namely to convert a perfectly good volume set into a polygonal model, resulting in tons of geometry being generated in a suboptimal fashion. What they're asking me is to port this fucked up process over to Polymer. What I'm saying is that it's fucking retarded, and that while I might implement first-class volume rendering capabilities into Polymer at some point in the distant future there's much more critical work to be done first as DT pointed out. Going with the same half-assed hack that Polymost has would be stupid. There's already so much bloat going on in EDuke32, the last thing it needs is (another..) built-in converter that converts all your voxels into models every time you start the goddamn game. If you do the conversion offline, you save tons of CPU cycles when loading the game and it gives you the option to touch up your model after it's done and unlocks a whole range of shit that you're free to not use if you have an old-school fetish, and I respect that since as you said it would be hypocritical to dismiss that on a forum board that talks about Duke Nukem fucking 3D, of all things.
If anything, we should be removing similar idiocy going on in EDuke32. People should convert their MD2s once and be done with it, and we can remove a whole expensive conversion step and rotting codepaths that constantly introduce bugs. The voxel code in Polymost has all these things and then more weird rendering quirks that behave only slightly differently from models, giving more weird shit to modders to think about when they're trying to get things done. All the Polymer model preprocessing crap should also be thrown into an external tool that only does it once instead of taking half a minute spinning your CPU whenever you start the game with the HRP.
Plagman, on 19 September 2011 - 09:32 PM, said:
So you wouldn't use Polymost either then? My opposition is mostly about people asking that I port the Polymost cube conversion code to Polymer since it's "already there".
Plagman, on 20 September 2011 - 03:04 PM, said:
My point is that you wouldn't gain anything from using the Polymost voxel code over just converting your voxels to models offline, saving a bunch of processing power, opening up tons of possibilities that you may not or may not use, and without further damaging the sanity of the EDuke32 codebase. And of course he prefers voxels because he prefers voxels...
I'll try to make it clearer:
- People want voxel support
- I tell them it won't be for a long while because it's pretty much the last thing on my list
- They tell me that Polymost already has voxel support so why can't I just copy-paste that code and be done with it? That can't be that much work, right?
- No, because this code is inferior to just converting your models ahead of time in _every_ way. You should really do that in the meantime, you'll get all the features of Polymost voxel support and more if you want them.
I'm not trying to dismiss people who like voxels as silly even though it's personally not my thing. Tea Monster is very right that the way of Polymer is the future. That means that volume rendering will be implemented properly and using the latest techniques. Using the code from Polymost would just be a step back and again, it wouldn't provide anything over just converting your voxels to MD3 ahead of time, just take things away. I hope that's clear now, because I've been yelling that at the top of my lungs for the last 15 posts or so.
Dropping MD2 support makes sense for the future but mods will break. That doesn't concern me.
I am concerned about the Polymer preprocessing. It's important that exported MD3 files be able to be re-imported to make modifications and renders, especially if the source is lost. Speaking of which, MD3 support should be dropped too for something more modern.
I understand your point of view on voxels. I will never ask you about them again. I will work to write an on-the-fly converter for EDuke32 which is optimized in code size, conversion time, and in-game performance. That is the solution, especially so that future optimization improvments can be applied to the voxels, and because this will need to be done for Blood and Shadow Warrior anyway. However, if I fail, volume rendering will come eventually.
Tea Monster, on 20 September 2011 - 06:32 AM, said:
If people want it to look just like it did in 1996, they should get the original CD and a copy of DOSBox.
Looks are not everything. I could write a long list of everything added to EDuke32 and even the Polymer renderer that are not specifically related to highres textures and 3D models. Performance, mouse aiming fixes, resolutions, stability, modding...
Captain Awesome, on 20 September 2011 - 01:55 PM, said:
Hogwash. If anything voxels are the way of the future.
I side with Plagman on this one. 256 color palette-limited, 256x256x256 KVX files are not the way of the future. They are, however, a defining characteristic of BUILD.