24using Alembic::AbcGeom::CameraSample;
25using Alembic::AbcGeom::OCamera;
26using Alembic::AbcGeom::OFloatProperty;
32 const Camera *camera =
static_cast<const Camera *
>(context->object->data);
40 abc_camera_schema_ = abc_camera_.getSchema();
42 abc_custom_data_container_ = abc_camera_schema_.getUserProperties();
43 abc_stereo_distance_ = OFloatProperty(
45 abc_eye_separation_ = OFloatProperty(
50 OFloatProperty render_resx(abc_custom_data_container_,
"resx");
51 OFloatProperty render_resy(abc_custom_data_container_,
"resy");
55 render_resx.set(
float(width));
56 render_resy.set(
float(height));
71 const Camera *cam =
static_cast<const Camera *
>(context.object->data);
76 const double apperture_x = cam->
sensor_x / 10.0;
77 const double apperture_y = cam->
sensor_y / 10.0;
78 const double film_aspect = apperture_x / apperture_y;
void BKE_render_resolution(const RenderData *r, const bool use_crop, int *r_width, int *r_height)
#define CLOG_INFO(clg_ref, level,...)
Scene * DEG_get_evaluated_scene(const Depsgraph *graph)
ATTR_WARN_UNUSED_RESULT const BMVert * v
Alembic::Abc::OCompoundProperty abc_schema_prop_for_custom_props(T abc_schema)
uint32_t timesample_index_
const ABCWriterConstructorArgs args_
Alembic::Abc::OCompoundProperty abc_prop_for_custom_props() override
virtual bool is_supported(const HierarchyContext *context) const override
virtual Alembic::Abc::OObject get_alembic_object() const override
ABCCameraWriter(const ABCWriterConstructorArgs &args)
virtual void do_write(HierarchyContext &context) override
virtual void create_alembic_objects(const HierarchyContext *context) override
ccl_device_inline void camera_sample(KernelGlobals kg, int x, int y, const float2 filter_uv, const float time, const float2 lens_uv, ccl_private Ray *ray)
struct Object * focus_object
float convergence_distance
float interocular_distance
struct CameraStereoSettings stereo
struct CameraDOFSettings dof
Alembic::Abc::OObject abc_parent