Skip to content

Texture Slots 1 and 2 Cannot Be Unbound #74

Description

@Wyatt-James

Bug Report

What's the issue you encountered?

C3D initializes textures to NULL and seems to correctly disable those texture units in C3Di_UpdateContext. However, textures cannot be set back to NULL after being bound once because C3D_TexBind will segfault if passed a NULL address. This means that textures must stay bound perpetually and thus their texture units will stay active forever. I believe that texture slot 0 can actually be disabled due to C short-circuiting the relevant check but I have not tested this, though checking the assembly in a custom build seems to confirm this.

How can the issue be reproduced?

N/A

Environment?

N/A

Additional context?

I'm not sure how much this affects performance but I'd imagine it would be beneficial to disable unneeded texture units.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions