Fix T46590 Strange camera behavior (partial revert of fbca69c6)
I'm sure there is a way of using the new functions for the obmat_to_viewmat() routine. But for now let's get it back to a working state
This commit is contained in:
@@ -849,10 +849,18 @@ void view3d_winmatrix_set(ARegion *ar, const View3D *v3d, const rctf *rect)
|
||||
|
||||
static void obmat_to_viewmat(RegionView3D *rv3d, Object *ob)
|
||||
{
|
||||
float bmat[4][4];
|
||||
float tmat[3][3];
|
||||
|
||||
rv3d->view = RV3D_VIEW_USER; /* don't show the grid */
|
||||
mat4_to_quat(rv3d->viewquat, ob->obmat);
|
||||
invert_qt_normalized(rv3d->viewquat);
|
||||
quat_to_mat4(rv3d->viewmat, rv3d->viewquat);
|
||||
|
||||
copy_m4_m4(bmat, ob->obmat);
|
||||
normalize_m4(bmat);
|
||||
invert_m4_m4(rv3d->viewmat, bmat);
|
||||
|
||||
/* view quat calculation, needed for add object */
|
||||
copy_m3_m4(tmat, rv3d->viewmat);
|
||||
mat3_to_quat(rv3d->viewquat, tmat);
|
||||
}
|
||||
|
||||
static float view3d_quat_axis[6][4] = {
|
||||
|
||||
Reference in New Issue
Block a user