I have to admit it, I only looked at the demos I was provided with, and since they all worked with the broken code, I never noticed the conceptual problems in here
So let's summarize the problems:
1. A flat sprite is supposed to be FLAT! But without any pitch adjustment it just looks like a wall sprite! Huh???
2. The entire flipping problem only seems to be an issue with sprite rotations, not with the rotating math itself. Well, bad luck! That will never work if you use face sprite projection to determine rotation. No fudging will ever fix this. Period.
My proposition here is:
1. Treat pitch == 0 as really flat. Currently that'd require a pitch of -90°.
2. disable rotations for flat sprites, because it can't be made to work in any reliable fashion.
3. remove the DONTFLIP flag because it's only there to patch over the shortcomings of the entire idea.
I'll also take one lesson from this. The only reason this PR was added, was the constant nagging by Major Cooke and in the end I gave in and added it, despite having serious doubts about its viability. Seems my doubts were right, so next time something like this comes along, it goes right into the dumpster.
So I'm now just waiting for an explanation why the bad rotation even happens and once that has been sorted out I'll call it a day. This mess is unfixable, I am satisfied if it works for unrotated sprites.
DONTFLIP Bugfix inside
Moderator: Graf Zahl
- Graf Zahl
- GZDoom Developer
- Posts: 7148
- Joined: Wed Jul 20, 2005 9:48
- Location: Germany
- Contact:
- Graf Zahl
- GZDoom Developer
- Posts: 7148
- Joined: Wed Jul 20, 2005 9:48
- Location: Germany
- Contact:
Re: DONTFLIP Bugfix inside
Ok, so for now flat sprites are gone. I tried to address the issues but ultimately realized that it's utterly unsalvageable. This cannot go into a release version. Sorry.
I think I'm going to pass this over for the upcoming release because it has become such a roadblock.
I think I'm going to pass this over for the upcoming release because it has become such a roadblock.
- Nash
- Developer
- Posts: 1226
- Joined: Sun Sep 25, 2005 1:49
- Location: Kuala Lumpur, Malaysia
- Contact:
Re: DONTFLIP Bugfix inside
1) To be honest that was how this feature was used when I first did a 1:1 copy paste from GLOOME; the user did not need to fudge with the actor's pitch... anything that was flagged as a flat sprite just automatically becomes flat on the floor. Not sure why the pitch requirement was introduced. For ceiling sprites maybe? Although IMO those should just be a separate flag (CEILINGSPRITE?).Graf Zahl wrote: My proposition here is:
1. Treat pitch == 0 as really flat. Currently that'd require a pitch of -90°.
2. disable rotations for flat sprites, because it can't be made to work in any reliable fashion.
2) I also don't see rotations being useful. I'm just speaking for myself though, as I'm using these for cosmetic stuff like floor blood splats and grunge, who will always remain static and makes no sense to have multiple angled sprites.
I'm afraid I have no idea what DONTFLIP is even and what it's meant for, sorry.
I fully support your decision though... it's better off done in a more sane way and my suggestion is this feature should only be used purely for decorative purposes (ie as a supplement to level design... not gameplay-related stuff)
-
- Developer
- Posts: 240
- Joined: Wed Mar 04, 2009 19:25
Re: DONTFLIP Bugfix inside
Spoiler: This is what we're using for FLATSPRITES.It's already in D4D... Ouch. You can try out the gauss cannon. http://forum.zdoom.org/viewtopic.php?f=19&t=52164
The ability allows us to replicate Half Life lasers. So if that goes, well... there goes my plans for lightning.
Spoiler: LightningAlso, I did not nag you. You forgot it was even in existence and I simply reminded you because people were poking me about it.
- Rachael
- Developer
- Posts: 3646
- Joined: Sat May 13, 2006 10:30
Re: DONTFLIP Bugfix inside
I've split this discussion here: http://forum.drdteam.org/viewtopic.php? ... 405#p60405