How to export map from TrenchBroom to Unity3D (Converting Quake .MAP to .FBX)
KleskBY
0:00 / 0:00
How to export map from TrenchBroom to Unity3D (Converting Quake .MAP to .FBX)
2 607 просмотров · 3 года назад
KleskBY
105 подписчиков
2 607 просмотров · 3 года назад
This video shows complete process how I export my quake maps to use them in modern engines like Unity3D or others. Unreal Engine has BSP import tool (HammUEr) and Godot takes too long to load model and may crash. Quake 1 / Half-life / Counter-Strike 1.6 / Quake 3 Maps to Unity.
There are guys on the internet who suggest compiling BSP and converting it to a model using some external tools. They say it removes "unwanted" faces. In reality BSP compilers do remove backfaces but also create thousands of vertices and faces. You can check it by running quake in wireframe mode or decompiling any map. BSP compilers also have limits and bounds so do not use their advice unless absolutely necessary. It is much more easy to remove backfaces by going into top view in Blender, disabling xray and shift click removing.
Python script for combining brushes:
import bpy
lastName = ""
scene = bpy.context.scene
texturesToSkip = ["clip", "*water1", "sky1", "lampbulb", "crate01", "crate02", "crate03", "box01", "box02", "box03", "box04", "box05", "crate1", "crate2"]
for obj in scene.objects:
if obj.type == 'MESH':
temp = obj.name.split("_")
if(temp[0] == lastName):
print("Merge ", lastName, " with ", obj.name)
mesh = obj.data
skip = False
for f in mesh.polygons: # iterate over faces
slot = obj.material_slots[f.material_index]
mat = slot.material
if mat is not None:
if(mat.name in texturesToSkip):
if(temp[0] == "entity0"):
skip = True
if(skip == False):
obj.select_set(True)
print(bpy.context.selected_objects)
bpy.ops.object.join()
else:
print("Now joining ", temp[0])
bpy.ops.object.select_all(action='DESELECT')
lastName = temp[0]
bpy.context.view_layer.objects.active = obj
obj.select_set(True)