PolymerNG - Xbox One and Windows 10
#331 Posted 26 May 2016 - 09:25 AM
This post has been edited by icecoldduke: 26 May 2016 - 07:51 PM
#332 Posted 26 May 2016 - 09:40 AM
icecoldduke, on 26 May 2016 - 09:25 AM, said:
lol, I could probably set a pc on fire with polymer (gone through a few video cards)
I once made a TROR castle for WGR2 with crenelations, that was a heavy map (17fps) lessons learned.
icecoldduke, on 26 May 2016 - 09:25 AM, said:
At that spot on clcoast where you get 70fps, I get 20.
core2duo e8400 - 3Ghz
geforce gt640 - 128bit 2GB-DDR3
This post has been edited by Drek: 26 May 2016 - 09:50 AM
#333 Posted 26 May 2016 - 10:05 AM
#334 Posted 26 May 2016 - 10:07 AM
This post has been edited by icecoldduke: 26 May 2016 - 07:51 PM
#335 Posted 26 May 2016 - 10:32 AM
icecoldduke, on 26 May 2016 - 10:07 AM, said:
I thought we would only need to flag them if we wanted performance optimized. Right? Older maps with untagged CON moved sectors will still render properly, but slower.
________
If you are going to write a routine for pre-determining sector visibility (either as an offline tool or something that runs during map load) then I hope we will still have the option of not using it. That is because it is going to be very tricky to get right, given the dynamic nature of Build.
Yes, SOS was an integral part of the game from day one. But guess what? Having 16384 walls with 4096 sectors in a map was not. The original limits were 4096 walls with 1024 sectors. I bring this up because anyone designing content for the new renderer can chunk up the gameplay into reasonable sized maps, as many modern games do. If someone wants to play Clear the Coast or some other big map that breaks the original game limits, and then they want it to have all of the fancy effects that you are going to add, and the HRP, and they complain that frame rate has dropped to 9....well, that's too bad.
To be clear, I am in no way suggesting that we go back to the old Build limits. What I'm saying is that when you combine the enhanced Eduke limits with a full set of next-gen renderer features and the dynamic nature of Build, it is very easy to create something that destroys the frame rate. But hey, that's ok! That's the responsibility of content developers to worry about. For that matter, you could also break the frame rate by making a map with one big simple room, then putting 1000 enemies in it all firing projectiles that emit dynamic light. Your job is not to prevent content developers from bringing the renderer to its knees, your job is to make it work correctly and optimize as best possible, with the knowledge that content developers can still do dumb things.
#336 Posted 26 May 2016 - 10:41 AM
This post has been edited by icecoldduke: 26 May 2016 - 07:52 PM
#337 Posted 26 May 2016 - 10:51 AM
icecoldduke, on 26 May 2016 - 10:41 AM, said:
Sounds good. I just wish it wasn't such a contentious public process to reach that decision. With all due respect, I suggest that if you have another brainstorm like "hey what if we didn't support SOS?" that you mention it to TerminX and/or Hendrics266 first via some private method so it doesn't blow up in the public thread. It would be pretty silly if some level designers were wary of PolymerNG when it is released, even through their concerns were based on outdated forum posts.
#338 Posted 26 May 2016 - 10:57 AM
This post has been edited by icecoldduke: 26 May 2016 - 07:52 PM
#339 Posted 26 May 2016 - 11:14 AM
icecoldduke, on 26 May 2016 - 10:57 AM, said:
The difference here is that we aren't just concerned about future content or content in the pipeline; we are mostly concerned about a legacy of many years of past content. I think most people understand and can accept that they may have to follow new rules when developing future content, if they want to take advantage of new features and enjoy good performance. But if you tell people that already existing content will be broken unless it is retro-fitted, that's when they flip their shit. There is literally no one around to do retro-fitting in many cases; a lot of the content our community enjoys was made by talented people who have moved on and are never coming back. Sorry if it seems like I am beating a dead horse, but what I'm trying to get across is that the alarmed reactions are not random, they are triggered by a very specific kind of perceived threat and it is easy to avoid alarming people in that way.
#340 Posted 26 May 2016 - 11:15 AM
#341 Posted 26 May 2016 - 11:19 AM
Tea Monster, on 26 May 2016 - 11:15 AM, said:
#342 Posted 26 May 2016 - 11:22 AM
#343 Posted 26 May 2016 - 11:38 AM
icecoldduke, on 26 May 2016 - 10:57 AM, said:
It's fine, the whole SOS debacle is settled. You may have gone about it a bit sarcastically but it's good to know where the bottleneck was in Polymer, and great to see you working on ways to get around the issue.
IMO progress = morale boost.
#344 Posted 26 May 2016 - 12:17 PM
icecoldduke, on 26 May 2016 - 09:25 AM, said:
I thought the point here was to avoid getting C&Ds from Gearbox.
What processing are you doing that you claim would take too long on level load? An n² lookup of whether every sector is visible from every other sector?
icecoldduke, on 26 May 2016 - 10:07 AM, said:
Part of the reason for the structure tracking system we have in place was to inform Polymer of when the engine structures change with minimal overhead. Is this flag something that strictly must be set before level load?
Otherwise you're both cutting loose the performance of a segment of modding styles by modders who probably don't follow this thread as rabidly as the Cataclysm dudes, and making more work for yourself and anyone who adds other Build games to our tree by having to manually instrument all game-based sector effects.
Tea Monster, on 26 May 2016 - 11:15 AM, said:
Like how Plagman worked with Parkar to get ideas tested, content set up, and plans laid out before Polymer was public knowledge?
Drek, on 26 May 2016 - 11:38 AM, said:
SOS isn't the bottleneck in Polymer. (Polymer is designed to always get everything right, as a good renderer should.) The reason it's an issue for PolymerNG is that ice wants to stack more effects than Polymer offers and needs to squeeze out that difference from somewhere.
#345 Posted 26 May 2016 - 12:21 PM
#346 Posted 26 May 2016 - 12:22 PM
Tea Monster, on 26 May 2016 - 11:15 AM, said:
Not sure what that's supposed to mean. Everyone knows that Polymer was left unfinished. Unfinished renderer is unfinished...no surprise there.
#347 Posted 26 May 2016 - 12:24 PM
Hendricks266, on 26 May 2016 - 12:17 PM, said:
SOS was the stress case that pointed out where icecoldduke's faster vis pass was lacking, thus leading to discussion of a previs solution.
Mblackwell, on 26 May 2016 - 12:21 PM, said:
He's said similar before, converting world geometry to 3d from .map data tends to make many MANY triangles.
This post has been edited by Drek: 26 May 2016 - 12:36 PM
#348 Posted 26 May 2016 - 12:28 PM
For all we know polymer's problem is that it doesn't batch enough into a single call, or has too many calls which trigger validation in the driver (which can halve your performance easily).
#349 Posted 26 May 2016 - 12:29 PM
This post has been edited by icecoldduke: 26 May 2016 - 07:52 PM
#350 Posted 26 May 2016 - 12:34 PM
Mblackwell, on 26 May 2016 - 12:28 PM, said:
For all we know polymer's problem is that it doesn't batch enough into a single call, or has too many calls which trigger validation in the driver (which can halve your performance easily).
Yeah, I spoke past what I understand.
#351 Posted 26 May 2016 - 12:35 PM
#352 Posted 26 May 2016 - 12:41 PM
icecoldduke, on 26 May 2016 - 12:29 PM, said:
That sounds very tricky, given that sectors are of radically different shapes and sizes and can even move around (e.g. on a subway car sector). Also keep in mind that you would want it based on the camera position, which is not necessarily the player's position (they differ when using view screens, or a scripted cutscene etc.)
#353 Posted 26 May 2016 - 12:47 PM
icecoldduke, on 26 May 2016 - 12:29 PM, said:
Sounds like BSP. You need to throw these ideas out and think from the standpoint that in Build, every wall and sector is dynamic and can move at any time. Nothing is truly static. There is no difference between a moving sector and one which doesn't move--you know this.
Aim for the best result in the worst case scenario.
#354 Posted 26 May 2016 - 12:48 PM
This post has been edited by icecoldduke: 26 May 2016 - 07:52 PM
#355 Posted 26 May 2016 - 02:18 PM
This post has been edited by icecoldduke: 26 May 2016 - 07:52 PM
#356 Posted 26 May 2016 - 02:38 PM
#357 Posted 26 May 2016 - 02:48 PM
Mblackwell, on 26 May 2016 - 02:38 PM, said:
And ease of use. OK, maybe just me, but it takes me a week to get a basic map laid out with mapster32 and one month to do the same in (my other fav game engine)
So it stays on topic, since day one mappers accepted the limits of the engine, and I'm sure future mappers will do the same with a workable renderer.
This post has been edited by Hank: 26 May 2016 - 02:58 PM
#358 Posted 26 May 2016 - 04:16 PM
Daedolon, on 26 May 2016 - 04:48 AM, said:
I didn't want to spend a lot of time or make a big issue of it, but I loaded about 25-30 maps in Mapster and spotted SOS being used in two maps. There is always the possibility I missed one or two instances, but I wouldn't agree with you that its in most maps. Its possible you favor more indoor maps and me more outdoor types which could account for the difference in SOS usage.
...and I would be ok for the previs running.
This post has been edited by Mark.: 26 May 2016 - 04:19 PM
#359 Posted 26 May 2016 - 04:43 PM
I hope we haven't locked ourselves into the 3 options mentioned and that a good, all-round solution that doesn't split up how content is made, may yet present itself. Has Plagman spoken up on the current issues yet to offer any potential new insight?
#360 Posted 26 May 2016 - 04:47 PM
Mark., on 26 May 2016 - 04:16 PM, said:
...and I would be ok for the previs running.
The number would not matter.
I switched my opinion when I realized E2L7 makes use of sector in another sector to make a realistic mirror.
If just one of the original maps would no longer work, it would then break the compatibility to the game the entire exercise of making a modern renderer is for.
This post has been edited by Hank: 26 May 2016 - 04:50 PM