Duke4.net Forums: TROR glitches - Duke4.net Forums

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

TROR glitches  "Editing question"

User is offline   Mav3r1ck 

#1

Been messing with the TROR feature and its pretty cool, and with that being said.

I'm trying to create a donut island in the air using the feature and have noticed visual glitches at certain angles and distances. How do I properly do this effect using TROR?
0

User is offline   Hendricks266 

  • Weaponized Autism

  #2

TROR sectors should be convex. For example, if the floating island is a square: Try dividing the outer ring sector into four by adding a redwall between each pair of vertices. This should avoid rendering issues. The same principle should hold for more complex shapes.
1

User is online   ck3D 

#3

It's the same logic (and geo) as obfuscating normal sector over sector except applied to the back of island sectors without the need of white walls (basically) and the solution is to do as Hendricks said. You might want one separate/unique bunch per matching split sector/portal in most situations. The more bunches an area has, the more rendering passes have to run (as far as I understand) and so depending on which renderer you are using (some seem to perform better than others), too many bunches may be a cause of lag during play (but in reality it is possible to push quite far depending on how you go at it). This system can make certain types of moving sectors difficult, unless you somehow work them into the spiderweb of portals and of course have the movement in all corresponding layers match 1:1. Also as far as I know, Polymer is the most lenient renderer as far as TROR portals in that it might not show HOM in instances where they are incorrectly drawn and would mess up in Classic/Polymost, but I wouldn't rely on it.

This post has been edited by ck3D: 13 December 2025 - 02:28 PM

0

User is offline   Mav3r1ck 

#4

View PostHendricks266, on 13 December 2025 - 02:11 PM, said:

TROR sectors should be convex. For example, if the floating island is a square: Try dividing the outer ring sector into four by adding a redwall between each pair of vertices. This should avoid rendering issues. The same principle should hold for more complex shapes.


I also created three TROR layers and created redwall sectors on the bottom and top layer and left the middle solid, and the result was an island cube in the air and after viewing it from multiple angles, no visual glitches appeared.

Can the TROR floors themselves be sloped? The reason I ask is because I'm trying to have these "islands" in the air at different heights.

This post has been edited by Mav3r1ck: 13 December 2025 - 06:25 PM

0

User is offline   Mav3r1ck 

#5

Sorry for the double post, but for some reason it wouldn't let me edit the above. Is there an easier way to shade textures without doing it individually?
0

User is online   ck3D 

#6

I haven't experimented with it that much but I'm pretty sure you can slope TROR floors/ceilings just fine and William Gee has even made some cool ass sector window portals that way. There may be a few restrictions, i.e.. in some instances you may have to slope the sectors after the TROR is assembled (but you get a prompt that tells you just that then), and (I think) matching sectors in both layers have to share firstwall (but that's only specifically when trying to slope the portal itself).

About shading, I think there is a super old automatic shortcut somewhere (probably easy to find in the Infosuite and/or EDuke Wiki) but I never use it. I feel you because having to shade 16384 walls at once one time back when my workflow sucked must have taken me three weeks. But in general I find that you want the fine control of manual operation and the effort always is worth it.

This post has been edited by ck3D: 15 December 2025 - 04:05 AM

0

User is offline   Mav3r1ck 

#7

I also have more questions related to this topic.

When you join sectors and tror sectors. In what way are they joined?
0

User is online   ck3D 

#8

There is joining sectors and TROR joining, joining sectors merges them and technically deletes one, TROR joining is stacking normal sector structures the same way one would with SOS and then punching a portal through but none of the sectors actually join like one would mean in the traditional sense. They're still distinct, independent areas of the map (bunches) that just so happen to render one on top of the other and conveniently share elements of collision through portals (like Forge once put it - "horizontal red walls"). TROR map basically is a cube of stacked and organized mini maps, with some see-through holes that align and match.

Now if you join (the first way) a sector that isn't bound to TROR with the next sector that is part of a TROR layer then I'm not sure what happens because that sounds like terrible practice (see further ahead), but I know what happens when you split already-made TROR sectors (so essentially the same thing in reverse except you don't see it) and just that also is not good because either way now you are not messing with just a sector anymore, but a strict set of portals through different bunches that individual manipulations will throw off; you risk confusing the engine about what is connected to which layer which will cause HOM, and so you might have to reconstruct the whole stack once the splits are in place in order to get rendering to work fine again. It's not that bad and essentially is part of the learning curve learning to not TROR areas too early. There are situations where either way won't really matter due to the geo of the map (i.e.. if the glitches are impossible to see, but the point of TROR is to be visible), but those would be exceptional.

This post has been edited by ck3D: 17 December 2025 - 07:05 PM

0

User is online   ck3D 

#9

I have one question regarding TROR rendering. I have observed that using the classic renderer, in (unfortunately) rather frequent situations, sprites that belong to a different TROR layer may pop through the walls and sectors of the TROR layer that Duke is in. I am assuming this is normal given how the software renderer works with priority and there is no way around it (minus sector obfuscation that isn't quite worth it), or could that just mean bad portals and thus be solved (probably not, I suspect it really is just basic sprite rendering)? On my hardware I have no way of checking how differently Polymost rendering handles this, but I'm pretty sure it does run in the correct order or so many TROR maps would look messed up in it that seem fine from Polymost users YouTube playthroughs I see. Or could it be because I'm working with fullbright sprites? (Shades -32 and -64)

Screenshot examples: Normal/intended - Glitch example 1 - Glitch example 2

I'm also getting a different visual issue in one spot of the same map where the upper TROR doesn't HOM but instead darkens the inside a specific portal corner when viewing the upper layer through it, so whenever you catch that one triangle sector it looks like a peephole or lens in the (invisible) ceiling through which everything rendering looks like it has lower visibility, but that is more likely to be a map thing and now I am just thinking out loud instead of actually investigating it (watch me realize I'm posting bullshit ten minutes from now when it turns out to be my own mistake and I fix it). (Screenshot - see upper left) It's not even game breaking but I am curious.

Am using a Mapster that is a few months old and so my apologies if things have been reworked since (would be great to know).

This post has been edited by ck3D: 22 December 2025 - 03:45 AM

0

User is offline   oasiz 

  • Dr. Effector

#10

My guess is that you're essentially creating an "island" scenario for the renderer and the fact that sprites and maskwalls are rendered after geometry bites back at you.
TROR is designed to render a single draw pass but if you shoot a ray from your POV to the sprites, you can count that you encounter the same sector you're in twice!
There are many other well known scenarios that break due to this since as far much of the engine is concerned, top/bottom/etc.. layers kind of exist in their own spaces, the moment you occlude a layer with things like lowered ceilings or raised floors (islands in TROR seam) then as far as the engine knows, it's kind of a pillar.
Classic just happens to be even more ditzy with it's sprite rendering so you likely just get it drawn on top since the engine kind of just gets weird with it and might already even be drawing sprites twice for all we know.

I don't think there are reliable ways around this but maybe you can try to re-adjust the seam either at the top or bottom of that layer dividing trim that they leak through.
Another option is to split the large surrounding sector around, perhaps split the TROR into 3 segments (i.e. a 90 degree turn split to top,corner,right) and then re-build each as 3 separate bunches and rejoin the TRORs to see each other.
This kind of prevents the player POV from seeing a huge sector extending behind an obstacle and running into these issues and as far as the game knows, your point of view can only see the sector once AFTER the ceiling cover that they leak through..

I'd start splitting the TROR from where that grass is, this way it forces a whole unique render pass for it. Wasteful in terms of FPS but what isn't.
1

User is online   ck3D 

#11

Thanks for the detailed reply - yeah that aligns with what I had figured out about the drawing thus far but especially of sectors. That street area already is (in theory) split to accomodate it, counting three layers made out of about 150+ individual bunches (zero lag in classic) but I'm sure I've missed a couple of angles I can check once I get around to fixing it. Expecting to have to delete then remake connections but thankfully the 3D mode selection script really trivializes this type of operation. Just so far I had never really thought about also considering sprites, as I understand it, and the way I know High Treason likes to put it is you want to think double exposure (as though of film) and so control which passes may echo over one another. Like I was saying I've thought of occluding the sectors, but then the whole point of TROR at least here is to show the goods and so I don't want to do that. But perhaps I can salvage some of the ugliness by playing around with parent sectnums too.

I was mostly curious because I had that happen in another map recently (again with no way of knowing if classic only) and it seems to be very specific circumstances that will cause it, since in most common TROR scenarios I don't get the glitch. So it is funny studying. The other map has more obvious island structures than this one where everything is (supposedly) compartmented, but sector rendering-wise also is accounted for thanks to 0 height blocks (indeed an essential trick) and so no HOM and the only silliness is the sprites in classic and it is benign but such strange behavior.

(FWTW my personal baseline for TROR quality if whether or not it bugs out in classic; if classic shows HOM then I count the given TROR as improper/broken and won't accept it in my own work)

This post has been edited by ck3D: 27 December 2025 - 07:37 AM

0

User is offline   oasiz 

  • Dr. Effector

#12

Since you see a bit of the grass sector from that angle, have you tried splitting it up so that the sprites don't get rendered when the grass sector is seen? Your goal should be to make sure that the sprite sector isn't seen anywhere else except over/under the TROR bit so that the sector containing those sprites is only seen once. Perhaps split that grass in half as a test, only the sector where the sprites are should count.,
1

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic


All copyrights and trademarks not owned by Voidpoint, LLC are the sole property of their respective owners. Play Ion Fury! ;) © Voidpoint, LLC

Enter your sign in name and password


Sign in options