QodotPlugin / qodot-plugin

(LEGACY) Quake .map support for Godot 3.x
MIT License
960 stars 70 forks source link

Worldspawn layers cant share textures with brush entities #154

Open davideGiovannini opened 2 years ago

davideGiovannini commented 2 years ago

I'm using Worldspawn layers to associate footstep sounds to different surfaces (textures).

I wanted to create a brush entity that acts like a secret door (same texture as the surrounding wall/floor) but I discovered that Qodot either:

res://addons/qodot/src/nodes/qodot_map.gd:851 - Invalid type in function 'add_surface_from_arrays' in base 'ArrayMesh'. Cannot convert argument 2 from Nil to Array.
qodot.gather_worldspawn_layer_surfaces(texture, brush_clip_texture, face_skip_texture)

I suspect the problem lies in this libqodot line

I think it should only consider the worldspawn classname while ignoring other brush entities.

But I'm not familiar enough with C and libqodot to investigate it more.