Blender V4.3
light_tasks_delegate.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2011-2022 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
5#pragma once
6
7#include <pxr/imaging/hd/sceneDelegate.h>
8#include <pxr/imaging/hdx/simpleLightTask.h>
9#include <pxr/imaging/hdx/skydomeTask.h>
10
11namespace blender::render::hydra {
12
13class LightTasksDelegate : public pxr::HdSceneDelegate {
14 public:
15 LightTasksDelegate(pxr::HdRenderIndex *parentIndex, pxr::SdfPath const &delegate_id);
16 ~LightTasksDelegate() override = default;
17
18 /* Delegate methods */
19 pxr::VtValue Get(pxr::SdfPath const &id, pxr::TfToken const &key) override;
20
21 pxr::HdTaskSharedPtr simple_task();
22 pxr::HdTaskSharedPtr skydome_task();
23 void set_camera(pxr::SdfPath const &camera_id);
24 void set_viewport(pxr::GfVec4d const &viewport);
25
26 private:
27 pxr::SdfPath simple_task_id_;
28 pxr::SdfPath skydome_task_id_;
29 pxr::HdxSimpleLightTaskParams simple_task_params_;
30 pxr::HdxRenderTaskParams skydome_task_params_;
31};
32
33} // namespace blender::render::hydra
LightTasksDelegate(pxr::HdRenderIndex *parentIndex, pxr::SdfPath const &delegate_id)
void set_viewport(pxr::GfVec4d const &viewport)
void set_camera(pxr::SdfPath const &camera_id)
pxr::VtValue Get(pxr::SdfPath const &id, pxr::TfToken const &key) override