Suggestion Add Performant Render addon

WstStranger

Proton
Joined
Sep 9, 2022
Messages
180
Nebulae
603
Suggestion: title above

Why it would be worth adding:

So, what is Gmod's highest clientside lag source? Propbuilds!

Yes, they look good; but there is too much more than necessary being rendered at the frame, making the lowest end PCs that normally run the game at 40-60 fps would have 10 or even less (including me lmao) due to propbuilds being rendered in the rebel side of the map.

This addon very much solves that. On my tests, It has show a really promising function. To what I studied and sorta understood of its code, it is basically an occluder which stops rendering entities behind the frontmost entity. To what I also understand, it is one neat trick modern games use to improve fps, so... Cool stuff.

Now, I wouldn't ask for this if the lua script itself worked without the need to be in the content.
I find it to be a very promising addon that helps mitigate Source's jank on rendering (won't solve server lag, but that's a single core usage issue), but I would give it a little time for smaller bugs to be sorted before actually putting the addon. But again, this one addon is a potential gamechanger in terms of performance in spite of it. I wouldn't mind the kinda rare (and not very annoying) bugs in exchange (and you shouldn't complain of them appearing in the middle of your diet CSGO, RP first :) )

I would recommend giving it a test drive with a copy of this server with all the propbuilds and whatnot. But in any case, I recommend you pay really close attention to that thing, we could get a lot of benefit from it.

NOTE FOR DEVS: I would probably check if one of the console commands, being "r_performant_debug" is actually an admin only command in multiplayer. Could be exploited by anyone for S2K if not. Probably is all good, but I am asking the creator nonetheless.
WARNING: People will go crazier with propbuilds, probably.

Necessary content: The addon!
 
Reactions: List

deathwolf

I AM SPIDERMAN, GRIST LIES! I AM HIM REALLY! ﷽﷽﷽﷽﷽
GTA RP Playtester
Joined
Aug 23, 2016
Messages
9,783
Nebulae
36,141
Suggestion: title above

Why it would be worth adding:

So, what is Gmod's highest clientside lag source? Propbuilds!

Yes, they look good; but there is too much more than necessary being rendered at the frame, making the lowest end PCs that normally run the game at 40-60 fps would have 10 or even less (including me lmao) due to propbuilds being rendered in the rebel side of the map.

This addon very much solves that. On my tests, It has show a really promising function. To what I studied and sorta understood of its code, it is basically an occluder which stops rendering entities behind the frontmost entity. To what I also understand, it is one neat trick modern games use to improve fps, so... Cool stuff.

Now, I wouldn't ask for this if the lua script itself worked without the need to be in the content.
I find it to be a very promising addon that helps mitigate Source's jank on rendering (won't solve server lag, but that's a single core usage issue), but I would give it a little time for smaller bugs to be sorted before actually putting the addon. But again, this one addon is a potential gamechanger in terms of performance in spite of it. I wouldn't mind the kinda rare (and not very annoying) bugs in exchange (and you shouldn't complain of them appearing in the middle of your diet CSGO, RP first :) )

I would recommend giving it a test drive with a copy of this server with all the propbuilds and whatnot. But in any case, I recommend you pay really close attention to that thing, we could get a lot of benefit from it.

NOTE FOR DEVS: I would probably check if one of the console commands, being "r_performant_debug" is actually an admin only command in multiplayer. Could be exploited by anyone for S2K if not. Probably is all good, but I am asking the creator nonetheless.
WARNING: People will go crazier with propbuilds, probably.

Necessary content: The addon!
I suggested this and got told no
 

boots

spooky skellys
HL2 RP Senior Administrator
GTA RP Playtester
Joined
Dec 13, 2017
Messages
1,267
Nebulae
1,931
I think that adding things like this could introduce new bugs and/or unwanted/unpredicted interactions with the schema and its other plugins. And there's also the possibility that amongst this code, there is a backdoor or again, unwanted interaction with some parts of the script, that could lead to an exploit in certain areas of the game. Whether by choice or not, somebody could notice and take advantage of it and not report it.

But I'm not a developer or a programmer.
 

WstStranger

Proton
Joined
Sep 9, 2022
Messages
180
Nebulae
603
I think that adding things like this could introduce new bugs and/or unwanted/unpredicted interactions with the schema and its other plugins. And there's also the possibility that amongst this code, there is a backdoor or again, unwanted interaction with some parts of the script, that could lead to an exploit in certain areas of the game. Whether by choice or not, somebody could notice and take advantage of it and not report it.

But I'm not a developer or a programmer.

As I pointed out, I see a few bugs (that happened mostly with me fiddling with the commands) that were more annoying than actual exploits. The script is very much clientside only, if folders can't lie. So I probably wouldn't worry about potential backdoors onto the server. I also doubt a lot it would affect plugins, since it is rendering alteration script.

Still, I would let the code be studied by someone who truly can understand what each thing does (which I think I said should be done). And just in case there's sneakily malicious code before putting it into the server. Hell, I did a part of the job by trying to see how it works on the code directly and signaling a few things that should be ironed out to the creator and here.

I believe the potential for cool stuff is very much there, but I am not impulsive on it. Maybe it is too good to be true, maybe not. Hence how I had written it like: "Hey, let's check out this addon now, see if it can really work and wait on it to be even better." instead of:
"ADD THIS ADDON NOW! NOW NOW NOW!!!", like a few do.

Question is if it's actually worth the potential gains with the improbable, but still possible risks when the addon gets well more polished. I'd give it a month or two of watching this closely before considering it. And then testing the addon itself on.

Anyway, I want to see what dev(s) think about it if they read the suggestion and the addon's code. I also want to learn stuff if it turns out there's a reason it shouldn't be used. I am curious after all :)
 
Reactions: List

Aspect™

Proton
Joined
Jul 23, 2016
Messages
378
Nebulae
572
I wanted to add this to my own server. I barely noticed a difference with it, and it had a small delay when showing/hiding things, as well as minor graphical bugs where certain objects in front of you would disappear for no apparent reason.


ezgif.com-optimize.gif


Wouldn't really recommend it, unless you need to optimize a GIANT event build or something.
 

Gary

Moderator
Moderator
Developer
HL2 RP Server Director
Joined
Apr 27, 2016
Messages
1,822
Nebulae
7,106
I wanted to add this to my own server. I barely noticed a difference with it, and it had a small delay when showing/hiding things, as well as minor graphical bugs where certain objects in front of you would disappear for no apparent reason.


ezgif.com-optimize.gif


Wouldn't really recommend it, unless you need to optimize a GIANT event build or something.
I ran into the same situation while trying to prevent third person peaking, it takes a considerable amount of resources to do these checks and honestly it’s best left to the engine to figure out

Prop builds are mainly an issue with calculations, rather than visibility behind the props

It may improve FPS a bit, but I cant argue that is worth implementing something that constantly breaks visuals
 
Reactions: List

deathwolf

I AM SPIDERMAN, GRIST LIES! I AM HIM REALLY! ﷽﷽﷽﷽﷽
GTA RP Playtester
Joined
Aug 23, 2016
Messages
9,783
Nebulae
36,141
I ran into the same situation while trying to prevent third person peaking, it takes a considerable amount of resources to do these checks and honestly it’s best left to the engine to figure out

Prop builds are mainly an issue with calculations, rather than visibility behind the props

It may improve FPS a bit, but I cant argue that is worth implementing something that constantly breaks visuals
what about this tool @Aspect™ too,
it does the same thing of not rendering props, but this doesn't do any calculations afaik, you set the areas for which areas are culled, and where you need to be for them to load yourself manually, could be useful
 
Reactions: List

Aspect™

Proton
Joined
Jul 23, 2016
Messages
378
Nebulae
572
what about this tool @Aspect™ too,
it does the same thing of not rendering props, but this doesn't do any calculations afaik, you set the areas for which areas are culled, and where you need to be for them to load yourself manually, could be useful
With something this scale, I feel like leaving it up to Source on the C++ level would be more efficient, with areaportals and such.
 

WstStranger

Proton
Joined
Sep 9, 2022
Messages
180
Nebulae
603
Well, that is kind of a bummer. Expected more from a supposedly fast scripting language...

Maybe in a new branch of Source... Or we should make better optimized maps in the best case.

Still, will watch this addon and use it in my future propbuild posters, since I like going overboard and want my PC to not crash often. Hopefully it becomes truly nice :)
 

mårten

Atom
Joined
Apr 26, 2016
Messages
2,927
Nebulae
2,550
Well, that is kind of a bummer. Expected more from a supposedly fast scripting language...

Maybe in a new branch of Source... Or we should make better optimized maps in the best case.

Still, will watch this addon and use it in my future propbuild posters, since I like going overboard and want my PC to not crash often. Hopefully it becomes truly nice :)
it's ok (cope) when all gmod rp is ported to S&Dbox (cope) and it will have 0 performance issues (cope) and be a lot smoother and easier to work with (cope)
 
Reactions: List