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

We don't need 3D models! But we do need...

Recommended Posts

...Extra viewing angles. I think that the doom community would greatly benefit from a modder creating a package of extra viewing angles for the doom monsters, 16 would likely suffice. The reason for this is that currently, in a modern source port, when looking down from a significant angle, one can see the paper thin quality of doom maps. This causes several issues, such as a glaring reminder of even GZDoom's current failings. So... would this ever happen?

Share this post


Link to post

Well, you could easily switch on x/y axis for monsters/decorations in gzdoom/zandronum and in other advanced port settings and they won't look so paper thin while you use mouselook/freelook. 

Share this post


Link to post

EDGE 1.35 - 2.0.1+ supports 16-angled rotations on sprites, if it helps any.

 

Generally, OpenGL sprite rendering is billboarded. Not much else can be done about that, which is why 3D models are useful for such scenarios where the Z axis needs consideration.

 

 

Share this post


Link to post

I don't see how you could possibly have an accurate, non-awkward looking, consistent set of sprites that could account for extreme angles. I don't know if anyone is actually talented enough to pull it off or if it would even look good. I've thought about this problem and I think that 3D models that look like the sprites, but have been put through some low res post processing effect, might achieve the same thing. 

Share this post


Link to post

Hmm, extra viewing angles. To get the extra viewing angles you are back to models again, as that is the fastest and easiest way to generate all the extra views. 

 

If you are pathological about models, then you either draw them all by hand, hoping you get all the angles and details correct by eye (good luck with that!).

 

Option 3 is to use some kind of photogrammetry software to reconstruct the missing views. Something like this: http://cvl-demos.cs.nott.ac.uk/vrn/ . But, surprise, it creates a 3D model to map the image onto so that you get accurate rotational views of your object. Even though you never manually handled a vertice, you'll know that they are in there somewhere, unseen. Not sure if this will keep you up at night or not. 

Share this post


Link to post

Distortion of sprite-based objects viewed from above/below wouldn't be generally solved by the sprites having vertical view angles, because sprites representing objects of any other shape than a nearly spherical one would end up looking off anyway (imagine for example a thin but tall column). I'm afraid the only reliable way of preventing the distortion that doesn't involve 3D models is not using a 3-point perspective renderer and sticking to 2-point perspective with Y-shearing, at the cost of not being able to look fully up or down. I, for one, am willing to accept this tradeoff and consider Y-shearing the preferred solution, but I understand that not everyone is going to agree.

Share this post


Link to post

I think most relevant ports already support 16 angle sprites. Their use has been exceptionally rare, even in mods for supporting ports.

The main issue here is not the implementation but actually making all those sprites.

For vertical angles the whole story will become even more unappealing. Say you got 3 vertical angles - one from straight ahead, one from above and one from below. Suddenly you do not have 8/16 sprites but 24/48 to make. I guess many modders will walk away in horror at this point.

 

Whereas for a model or voxel you only need to make ONE object!

 

Also, saying "We" is implying a lot, it's a personal preference after all, nothing more.

Share this post


Link to post

Voxel Doom, like most projects, has fallen by the wayside. I think at some point—perhaps in a future where there is an actual economy for modders—we may see devoted teams actually pull it off. Voxels are the ideal solution because they maintain Doom's look better than 3D models. The problem is that they are rendered as a series of cubes and that can eat up resources quickly.

Share this post


Link to post

Physically making sprites, especially ones that manage to replicate the half-pixel-art, half-photo-realism of the Doom monsters, is incredibly difficult.  It's no small feat to just make a bunch more viewing angles that everyone thought looked good.  If it was, we'd all be using them on the ports that supported them.

 

The fact that we're 25ish years on from Doom and still almost universally using the original sprites (or at least small variations of them) is good indication the challenge it would be to add a bunch of new angles.

 

Share this post


Link to post

Well vertical sprites make things more complicated, though last month I had an idea of two sprites for extreme vertical angles. Sprites would be drawn from the viewpoint of straight up from underneath, and one straight down from above. You only need one of each, since then you could ideally rotate the sprite.

 

A working implementation that doesn't feel wonky would mostly likely be a large pain in the rear though, I'd imagine. Even then you'd need spriters to make two extra sprites for it to actually be worth anything.

Share this post


Link to post

Voxels for props (no animation, or at most a handful) is possible and there are largely complete packs.

 

Voxels for enemies (20+ frames of animation) do not exist.

 

Also there's a sort of uncanny valley effect. The state-based animation in Doom is a very rough system and it tends to look bad with models; I think it'd also look bad with voxels. Among other things, it makes that much more blatant how monster movements are always in one of 8 directions (with sprites, the fact that they can't turn angles smaller than 45° is kinda masked by the granularity of the sprites) and how they just swap from one frame to another without transition. Quake, at least in its vanilla version, has the same problem and the monster behavior kinda looks like stop-motion animation (because, basically, it is a computer version of stop-motion animation). Advanced Quake ports feature interpolation to smooth out model animation and turning, but interpolation wouldn't help with voxels because, contrarily to models, you don't just change vertex positions. You remove some cubes and add some others. Interpolating that in a way that looks natural is a nightmare.

 

Like, imagine two frames. In one, the character has its arm raised, in the other the arm is dangling the character's side. Computer interpolation between these two frames would most likely not be a downward rotation of the arm, but the raised arm retracting like a snail's eyestalk, while the character's flank grows a new arm. Something like this:

lqIaAPm.png

So basically, voxels are good for simple props. They are bad for organic shapes and terrible for complex animations. Doom's entire monster movement and animation system was designed for sprites and is going to look bad with actual shapes instead of moving cardboard pictures. Drawing sprites for differences in elevation is just too much work.

 

And this is why, in 2017, you don't have sprite packs for exotic angles or monster voxel packs.

Share this post


Link to post

How are 16 viewing angles even remotely relevant to the z-axis? I thought that "16 viewing angles" referered to a set of 8 angles in the xy plane (instead of the usual 0, 45, 90 etc. ones.

 

On 8/12/2017 at 10:15 PM, Gez said:

 

And this is why, in 2017, you don't have sprite packs for exotic angles or monster voxel packs.

 

Well, that, and because every single time I see threads/proposals about hi-res/super-detailed sprites/models/voxels and whatnot, they are almost always hiding an intention of somehow skimping on the -admittedly tedious- spriting work, and any discussions end up being more about how to use models to approximate sprites, or how to automatically make voxel sprites from 2D sprites etc., or combinations thereof. With that kind of attitude, of course it's never gonna work, because as soon as one realizes the amount of posprocessing work that must go into it regardless of how "easy" the new technique may have appeared vs hand drawn sprites, most simply wash out.

Edited by Maes

Share this post


Link to post

It would be interesting if a market for modding developed and people were regularly being paid to take on these massive projects. I think the main reason they don't get done is because of the lack of compensation for the work.

Share this post


Link to post
On 12/10/2017 at 11:17 AM, Koko Ricky said:

It would be interesting if a market for modding developed and people were regularly being paid to take on these massive projects. I think the main reason they don't get done is because of the lack of compensation for the work.

Their hearts are not in it

Share this post


Link to post

I feel like voxel animations could look okay if they just replaced the existing frames, with no interpolation. But I am weird and don't mind the jerky animations in Quake 1. I'd rather have chunkier frames than the "weightless" feel of smooth interpolation.

 

Doing 16 sprite rotations is just madness. Try doing just 8 for a single frame... you could easily spend a couple hours for just one frame. There's a reason the artists used mirror images when they could get away with it!

Share this post


Link to post
On 12/10/2017 at 3:52 PM, Maes said:

How are 16 viewing angles even remotely relevant to the z-axis? I thought that "16 viewing angles" referered to a set of 8 angles in the xy plane (instead of the usual 0, 45, 90 etc. ones.

 

Well, that, and because every single time I see threads/proposals about hi-res/super-detailed sprites/models/voxels and whatnot, they are almost always hiding an intention of somehow skimping on the -admittedly tedious- spriting work, and any discussions end up being more about how to use models to approximate sprites, or how to automatically make voxel sprites from 2D sprites etc., or combinations thereof. With that kind of attitude, of course it's never gonna work, because as soon as one realizes the amount of posprocessing work that must go into it regardless of how "easy" the new technique may have appeared vs hand drawn sprites, most simply wash out.

You guys keep forgetting that models were used for the original sprite creation. Adrian Carmack made physical models of the monsters to get the angles correct.

Models - either 'real' or digital, are the best, fastest way of doing this.

 

This whole insistence of 'pixel-purity' is frankly, a bit weird. Models were used to create the sprites by the game's creators. Get over it. 

 

IF IT'S GOOD ENOUGH FOR ADRIAN CARMACK, THEN IT'S GOOD ENOUGH FOR YOU.

Edited by Tea Monster : "'"

Share this post


Link to post

@Tea MonsterMy point was more that even with models, spriting isn't easy work. First of all, you need to make the models somehow, then you need to take their pictures and clean them up in order to have usable sprites. For Carmack & co, they also had to go through the additional step of developing and scanning real film photos, but it's probably not as relevant to the discussion. My point is that even with good quality models available, getting the angles right, getting the resolution downgrade right and, most importantly, getting them to work well as low-res sprites is still an art that takes much time, and if you skimp on it/cut corners there, BOY, does it show. Oh and BTW, not all monsters started off as models. Most notably, the zombies and imp, Cacodemon/PE, Lost Soul.

 

Edit: an example of what I mean. Imagine e.g. that you had an imp model with super-sharp sprites, super-detail, claws, eyes, teeth, scales or even fur if you subscribe to that theory (eww). Make it super-ultra-HD-and whatnot, if you want. Now, when you reduce that to a few tenths of pixels in each dimension, how many of the details will still pass across you think? Will the spikes/eyes/teeth still be recognizable as such or will they have crumbled/been averaged into a mess of noise-like, dancing pixels? Unless your downsizing filter is super-smart, you'll have to make some significant edits by hand, in order to get a presentable picture.

 

So, models: definitively a starting point, but not a necessary one, and definitively not a sufficient one.

Edited by Maes

Share this post


Link to post

Carmack, and Chuck Jones over at 3D Realms, all used models as a starting point to get a detailed picture of what they wanted. You could have as many angles as your heart desires. I have rigged models for sprites before so that I get pixel perfect poses. Using digital models, it's also possible to have lighting on your models, so you don't even need to paint in the laser blasts on attack and damage frames. Once you have the model, then posing as many frames as you like is a trivial exercise. 

 

If your digital 2D artist fudged things afterwards, then that's on them. The artists at Id and 3D Realms did not. Neither example impacts the fact that this is the best way to get the results you need reliably and quickly. It's also the best way to get an accurate starting point for a 2D artist to convert them into working sprites. 2D sprite art is a wonderful and exacting craft that doesn't get enough love. Creating a lot of unnecessary work for those artists because of some weird procedural bias is just wrong. 

 

Also, why you can't have nice things: 

 

2705.png

2706.png

2707.png

0021.png

0022.png

0023.png

Share this post


Link to post
On 7/6/2022 at 12:29 PM, CenturionX said:

Their hearts are not in it

I think it's more that the modding market is still pretty small. Economy is more flexible now, which could potentially allow for virtual tip-based compensation. It could be an actual 9-5 job. It's just that either it's not a market that has any chance of breaking through, or it'll take more time for it to be integrated. 

Share this post


Link to post

@Tea MonsterNice models, but would they scale down nicely to Doom resolution without some postprocessing work? Carmack & co. definitely had to deal with that aspect, even if it may appear a non-issue today. Limited res., limited palette etc. all required some compromises and good old fashioned elbow grease and eye squint to get a good fit into the final medium, no matter how clean your starting model was.

 

The amount of said post-processing work vs an original creation in the 2D domain determines the method to choose. Like all things in life, it's yet another compromise between desires and available resources.

Share this post


Link to post

I just want to say that animations with voxels is entirely possible and can look okay

 

I've have some voxels switches with 5 frames when moving between states and honestly it looks okay

Share this post


Link to post
7 hours ago, Tea Monster said:

If your digital 2D artist fudged things afterwards, then that's on them. The artists at Id and 3D Realms did not.

 

Of course the artists at id had to fudge things afterwards.  Half a second looking at the before and after shows you the extent of the recoloring, reshaping, and general editing clean-up they had to do.

Share this post


Link to post

Exactly what I've been trying to convey, @Bauul. There's a difference between "it's easy to make/modify/repose/re-color in its original form" (3D model, clay figurine, latex doll/action figure etc.) and "looks good in the final medium without too much effort".

 

I suppose you could kinda-sorta get away without much post-processing if your final medium has a respectable sprite resolution ( @Tea Monster's models would be enormous by Doom standards) and a high enough color depth so that you don't have to worry about excessive detail loss/pixel noise. Which definitively wasn't the case for any of the classic 1990s era FPS.

 

With Cyberdemon, at pixel scale, for comparison:

 

0022.pngCyberdemon_trans.png.22323ecb171fb37e3bcf3fa5a3e3ce92.png2705.png

It's the tallest sprite, yet it looks absolutely tiny next to that Mummy and Chthulhu guy. Still think they would look good if I just blindly halved their dimensions and applied the Doom palette to them? What if they were not even meant to be that tall if resized to scale? E.g. the Mummy guy seems more appropriate for Imp-size, while Chtulhu  strikes me more as Baron-sized.

 

Edit: it's interesting how in that before and after thread, the approach they followed was to scale down the resolution first to their intended in-game one (or pretty close to it) and then they performed any edits. That's actually pretty clever, as you know immediately what details will be lost and what you have to work with. That didn't prevent them from going overboard with model details that wouldn't make it cleanly into the finished sprites, though. The Archvile IIRC looked nothing like its final form, esp. the face.

Edited by Maes

Share this post


Link to post

Freelook and sprites kinda don't mix by nature unless you use software's rendering's y-shearing effect.

 

What might solve this is extra sprites on the y-axis, such as those that show the top of a monster's head when looking directly down on them. I don't use freelook unless it's intended, so this might be neat for wads that file under that.

Share this post


Link to post
15 minutes ago, Sr_Ludicolo said:

What might solve this is extra sprites on the y-axis, such as those that show the top of a monster's head when looking directly down on them.

 

...and now you're not just making 5 sprites per frame, but instead something more like 17 or so. For something like an imp with 8 frames that have rotations, you've gone from 40 sprites to 136. It's a huge increase in the workload for relatively little payoff compared to just using a model in-game.

Share this post


Link to post
10 hours ago, SMG_Man said:

 

...and now you're not just making 5 sprites per frame, but instead something more like 17 or so. For something like an imp with 8 frames that have rotations, you've gone from 40 sprites to 136. It's a huge increase in the workload for relatively little payoff compared to just using a model in-game.

 

I agree it's not very practical, 'twas just hypothetical. I don't ever use freelook so I'm admittedly not the best person to get advice from, haha

Share this post


Link to post
14 hours ago, SMG_Man said:

 

...and now you're not just making 5 sprites per frame, but instead something more like 17 or so. For something like an imp with 8 frames that have rotations, you've gone from 40 sprites to 136. It's a huge increase in the workload for relatively little payoff compared to just using a model in-game.

I'm talking about using the model to make sprites from. You render the model in the positions you require, then you take the renders and adjust them for the size required and make any further adjustments for pallet and gamma to match the art style of the game. 

 

You could just make a model, or as Koko Ricky suggested, add a cell shader that makes them look like sprites, but what we are talking about here is the best way to make sprites with multiple rotation points for smoother movement. 

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
×