Jump to content
Sign in to follow this  
zastels

UE4 and Blender - BSP style is a must

Recommended Posts

13 hours ago, FrieChamp said:

I think a good LD should be able to tell when it makes sense to use a tileset or brushes (while still adhering to an agreed grid system) for blockouts. It makes sense to use tilesets when you are going to build 50 corridors or rooms that are going to be very similar in style. But you will find yourself constrained when it comes to hero locations or locations that require an architectural style that the existing tileset(s) was not built for. 

Ideally this is 100% true.

In practice it basically always just turns into a shit show of random grid sizes. Level designers who build on the 1 grid. People messing stuff up leaving holes in the world. Environment artists basically just rebuilding entire areas. In my experience it just happens constantly. And 9 times our of ten the player would never have known the difference anyway. Production costs are mitigated greatly if this part of the process can be simplified. The gains that you get for letting people build on the 1 grid are not really significant. Ill often hear someone say "but you can get more exact level geometry that's less blocky" and to that I simply call bullshit. Meshes are less blocky than brushes. 

Keep in mind I am speaking purely from a AAA PVE centric first or third person shooter. In the case of an Arena FPS or CS:GO I can maybe see a need for very meticulous spaces where prefabbed level design is not enough to deal with the intricacies of movement mechanics. Even then though, I am willing to bet that when we finally get a chance to play something like Diabotical then even that will probably play just fine even if it is just basically minecraft level design. But in the case of a game like Fallout or Warframe or Destiny The player will probably never know the difference in those examples. Its almost silly in those examples to want brushes for anything other than maybe some stand in level geometry.

On top of that real life architecture often is prefabs anyway. The only time I can think of where architecture really is not repeating is in post modernist sky scrapers and set pieces and caves. But in each of these examples meshes tend to be better anyway. 

I find that if I ever want to work with a base geometry system than Minecraft style blocky level geometry works better in general for most things and it compliments being able to correctly fit meshes into spaces. And if done using a global grid rotational access you can build with minecraft blocks on various angles and achieve a best of both worlds situation.

Overall my take on all of this is that I prefer to force people to work with limitations.
This is the most important thing in this entire post. Limitations make it so we skip the hardships and people focus on making things fun rather than fiting it all on a grid the player never notices anyway. Not only does it simplify the overall process but it forces creativity and makes the process to build things faster. I built a demo showing what I am talking about in Unreal 4 if you guys want to see what I mean. I can make a video to talk about the topic a bit more.

I really seriously dislike brushes. In practice all they have done is make things harder and slow down the process.

 

Edited by Castle

Share this post


Link to post
Share on other sites
On 9/12/2018 at 11:18 PM, Castle said:

One of the main things that happens in modern level design where the designer does a "blockout" is the blockout is handed to the environment artist who then is basically tasked with changing everything with the goal of changing as little as possible.

 

...and that is really the hub of what the OP is having issues with, and was my original answer. Two disciplines. Two jobs. Two roles. ONE tool in UE4. If someone is working solo, then they can't in truth deliver AAA modelling inside (and only inside) UE4. Epic seem to be moving in the direction of Cryengine Designer, which would offer AA+ (possibly even AAA) final modelling.

What UE4 needs is a modelling tool with the base simplicity of a level design tool allowing for edge, face, vertex manipulation. This is what is in CryEngine as a standard, whilst Unity has probuilder as a sort of plugin, which although is fine and useable/malleable - is still a plugin and not part of the base code of the engine (if I'm wrong on this, someone please correct me, I'm looking at the beta right now, so that might be my honest mistake). Now, they (Epic) already have got neat tools like datasmith for import/export loop, now (it appears) they are more focused for the remainder of this year and Q1/H1 '19 on the core engine.

Epic can do it.

 

Edited by Mitch Mitchell
duplication

Share this post


Link to post
Share on other sites
11 hours ago, Mitch Mitchell said:

 

...and that is really the hub of what the OP is having issues with, and was my original answer. Two disciplines. Two jobs. Two roles. ONE tool in UE4. If someone is working solo, then they can't in truth deliver AAA modelling inside (and only inside) UE4. Epic seem to be moving in the direction of Cryengine Designer, which would offer AA+ (possibly even AAA) final modelling.

What UE4 needs is a modelling tool with the base simplicity of a level design tool allowing for edge, face, vertex manipulation. This is what is in CryEngine as a standard, whilst Unity has probuilder as a sort of plugin, which although is fine and useable/malleable - is still a plugin and not part of the base code of the engine (if I'm wrong on this, someone please correct me, I'm looking at the beta right now, so that might be my honest mistake). Now, they (Epic) already have got neat tools like datasmith for import/export loop, now (it appears) they are more focused for the remainder of this year and Q1/H1 '19 on the core engine.

Epic can do it.

 

If I remember correctly Unity acquired Probuilder team/tech and included it… I kinda remember posting an update on the Unity topic some months ago. Still tho…

in my inexperience, I would like to see a modern editor take a lot from Sketchup… many studios use it for blocking out and concept design.

Share this post


Link to post
Share on other sites
9 hours ago, blackdog said:

If I remember correctly Unity acquired Probuilder team/tech and included it… I kinda remember posting an update on the Unity topic some months ago. Still tho…

in my inexperience, I would like to see a modern editor take a lot from Sketchup… many studios use it for blocking out and concept design.

https://assetstore.unity.com/packages/tools/modeling/probuilder-111418

I might be totally wrong, but it's in the asset store, not the core engine. This makes it a FoC plugin/tool, but I will defer to the collective understanding of what 'it' is and what the definition is.  If this makes it included in the base code albeit in an 'optional download' form, then fine - but I do think Unity haven't actually incorporated it into the code of the base engine...yet.

As for Sketchup Pro, they are certainly gaining some ground for asset creation - you thinking Epic should sharpen pencils and take note of the UX/UI from Sketchup; or other aspects of Sketchup? I have to admit, I am not the biggest fan, but would be a fool to ignore what these guys are doing.

Share this post


Link to post
Share on other sites

Nice thread, so I remember when we, and the community where working on UT maps,  discussions about improvements to the BSP/Geometry system was being planned, a lot has changed with the success of Fortnite though, I'm pretty sure my requests would go amiss right now with all the crazyness that is Fortnite. I do know the outcome was that the tools could be improved, things have changed a lot since the days of subtractive editing, which is where Unreals old BSP system actually shined, if you could get used to the flipped workflow.

Personally, I can use whatever to make level whiteboxes/shells, spent a lot of time in many editors - don't really consider the actual tool to be the limiting factor of final quality at all 🤔 

Share this post


Link to post
Share on other sites
11 hours ago, Mitch Mitchell said:

https://assetstore.unity.com/packages/tools/modeling/probuilder-111418

I might be totally wrong, but it's in the asset store, not the core engine. This makes it a FoC plugin/tool, but I will defer to the collective understanding of what 'it' is and what the definition is.  If this makes it included in the base code albeit in an 'optional download' form, then fine - but I do think Unity haven't actually incorporated it into the code of the base engine...yet.

As for Sketchup Pro, they are certainly gaining some ground for asset creation - you thinking Epic should sharpen pencils and take note of the UX/UI from Sketchup; or other aspects of Sketchup? I have to admit, I am not the biggest fan, but would be a fool to ignore what these guys are doing.

My quick search returns this:

https://blogs.unity3d.com/2018/02/15/probuilder-joins-unity-offering-integrated-in-editor-advanced-level-design/

Not sure, maybe they are still working on the native integration or there is something and the plugin is there for legacy(?)

~

is not like I’ve used Sketchup for LD needs, just played a little bit when was still google’s; but I think the way you model in it would suit any kind of BSP building. Not having used it for the purpose I can only say it feels very fast and very fitting. 

~

@2d-chris main point of the topic was the adherence to a grid system, you think that having worked with Cryengine a lot, (what I think) an engine heavily based on props placement, has made you less fussy in terms of strictly building on the grid?

Edited by blackdog

Share this post


Link to post
Share on other sites

What's wrong with the grid? We even allow you to change between powers of two and meters ... I noticed somebody mentioning the floating point numbers, all game engines have those, they just round what they show you :P I've also never had to work on funky relative rotated grids in my experience, not saying there isn't a need, it's just pretty specialist from what I've seen. 

I did once, quite recently have to work out the nearest grid location for an actor with math, but it was pretty simple to do and learned something. This was caused by a bug though. Fortnite has a slightly expanded grid system, but I can't talk details there, but usually specialist features are better added by developers for their own projects.

EDIT: If you want to , say, rotate an entire building offset by 13 degrees, it's best to make it on a sub level, and use the sub level offset tool to move and rotate it, this keep the original building at a usable grid but still allows relative changes if you want. 

My personal improvement would be something like Maya's vertex snapping built in - that could be quite handy. 

If somebody can summarize it well, I'm happy to pass the info on. 

Share this post


Link to post
Share on other sites
7 hours ago, Mitch Mitchell said:

Citation needed...

Read up on floating point precision, even with a grid, large world editors like Unreal lose precision, some games even have issues at run time with this (animations jittering, seams appearing between meshes that are perfectly aligned and no doubt more I'm unaware of) there are solution for huge worlds though. 

From what I remember, in hammer for example, you're always placing on a 1 inch grid, so it's rounding up or still snapping to it, hl2's editor space is also tiny, so it becomes less of an issue. I've yet to ever see a seam in UE4 even though the two floor meshes are 0.0002 apart etc, just ignore it. I can imagine it would trigger many level designers, as it did me at the start.

 

 

 

Share this post


Link to post
Share on other sites
33 minutes ago, 2d-chris said:

floating point precision

That old chestnut? I thought JC allegedly solved that in the Quake code.

That is still a problem? Good lord, just "ban" certain numbers, and please write a fixer/solver to auto-snap everything so there are no irrational numbers - oh, and whilst in the meeting room eating doughnuts, tell them to allow for rotational snapping as well. When I hit CTRL+End, I want the irrational angle removed, too. 15 degrees, not 15.00000154121254884516515465449...makes my head figuratively explode.

 

Edited by Mitch Mitchell
grammer

Share this post


Link to post
Share on other sites
23 hours ago, Mitch Mitchell said:

That old chestnut? I thought JC allegedly solved that in the Quake code.

That is still a problem? Good lord, just "ban" certain numbers, and please write a fixer/solver to auto-snap everything so there are no irrational numbers - oh, and whilst in the meeting room eating doughnuts, tell them to allow for rotational snapping as well. When I hit CTRL+End, I want the irrational angle removed, too. 15 degrees, not 15.00000154121254884516515465449...makes my head figuratively explode.

That old chestnut? LOL. Floating points numbers are the foundations 99.9% of all video games. Quake definitely used floats. Every engine after that one as well. There is no way you can do otherwise nowadays, especially considering GPU are basically floating point calculators. Games mainly used integer in the past, but that was a few decades ago, when hardware graphics was non-existent.

Floating point numbers can describe integer without any precision issues. There are lots of myths floating around (pun intended) and lots of misconceptions on float/double.

Even BSP engines uses floats for brushes. Since everything is on a grid you could use rationnal numbers, but I guess nobody thought this would be useful. I don't think a precision of more than 0.001 is relevant to be honest. I do get triggered by my vertices being 0.001 units misaligned in editor. Then I'll compile and play it and realize it's really not a big deal. When you know what to look for you can see issues everywhere, while most players won't bother.

Share this post


Link to post
Share on other sites

Do you have any read about this aspect?

im sure is above anything I will ever be interested in doing, or affected by, but maybe reading about would limit the raging whenever encountering the situation.

the little I worked in UE4, I don’t remember getting annoyed by weird float values, but who knows. I’m very anal and just used to round up numbers in the panels whenwver I see this kind of thing happening.

From the outside, not having knowledge of how the engine works, I really don’t get why this problem occurs. You just expect things to align to the (integer) grid, then if you need smaller stuff on it, you reduce the grid and the position is a float compared to the starting reference unit (say you building a door in cm but then you want to place the handle and you use mm) – dunno if it makes sense, pls be patient guys 😬

Edited by blackdog

Share this post


Link to post
Share on other sites
3 hours ago, blackdog said:

Do you have any read about this aspect?

im sure is above anything I will ever be interested in doing, or affected by, but maybe reading about would limit the raging whenever encountering the situation.

the little I worked in UE4, I don’t remember getting annoyed by weird float values, but who knows. I’m very anal and just used to round up numbers in the panels whenever I see this kind of thing happening.

From the outside, not having knowledge of how the engine works, I really don’t get why this problem occurs. You just expect things to align to the (integer) grid, then if you need smaller stuff on it, you reduce the grid and the position is a float compared to the starting reference unit (say you building a door in cm but then you want to place the handle and you use mm) – dunno if it makes sense, pls be patient guys 😬

I guess it does make one think that UE4's code in this regard is a tad 'old'. Light leaks are certainly annoying, especially when you find it is because static mesh A, has a gap next to static mesh B; the width of a cigarette paper. Both static meshes have identical dimensions and were placed in the scene next to one another, yet, somehow one has a position expressed with an irrational number, hence the leak.

As far as I can tell from reading the backstory to this, the problem does have a brute force solution, but back in the early days of computer graphics, doing this was too demanding computationally. 90's developers used a mathematical 'hack' instead.

https://en.wikipedia.org/wiki/Fast_inverse_square_root

I just want a solver that removes all of the irrational numbers in a scene/level/map, not the actual methodology of doing the calculations, but just pre-runtime building/lighting in the editor. I appreciate that runtime will give all manner of endlessly weird and fantastic numbers to give fast real-time graphics, but not when working the environment.

Share this post


Link to post
Share on other sites
5 hours ago, Mitch Mitchell said:

I just want a solver that removes all of the irrational numbers in a scene/level/map, not the actual methodology of doing the calculations, but just pre-runtime building/lighting in the editor. I appreciate that runtime will give all manner of endlessly weird and fantastic numbers to give fast real-time graphics, but not when working the environment.

Oh I do understand what you say, the whole problem sounds pretty intuitive… what I don’t get is why is a problem in the first place. From what @Klems was writing it seems it’s a legacy issue that always existed, so i imagine there must be some article talking about this?

Share this post


Link to post
Share on other sites

I don't get why you think those coordinates use irrational numbers, it's just decimal numbers with plenty of significant digits. They don't get rounded because of fast algorithms like the fast inverse square root (which I assume is more related to the rendering) that aren't perfect but gives the opportunity to manipulate complex geometry.

It's important to understand how accurate your result is if a rotation has an angle of "15.00000154121254884516515465449" , you'll need to make that rotate thousands of times in a row before slightly noticing an offset visually.

Edited by leplubodeslapin

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

×
×
  • Create New...