Skip to content

Allow uniforms declared in a separate file to be accessed similarly to procedures #33

@syelan34

Description

@syelan34

Feature Request

What feature are you suggesting?

Overview:

  • Essentially as the title describes. Uniforms declared in a separate file currently are invisible to code, even though procedures can be called just fine.

Smaller Details:

  • In terms of actual implementation there isn't really anything stopping this. If I directly use the register index, Picasso compiles this code fine (and it also runs fine in an actual program both in emulators and on hardware).
  • Additionally, since procedures can be accessed cross-file (and the uniforms are already compared to check for shared uniforms) it should not be too difficult to add support.

Nature of Request:

  • Addition

Why would this feature be useful?

This would allow projects such as engines to be safe to set uniforms which are intended to be shared to all shaders (e.g. instance ID, light positions etc.) without needing to check if they exist in every shader and setting them for every object.

Additionally, this would fix the issue of shared procedures accessing uniforms or constants, since at the moment doing so results in undefined behaviour since the uniforms aren't actually being treated as existing.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions