private void updateViewMatrix(){
		m_orientation.toRotationMatrix(m_viewMatrix);

	    m_xAxis.set(m_viewMatrix.m00, m_viewMatrix.m10, m_viewMatrix.m20);
	    m_yAxis.set(m_viewMatrix.m01, m_viewMatrix.m11, m_viewMatrix.m21);
	    m_zAxis.set(m_viewMatrix.m02, m_viewMatrix.m12, m_viewMatrix.m22);
	    m_zAxis.negate(m_viewDir);

	    //Multiplying Vector3f and Floats.
	    float x = m_zAxis.x * m_offsetDistance;
	    float y = m_zAxis.y * m_offsetDistance;
	    float z = m_zAxis.z * m_offsetDistance;
	    
	    Vector3f Scaled = new Vector3f(x,y,z);	  
	    // -- //
	    Vector3f.add(m_target, Scaled, m_eye);

	    m_viewMatrix.m30 = -Vector3f.dot(m_xAxis, m_eye);
	    m_viewMatrix.m31 = -Vector3f.dot(m_yAxis, m_eye);
	    m_viewMatrix.m32 = -Vector3f.dot(m_zAxis, m_eye);
	}