18 pxr::SdfPath
const &prim_id)
19 :
IdData(scene_delegate, &object->id, prim_id), transform(pxr::GfMatrix4d(1.0))
25 pxr::SdfPath
const &prim_id)
27 std::unique_ptr<ObjectData> obj_data;
28 switch (object->type) {
35 obj_data = std::make_unique<VolumeModifierData>(scene_delegate,
object,
prim_id);
38 obj_data = std::make_unique<MeshData>(scene_delegate,
object,
prim_id);
41 obj_data = std::make_unique<CurvesData>(scene_delegate,
object,
prim_id);
44 obj_data = std::make_unique<LightData>(scene_delegate,
object,
prim_id);
47 obj_data = std::make_unique<VolumeData>(scene_delegate,
object,
prim_id);
59 switch (object->type) {
78 switch (object->type) {
112 return pxr::SdfPath();
150 for (
int i = 0; i < 4; i++) {
151 for (
int j = 0; j < 4; j++) {
bool BKE_object_is_visible_in_viewport(const View3D *v3d, const Object *ob)
int BKE_object_visibility(const Object *ob, int dag_eval_mode)
#define BLI_assert_unreachable()
eEvaluationMode DEG_get_mode(const Depsgraph *graph)
void add_new(const Key &key, const Value &value)
HydraSceneDelegate * scene_delegate_
virtual void available_materials(Set< pxr::SdfPath > &paths) const
virtual pxr::SdfPath material_id() const
static bool is_mesh(const Object *object)
MaterialData * get_or_create_material(const Material *mat)
virtual void write_transform()
static bool is_visible(HydraSceneDelegate *scene_delegate, const Object *object, int mode=OB_VISIBLE_SELF)
virtual void write_materials()
static std::unique_ptr< ObjectData > create(HydraSceneDelegate *scene_delegate, const Object *object, pxr::SdfPath const &prim_id)
static bool is_supported(const Object *object)
virtual pxr::VtValue get_data(pxr::SdfPath const &id, pxr::TfToken const &key) const
ObjectData(HydraSceneDelegate *scene_delegate, const Object *object, pxr::SdfPath const &prim_id)
static bool is_volume_modifier(const Object *object)
pxr::GfMatrix4d gf_matrix_from_transform(const float m[4][4])