23 void next_tile_begin()
override;
25 bool update_begin(
const Params &
params,
int texture_width,
int texture_height)
override;
26 void update_end()
override;
28 void flush()
override;
30 CCL_NS::half4 *map_texture_buffer()
override;
31 void unmap_texture_buffer()
override;
33 GraphicsInterop graphics_interop_get()
override;
35 void graphics_interop_activate()
override;
36 void graphics_interop_deactivate()
override;
38 void clear()
override;
40 void draw(
const Params &
params)
override;
42 void gl_context_create();
43 bool gl_context_enable();
44 void gl_context_disable();
45 void gl_context_dispose();
52 void *gl_context_ =
nullptr;
54 CCL_NS::thread_mutex mutex_;
56 PXR_NS::HgiTextureHandle texture_;
57 unsigned int gl_pbo_id_ = 0;
58 CCL_NS::int2 pbo_size_ = CCL_NS::make_int2(0, 0);
59 bool need_update_ =
false;
60 std::atomic_bool need_clear_ =
false;
62 void *gl_render_sync_ =
nullptr;
63 void *gl_upload_sync_ =
nullptr;