EDuke32 2.0 and Polymer! "talk about the wonders of EDuke32 and the new renderer"
#3032 Posted 08 July 2012 - 02:48 PM
However, the original maps and imaginably custom ones too already relied on the particular panning with the incorrect drawing. Because the GL modes which came later always draw textures correctly, they had to implement various hacks to make theses cases display like in classic. The result is that now, all three renderers behave differently when faced with such problematic walls.
Here's what I consider correct behavior: the texture wraps once over the ypanning range of 0..255:
Animated PNG 1
This is the legacy classic behavior for reference. The texture is repeated ~2.5 times.
Animated PNG 2
Now things bet hairy. Polymost implemented some "corrections" to be able to display e.g. the "biker bimbos" panel in front of the steroids secret in E1L1, or the picture near the vault in E3L2. However, these are of course really hacks, since it's not easily possible (nor desirable) to reproduce exactly the classic renderer's way of drawing such walls.
Animated PNG 3
Polymer does the panning correction too, but in a different fashion than Polymost.
Animated PNG 4
The reason I'm saying this all is that it is currently a horrible mess. What I intend to do is
1) in the short term, make Polymer's offset "correction" behave like Polymost's. This seems like a sensible thing to do and would fix the picture in E3L2.
2) sometime in the future, new maps will be saved and loaded with the panning values doing what they're supposed to do.
#3033 Posted 08 July 2012 - 03:05 PM
Helixhorned, on 08 July 2012 - 02:48 PM, said:
I don't mind, bug is bug.
This post has been edited by Fox: 08 July 2012 - 03:06 PM
#3034 Posted 08 July 2012 - 03:09 PM
Helixhorned, on 08 July 2012 - 02:48 PM, said:
I think two more examples are the San Andreas fault sign in E1L5
#3035 Posted 08 July 2012 - 03:29 PM
TerminX, on 06 July 2012 - 10:41 AM, said:
This has brought up some new warnings (yet one left on MinGW):
source/music.c: In function 'MUSIC_ErrorString': source/music.c:84:21: warning: assignment discards 'const' qualifier from pointer target type [enabled by default]
#3036 Posted 08 July 2012 - 04:03 PM
#3037 Posted 08 July 2012 - 07:51 PM
TerminX, on 17 June 2012 - 08:39 AM, said:
Huh, has this been implemented? I failed in finding anything about it in the Changelog and etc.
#3038 Posted 08 July 2012 - 09:26 PM
I think this only happens in polymer with top-oriented textures.
#3039 Posted 09 July 2012 - 07:22 AM
#3040 Posted 09 July 2012 - 10:07 AM
LeoD, on 09 July 2012 - 07:22 AM, said:
This is on purpose. r2802:
Quote
You can press Enter, KPEnter, LMB, your "Open" key, and your "Fire" key to advance prompts.
#3041 Posted 09 July 2012 - 10:14 AM
Hendricks266, on 09 July 2012 - 10:07 AM, said:
You can press Enter, KPEnter, LMB, your "Open" key, and your "Fire" key to advance prompts.
#3042 Posted 09 July 2012 - 11:14 AM
Fox, on 08 July 2012 - 03:05 PM, said:
That's great, but I have reverted the correct drawing for now because it's the logical thing to do currently: the original levels rely on how those walls are drawn, and we have the correction hacks in place for the GL renderers. So I hope you don't mind waiting until the new map format arrives (this is something that is discussed on IRC from time to time). Levels saved with that one will then always have the correct panning, across all renderers.
LeoD, on 08 July 2012 - 03:29 PM, said:
source/music.c: In function 'MUSIC_ErrorString': source/music.c:84:21: warning: assignment discards 'const' qualifier from pointer target type [enabled by default]
Oh hey, I wasn't even aware we had Windows-exclusive code other that winlayer.c and the like up till now. D'oh to that.
Fox, on 08 July 2012 - 07:51 PM, said:
No, and I'm not sure it's only "2 lines copied from Mapster32", since as far as I can see CON has no support for system (i.e. non-user) arrays.
empy, on 08 July 2012 - 09:26 PM, said:
I think this only happens in polymer with top-oriented textures.
Absolutely related, though not as easy, and with r2824 they should be identical for Polymost and Polymer.
LeoD, on 09 July 2012 - 07:22 AM, said:
What troubles me more is that the use key (which for me isn't space) has stopped working as a means to fast-forward the level ending screen. IMO one shouldn't assume a particular binding of keys to functions.
#3043 Posted 09 July 2012 - 11:35 AM
#3044 Posted 09 July 2012 - 12:06 PM
I have already made a comparison list beetween the sounds in the ROM and the PC. For example, the speech at the beggining of Hollywood Holocaust now uses what originally was the Protozoid Slimer death sound. Sound 396 which is the last sound avaiable is now 255.
How exactly I solve this issue? You can't really make it work in CON because of the hard-coded sounds, and frankly I don't expect to make a workaround with just EVENT_SOUND, since it would take forever and it would never be 100%.
A possibility I tought was of using a Mapster script in these maps. But I don't want to save a map file in Mapster since it will change the size of some sprites and attempt to repair my sectors among other things. And as far I know there isn't an option which if I saved a map in Mapster without actually doing anything every single byte will remain the same.
This post has been edited by Fox: 09 July 2012 - 12:09 PM
#3045 Posted 09 July 2012 - 02:16 PM
Fox, on 09 July 2012 - 12:06 PM, said:
If you can work out preserving the map data, I wrote M32scripts to do exactly what you need, for Vaca+ and NW+. The original code is in the SVN but it's a little bit specialized because I needed to make two passes, at least for picnum switching.
#3046 Posted 09 July 2012 - 08:32 PM
Adding a variable that returns whenever you are in a User Map or not may help, but it would only work 100% if I could change the slot occupied by User Map.
#3047 Posted 10 July 2012 - 11:45 AM
Helixhorned, on 09 July 2012 - 11:14 AM, said:
By the way, I can't reproduce this any more, and I'm not finding a difference between r2801 and r2802 for my particular case either. Go figure...
#3048 Posted 14 July 2012 - 06:48 AM
#3050 Posted 19 July 2012 - 07:19 AM
Quote
[master 5f26c1a] Due to a bug introduced in sha 7a9dd5c (17th April 2010), nedmalloc has never allocated more than a single mspace when using the system pool. This effectively had disabled concurrency for any allocation > THREADCACHEMAX (8Kb) which no doubt made nedmalloc v1.10 betas 1 and 2 appear no faster than system allocators. My thanks to the eagle eyes of Gavin Lambert for spotting this.
#3051 Posted 19 July 2012 - 10:35 AM
#3052 Posted 19 July 2012 - 01:20 PM
Marked, on 19 July 2012 - 10:35 AM, said:
WinXP/Linux 2.4 : maybe.
I'm not a technical type in terms of C programming but I wouldn't expect the game to run any faster except maybe for loading times and avoiding loading-related jerks if your PC is at its limits.
#3053 Posted 20 July 2012 - 10:48 AM
EDIT - Debian Wheezy 64bit compiler warnings:
source/sdlmusic.c: In function ‘MUSIC_Init’: source/sdlmusic.c:157:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement] src/driver_sdl.c: In function ‘fillData’: src/driver_sdl.c:101:8: warning: pointer of type ‘void *’ used in arithmetic [-Wpointer-arith] src/sdlayer.c: In function ‘getvalidmodes’: src/sdlayer.c:957:5: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement] make LTO=1 : engine.o (symbol from plugin): warning: memset used with constant zero length parameter; this could be due to transposed parameters obj/xdelta3.o (symbol from plugin): warning: memset used with constant zero length parameter; this could be due to transposed parameters
This post has been edited by LeoD: 26 July 2012 - 10:13 AM
#3054 Posted 26 July 2012 - 04:31 PM
Right now I am forced to use some ugly hack that essentially freezes the game by setting all statnums to zero, unless I don't know a better way to do so?
#3055 Posted 26 July 2012 - 06:13 PM
LeoD, on 20 July 2012 - 10:48 AM, said:
For future reference, if you edit a six-day old post there will not be any attention drawn to it, and for those of us who use the "Go to first unread post" button it may not be seen at all. It's OK to have two posts in a row in a thread. If you have something new to add and time has passed, you can use discretion and make a new post.
I cannot fix these warnings myself because I do not have a Linux environment under which to test.
Fox, on 26 July 2012 - 04:31 PM, said:
I don't have the code in front of me but I believe that actor code does not run when certain GAME_MODE / gm values are set, and it differs on single player vs multiplayer.
#3056 Posted 27 July 2012 - 10:07 PM
Also I had like to request an orientation bit for "texture repeat", which would have the following effect:
This post has been edited by Fox: 27 July 2012 - 10:08 PM
#3057 Posted 28 July 2012 - 01:36 AM
Give us an example of an actual good reason to add this and then we'll think about it.
#3058 Posted 28 July 2012 - 08:40 AM
Fox, on 27 July 2012 - 10:07 PM, said:
Are you talking about the player ID, or the sprite ID of the player sprite? If you are talking about the player ID, then it will always be 0 in a single player game, and it will never be greater than the maximum number of players in a multiplayer game.
#3059 Posted 28 July 2012 - 10:50 AM
Hendricks266, on 28 July 2012 - 01:36 AM, said:
Give us an example of an actual good reason to add this and then we'll think about it.
Huh? This has nothing to do with Resurgence (and I don't think Duke 64 render the bleeding of tiles like that).
I want it for drawing repeat patterns, which I eventually used for other projects like this:
This post has been edited by Fox: 28 July 2012 - 10:57 AM