|
Blender
V2.93
|
#include <DNA_camera_types.h>
Inherits Node.
Public Types | |
| enum | MotionPosition { MOTION_POSITION_START = 0 , MOTION_POSITION_CENTER = 1 , MOTION_POSITION_END = 2 , MOTION_NUM_POSITIONS } |
| enum | RollingShutterType { ROLLING_SHUTTER_NONE = 0 , ROLLING_SHUTTER_TOP = 1 , ROLLING_SHUTTER_NUM_TYPES } |
| enum | StereoEye { STEREO_NONE , STEREO_LEFT , STEREO_RIGHT } |
Public Member Functions | |
| Camera () | |
| ~Camera () | |
| void | compute_auto_viewplane () |
| void | update (Scene *scene) |
| void | device_update (Device *device, DeviceScene *dscene, Scene *scene) |
| void | device_update_volume (Device *device, DeviceScene *dscene, Scene *scene) |
| void | device_free (Device *device, DeviceScene *dscene, Scene *scene) |
| BoundBox | viewplane_bounds_get () |
| float | world_to_raster_size (float3 P) |
| float | motion_time (int step) const |
| int | motion_step (float time) const |
| bool | use_motion () const |
| void | set_screen_size_and_resolution (int width_, int height_, int resolution_) |
Public Member Functions inherited from Node | |
| Node (const NodeType *type, ustring name=ustring()) | |
| virtual | ~Node ()=0 |
| void | set (const SocketType &input, bool value) |
| void | set (const SocketType &input, int value) |
| void | set (const SocketType &input, uint value) |
| void | set (const SocketType &input, float value) |
| void | set (const SocketType &input, float2 value) |
| void | set (const SocketType &input, float3 value) |
| void | set (const SocketType &input, const char *value) |
| void | set (const SocketType &input, ustring value) |
| void | set (const SocketType &input, const Transform &value) |
| void | set (const SocketType &input, Node *value) |
| void | set (const SocketType &input, array< bool > &value) |
| void | set (const SocketType &input, array< int > &value) |
| void | set (const SocketType &input, array< float > &value) |
| void | set (const SocketType &input, array< float2 > &value) |
| void | set (const SocketType &input, array< float3 > &value) |
| void | set (const SocketType &input, array< ustring > &value) |
| void | set (const SocketType &input, array< Transform > &value) |
| void | set (const SocketType &input, array< Node * > &value) |
| bool | get_bool (const SocketType &input) const |
| int | get_int (const SocketType &input) const |
| uint | get_uint (const SocketType &input) const |
| float | get_float (const SocketType &input) const |
| float2 | get_float2 (const SocketType &input) const |
| float3 | get_float3 (const SocketType &input) const |
| ustring | get_string (const SocketType &input) const |
| Transform | get_transform (const SocketType &input) const |
| Node * | get_node (const SocketType &input) const |
| const array< bool > & | get_bool_array (const SocketType &input) const |
| const array< int > & | get_int_array (const SocketType &input) const |
| const array< float > & | get_float_array (const SocketType &input) const |
| const array< float2 > & | get_float2_array (const SocketType &input) const |
| const array< float3 > & | get_float3_array (const SocketType &input) const |
| const array< ustring > & | get_string_array (const SocketType &input) const |
| const array< Transform > & | get_transform_array (const SocketType &input) const |
| const array< Node * > & | get_node_array (const SocketType &input) const |
| bool | has_default_value (const SocketType &input) const |
| void | set_default_value (const SocketType &input) |
| bool | equals_value (const Node &other, const SocketType &input) const |
| void | copy_value (const SocketType &input, const Node &other, const SocketType &other_input) |
| void | set_value (const SocketType &input, const Node &other, const SocketType &other_input) |
| bool | equals (const Node &other) const |
| void | hash (MD5Hash &md5) |
| size_t | get_total_size_in_bytes () const |
| bool | is_a (const NodeType *type) |
| bool | socket_is_modified (const SocketType &input) const |
| bool | is_modified () |
| void | tag_modified () |
| void | clear_modified () |
| void | print_modified_sockets () const |
| const NodeOwner * | get_owner () const |
| void | set_owner (const NodeOwner *owner_) |
Additional Inherited Members | |
Protected Member Functions inherited from Node | |
| template<typename T > | |
| void | set_if_different (const SocketType &input, T value) |
| template<typename T > | |
| void | set_if_different (const SocketType &input, array< T > &value) |
Static Protected Member Functions inherited from Node | |
| template<typename T > | |
| static T & | get_socket_value (const Node *node, const SocketType &socket) |
Protected Attributes inherited from Node | |
| const NodeOwner * | owner |
| SocketModifiedFlags | socket_modified |
Definition at line 91 of file DNA_camera_types.h.
| enum Camera::StereoEye |
| Camera::Camera | ( | ) |
Definition at line 166 of file camera.cpp.
References cameratoworld, compute_auto_viewplane(), dx, dy, full_rastertocamera, kernel_camera, ndctoworld, need_device_update, need_flags_update, previous_need_motion, projection_identity(), RAMP_TABLE_SIZE, rastertocamera, rastertoworld, screentoworld, shutter_table_offset, TABLE_OFFSET_INVALID, transform_identity(), worldtoraster, and zero_float3().
| Camera::~Camera | ( | ) |
Definition at line 202 of file camera.cpp.
| void Camera::compute_auto_viewplane | ( | ) |
Definition at line 206 of file camera.cpp.
References BoundBox2D::bottom, CAMERA_PANORAMA, float(), BoundBox2D::left, BoundBox2D::right, BoundBox2D::top, and viewplane.
Referenced by Camera().
| void Camera::device_free | ( | Device * | device, |
| DeviceScene * | dscene, | ||
| Scene * | scene | ||
| ) |
Definition at line 559 of file camera.cpp.
References DeviceScene::camera_motion, device_vector< T >::free(), Scene::lookup_tables, LookupTables::remove_table(), scene, and shutter_table_offset.
| void Camera::device_update | ( | Device * | device, |
| DeviceScene * | dscene, | ||
| Scene * | scene | ||
| ) |
Definition at line 482 of file camera.cpp.
References need_device_update, scene, time, update(), and Scene::update_stats.
| void Camera::device_update_volume | ( | Device * | device, |
| DeviceScene * | dscene, | ||
| Scene * | scene | ||
| ) |
Definition at line 521 of file camera.cpp.
References KernelData::cam, DeviceScene::data, KernelData::integrator, KernelCamera::is_inside_volume, need_device_update, need_flags_update, Scene::objects, blender::parallel_for(), r, scene, KernelIntegrator::use_volumes, viewplane_bounds_get(), and VLOG.
| int Camera::motion_step | ( | float | time | ) | const |
Definition at line 807 of file camera.cpp.
References motion_time(), time, and use_motion().
| float Camera::motion_time | ( | int | step | ) | const |
| void Camera::set_screen_size_and_resolution | ( | int | width_, |
| int | height_, | ||
| int | resolution_ | ||
| ) |
Definition at line 792 of file camera.cpp.
References Node::tag_modified().
Referenced by Session::update_scene().
| void Camera::update | ( | Scene * | scene | ) |
Definition at line 231 of file camera.cpp.
References Node::is_modified(), need_device_update, Scene::need_motion(), previous_need_motion, scene, time, and Scene::update_stats.
Referenced by device_update(), and xml_read_camera().
| bool Camera::use_motion | ( | ) | const |
Definition at line 787 of file camera.cpp.
Referenced by motion_step(), and motion_time().
| BoundBox Camera::viewplane_bounds_get | ( | ) |
Definition at line 594 of file camera.cpp.
References bounds(), CAMERA_PANORAMA, CAMERA_PERSPECTIVE, cameratoworld, BoundBox::empty, height, make_float3, width, Transform::x, Transform::y, and Transform::z.
Referenced by device_update_volume().
Definition at line 635 of file camera.cpp.
References __CAMERA_MOTION__, Freestyle::a, Freestyle::c, CAMERA_ORTHOGRAPHIC, CAMERA_PANORAMA, CAMERA_PERSPECTIVE, camera_sample_panorama(), cameratoworld, Ray::D, D(), array< T, alignment >::data(), Ray::dD, differential_transfer(), direction_to_panorama(), dot(), Ray::dP, differential3::dx, dx, differential3::dy, frustum_bottom_normal, frustum_left_normal, frustum_right_normal, frustum_top_normal, full_dx, full_dy, full_rastertocamera, kernel_camera, kernel_camera_motion, l, len, len_squared(), make_float3, max, min, normalize(), P(), r, sqrtf, Ray::t, t, transform_direction(), transform_perspective(), transform_point(), v1, v2, worldtocamera, float2::x, float3::x, float2::y, float3::y, float3::z, and zero_float3().
| char Camera::_pad[7] |
Definition at line 119 of file DNA_camera_types.h.
| struct AnimData* Camera::adt |
Animation data (must be immediately after id for utilities to use it).
Definition at line 94 of file DNA_camera_types.h.
Referenced by acf_dscam_setting_ptr(), bc_getSceneCameraAction(), camera_blend_read_data(), camera_blend_write(), make_new_animlistelem(), outliner_add_id_contents(), and AnimationImporter::translate_Animations().
| struct ListBase Camera::bg_images |
Definition at line 111 of file DNA_camera_types.h.
Referenced by background_image_remove_exec(), BKE_camera_background_image_clear(), BKE_camera_background_image_new(), BKE_camera_background_image_remove(), camera_blend_read_data(), camera_blend_read_expand(), camera_blend_read_lib(), camera_blend_write(), camera_copy_data(), camera_foreach_id(), camera_free_data(), image_open_exec(), image_walk_id_all_users(), OVERLAY_camera_cache_populate(), OVERLAY_image_camera_cache_populate(), and wm_draw_region_stereo_set().
| BoundBox2D Camera::border |
Definition at line 142 of file camera.h.
Referenced by BlenderSync::get_buffer_params().
| ProjectionTransform Camera::cameratoraster |
| Transform Camera::cameratoworld |
Definition at line 167 of file camera.h.
Referenced by Camera(), viewplane_bounds_get(), and world_to_raster_size().
| float Camera::clip_end |
Definition at line 102 of file DNA_camera_types.h.
Referenced by BKE_camera_params_from_object(), Freestyle::BlenderStrokeRenderer::BlenderStrokeRenderer(), camera_stereoscopy_extra(), blender::io::alembic::ABCCameraWriter::do_write(), blender::io::usd::USDCameraWriter::do_write(), EEVEE_depth_of_field_init(), lineart_main_load_geometries(), CamerasExporter::operator()(), OVERLAY_camera_cache_populate(), blender::io::alembic::AbcCameraReader::readObjectData(), Freestyle::BlenderStrokeRenderer::RenderScene(), workbench_dof_engine_init(), and DocumentImporter::writeCamera().
| float Camera::clip_start |
Definition at line 102 of file DNA_camera_types.h.
Referenced by BKE_camera_params_from_object(), BKE_camera_view_frame_ex(), Freestyle::BlenderStrokeRenderer::BlenderStrokeRenderer(), camera_stereoscopy_extra(), blender::io::alembic::ABCCameraWriter::do_write(), blender::io::usd::USDCameraWriter::do_write(), EEVEE_depth_of_field_init(), lineart_main_load_geometries(), CamerasExporter::operator()(), OVERLAY_camera_cache_populate(), blender::io::alembic::AbcCameraReader::readObjectData(), Freestyle::BlenderStrokeRenderer::RenderScene(), workbench_dof_engine_init(), and DocumentImporter::writeCamera().
| float dof_distance Camera::DNA_DEPRECATED |
Definition at line 106 of file DNA_camera_types.h.
| struct Ipo* ipo Camera::DNA_DEPRECATED |
Old animation system, deprecated for 2.5.
Definition at line 109 of file DNA_camera_types.h.
| struct Object* dof_ob Camera::DNA_DEPRECATED |
Definition at line 111 of file DNA_camera_types.h.
| struct GPUDOFSettings gpu_dof Camera::DNA_DEPRECATED |
Definition at line 111 of file DNA_camera_types.h.
| struct CameraDOFSettings Camera::dof |
Definition at line 111 of file DNA_camera_types.h.
Referenced by BKE_camera_object_dof_distance(), blender::deg::DepsgraphNodeBuilder::build_camera(), blender::deg::DepsgraphRelationBuilder::build_camera(), camera_blend_read_lib(), camera_foreach_id(), depthdropper_init(), do_versions_after_linking_280(), blender::io::alembic::ABCCameraWriter::do_write(), blender::io::usd::USDCameraWriter::do_write(), EEVEE_depth_of_field_init(), GPENCIL_cache_init(), blender::io::alembic::AbcCameraReader::readObjectData(), single_obdata_users(), WIDGETGROUP_camera_refresh(), workbench_dof_engine_init(), and DocumentImporter::writeCamera().
| float Camera::drawsize |
Definition at line 103 of file DNA_camera_types.h.
Referenced by BKE_object_obdata_size_init(), object_camera_add_exec(), OVERLAY_camera_cache_populate(), and WIDGETGROUP_camera_refresh().
| char Camera::dtx |
| float3 Camera::dx |
Definition at line 179 of file camera.h.
Referenced by Camera(), and world_to_raster_size().
| short Camera::flag |
Definition at line 100 of file DNA_camera_types.h.
Referenced by acf_dscam_setting_ptr(), background_image_add_invoke(), blo_do_versions_250(), blo_do_versions_260(), blo_do_versions_pre250(), drawviewborder(), OVERLAY_camera_cache_populate(), and WIDGETGROUP_camera_refresh().
| float3 Camera::frustum_bottom_normal |
Definition at line 188 of file camera.h.
Referenced by world_to_raster_size().
| float3 Camera::frustum_left_normal |
Definition at line 187 of file camera.h.
Referenced by world_to_raster_size().
| float3 Camera::frustum_right_normal |
Definition at line 185 of file camera.h.
Referenced by world_to_raster_size().
| float3 Camera::frustum_top_normal |
Definition at line 186 of file camera.h.
Referenced by world_to_raster_size().
| float3 Camera::full_dx |
Definition at line 182 of file camera.h.
Referenced by world_to_raster_size().
| float3 Camera::full_dy |
Definition at line 183 of file camera.h.
Referenced by world_to_raster_size().
| ProjectionTransform Camera::full_rastertocamera |
Definition at line 177 of file camera.h.
Referenced by Camera(), and world_to_raster_size().
| ID Camera::id |
Definition at line 92 of file DNA_camera_types.h.
Referenced by background_image_add_invoke(), background_image_remove_exec(), blo_do_versions_260(), blo_do_versions_270(), blo_do_versions_pre250(), blender::deg::DepsgraphNodeBuilder::build_camera(), blender::deg::DepsgraphRelationBuilder::build_camera(), blender::deg::DepsgraphRelationBuilder::build_object_data_camera(), camera_blend_read_lib(), camera_blend_write(), depthdropper_init(), do_versions_ipos_to_animato(), solve_camera_freejob(), AnimationImporter::translate_Animations(), WIDGETGROUP_camera_message_subscribe(), WIDGETGROUP_camera_poll(), and WIDGETGROUP_camera_refresh().
| KernelCamera Camera::kernel_camera |
Definition at line 196 of file camera.h.
Referenced by Camera(), and world_to_raster_size().
| array<DecomposedTransform> Camera::kernel_camera_motion |
Definition at line 197 of file camera.h.
Referenced by world_to_raster_size().
| float Camera::lens |
Definition at line 103 of file DNA_camera_types.h.
Referenced by BKE_camera_params_from_object(), BKE_camera_view_frame_ex(), BKE_tracking_camera_to_blender(), BLI_uvproject_camera_info(), blo_do_versions_pre250(), blender::compositor::ConvertDepthToRadiusOperation::determineFocalDistance(), blender::io::alembic::ABCCameraWriter::do_write(), blender::io::usd::USDCameraWriter::do_write(), EEVEE_depth_of_field_init(), GPENCIL_cache_init(), lineart_main_load_geometries(), CamerasExporter::operator()(), blender::io::alembic::AbcCameraReader::readObjectData(), workbench_dof_engine_init(), and DocumentImporter::writeCamera().
| ProjectionTransform Camera::ndctoworld |
| bool Camera::need_device_update |
Definition at line 191 of file camera.h.
Referenced by Camera(), device_update(), device_update_volume(), and update().
| bool Camera::need_flags_update |
Definition at line 192 of file camera.h.
Referenced by Camera(), device_update_volume(), and xml_read_camera().
| float Camera::ortho_scale |
Definition at line 103 of file DNA_camera_types.h.
Referenced by BKE_camera_params_from_object(), BKE_camera_view_frame_ex(), Freestyle::BlenderStrokeRenderer::BlenderStrokeRenderer(), BLI_uvproject_camera_info(), blo_do_versions_pre250(), EEVEE_depth_of_field_init(), image_camera_background_matrix_get(), lineart_main_load_geometries(), CamerasExporter::operator()(), WIDGETGROUP_camera_refresh(), and DocumentImporter::writeCamera().
| float Camera::passepartalpha |
Definition at line 101 of file DNA_camera_types.h.
Referenced by blo_do_versions_pre250(), and drawviewborder().
| int Camera::previous_need_motion |
| ProjectionTransform Camera::rastertocamera |
| ProjectionTransform Camera::rastertoworld |
| Camera_Runtime Camera::runtime |
Runtime data (keep last).
Definition at line 125 of file DNA_camera_types.h.
| ProjectionTransform Camera::screentoworld |
| char Camera::sensor_fit |
Definition at line 118 of file DNA_camera_types.h.
Referenced by BKE_camera_params_from_object(), BKE_camera_view_frame_ex(), BKE_tracking_camera_to_blender(), blender::io::usd::camera_sensor_size_for_render(), drawviewborder(), ED_view3d_win_to_3d(), EEVEE_depth_of_field_init(), GPENCIL_cache_init(), blender::compositor::ConvertDepthToRadiusOperation::initExecution(), lineart_main_load_geometries(), WIDGETGROUP_camera_refresh(), and workbench_dof_engine_init().
| float Camera::sensor_x |
Definition at line 104 of file DNA_camera_types.h.
Referenced by AnimationImporter::Assign_lens_animations(), BKE_camera_params_from_object(), BKE_camera_view_frame_ex(), BKE_tracking_camera_to_blender(), BLI_uvproject_camera_info(), blo_do_versions_260(), blender::io::usd::camera_sensor_size_for_render(), blender::io::alembic::ABCCameraWriter::do_write(), drawviewborder(), EEVEE_depth_of_field_init(), GPENCIL_cache_init(), blender::compositor::ConvertDepthToRadiusOperation::initExecution(), lineart_main_load_geometries(), CamerasExporter::operator()(), blender::io::alembic::AbcCameraReader::readObjectData(), WIDGETGROUP_camera_refresh(), workbench_dof_engine_init(), and DocumentImporter::writeCamera().
| float Camera::sensor_y |
Definition at line 104 of file DNA_camera_types.h.
Referenced by BKE_camera_params_from_object(), BKE_camera_view_frame_ex(), blo_do_versions_260(), blender::io::usd::camera_sensor_size_for_render(), blender::io::alembic::ABCCameraWriter::do_write(), drawviewborder(), EEVEE_depth_of_field_init(), GPENCIL_cache_init(), blender::compositor::ConvertDepthToRadiusOperation::initExecution(), lineart_main_load_geometries(), blender::io::alembic::AbcCameraReader::readObjectData(), WIDGETGROUP_camera_refresh(), and workbench_dof_engine_init().
| float Camera::shiftx |
Definition at line 105 of file DNA_camera_types.h.
Referenced by BKE_camera_params_from_object(), BKE_camera_view_frame_ex(), BKE_tracking_camera_to_blender(), BLI_uvproject_camera_info(), camera_offaxis_shiftx_get(), blender::io::alembic::ABCCameraWriter::do_write(), blender::io::usd::USDCameraWriter::do_write(), ED_view3d_win_to_3d(), blender::io::alembic::AbcCameraReader::readObjectData(), view3d_stereo3d_setup(), WIDGETGROUP_camera_refresh(), and DocumentImporter::writeCamera().
| float Camera::shifty |
Definition at line 105 of file DNA_camera_types.h.
Referenced by BKE_camera_params_from_object(), BKE_camera_view_frame_ex(), BKE_tracking_camera_to_blender(), BLI_uvproject_camera_info(), blender::io::alembic::ABCCameraWriter::do_write(), blender::io::usd::USDCameraWriter::do_write(), ED_view3d_win_to_3d(), blender::io::alembic::AbcCameraReader::readObjectData(), WIDGETGROUP_camera_refresh(), and DocumentImporter::writeCamera().
| size_t Camera::shutter_table_offset |
Definition at line 79 of file camera.h.
Referenced by Camera(), and device_free().
| struct CameraStereoSettings Camera::stereo |
| char Camera::type |
CAM_PERSP, CAM_ORTHO or CAM_PANO.
Definition at line 97 of file DNA_camera_types.h.
Referenced by BKE_camera_multiview_spherical_stereo(), BKE_camera_params_from_object(), BKE_camera_view_frame_ex(), Freestyle::BlenderStrokeRenderer::BlenderStrokeRenderer(), BLI_uvproject_camera_info(), blo_do_versions_260(), blo_do_versions_pre250(), EEVEE_depth_of_field_init(), image_camera_background_matrix_get(), blender::io::alembic::ABCCameraWriter::is_supported(), blender::io::usd::USDCameraWriter::is_supported(), lineart_main_load_geometries(), CamerasExporter::operator()(), uvprojectModifier_do(), view3d_get_name(), WIDGETGROUP_camera_refresh(), and DocumentImporter::writeCamera().
| BoundBox2D Camera::viewplane |
Definition at line 129 of file camera.h.
Referenced by compute_auto_viewplane().
| BoundBox2D Camera::viewport_camera_border |
| Transform Camera::worldtocamera |
Definition at line 172 of file camera.h.
Referenced by world_to_raster_size().
| ProjectionTransform Camera::worldtondc |
| ProjectionTransform Camera::worldtoraster |
Definition at line 169 of file camera.h.
Referenced by Camera(), and QuadDice::eval_projected().
| ProjectionTransform Camera::worldtoscreen |