Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

BSP style geometry creation tool with lightmapping.

Discussion in 'Made With Unity' started by CorruptScanline, Nov 2, 2009.

  1. CorruptScanline

    CorruptScanline

    Joined:
    Mar 26, 2009
    Posts:
    217
    I have been working on some level creation tools that allows you to create BSP style geometry within the Unity editor.








    Manipulating the BSP brushes is similar to how the Unreal Engine 3 editor works, but it is purely additive and there is no booleans (at least not yet).

    Features:
    * Works with free version of Unity!
    * In-Editor geometry creation.
    * High quality lightmapping on all geometry including imported models.
    * Lightmaps are calculated with soft shadows, radiosity, and ambient occlusion.
    * Configurable lightmap rendering settings with a quality multiplyer for doing quick revision calculations or doing full production calculations.
    * Manipulate position, rotation and scale of UVs on In-Editor geometry.
    * Lightmaps work on any shader that have a "_Lightmap" texture property in it.
    * fully compatible with my shader editor(http://forum.unity3d.com/viewtopic.php?t=36679)
    * Automatic batching of In-Editor geometry at runtime to reduce drawcalls.

    Things left to do:
    * Automatic batching of In-Editor geometry at runtime to reduce drawcalls.
    * Fix crash while editing In-Editor geometry.
    * Manipulate position, rotation and scale of UVs on In-Editor geometry.
     
  2. General Jackson

    General Jackson

    Joined:
    Oct 31, 2009
    Posts:
    73
    That looks neat-o :D
     
  3. Thomas GD

    Thomas GD

    Joined:
    Oct 23, 2009
    Posts:
    103
    will this be a plugin?
     
  4. gtjuggler

    gtjuggler

    Joined:
    Nov 13, 2008
    Posts:
    238
    Mmm, looks tasty.
     
  5. Jason_DB

    Jason_DB

    Joined:
    Nov 30, 2008
    Posts:
    495
    This is great! The one thing I missed when I stopped using the Unreal editor was BSP geometry.

    EDIT: by only additive do you mean there are only additive scenes or you cant subract from existing BSP geometry?
     
  6. JanHelleman

    JanHelleman

    Joined:
    Oct 11, 2009
    Posts:
    116
    please keep me updated. Btw, is this a plugin? Will it be free?
     
  7. VoxelBoy

    VoxelBoy

    Joined:
    Nov 7, 2008
    Posts:
    240
    The artwork on your website looks great! I can only hope that these BSP tools will be just as good. Keep us posted mate.
     
  8. CorruptScanline

    CorruptScanline

    Joined:
    Mar 26, 2009
    Posts:
    217
    The plan is to release a package of extra unity features and tools that are mainly targeted at artists.
     
  9. JanHelleman

    JanHelleman

    Joined:
    Oct 11, 2009
    Posts:
    116
    count me in for testing if needed!
     
  10. Armagon

    Armagon

    Joined:
    May 29, 2009
    Posts:
    246
    I have worked with BSP level design for 7 years before i went solo to the indie market. This is great for every artist/designer coming from engines like Source and UE.
     
  11. JAMiller

    JAMiller

    Joined:
    Apr 2, 2009
    Posts:
    78
    Sounds very cool.

    But one thing I am left wondering, is it true BSP technology (where it subdivides the space into a tree and does culling using the walls) or more just the workflow enhancement that creates a regular mesh?

    Either way, nice work!
     
  12. sebako

    sebako

    Joined:
    Jun 27, 2009
    Posts:
    301
    fat stuff, need!
     
  13. CorruptScanline

    CorruptScanline

    Joined:
    Mar 26, 2009
    Posts:
    217
    JAMiller, currently its just mesh, but i have some plans for doing occlusion. If those plans work out I could implement automatic occlusion of bsp and other objects without the user doing anything at all.
     
  14. JAMiller

    JAMiller

    Joined:
    Apr 2, 2009
    Posts:
    78
    Wow that would be incredible!

    Even if I didn't want to make my game level's visuals from BSP, I would still love to use that as an invisible BSP to manage rooms of a level made up of mesh objects!

    Please do this :)
     
  15. CorruptScanline

    CorruptScanline

    Joined:
    Mar 26, 2009
    Posts:
    217
    Some progress on bsp grouping:


    The cells are generated automatically based on desired atlas size and amount of lightmap pixels in the scene. Each cell is a separate lightmap atlas and can be combined into a single mesh at runtime to save drawcalls. The cells will also help with automatic occlusion.
     
  16. JanHelleman

    JanHelleman

    Joined:
    Oct 11, 2009
    Posts:
    116
    The shadows also look a lot more sharp now, it was more blocky last time! Looks really nice, once again, if you need someone to test your stuff..
     
  17. CorruptScanline

    CorruptScanline

    Joined:
    Mar 26, 2009
    Posts:
    217
    I added radiosity options for lightmaps:
     
  18. nickavv

    nickavv

    Joined:
    Aug 2, 2006
    Posts:
    1,801
    Looks very cool. :) I'm not the greatest mapper in Hammer, but I've made a few that I'm pretty proud of. I always liked games that let users create maps.
     
  19. SarperS

    SarperS

    Joined:
    Mar 10, 2009
    Posts:
    824
    I can't wait to have such a tool. I've always thought that it's the biggest absence in the Unity engine. Great job indeed.
     
  20. chadchat

    chadchat

    Joined:
    Apr 5, 2008
    Posts:
    154
    I've had experience using Hammer and the like, but I'm curious, what advantages do you see over using a 3D modeler? Whatever you could achieve in editor in Unity could be achieved with greater fidelity in a 3D package, no?
     
  21. cannon

    cannon

    Joined:
    Jun 5, 2009
    Posts:
    751
    For single models, yes, it's better to do it in a 3D package.

    For entire levels however, you normally have an aggregate of meshes from different sources (duplicated crates etc. that were duplicated from within Unity), it's a lot messier (barring that SoC project being released soon). Also, not everyone has a 3D package to do lightmapping with and I'm not sure if the SoC project supports Blender.
     
  22. funshark

    funshark

    Joined:
    Mar 24, 2009
    Posts:
    225
    That's a really great addition to the unity package!
     
  23. chadchat

    chadchat

    Joined:
    Apr 5, 2008
    Posts:
    154

    Doesn't Blender itself support lightmapping? I think it does.

    Anyway, I hope something good comes from it. Sounds like it might be useful for simple geometric levels. Good luck Kurt!
     
  24. CorruptScanline

    CorruptScanline

    Joined:
    Mar 26, 2009
    Posts:
    217
    Sure you can model your entire level and lightamp it in a 3d program, but that can get very complicated with a large level, and trying to sync up the lightmaps in the game engine with all the different materials on all the different models.
    The reason for implementing this in unity is the same reason it exists in other engines. Because Its just easier to build stuff on the spot and add detail meshes on top of that, then just click one button to update the lighting.
     
  25. digitalsoapbox

    digitalsoapbox

    Joined:
    Sep 15, 2009
    Posts:
    48
    VERY exciting stuff! Days, maybe months, will be saved using this kind of tech for basic structures and then detailing them out with meshes.

    I can't wait to see this Kurt, good job good luck.
     
  26. chadchat

    chadchat

    Joined:
    Apr 5, 2008
    Posts:
    154
    right, I see. What kind of radiosity options are you working towards, such as number of bounces or..?
     
  27. robert

    robert

    Moderator

    Joined:
    Dec 21, 2008
    Posts:
    265
    Nice stuff :)

    What method are you using to compute the radiosity solution?

    As for now, you're using BSP only to determine which brushes should be combined into one mesh, is that right?

    When combining meshes, do you just throw all the data from the different meshes into one mesh or do you actually perform the boolean set addition and compute the new mesh surface? If that's the case, I'd love to see the resulting mesh topology!
     
  28. CorruptScanline

    CorruptScanline

    Joined:
    Mar 26, 2009
    Posts:
    217
    robert, the radiosity is computed based on bounces, by looking up what a pixel can see from the last bounce for each bounce pass.

    Yes, at the moment the BSP is only used to compute which lightmap atlas a face should be in and what faces get combined into a single mesh. Currently there is no booleans so it just combines all the meshes in a lightmap atlas group into one object.

    For occlusion I plan on using occlusion volumes which you can manipulate exactly the same as other bsp brushes. This method is easy to understand and less prone to bugs.
     
  29. WinningGuy

    WinningGuy

    Joined:
    Aug 10, 2009
    Posts:
    884
    Very impressive.

    You mentioned a package of artist tools. Do you have a target ETA? Also, what other tools do you plan to build?
     
  30. maxfax2009

    maxfax2009

    Joined:
    Feb 4, 2009
    Posts:
    410
    Looks great keep up the great work :)
     
  31. runningbird

    runningbird

    Joined:
    Sep 3, 2009
    Posts:
    382
    Could we just get a .MAP file importer for unity?
     
  32. AquaGeneral

    AquaGeneral

    Joined:
    Oct 30, 2008
    Posts:
    141
    For me your site requires login authentication. I am really interested in having a look at it but all of the pictures are broken as well.
     
  33. Achim

    Achim

    Joined:
    Dec 19, 2007
    Posts:
    199
    i wanted to see the link but i cant. There´s a login in window on your site :(
     
  34. brisingre

    brisingre

    Joined:
    Nov 8, 2009
    Posts:
    277
    This looks massively helpful. I look forward to your release!

    (Your site works fine for me, no login or anything, and it has a lot of good work, although nothing pertaining to this project.)
     
  35. MVi

    MVi

    Joined:
    Nov 28, 2009
    Posts:
    1
    I'm glad to see there's a BSP editor in the works. It'll greatly add to the value of Unity, as I'm sure anyone with at least a tiny bit of experience with mapping will make great use of it (including myself).

    To those of you who are wondering what this editor adds to Unity: try making a functionality-filled level with Quark, Hammer, the Unreal Editor or any BSP-based software, and then compare it to making the geometry separately in a modeling software and the functionality in Unity. Like mentioned previously in this thread, it's simply easier to do it all in a BSP editor, with the exception of modeling game objects, which is best done in a 3D modeling program.

    Looking forward to the release!
     
  36. Louard

    Louard

    Joined:
    Nov 29, 2009
    Posts:
    11
    This is looking really interesting! I really hope it comes to fruition.
    I do have a couple questions though. Will this all work in Unity basic? And will the lightmapping be reserved only for the BSP style objects or will be be able to use your tools to also bake lighting onto our imported meshes? I know there's that new 3ds Max tool, but that's still no where near as convenient as baking right inside Unity.
     
  37. Discord

    Discord

    Joined:
    Mar 19, 2009
    Posts:
    1,008
    Can't wait for this to become available. I will definitely be picking up a copy once it is released.
     
  38. nickz

    nickz

    Joined:
    Nov 2, 2007
    Posts:
    43
    Is BSP-style level design here to stay? Maybe I was under the wrong impression that most engines are moving away from it, but I see that for the framework of indoor levels it is still the best choice.
     
  39. God-at-play

    God-at-play

    Joined:
    Nov 3, 2006
    Posts:
    330
    Any updates on this project? It looks like a great tool. Can't wait to see more :D
     
  40. TwiiK

    TwiiK

    Joined:
    Oct 23, 2007
    Posts:
    1,729
    I see it as a way for prototyping levels mainly. This can also be done in Google SketchUp which is excellent for that purpose.
     
  41. CorruptScanline

    CorruptScanline

    Joined:
    Mar 26, 2009
    Posts:
    217
    I found some time to work on this again. Heres a new screenshot:


    I have updated the first post with the tool features or you can see them here:

    Features:
    * Works with free version of Unity!
    * In-Editor geometry creation.
    * High quality lightmapping on all geometry including imported models.
    * Lightmaps are calculated with soft shadows, radiosity, and ambient occlusion.
    * Configurable lightmap rendering settings with a quality multiplyer for doing quick revision calculations or doing full production calculations.
    * Manipulate position, rotation and scale of UVs on In-Editor geometry.
    * Lightmaps work on any shader that have a "_Lightmap" texture property in it.
    * fully compatible with my shader editor(http://forum.unity3d.com/viewtopic.php?t=36679)
    * Automatic batching of In-Editor geometry at runtime to reduce drawcalls.

    Things left to do:
    * Automatic batching of In-Editor geometry at runtime to reduce drawcalls.
    * Fix crash while editing In-Editor geometry.
    * Manipulate position, rotation and scale of UVs on In-Editor geometry.


    As you can see theres not too much more to do :)
     
  42. God-at-play

    God-at-play

    Joined:
    Nov 3, 2006
    Posts:
    330
    Oh man, can't wait. Really looking forward to this. :) Nice work!
     
  43. brisingre

    brisingre

    Joined:
    Nov 8, 2009
    Posts:
    277
    Looking great, I can't wait.
     
  44. Vert

    Vert

    Joined:
    Mar 23, 2010
    Posts:
    1,099
    I have been waiting for information on such a tool! I couldn't believe Unity doesn't have this functionality built in! Can't wait for the release!
     
  45. cyangamer

    cyangamer

    Joined:
    Feb 17, 2010
    Posts:
    234
    This is going to be great. I know booleans aren't currently in there, but I hope to see that in the features soon as well.

    I will be watching this product. Excellent work! :D
     
  46. PolyMad

    PolyMad

    Joined:
    Mar 19, 2009
    Posts:
    2,350
    Great job!
     
  47. Waisenknabe

    Waisenknabe

    Joined:
    Feb 9, 2010
    Posts:
    7
    Great! Will this be commercial? Could you give us some informations what you`ve planned with it? 8)
    Cheers!
     
  48. Tinus

    Tinus

    Joined:
    Apr 6, 2009
    Posts:
    437
    Oh my, that is a great piece of work. :)
     
  49. LebrEf

    LebrEf

    Joined:
    May 21, 2010
    Posts:
    11
    Sounds great !
     
  50. Jimmy273

    Jimmy273

    Joined:
    Jan 18, 2010
    Posts:
    14
    I'm estatic this will work with the free version! You sir, have made my day!