Jump to content
The Dark Mod Forums

Make levels using Blender?


LeiGet

Recommended Posts

Hi. I'm a long-time Blender user and was wondering if it's possible, in part or in whole, to use Blender to make levels, mostly the level geometry. I understand that NPC, scripting, partitioning, etc would be something better done in DarkRadiant, but I'd like to use Blender to make the buildings, streets, terrain, etc and to place them.

Link to comment
Share on other sites

Yes, this is possible but there are a few things that make it a little impractical.

1) Models do not seal the void so you need BSP brushes behind or inside models to properly seal a map. As I recall, there are doom 3 and quake map exporters that can export your initial block-out geometry as standard brushes so you could do both modeling and brushwork in blender. You’d just have to do it in phases

2) Visportal placement is crucial to performance so you will need to ensure you blender models are cut at portal boundaries so that you can setup brushes and visportals at choke points to prevent rendering outside the player view area

3) model geometry is often too complex for the physics engine. You will need to make invisible clip models or clip brushes that use a more simplified structure to ensure AI pathing and overall collision physics perform well.

4) Models need to be split at light boundaries. If a single light touches a model the engine will do light geometry calculation for the whole model. If enough lights hit a large model it can severely impact performance. Brushes will auto-split on light boundaries but often split in less optimal locations so it has become the convention to use func_static geometry to force brushes to split in the preferred locations

5) blender has no knowledge of specialty brushes like fog volumes, water, SEED auto dispersal etc

So it’s possible to do the majority of mapping in blender but ultimately you will need to use Dark Radiant to do the finishing touches

The current paradigm is to create modular content in blender and then assemble the modules together in Dark Radiant along with bsp caulking and vidportal placement 

 

  • Like 2

Please visit TDM's IndieDB site and help promote the mod:

 

http://www.indiedb.com/mods/the-dark-mod

 

(Yeah, shameless promotion... but traffic is traffic folks...)

Link to comment
Share on other sites

1 hour ago, LeiGet said:

Hi. I'm a long-time Blender user and was wondering if it's possible, in part or in whole, to use Blender to make levels, mostly the level geometry. I understand that NPC, scripting, partitioning, etc would be something better done in DarkRadiant, but I'd like to use Blender to make the buildings, streets, terrain, etc and to place them.

nbohr1more already said most of it but if I can add anything, is that the AI traversal system called AAS (Area Awareness system) also requires brush's to work.  

Spoiler

This is what I know about it, others may correct me if something is wrong, AI will walk fine on a complex floor model made in blender but bellow the model, you need a brush for the AI to be able to traverse the space, the brush doesn't need to be accurate to the floor mesh and the AI doesn't need to contact the brush at all, so you can just put a flat brush a few units bellow the floor model, the AI just needs it there to know where to go next, because its AAS system (navigation system) totally ignores mesh's, is like they aren't there at all. This means AI afaik will also bump into mesh based static models in it's path, like headless chickens, if you don't enclose those, in a brush using the special monster_clip texture. My two cents.

 

Link to comment
Share on other sites

I have seen this addon mentioned on the idtech 4 discord regarding exporting doom 3 brushes from blender in the .map format which might let you accomplish some of what you want as far as building level geometry in blender. Haven’t tested it personally for tdm:

https://github.com/c-d-a/io_export_qmap 

-=  IRIS  =-    ♦    = SLL =

Link to comment
Share on other sites

I should have posted this link but my previous reply was posted from my phone:

https://wiki.thedarkmod.com/index.php?title=Modular_Building#Modular_Building_Technique

Please visit TDM's IndieDB site and help promote the mod:

 

http://www.indiedb.com/mods/the-dark-mod

 

(Yeah, shameless promotion... but traffic is traffic folks...)

Link to comment
Share on other sites

15 hours ago, nbohr1more said:

4) Models need to be split at light boundaries. If a single light touches a model the engine will do light geometry calculation for the whole model. If enough lights hit a large model it can severely impact performance. Brushes will auto-split on light boundaries but often split in less optimal locations so it has become the convention to use func_static geometry to force brushes to split in the preferred locations

Is this still true now that 2.11 is out with this feature?

I've been wondering about whether this might open up the possibility to use larger models for things other than terrain, for example modeling a building at a time in Blender and then assembling them into a street in DR.  I'll probably at least test it out someday...

Link to comment
Share on other sites

  • 1 year later...

Turns out long material names will be cut short on export...

Anyway, I made a simple staircase generator in Blender's "geometry nodes":

darkmod_stair_tool_v1.00.blend

It's probably best to stick to multiples of 4 (step count) for nice round values of the diameter.

  • set values
  • apply the modifier
  • separate as objects by loose parts
  • export stairs as "brush", side walls as "shell", top and bottom as "walls"

stair_tool_blender.thumb.JPG.86b8ddaa81e61e252211386c4eccd5d2.JPG

Here in the video side walls were exported with "walls" option, that's why they look like this.

 

It's only a model...

Link to comment
Share on other sites

@kingsal

Just be careful, or you might get the NPCs confused. Here I just added "simple deform" modifier in Blender to taper the tower. I think the step at the top is too tall.

I recently saw NPC falling to his death in similar fashion in one of the missions.

 

Edited by Arcturus
  • Haha 1

It's only a model...

Link to comment
Share on other sites

Here's a more extreme example, although it took some time to get it to work.

Probably not very practical. There aren't many cases where you would need BSP this complex. I was thinking perhaps if you wanted to show the vaulted ceiling both from the bottom and from the top.

Gda%C5%84sk_Bazylika_Mariacka_02.jpg

Salisbury_Cathedral,_top_of_vaulted_ceil

 

  • Like 1

It's only a model...

Link to comment
Share on other sites

I still feel that brushes should be mostly reserved for simplified collision, monsterclip and map sealing \ caulk due to the inherent performance liabilities of making complex BSP designs.

However... I would love to see some wild texture bake across a large \ complex brush design that puts vertex blended transitions to shame. Downside is that the texture size would be pretty large which would cause it to look pretty nasty for low-end players who use image_downSize for performance.

Please visit TDM's IndieDB site and help promote the mod:

 

http://www.indiedb.com/mods/the-dark-mod

 

(Yeah, shameless promotion... but traffic is traffic folks...)

Link to comment
Share on other sites

4 hours ago, nbohr1more said:

I still feel that brushes should be mostly reserved for simplified collision, monsterclip and map sealing \ caulk due to the inherent performance liabilities of making complex BSP designs.

That's the idea. BSP should be simplified when compared to the visible geometry. But if it's too simple, then the visible geometry has to conform. I always looked for a way of building less boxy, angular maps and more organic ones. Keep in mind that those are experiments. I'm looking for the limits of the engine, I'm not saying that the whole map should be this complex. I also think that with this script, building in Blender is a viable option. Back in the Blender 2.7 days I remember I had to use two scripts - one for exporting to Quake .map and one to convert to a Doom 3 .map format. And the geometry would drift apart. It was pain in the ass. This is better.

It's only a model...

Link to comment
Share on other sites

One more thing I noticed is that there is a tab in Object Properties where user can specify type of geometry for each object individually.

map_export_blender.jpg.a85327d309adc64b0e1cb30d0ea87dbe.jpg

This setting will override global export setting. This way one can export multiple objects at once, each as a different type.

It's only a model...

Link to comment
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.

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.

  • Recent Status Updates

    • nbohr1more

      Hidden Hands: Blood and Metal is out
       
      · 1 reply
    • taaaki

      Apologies for the unplanned downtime. A routine upgrade did not go to plan, and the rollback had its own issues
      · 2 replies
    • freyk

      Got tdm 2.12 running on my android phone. For more info, read the latest post in the topic on subforum techsupport.
      · 2 replies
    • snatcher

      TDM Modpack v4.5 released!
      Introducing... The Loop
      · 1 reply
    • Ansome

      Taking a break to alleviate burnout. In retrospect, I probably shouldn't have jumped into a map-making contest so quickly after just finishing another project and especially with my busy schedule, but I do believe I have something that the community will enjoy. No clue if I'll be able to finish it on time for the competition if I factor in a break, but I'd rather take my time and deliver something of quality rather than engage in development crunch or lose part of the map's soul to burnout.
      · 1 reply
×
×
  • Create New...