Login | Register 

Level design

3dsMax / Radiant Integration

This tutorial will cover how to integrate 3dsMax into your mapping work flow. I assume you are comfortable with max and can create and texture polygonal models. In this tutorial I will take you through one specific example where modeling geometry was the preferred choice over brushes.

When to use models

Models are good for fine detailed or non axial geometry; things like broken objects or buildings, trees, vines and other plants, and many other times when brushes and patches are too awkward to work with. Models can also be used for their more flexible UV coordinates, for example a twisting road would be almost impossible to texture correctly with just brushes.

Through out this tutorial I will refer to an example I had while building the map Bohemia. There was one location, you can see in the picture to the right, where access to the higher ground was only available by climbing on the object in the left side of the image.

I wanted to make the higher ground more accessible so I decided to destroy part of the building so people could walk up the pile of rubble as an extra access route.

Preparing the map

As rubble is pretty rough and non axial, I decided to make the destroyed part of the building as a model instead of a complex brush soup. This meant that I would have to remove the brush work from that area and leave a caulk'd hole where the model would go. The second image on the right shows the hole in the brush work.

Getting into max

Before the map is ready to be loaded into Max there are two compile steps that must be performed first.
1.First the map must be compiled into a .bsp file. Just a standard q3map2 -meta, no vis or light, will do. You can use -patchmeta too if you need to.
2.Secondly the bsp file must be converted into an ASE format model using this command:
q3map2 -convert ut4_mapname.bsp

noteNote: Its useful to have both of these functions already setup in q3map2toolz for quick execution.

Unfortunately 3dsMax doesn't ship with an ASE importer, you can try this: 3dsmax .ASE importer tool or if you have max5: ASE Importer. Your sort of on your own here. :)

Once you have the model inside of Max, you may find it useful to delete the parts of the map you're not working on from the scene because having a whole map loaded can cause some slow down.

Building the model

The image on the right shows a scene ready to be worked on. I'm not going to make this a basic max tutorial, but I will give you some rules and hints to follow when working on these kind of models.

When building parts that line up with existing geometry you must make sure that the vertexes line up perfectly and don't add any extra vertexes on existing edges, or you'll end up with T-junc errors.

Feel free to build directly onto the imported meshes, by extruding edges or whatever method you prefer, as long as you detach the new polygons into a new object before you export the model.

I find it useful to always name new geometry with an ase_ prefix so that when its time to export the model I can just hit H and type ase to select all of the new geometry and then do export selected.

If you're building a model that contains parts to be lightmapped and parts to be vertex lit then you can add an extra bit of information to the name prefix, say ase_v_ for vertex lit models and ase_lm_ for lightmapped models. Then you can export two models, one of which can be given spawnflags 4 when loaded back into radiant as a misc_model.


When the model is complete, select all the new opjects, if you followed my advise on the 'ase_' prefix you can just press H to open the select objects dialog, then type 'ase' to select all the new objects. Then choose File->Export Selected and save as an ASE format model in q3ut4/models/.

If you have both geometry to be vertex lit and geometry to be light mapped then its best to export these as as separate models, so the lightmapped one can be given spawnflags 4 to enable lightmapping.

My smashed building had both vertex lit parts for the loose bricks and tiles, and lightmapped parts for the walls and rubble pile.

Back in Radiant

When you load the models back into Radiant you must place the misc_model entity at the origin of the map because all the geometry in the model is relative to the world origin when it was exported.

Turn spawnflags 4 on if you need it lightmapped.


Once the model has been loaded into Radiant, it'll need to be clipped using weapon and/or playerclip.

When player clipping try and keep the geometry simple and axial as possible. People will seldom notice that they are a few inches above or below the model's surface; but they will very much notice if they're movement becomes glitchy while traversing the model.

Weapon clipping is different, you need to try and make the clips fit the model much more exactly; weapon clips should always exist completely beneath or within the model. If the weapon clips exist outside the model at all then there's a good chance that people standing near the model and aiming at a small angle away from the model will end up shooting a weapon clip brush and have their bullet disappear into thin air. Its always better to have the edge of a model be penetrable than having thin air that can stop bullets.

This concludes the process of Max/Radiant integration.


Try some of these ideas as practice:

Vines that climb up your brush built walls.
Door Handles
Build a winding road with brushes and set the texture coordinates in max.
Power lines
Whole buildings
By NulL  -  Sunday, 29 May 2011  -  viewed by 1522 members and 31742 visitors


Copyright © 1999-2023 Frozensand Games Limited  |  All rights reserved  |  Urban Terror™ and FrozenSand™ are trademarks of Frozensand Games Limited

Frozensand Games is a Limited company registered in England and Wales. Company Reg No: 10343942