Blender V4.3
camera.cpp File Reference
#include "scene/camera.h"
#include "scene/bake.h"
#include "scene/scene.h"
#include "blender/sync.h"
#include "blender/util.h"
#include "util/log.h"

Go to the source code of this file.

Classes

struct  BlenderCamera
 

Functions

static void blender_camera_init (BlenderCamera *bcam, BL::RenderSettings &b_render)
 
static float blender_camera_focal_distance (BL::RenderEngine &b_engine, BL::Object &b_ob, BL::Camera &b_camera, BlenderCamera *bcam)
 
static PanoramaType blender_panorama_type_to_cycles (const BL::Camera::panorama_type_enum type)
 
static void blender_camera_from_object (BlenderCamera *bcam, BL::RenderEngine &b_engine, BL::Object &b_ob, bool skip_panorama=false)
 
static Transform blender_camera_matrix (const Transform &tfm, const CameraType type, const PanoramaType panorama_type)
 
static void blender_camera_viewplane (BlenderCamera *bcam, int width, int height, BoundBox2D *viewplane, float *aspectratio, float *sensor_size)
 
static void blender_camera_sync (Camera *cam, BlenderCamera *bcam, int width, int height, const char *viewname, PointerRNA *cscene)
 
static MotionPosition blender_motion_blur_position_type_to_cycles (const BL::RenderSettings::motion_blur_position_enum type)
 
static void blender_camera_view_subset (BL::RenderEngine &b_engine, BL::RenderSettings &b_render, BL::Scene &b_scene, BL::Object &b_ob, BL::SpaceView3D &b_v3d, BL::RegionView3D &b_rv3d, int width, int height, BoundBox2D *view_box, BoundBox2D *cam_box, float *view_aspect)
 
static void blender_camera_from_view (BlenderCamera *bcam, BL::RenderEngine &b_engine, BL::Scene &b_scene, BL::SpaceView3D &b_v3d, BL::RegionView3D &b_rv3d, int width, int height, bool skip_panorama=false)
 
static void blender_camera_border_subset (BL::RenderEngine &b_engine, BL::RenderSettings &b_render, BL::Scene &b_scene, BL::SpaceView3D &b_v3d, BL::RegionView3D &b_rv3d, BL::Object &b_ob, int width, int height, const BoundBox2D &border, BoundBox2D *result)
 
static void blender_camera_border (BlenderCamera *bcam, BL::RenderEngine &b_engine, BL::RenderSettings &b_render, BL::Scene &b_scene, BL::SpaceView3D &b_v3d, BL::RegionView3D &b_rv3d, int width, int height)
 

Function Documentation

◆ blender_camera_border()

static void blender_camera_border ( BlenderCamera * bcam,
BL::RenderEngine & b_engine,
BL::RenderSettings & b_render,
BL::Scene & b_scene,
BL::SpaceView3D & b_v3d,
BL::RegionView3D & b_rv3d,
int width,
int height )
static

◆ blender_camera_border_subset()

static void blender_camera_border_subset ( BL::RenderEngine & b_engine,
BL::RenderSettings & b_render,
BL::Scene & b_scene,
BL::SpaceView3D & b_v3d,
BL::RegionView3D & b_rv3d,
BL::Object & b_ob,
int width,
int height,
const BoundBox2D & border,
BoundBox2D * result )
static

◆ blender_camera_focal_distance()

static float blender_camera_focal_distance ( BL::RenderEngine & b_engine,
BL::Object & b_ob,
BL::Camera & b_camera,
BlenderCamera * bcam )
static

◆ blender_camera_from_object()

static void blender_camera_from_object ( BlenderCamera * bcam,
BL::RenderEngine & b_engine,
BL::Object & b_ob,
bool skip_panorama = false )
static

Definition at line 198 of file blender/camera.cpp.

References BlenderCamera::aperture_ratio, BlenderCamera::apertureblades, BlenderCamera::aperturerotation, BlenderCamera::aperturesize, BlenderCamera::AUTO, blender_camera_focal_distance(), blender_panorama_type_to_cycles(), CAMERA_ORTHOGRAPHIC, CAMERA_PANORAMA, CAMERA_PERSPECTIVE, BlenderCamera::central_cylindrical_radius, BlenderCamera::central_cylindrical_range_u_max, BlenderCamera::central_cylindrical_range_u_min, BlenderCamera::central_cylindrical_range_v_max, BlenderCamera::central_cylindrical_range_v_min, BlenderCamera::convergence_distance, BlenderCamera::farclip, BlenderCamera::fisheye_fov, BlenderCamera::fisheye_lens, BlenderCamera::fisheye_polynomial_k0, BlenderCamera::fisheye_polynomial_k1, BlenderCamera::fisheye_polynomial_k2, BlenderCamera::fisheye_polynomial_k3, BlenderCamera::fisheye_polynomial_k4, FLT_MAX, BlenderCamera::focaldistance, BlenderCamera::HORIZONTAL, BlenderCamera::interocular_distance, BlenderCamera::latitude_max, BlenderCamera::latitude_min, BlenderCamera::lens, BlenderCamera::longitude_max, BlenderCamera::longitude_min, max, BlenderCamera::motion_steps, BlenderCamera::nearclip, object_motion_steps(), BlenderCamera::ortho_scale, BlenderCamera::panorama_type, BlenderCamera::passepartout_alpha, BlenderCamera::pole_merge_angle_from, BlenderCamera::pole_merge_angle_to, BlenderCamera::sensor_fit, BlenderCamera::sensor_height, BlenderCamera::sensor_width, BlenderCamera::shift, tanf, BlenderCamera::type, BlenderCamera::use_pole_merge, BlenderCamera::use_spherical_stereo, BlenderCamera::VERTICAL, float2::x, and float2::y.

Referenced by blender_camera_from_view(), blender_camera_view_subset(), BlenderSync::sync_camera(), and BlenderSync::sync_view().

◆ blender_camera_from_view()

◆ blender_camera_init()

◆ blender_camera_matrix()

static Transform blender_camera_matrix ( const Transform & tfm,
const CameraType type,
const PanoramaType panorama_type )
static

◆ blender_camera_sync()

static void blender_camera_sync ( Camera * cam,
BlenderCamera * bcam,
int width,
int height,
const char * viewname,
PointerRNA * cscene )
static

Definition at line 454 of file blender/camera.cpp.

References BlenderCamera::aperture_ratio, BlenderCamera::apertureblades, BlenderCamera::aperturerotation, BlenderCamera::aperturesize, atanf, BlenderCamera::AUTO, blender_camera_matrix(), blender_camera_viewplane(), BlenderCamera::border, BoundBox2D::bottom, CAMERA_PANORAMA, BlenderCamera::central_cylindrical_radius, BlenderCamera::central_cylindrical_range_u_max, BlenderCamera::central_cylindrical_range_u_min, BlenderCamera::central_cylindrical_range_v_max, BlenderCamera::central_cylindrical_range_v_min, BlenderCamera::convergence_distance, BlenderCamera::farclip, BlenderCamera::fisheye_fov, BlenderCamera::fisheye_lens, BlenderCamera::fisheye_polynomial_k0, BlenderCamera::fisheye_polynomial_k1, BlenderCamera::fisheye_polynomial_k2, BlenderCamera::fisheye_polynomial_k3, BlenderCamera::fisheye_polynomial_k4, float, BlenderCamera::focaldistance, BlenderCamera::HORIZONTAL, BlenderCamera::interocular_distance, BlenderCamera::latitude_max, BlenderCamera::latitude_min, BoundBox2D::left, BlenderCamera::lens, BlenderCamera::longitude_max, BlenderCamera::longitude_min, BlenderCamera::matrix, BlenderCamera::motion_position, BlenderCamera::motion_steps, BlenderCamera::nearclip, BlenderCamera::offscreen_dicing_scale, PANORAMA_FISHEYE_EQUISOLID, PANORAMA_FISHEYE_LENS_POLYNOMIAL, BlenderCamera::panorama_type, BlenderCamera::pixelaspect, BlenderCamera::pole_merge_angle_from, BlenderCamera::pole_merge_angle_to, BlenderCamera::render_height, BlenderCamera::render_width, array< T, alignment >::resize(), BoundBox2D::right, RNA_float_get(), BlenderCamera::rolling_shutter_duration, BlenderCamera::rolling_shutter_type, BlenderCamera::sensor_fit, BlenderCamera::sensor_height, BlenderCamera::sensor_width, BlenderCamera::shutter_curve, BlenderCamera::shuttertime, Camera::STEREO_LEFT, Camera::STEREO_NONE, Camera::STEREO_RIGHT, BoundBox2D::top, BlenderCamera::type, BlenderCamera::use_pole_merge, BlenderCamera::use_spherical_stereo, BlenderCamera::viewport_camera_border, float2::x, and float2::y.

Referenced by BlenderSync::sync_camera(), and BlenderSync::sync_view().

◆ blender_camera_view_subset()

static void blender_camera_view_subset ( BL::RenderEngine & b_engine,
BL::RenderSettings & b_render,
BL::Scene & b_scene,
BL::Object & b_ob,
BL::SpaceView3D & b_v3d,
BL::RegionView3D & b_rv3d,
int width,
int height,
BoundBox2D * view_box,
BoundBox2D * cam_box,
float * view_aspect )
static

◆ blender_camera_viewplane()

◆ blender_motion_blur_position_type_to_cycles()

static MotionPosition blender_motion_blur_position_type_to_cycles ( const BL::RenderSettings::motion_blur_position_enum type)
static

◆ blender_panorama_type_to_cycles()

static PanoramaType blender_panorama_type_to_cycles ( const BL::Camera::panorama_type_enum type)
static