Route VR and startup GL state through backend
This commit is contained in:
@@ -526,6 +526,18 @@ pp::foundation::Status apply_opengl_capability(
|
||||
return pp::foundation::Status::success();
|
||||
}
|
||||
|
||||
pp::foundation::Result<bool> query_opengl_capability_state(
|
||||
std::uint32_t state,
|
||||
OpenGlCapabilityStateQueryDispatch dispatch) noexcept
|
||||
{
|
||||
if (dispatch.is_enabled == nullptr) {
|
||||
return pp::foundation::Result<bool>::failure(
|
||||
pp::foundation::Status::invalid_argument("OpenGL capability state query callback must not be null"));
|
||||
}
|
||||
|
||||
return pp::foundation::Result<bool>::success(dispatch.is_enabled(state) != 0U);
|
||||
}
|
||||
|
||||
pp::foundation::Status apply_opengl_render_platform_hints(
|
||||
OpenGlRenderPlatformHintDispatch dispatch) noexcept
|
||||
{
|
||||
|
||||
@@ -530,6 +530,10 @@ struct OpenGlCapabilityDispatch {
|
||||
OpenGlCapabilityFn disable = nullptr;
|
||||
};
|
||||
|
||||
struct OpenGlCapabilityStateQueryDispatch {
|
||||
OpenGlIsEnabledFn is_enabled = nullptr;
|
||||
};
|
||||
|
||||
struct OpenGlRenderPlatformHintDispatch {
|
||||
OpenGlCapabilityFn enable = nullptr;
|
||||
};
|
||||
@@ -760,6 +764,9 @@ struct OpenGlMeshDeleteDispatch {
|
||||
std::uint32_t state,
|
||||
bool enabled,
|
||||
OpenGlCapabilityDispatch dispatch) noexcept;
|
||||
[[nodiscard]] pp::foundation::Result<bool> query_opengl_capability_state(
|
||||
std::uint32_t state,
|
||||
OpenGlCapabilityStateQueryDispatch dispatch) noexcept;
|
||||
[[nodiscard]] pp::foundation::Status apply_opengl_render_platform_hints(
|
||||
OpenGlRenderPlatformHintDispatch dispatch) noexcept;
|
||||
[[nodiscard]] pp::foundation::Status apply_opengl_debug_output_states(
|
||||
|
||||
Reference in New Issue
Block a user