T-Junctions

MegapiemanPHD

Doctorate in Deliciousness
aa
Mar 31, 2012
1,937
1,280
I've recently started receiving this error

"Too many T-junctions to fix up!"

I have absolutely no idea what this means and don't understand anything I've read up on it or any way to try and fix it. If anyone has any information about it and knows of any fixes please let me know.
 

Freyja

aa
Jul 31, 2009
2,994
5,813
Tjunctions are made when a func_detail solid touches world geometry or another func_detal solid.

In super basic terms, it's sort of stitching together geometry, the way the engine handles it so you don't see light leaks and stuff between func_detail brushes.

It basically means you have too many func_details. Really complex goemetry across a lot of the map usually causes this, roofing and wooden beams are a common cause.

There are two methods to fix it:

- Make sets of func_details models. Models won't cause tjunctions. I used this method a lot in Shiro. It's not that easy though, especially without acess to a 3d program.

- Turn them into another entity. Func_details are the only thing that cause tjuncts, so make your group of beams a func_brush or func_lod.
 

Crash

func_nerd
aa
Mar 1, 2010
3,315
5,499
Be sure to put any of your func_brush or lod somewhere that wont affect gameplay much, as stickies will bounce off of them.

A good place is the very edges of stairs if you used trim, as each step is creating a new t-junction on it. Basically anything that is touching a bunch of other brushes and isn't going to mess with gameplay drastically if stickies bounce off of it is a prime candidate for a func_brush/lod.
 

henke37

aa
Sep 23, 2011
2,075
515
Just note that func_detail has no entdict cost, while the others cost one entdict each.
 
Last edited:

Crash

func_nerd
aa
Mar 1, 2010
3,315
5,499
If they act the same is there a way to tell what should be a detail, what should be a lod and what should be a brush? or is it all just preference?

Anything you don't want cutting vis and you want "low cost" make func_detail. Anything out of the way that could benefit your tjunct count (touching lots of detailed brushes) make a fun_brush, but don't go overboard with them. If a func_brush is something you want to fade away at a distance (small wood trim, for example), change it to a func_lod and set the fade distance.
 

Crash

func_nerd
aa
Mar 1, 2010
3,315
5,499
Some examples, I func_brushed a lot of the detail support beams in the spawn room on Stoneyridge because there isn't any fighting in there, so bouncing stickies don't matter.

I also made the small trim on the edges of the separated stairs func_brushes, because these create a ton of tjuncts and the trim is a small thing that shouldn't be getting hit much.
 

Pocket

Half a Lambert is better than one.
aa
Nov 14, 2009
4,694
2,579
I'm curious just how huge your map is that it's getting t-junct errors. The last time somebody reported one, it was roughly twice the size of Dustbowl.
 

xzzy

aa
Jan 30, 2010
815
531
I'm curious just how huge your map is that it's getting t-junct errors. The last time somebody reported one, it was roughly twice the size of Dustbowl.

We had (have?) problems with it on stoneyridge because of all the stairs and under-construciton building frames littering the map.

It's not a question of map size, it's about how much crap you cram into it.
 

Pocket

Half a Lambert is better than one.
aa
Nov 14, 2009
4,694
2,579
Fair enough. I assume from the fact that 2fort has custom models replacing some of its brushwork that it's close to the limit as well, although not so close that I can't still edit it.
 

henke37

aa
Sep 23, 2011
2,075
515
I do not think i've seen such models. The model browser would list them right?
 

Freyja

aa
Jul 31, 2009
2,994
5,813
It replaces the beams outside spawn and a lot of the stairs, those you can find hanging out in the model browser. Also the bridge is a bunch of models.
 

YM

LVL100 YM
aa
Dec 5, 2007
7,135
6,056
I have had tjunct issues on strata, but mostly I was just hitting the brush limit. A TON of the func_details in strata became models.

EDIT with pics:
strata-props-stairs.JPG

strata-props-spawn.JPG

strata-props-truss.JPG

strata-props-scaffolding.JPG

strata-props-beams.JPG

strata-props-pillars.JPG

strata-props-barriers.JPG
 
Last edited:

Berry

resident homo
aa
Dec 27, 2012
1,056
1,898
I have had tjunct issues on strata, but mostly I was just hitting the brush limit. A TON of the func_details in strata became models.

EDIT with pics:
pictures yo

You're gonna release those right? :wow:
 
Mar 23, 2013
1,013
347
You're gonna release those right? :wow:

What's the point of this? if you got the models then you have to adjust your map to the models, plus unoptimization if many brushes are all bound to a single prop because of giantic bounding box.
So you better make brush-models yourself if you need to
 

Berry

resident homo
aa
Dec 27, 2012
1,056
1,898
What's the point of this? if you got the models then you have to adjust your map to the models, plus unoptimization if many brushes are all bound to a single prop because of giantic bounding box.
So you better make brush-models yourself if you need to

I was thinking more for when you're working on new layouts maybe? Where whoever's using them can build around them rather than have to re-adjust old maps?
 

YM

LVL100 YM
aa
Dec 5, 2007
7,135
6,056
I made them out of brushes. you can make exactly the same thing in hammer.... also they're all incredibly specific to strata, so you'd have no use for them.

edit to ninja response:
I was thinking more for when you're working on new layouts maybe? Where whoever's using them can build around them rather than have to re-adjust old maps?
Clearly you've not really grasped the concept of level design.