Home Technical Talk

Interview with Thiago Klafke about modularity

Twister3
polycounter lvl 12
Offline / Send Message
Twister3 polycounter lvl 12
Hi guys,

I'm currently working on my thesis paper for my bachelor's degree. The title is "the use of modularity in the making of game environments" and in the process of that I have contacted Thiago Klafke (better known as Minotaur0) to answer some questions about his modularity and his recent tutorial. Thiago suggested that I post it on polycount so we all can get a little bit more insight to his workflow. So please enjoy:


Jahn Hummel: When do you recommend using modular pieces and when non-modular pieces?

Thiago Klafke: Modular pieces work well with pretty much everything but in general you will get better results with non-organic environments, such as sci-fi and urban. But that doesn't mean you can't combine modular elements with unique modeling: When modeling a castle for example, you could models the wall uniquely (always respecting the grid of course) and use modular pieces for archways, stairsets, windows etc... It depends on the kind of results you are aiming for really. Building environments out of small sets of modular pieces is just ways to approach the thing but it's definitely not the only workflow available. A good artist knows when it's best to go for strictly modular sets and unique modeling.


JH: How do you define the size of modular pieces in an environment? Whereof do you make it dependent?


TK: You should always take into account the scale of the environment you are working on and the player scale. If you are working on small tight corridors you can use smaller pieces, but if you are working on a vast open urban environment it might be a good idea to make the pieces pretty big. A good example for this is Crysis 2: The sidewalks are small modules but the buildings' facades are big modules. This is better for performance and facilitates placement in the level.

A good starting point is: If the piece will be visible from upclose it might be a good idea to work with smaller units. If it will be used outside the playable area then it's better to work with bigger modules, merging multiple pieces in the same object.


JH: How do you approach seams between meshes?


TK: They are unavoidable on lightmap based engines but not much of a problem on dynamic-lighting based ones. To avoid seams you can do one of the following: Add an artificial seam to your piece (such as the extremity of a panel or something like that) or you can merge multiple pieces into bigger ones.

Seams aren't too much of a problem when the environment is fully textured and lit though, so you shouldn't worry about this unless they very very noticeable.


JH: Would you recommend using power-of-two units to build modular pieces when using an engine that works with a meter-based system (instead of a generic unit one)?


TK: Depending on the scale of the player model it's possible but it's definitely not a rule set in stone. If you convert power-of-two "generic units" to meters you still get pretty reasonable values: 256 units could become 2,56mts so yeah, it's possible.


JH: Did you use a texture atlas for your textures in Zest Foundation? When do you use texture atlases?


TK: I did actually, for the trims sheet. I hardly ever use texture atlases though. It's hard to plan them in advance and it's definitely harder to adjust the UVs later on if you decide to starting using them down the road.


JH: Do you create your own mip-maps?


TK: I never had to but I know you can create some cool effects editing the mip-maps. For example, if you are working on a large tiling texture for a terrain you could blurry the mip steps a little to avoid obvious texture repetition. I know they did this on Far Cry 2.


JH: What would you do differently were you to make the Zest Foundation environment again?


TK: The lighting. I'd have used the sun light better, it's barely noticeable with all the interior lights placed in the level. I found it very hard to find a balance regarding this because of how lightmapping works in UDK: Tweak a light's value a little and the result will be pretty different.


JH: How do you think modularity will be used in the making of environments in the future? Do you think it will change? Why/why not?


TK: Well, modularity has been around since the very fist videogames if you think about it. Back in the days entire games were constructed out of sets of 2D tiles with fixed proportions, so yeah, unless a new revolutionary workflow appears we will keep using modularity for a very good time.

I like to think that the 3D modules I create now are in fact an evolution of the 2D textures I used to make back in the Half-Life 1 days. The difference is, instead of working on a flat 2D plane I now have an extra axis but the idea is pretty much the same.
Sign In or Register to comment.