high angle viewed sprities

Post a reply

Smilies
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :geek: :ugeek: :!: :?: :idea: :arrow: :| :mrgreen: :3: :wub: >:( :blergh:
View more smilies

BBCode is OFF
Smilies are ON

Topic review
   

Expand view Topic review: high angle viewed sprities

Re: high angle viewed sprities

by Gez » Wed Sep 05, 2018 3:32 am

Graf Zahl wrote:If this was done it would have to be additional rotations that automatically get selected by the renderer. So wait: What letters can we use here? A-G are already taken, that'd leave us with 19 remaining ones, we need 32 to have equivalents for all 16 regular rotations.
I'd use only 18 rotations.
8 for 45° pitch above, 8° for 45° pitch below, and one for top (rotate it with actor angle) and one for bottom (same).

The 16 angle rotations are nearly never used.

Re: high angle viewed sprities

by Chris » Tue Sep 04, 2018 6:52 pm

Enjay wrote:Sorry, got to disagree. You might be able to make it look exactly as it does from one angle (e.g. dead front on) but as soon as you move, you'll see the 3D lego-brick nature of the voxel models, especially on shapes with a curve.
To be fair, the lego-brick nature of voxel models is just 2D pixelization taken to 3D.

As an aside, there are ways to "smooth out" voxels, with techniques like marching cubes. Rather than just treat each individual voxel as its own little self-contained cube, it tries to connect neighboring voxels together, which helps blend both the color and geometry. Whether or not it would look good, however, is up in the air (I imagine it would be dependent on the particular voxel).

If your goal is to get a good looking 3D object, a proper model would almost certainly be the best option. Although a voxel may understandably be easier to create from a preexisting (static) sprite since you basically stretch the existing 2D image into a 3rd dimension and fill in the necessary gaps. High-end computer graphics have employed similar tricks (take a 2D matte painting and "paste" it onto a 3D backdrop, though it only works for limited movement).

Re: high angle viewed sprities

by Hypersonic » Tue Sep 04, 2018 3:14 pm

Look like they do now from the angles given, obviously the hidden sides of 1 angle objects would have to be a reasonable guess at what the original artist intended. Many objects only have 1 angle. Monsters have 8. If the monster artists didn't accurately render each angle to a single common 3D model, I'm sure a voxel model could be made that isn't too far off from any of the angles.

Too bad there's no voxel acceleration like there is texture painted polygonal acceleration. It would be neat to see each of the voxel pixels smoothly blend together like 2D textures do.

Re: high angle viewed sprities

by Graf Zahl » Tue Sep 04, 2018 2:17 pm

Some people apparently think that everybody is using the software renderer...

Re: high angle viewed sprities

by Enjay » Tue Sep 04, 2018 1:57 pm

Hypersonic wrote:With voxels you can make the monsters/items look exactly as they do now.
Sorry, got to disagree. You might be able to make it look exactly as it does from one angle (e.g. dead front on) but as soon as you move, you'll see the 3D lego-brick nature of the voxel models, especially on shapes with a curve.

Image

In game, their edges are also sharper than the sprites would be in default OpenGL (and so can look very harsh) and they don't seem to alter and blend in the same way with distance as a sprite does.

Image

On top of that, the Doom enemy sprites aren't consistent from one angle to the next, so making a model that looks exactly the same as the sprite from all angles is impossible.

I'm not saying that voxels don't have their place. Even though I really don't like them much at all, I get why people think they tie in well with the pixelly Doom world, but they certainly do not look exactly like sprites.

Re: high angle viewed sprities

by Hypersonic » Tue Sep 04, 2018 12:31 pm

With voxels you can make the monsters/items look exactly as they do now, except instead of just 8 viewpoints you'd have infinite. Too bad voxel models aren't as easy to implement as polygonal models.

Re: high angle viewed sprities

by Pixel Eater » Sun Sep 02, 2018 8:43 pm

Added a code template to the script library: Linky

Re: high angle viewed sprities

by Pixel Eater » Tue Aug 28, 2018 9:16 pm

A humorous attempt:



They have very flexible torsos :P

Edit: Because that looked so ridiculous here is a request for sprites.

Re: high angle viewed sprities

by Pixel Eater » Fri Aug 24, 2018 4:19 pm

I'm confused. Does it need to match the number of rotations? I'd think there only needs to be one additional top sprite per frame (maybe share one for walking) and then the rotation be handle engine-side (optionally interpolated).
Edit: I'm thinking for walking and idle animations it could be done with a bobbing effect via uniform scaling.

Re: high angle viewed sprities

by Graf Zahl » Fri Aug 24, 2018 1:12 pm

Curse them more for a case insensitive file system. Had this not been done, nobody would ever have thought of creating case insensitive file systems for modern OSs or container formats.

Re: high angle viewed sprities

by Rachael » Fri Aug 24, 2018 12:56 pm

Curse the old operating system developers for making only 8 characters for a filename the standard! :P

Although to be fair - even kilobytes of RAM was quite a commodity in those days...

Re: high angle viewed sprities

by Graf Zahl » Fri Aug 24, 2018 12:24 pm

If this was done it would have to be additional rotations that automatically get selected by the renderer. So wait: What letters can we use here? A-G are already taken, that'd leave us with 19 remaining ones, we need 32 to have equivalents for all 16 regular rotations.

Re: high angle viewed sprities

by Enjay » Fri Aug 24, 2018 12:15 pm

To be fair, the problem there is more to do with sprite squishing when using non standard player sprite names/skins than the 1 for 1 implementation of PLAY=PLYC when crouched.

I suppose something like:

Code: Select all

	See:
		POSS AABBCCDD 4 A_Chase;
		Loop;
	
	See.Upper
		POSU AABBCCDD 4 A_Chase;
		Loop;

	See.Lower
		POSD AABBCCDD 4 A_Chase;
		Loop;
could be feasible but it's all moot anyway given that the feature won't be happening.

Re: high angle viewed sprities

by Matt » Fri Aug 24, 2018 12:05 pm

Enjay wrote:The engine knows to use PLYC
Given the issues we've already got even with that, I don't think that's much of an argument in favour of this feature. 😬

Re: high angle viewed sprities

by Enjay » Fri Aug 24, 2018 11:57 am

I think the biggest argument against this is how much it would be used. I'd be very surprised if many people used the feature to any great extent. I mean, ZDoom has supported 16 angle sprites for many years and yet there are only a tiny number of mods that ever used them. The resource production implications are enormous for this suggestion.

Models (be that MD2/MD3/Unreal format or Voxels) do pretty much what is required here and, because they are designed for a true 3D view, would probably do it better too.
Arctangent wrote:
  • Actor sprites require a very specific naming scheme, which isn't expandable at all. Like, how would you add a top view of BAL1A0? BOSSE3? POSSF2F8? That's already up to eight characters, the max amount in the .wad format. Even if we make this feature .pk3-only, though, how would we add information for vertical viewing angle without confusing the parser?
Not that I think this feature is viable, but that's actually one of the things that probably could be solved reasonably easily. There is already something similar in principle to what I'm thinking about in the player sprites. PLAY* are the regular player sprites but PLYC* is used for crouching. The engine knows to use PLYC when the player is crouched and there has to be a PLYC sprite for every equivalent PLAY sprite. A character definition in ZScript could be given additional properties to specify which sprite set to use when the actor is seen from upper/lower angles. Of course, it would get messy for actors that use a variety of different sprite names in different states.

Top