Fix for using non camera objects as a camera having zero area view-frame

This commit is contained in:
Campbell Barton
2014-03-01 21:41:07 +11:00
parent 9737717234
commit 176f1aad3d
3 changed files with 12 additions and 0 deletions

View File

@@ -198,6 +198,10 @@ void BKE_camera_params_init(CameraParams *params)
params->sensor_fit = CAMERA_SENSOR_FIT_AUTO;
params->zoom = 1.0f;
/* fallback for non camera objects */
params->clipsta = 0.1f;
params->clipsta = 100.0f;
}
void BKE_camera_params_from_object(CameraParams *params, Object *ob)

View File

@@ -950,6 +950,9 @@ static void view3d_camera_border(Scene *scene, ARegion *ar, View3D *v3d, RegionV
/* get camera viewplane */
BKE_camera_params_init(&params);
/* fallback for non camera objects */
params.clipsta = v3d->near;
params.clipend = v3d->far;
BKE_camera_params_from_object(&params, v3d->camera);
if (no_shift) {
params.shiftx = 0.0f;
@@ -2746,6 +2749,9 @@ ImBuf *ED_view3d_draw_offscreen_imbuf(Scene *scene, View3D *v3d, ARegion *ar, in
CameraParams params;
BKE_camera_params_init(&params);
/* fallback for non camera objects */
params.clipsta = v3d->near;
params.clipend = v3d->far;
BKE_camera_params_from_object(&params, v3d->camera);
BKE_camera_params_compute_viewplane(&params, sizex, sizey, scene->r.xasp, scene->r.yasp);
BKE_camera_params_compute_matrix(&params);

View File

@@ -2533,6 +2533,8 @@ static void view3d_from_minmax(bContext *C, View3D *v3d, ARegion *ar,
if (rv3d->persp == RV3D_CAMOB && ED_view3d_camera_lock_check(v3d, rv3d)) {
CameraParams params;
BKE_camera_params_init(&params);
params.clipsta = v3d->near;
params.clipend = v3d->far;
BKE_camera_params_from_object(&params, v3d->camera);
lens = params.lens;