EDuke32 2.0 and Polymer! "talk about the wonders of EDuke32 and the new renderer"
#5186 Posted 26 February 2015 - 03:28 AM
#5187 Posted 26 February 2015 - 03:54 AM
Jblade, on 26 February 2015 - 03:28 AM, said:
Since r4415, that member is used to override a sector's fog pal in the GL renderers.
#5188 Posted 26 February 2015 - 06:14 AM
#5189 Posted 26 February 2015 - 09:20 AM
#5190 Posted 26 February 2015 - 04:19 PM
This post has been edited by Steven Shipler: 26 February 2015 - 04:19 PM
#5191 Posted 01 March 2015 - 06:27 AM
Micky C, on 23 February 2015 - 03:19 AM, said:
Yes, can confirm that by experiment. See the attached ZIP file which contains a map and a CON file for a small ball that moves back and fowrard across a sloped elevation.
Doing some investigation, one finds that the reason is twofold: (1) the particular way the getzrange engine function handles nearby sectors and (2) the fact that the game calls it with a fixed walldist value for all actors (127, from A_GetZLimits() in gameexec.c) regardless of their actual size.
Attached File(s)
-
getzrange_slope_test.zip (1.48K)
Number of downloads: 329
#5192 Posted 01 March 2015 - 08:17 PM
came across the code in the first image
seems to still exist in eduke32 (as of Rev 5016 anyway)
what is the purpose of the block highlighted in red?
a short-circuited "klabs(actor[p->i].floorz-actor[p->i].ceilingz) < (48<<8)"
versus an "else if (klabs(fz-cz) < (32<<8) && etc"
second image (seems to) indicate the two klabs() are comparing the same stuff
if that's true, the "else if" could never possibly be executed
i'm not much for reading code; it's completely possible that i am missing something obvious here
sort me out please thanks and strawberries
#5193 Posted 01 March 2015 - 08:34 PM
"klabs(actor[p->i].floorz-actor[p->i].ceilingz) < (48<<8)"
If the difference beetween the floor and ceiling heights of the current sector are less than 12288 units.
if (klabs(fz-cz) < (32<<8) && isanunderoperator(sector[p->cursectnum].lotag))
If the difference beetween the floor and ceiling heights of the sector called by processinput is less than 8192 and the the current player sector lotag is that of an operator.
This post has been edited by Fox: 01 March 2015 - 08:36 PM
#5194 Posted 01 March 2015 - 08:38 PM
if floor and ceiling difference is < 8192
it's guaranteed to be < 12288
i can't imagine how it could ever reach the "else if" block
(given the second image, anyway)
i.e. the block highlighted in red looks like dead code that could never be executed
This post has been edited by Nukey: 01 March 2015 - 09:23 PM
#5195 Posted 01 March 2015 - 09:25 PM
#5196 Posted 01 March 2015 - 09:50 PM
Quote
hittype[pi].ceilingz = cz;
i see no assignments, comparisons, or function calls on the 'hittype' stuff (until the block of code in question)
lots of comparisons on fz and cz, but only one assignment operation:
(image - eduke32 source again)
dunno what hz is... maybe this is correcting for slopes or 'true-centering' or something
anyway, i don't think they're different, but i can't say for sure yet
This post has been edited by Nukey: 01 March 2015 - 09:50 PM
#5197 Posted 01 March 2015 - 10:06 PM
Nukey, on 01 March 2015 - 08:17 PM, said:
if that's true, the "else if" could never possibly be executed
Given the second image at the top of P_ProcessInput(), that looks to be the case.
Nukey, on 01 March 2015 - 09:50 PM, said:
The assignment is
getzrange((vec3_t *)p,p->cursectnum,&cz,&hz,&fz,&lz,163L,CLIPMASK0);
A pointer to these variables is passed into getzrange, which dereferences it in order to modify them.
#5198 Posted 01 March 2015 - 10:22 PM
Hendricks266, on 01 March 2015 - 10:06 PM, said:
The assignment is
getzrange((vec3_t *)p,p->cursectnum,&cz,&hz,&fz,&lz,163L,CLIPMASK0);
A pointer to these variables is passed into getzrange, which dereferences it in order to modify them.
ya sorry, i was ignoring that one because it's the initial assignment for those variables
i should have said "modified" to be clearer, only cz gets (potentially) modified on the way to the block of code in question
at least that's all i saw on my quick skim through
#5199 Posted 12 March 2015 - 03:09 AM
#5200 Posted 12 March 2015 - 04:45 AM
Speaking of the automap, some times it goes black. It seems to happen when you are entering new sectors or palfrom is not zero.
#5201 Posted 12 March 2015 - 11:03 AM
Quote
No, because it's useless in maps which use TROR or even just basic ROR that normal Duke supported. Have a client side variable or something if you think it would take from the experience.
#5202 Posted 15 March 2015 - 02:31 AM
#5203 Posted 15 March 2015 - 04:58 PM
Jblade, on 15 March 2015 - 02:31 AM, said:
You can blank out the quote in the CONs, which will turn any function call to display it into a no-op that doesn't affect the currently displayed quote or print a blank line to the log.
#5204 Posted 16 March 2015 - 01:05 AM
#5205 Posted 16 March 2015 - 07:31 AM
#5206 Posted 16 March 2015 - 10:26 AM
gamevar fta 0 1 gamevar ftq 0 1 onevent EVENT_DISPLAYSBAR ifvarg player[THISACTOR].fta 0 ifvare player[THISACTOR].ftq 8 { setplayer[THISACTOR].fta fta setplayer[THISACTOR].ftq ftq } getplayer[THISACTOR].fta fta getplayer[THISACTOR].ftq ftq endevent
This post has been edited by Fox: 16 March 2015 - 10:58 AM
#5207 Posted 16 March 2015 - 10:45 AM
This post has been edited by Hendricks266: 16 March 2015 - 12:56 PM
#5208 Posted 16 March 2015 - 10:48 AM
#5209 Posted 16 March 2015 - 10:59 AM
Hendricks266, on 16 March 2015 - 10:45 AM, said:
Oops.
Hendricks266, on 16 March 2015 - 10:45 AM, said:
Yes.
#5210 Posted 16 March 2015 - 12:53 PM
thedrawliner, on 16 March 2015 - 10:48 AM, said:
Mapster already has the isometric view, but it's not textured. It'd probably be too complicated to be useful anyway even if it was textured, at least for those maps which are already too complicated for the regular 2D map.
This post has been edited by Micky C: 16 March 2015 - 12:54 PM
#5211 Posted 16 March 2015 - 05:33 PM
Jblade, on 15 March 2015 - 02:31 AM, said:
I recall that Two-Way Trains have the unique ability to trigger ActivatorLocked sprites without displaying the "unlocked" quote, but I couldn't find a way to get this working with SE 19. I dug through the code a bit and it looks pretty much impossible via "classic" methods. You might find that info useful for other effects though.
#5212 Posted 20 March 2015 - 01:41 PM
and another in the second pic (executes, but looks useless)
and a third! the "else" should never be able to execute
for future reference, are these things worth posting so they can be marked with comments in the source, or should i just be ignoring them?
i will have to dig through the source properly someday, there must be hundreds of lines of code like these.
This post has been edited by Nukey: 20 March 2015 - 02:15 PM
#5213 Posted 20 March 2015 - 04:17 PM
#5214 Posted 20 March 2015 - 04:33 PM
This post has been edited by Nukey: 22 March 2015 - 12:41 PM