Skip to content

Worldspawn layers cant share textures with brush entities #154

@davideGiovannini

Description

@davideGiovannini

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:

  • fails to create the brush entity (missing CollisionShape) if the worldspawn layer contains at least 1 brush.

  • crashes while building the map if the only brush using the texture is the BrushEntity with this error

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions