一个“预制体"(Prefabs) 是一个代表一个对象实例的.map地图文件


原理上分析,同为map文件,如果没有主从备注的话,都是一堆记录物体堆放信息的数据格式,所以预制体和地图的差别非常小,甚至可以互相加载,“地图”加载“预制体”,“预制体”也可以加载“地图”,此时加载者在这次加载过程中是“地图”,被加载者在此次过程中是“预制体”

字面上理解,map文件都是由radiant制作而成,可以理解开发者先用RADIANT做些预制的小的对象体并保存命名为”预制体",然后通过在一个大的map文件中放入许多格式结构的类型相同的小的预制体来完成一个较大的地图结构,而这些预制体基本是常见的经常用在地图之中的通用体,方便每一次设计地图不同场景时可以直接加载利用它们。


即嵌套的关系两个已存在的map文件可以互相加载嵌套,构成复杂的真正完整的地图,但你会发现,只能嵌套一次,第二次是无用的,或者规则上市不允许的


设置“预制体”的方式的好处:如果你用radiant在大地图中用刷子做好了一个几层楼的大房子的墙体,此时需要放置同种类型的窗户,就可以再开一个radiant,再次用刷子做好一个你需要的窗户的本体,之后通过右键2D地图位置->misc->prefabs加入你做好的窗户的map文件,就可以不必要为每一个窗户单独在主地图中一个一个用刷子去实现了。

除此之外,如果想批量的修改同一类构成体也是只需要修改原prefabs文件就可以完全修改。


COD4开放的开发套件中有官方提供做好的一些的prefabs,他们存放于map_source/prefabs下,可以直接在你的新地图中引用,你自己也可以通过radiant创建自己的prefabs,默认放在map_source/prefabs下方便默认路径的读取。


使用radiant编辑map文件的的好处是当你的地图包含了一些”预制体“prefabs之后,你可以通过快捷键 Alt + Page Down从大地图世界编辑模式进入预制体的世界编辑模式,此时,可编辑的对象只有你进入的预制体的内容,通过Alt + Page Up返回大地图编辑模式。