nCine::RHI::GXM::GxmShader class

Shader-object stub of the sceGxm backend.

The Cg stage sources of every program variant are generated offline into Shaders/Generated/CgGeneratedShaders.h and compiled on the console by SceShaccCg when the program links (see GxmShaderProgram), so this class carries no source of its own and every operation succeeds trivially, only to satisfy the RHI::Shader contract alias.

Public types

enum class Status { NotCompiled, CompilationFailed, Compiled, CompiledWithDeferredChecks }
Compilation status of the shader (always Status::Compiled for this stub).
enum class ErrorChecking { Immediate, Deferred }
When the compilation status is checked (irrelevant for this stub).

Constructors, destructors, conversion operators

GxmShader(std::uint32_t type) explicit
GxmShader(std::uint32_t type, StringView filename)

Public functions

auto GetGLHandle() const -> std::uint32_t
auto GetStatus() const -> Status
auto LoadFromString(StringView string) -> bool
auto LoadFromStrings(ArrayView<const StringView> strings) -> bool
auto LoadFromFile(StringView filename) -> bool
auto Compile(ErrorChecking errorChecking, bool logOnErrors) -> bool
auto CheckCompilation(bool logOnErrors) -> bool
void SetObjectLabel(StringView label)