A7 BSP new rendering engine

Posted By: slacker

A7 BSP new rendering engine - 03/27/07 17:23

I am not that up to speed on how the rendering engine works- so bear with me. I thought that BSP rendering relied on CSG gemetry (no concave blocks) Is this not so? Because the new GS will allow concave geometry, no?

If the new BSP does allow concave geometry, will models imported into WED from a 3D program be included in the solution?
Posted By: Orange Brat

Re: A7 BSP new rendering engine - 03/28/07 00:03

A7 will have both a BSP and ABT renderer. ABT is called a "simple build" in the compiler, and it will allow for concave geometry. BSP will be moved to a Pro only feature which is baffling to me given 3DGS has been a BSP engine for most of its lifetime. If BSP is supposed to be "outdated" (which it isn't) then why the move to pro?
Posted By: D3D

Re: A7 BSP new rendering engine - 03/28/07 12:32

Ah well they have to move something to pro. In the past we had mirrors, but then with new release they give mirror to pro owners. Guess that's humor. I'm happy with ABT in Commercial otherwise I would have gone to work with other engine.
Posted By: Matt_Aufderheide

Re: A7 BSP new rendering engine - 03/28/07 15:03

Quote:

If BSP is supposed to be "outdated" (which it isn't) then why the move to pro?




Im pretty sure the reason is that BSP is now seen as mostly irrelevant to most needs, and is kept mostly as a legacy option.

Bascially BSP is worthless for outdoor scenes, and most purposes, octree organization is fine for other types of levels as well.

The BSP and PVS method used in Quake was designed for pre-hardware accelerator computers. Hardware has changed some of the ways we handle rendering data.

I suppose there are still uses for BSP in some engines, but I think only in certain specific cases.
Posted By: Doug

Re: A7 BSP new rendering engine - 03/28/07 17:42

BSP is still alive and well in modern professional video games (Gears of War uses it). It isn't the best solution for all problems (i.e. outdoors) but when it is it's worth it.

I'm not sure exactly why JCL removed it from the other versions, but I guess the fact that many starting game developers go "Ewww...BSP?" has something to do with it.
Posted By: Orange Brat

Re: A7 BSP new rendering engine - 03/28/07 18:03

I agree that BSP is not ideal for exteriors. However, as Doug stated it is still alive and well and used in a lot of games (GoW has sold over 3 million units). There are different flavors and hybrids, I'm sure, but it's not something that should be scoffed at or slapped around. Anyway, I think it is a bad move to make it Pro only, and perhaps, Comm and Pro would be a better compromise. I fail to believe that most users don't use BSP and are making their levels exclusively out of entities of various sorts.

I just think it's a bit unfair to the users (esp. long time users) given most of the code and helpful hints and tips on the forum are geared for BSP levels and not to mention the engine has been BSP based since A4. I'm not opposed to change and progression, however my objection is based solely on the fact that BSP has been around since the dawn of time and seems like the foundation of the entire engine when you get right down to it.

Surely, there is some other feature that could be sacraficed (keep multi-object physics pro since there is always Newton for non-pro users?? new light management? zfail stencils?). Given my limited test with the A6 beta, I have discovered that the ABT rendering is not faster on my interiors. I get a 5-10 fps drop. I get a steady 60 fps without visibility factored in on the same levels in A6. And, of course, I realize it's still a beta, and this may improve with time.

I realize I'm only one person, and this isn't going to change things, but it's something I think needs to be said. Others should chime in if they feel the same.
Posted By: slacker

Re: A7 BSP new rendering engine - 03/29/07 02:33

So does ABT include concave models imported into wed and entities into its solution?

What is exactly happening with ABT, I think I understand BSP.. Is it simply if it is not in the view cone, don't render it?
Posted By: jcl

Re: A7 BSP new rendering engine - 03/29/07 12:54

For information about BSP and ABT rendering, see:

http://manual.conitec.net/culling.htm

BSP is by far the best scene management system for hardware accelerated systems, which is why it's often used today by commercial high-end engines. Contrary to rumors, it's also good for outdoor levels when they contain buildings.

However, hardware today is so fast that you don't need a BSP renderer anymore for small or medium sized indoor levels. You can also render them with more primitive systems like ABT or even the old-fashioned Octree. For 90% of all Gamestudio games, the A6 BSP renderer is not faster than the A7 ABT renderer. That's why we moved BSP to the Pro Edition in exchange for physics.

There are also marketing reasons. Many newbies don't understand the limitations of a BSP renderer (like lengthy precalculation and convex geometry for the PVS process). Thus, we'll get rid of all those limits in the A7 lower editions. Someone who upgrades to Pro will likely understand the Pros and Cons of BSB vs. ABT, but we can not expect this from newcomers. From its very nature, BSP is a Pro feature.
Posted By: slacker

Re: A7 BSP new rendering engine - 03/29/07 23:29

Quote:

An Adaptive Binary Tree, or ABT in short, is the most effective way for a scene management without a precalculated tree. It works similar to an Octree, but uses various region sizes dependent on the geometry and entity distribution of the level. An ABT is calculated in real time, thus level compilation is a lot faster due to omission of the BSP/PVS process. Although less effective than a BSP tree, it can offer almost the same performance in outdoor levels. In combination with lite-C, the Acknex engine automatically uses an ABT tree for levels that don't contain a precalculated BSP tree.




Yeah I found this yesterday and read it before posting. I was hoping to get better info on ABT and octree rendering. I understand BSP and the precalculation, and that it is not that pertinent for outdoor levels.

How does ABT determine what to render and not render?

I did some searching on google - and didn't find very much.
Posted By: NITRO777

Re: A7 BSP new rendering engine - 03/30/07 01:40

The whole issue seems to be a no-brainer to me. If your game loses performance as it gets larger and more complicated, perhaps you will need to switch to pro and try the BSP to see if it helps. If not, use the cheaper method.

As far as rendering methods go I am happily ignorant, as long as my game runs good I have no need to know how the underlying renderer works. Thats probably why I bought an engine in the first place, because I have no interest in learning how to render things. Why should I reinvent the wheel?

Personally, I have tried this a7 pre-release on my level with the "build simple map" option and it out-performs the level built on bsp by 100 fps in windowed mode. Plus it compiles a lot faster. So I certainly wont complain.
Posted By: Matt_Aufderheide

Re: A7 BSP new rendering engine - 03/30/07 09:27

Quote:

BSP is by far the best scene management system for hardware accelerated systems




I think the problem is that I'm talking about levels with large amounts of arbitrary geometry.. in this case BSP is not a good solution is it?...unless you have to construct your levels out of simple shells, with meshes inside them all.. this would be a big pain...
Posted By: jcl

Re: A7 BSP new rendering engine - 03/30/07 09:32

Arbitrary geometry is not a problem for modern engines. In A7 you'll later be able to import any arbitrary-shaped geometry and the BSP tree will still work. The tree process 'knows' which objects should be used for the tree and which shoudn't.
Posted By: Matt_Aufderheide

Re: A7 BSP new rendering engine - 03/30/07 09:49

oh ok... I just thought BSP calcualtions didnt work with concave geometry and so forth...
Posted By: William

Re: A7 BSP new rendering engine - 03/30/07 10:28

Quote:


oh ok... I just thought BSP calcualtions didnt work with concave geometry and so forth...




Yeah, same here. I always thought BSP was convex only, and quite outdated because of it.

Which makes me wonder, why not sooner? Why will BSP allow concave eventually with A7 and not with A5, A6? Why the time for developing an Octree/ABT for concave if BSP would have allowed it all along? I think if BSP allowed seamless geometry of all types, many people would be drawn to it regardless of the longer compile(if it really does have a much better speed difference). This would also make BSP more newbie friendly due to the elimination of convex only geometry. Not that it's terribly complex anyways. Probably most who started with Gstudio started by building all kinds of convex levels in WED, more advanced users may eventually switch over to Max, Lightwave, and create everything there. Because of this, they'd most likely require concave geometry anyways(ABT) and of course, good scene importers that import both models(so you can apply actions to certain objects) and geometry.

If Gears of War is BSP based, it surely doesn't use convex geometry for everything. Only programs like Max and Lightwave can create these types of meshes, and these mesh's are arbitrary. WED wouldn't be able to develop similar levels, because it's tailored for convex levels.
Posted By: jcl

Re: A7 BSP new rendering engine - 03/30/07 11:48

There is no such thing as a 'concave' or 'convex' geometry for a BSP tree. A BSP tree is plane based.

The limitation to convex blocks in most BSP-based engines, like A4 through A6, had other reasons. Both the light map compiler and the PVS system relied on convex blocks. That's why the A7 map compiler needs more time for lightmapping when blocks are not convex - we're using a different algorithm for such blocks, which is slower.
Posted By: slacker

Re: A7 BSP new rendering engine - 03/30/07 14:06

Wow that is great news - I am seeing some pretty low frame rates right now, but I have pretty complicated scenes and meshes - and am at constant battle with optimization.

I ask about ABT because it seems that having an understanding of how the culling algorythms work might help with scene layout strategy, and I am just curious about the technology that I am using.
Posted By: MaxF

Re: A7 BSP new rendering engine - 03/30/07 14:40

Well there is my 2 cent (descent).

"From its very nature, BSP is a Pro feature"

Being a customer for 5 years and I've always had BSP not 100% happy about it been taking away if I don't upgrade to Pro, love U Conitec but I need to say this

From the above posts, I think you are saying that BSP will work with arbitrary-shaped geometry.
Quote:

"import any arbitrary-shaped geometry and the BSP tree will still work."




So does this mean that we are removing BSP blocks, if not will shaders work fast on BSP blocks.

I'm still thinking about upgrading to Pro but I have to think about it hard, $1000 is a lot of money (after exchange) to spend, it would be nice to see the different packages planned for A7.

But I still can't get out of my mind, that if I spent $1000 elsewhere on a engine, I would get great shaders out of the box like

Unity Engine

I do want to stay with 3DGS and I know that a list of shaders are coming in templates, but it feels like they have been coming for years
Posted By: Doug

Re: A7 BSP new rendering engine - 03/30/07 19:26

MaxF: It may help to think of it this way, with A7 you are getting an updated rendering engine. This engine uses a new format (ABT) that improves on the old (BSP) format with much quicker build times and, in many cases, improved performance.

The BSP feature that the Pro owners are getting isn't the same as the one that ABT replaced in A6. The A7 Pro BSP can use arbitrary-shaped geometry, work with ABT, etc. The downside is that this new BSP is a lot trickier to use right than the base ABT system. Thus, Pro only.
Posted By: MaxF

Re: A7 BSP new rendering engine - 03/30/07 19:30

Hey Doug

So you are saying that the A7 Pro BSP has been rewritten and will be faster then the A6Con BSP engine?

I wish JCL would show a specification list for A7, it would help people like me who are thinking about upgrading to A6Pro now.

A7Com is not losing shader editor or anything else is it?





Posted By: ventilator

Re: A7 BSP new rendering engine - 03/30/07 19:30

Quote:

The BSP feature that the Pro owners are getting isn't the same as the one that ABT replaced in A6. The A7 Pro BSP can use arbitrary-shaped geometry, work with ABT, etc. The downside is that this new BSP is a lot trickier to use right than the base ABT system. Thus, Pro only.


sounds interesting. i thought a7 will just keep the old bsp system around. but why will it be trickier to use right? could you go into a bit more detail?

and maxf's question about bsp + shaders was a good one too.
Posted By: JetpackMonkey

Re: A7 BSP new rendering engine - 03/30/07 19:43

I just want to be able to put in crazy organic geometry in my levels, unwrapped UV's however I lay them out, and have everything draw nice and fast without convex restrictions or having to take any kind of special precaution in my level design tools (other than, okay, polycount) and have lightmaps. ABT sounds like my dream come true.
Posted By: Orange Brat

Re: A7 BSP new rendering engine - 03/30/07 20:39

The fact that the Pro BSP will work with arbitrary geometry makes the move to a pro only feature a bit easier to swallow. If it was the same old BSP, then this wouldn't be the case.

Quote:

It may help to think of it this way, with A7 you are getting an updated rendering engine. This engine uses a new format (ABT) that improves on the old (BSP) format with much quicker build times and, in many cases, improved performance.




Based on the current private beta, this isn't the case when using high quality lightmaps, or at least in my limited experience with it. In the case of one specific level (the arched "Super Nintendo" hallway) the lightmap calculations take 3 minutes when in high mode. In low mode it's a mere 10 seconds, however this is how fast the current A6 build takes when in high mode. Performance during play is also impacted, but it is a detailed scene where the framerate hit happens but again it doesn't get hit in the current A6.

I don't know if the current beta compiler is buggy when it comes to building or if that is simply the tradeoff. Regardless, it's still much faster than BSP with visibility turned on.
Posted By: William

Re: A7 BSP new rendering engine - 03/31/07 10:48

Quote:

The fact that the Pro BSP will work with arbitrary geometry makes the move to a pro only feature a bit easier to swallow. If it was the same old BSP, then this wouldn't be the case.





I agree, that about sums it up. I just always believed BSP would never allow arbitrary geometry, and was outdated because of it. Partly based this on thinking ABT/Octree was being developed as the future replacement. And now hearing BSP allows arbitrary geometry is a bit weird... Then again, I don't know a whole lot about the inner workings of engines.
Posted By: slacker

ABT octree and BSP technical description - 04/01/07 23:04

found this interesting for those interested in reading more about ABT, Octree and BSP.

http://www.gamedev.net/community/forums/topic.asp?topic_id=123169
Posted By: William

Re: ABT octree and BSP technical description - 04/02/07 00:04

Thanks for the link, it made more sense of things.
Posted By: Doug

Re: ABT octree and BSP technical description - 04/02/07 19:55

Quote:

So you are saying that the A7 Pro BSP has been rewritten and will be faster then the A6Con BSP engine?




No, I didn't. I said it can use arbitrary-shaped geometry and work with ABT.
It can also make your project faster than a ABT version *if* you use it right.

Quote:

I wish JCL would show a specification list for A7



He will once we know exactly what will be in A7. Unlike some other companies (*cough*Microsoft*cough* ) we don't like to promise things we can't deliver on.
If we tell you "X" is going to be in A7, and we discover that we can't finish feature "X" in time. Either we have to delay the release of A7 (bad), release a half finished "X" (the worse solution), or be accused of false advertising (ugly).
Posted By: MaxF

Re: ABT octree and BSP technical description - 04/02/07 20:19

Thanks for the info Doug
Posted By: sPlKe

Re: ABT octree and BSP technical description - 04/03/07 02:38

im still for bsp = pro and com...

but who asks me?;-P
Posted By: MaxF

Re: ABT octree and BSP technical description - 04/10/07 13:16

Quote:

im still for bsp = pro and com...




So Am I
Posted By: JetpackMonkey

Re: ABT octree and BSP technical description - 04/10/07 13:54

In applying textures to ABT surfaces-- are we limited with the same basic restriction as in BSP for UV mapping (like, I think you basically had to use a kind of plane UV per side), or can we have more complex UV maps like if I had a crazy structure that I autounwrapped and handpainted in deep paint etc?
Posted By: HPW

Re: ABT octree and BSP technical description - 04/10/07 17:51

Code:
...we tell you "X" is going to be in A7, ...


Jippi! X is a new Feature in A7. Thanks doug for this big hint of such a great feature. I hope it's better than Microsofts X. I think X could bring A7 to a new level of gaming future. My dreams come true.
Posted By: harleyb12

Re: ABT octree and BSP technical description - 04/12/07 22:13

we'll finally be able to make concave objects? for real? YEY!
© 2024 lite-C Forums