I really recommend scaling the camera by 1,1,-1 to change the axis handedness. As it is written, you have to flip your vertex positions, and that isn't conducive to fast processing of vertex arrays, like if you are loading or saving a file, or talking to a third-party physics lib.
Here's my code for converting a quaternion to a matrix:
Here's my code for converting a quaternion to a matrix:
matrix[0,0]=(1.0-2.0*quaternion.x#*quaternion.x#-2.0*quaternion.z#*quaternion.z#) matrix[1,0]=-(2.0*quaternion.z#*quaternion.y#-2.0*quaternion.w#*quaternion.x#) matrix[2,0]=-(2.0*quaternion.x#*quaternion.y#+2.0*quaternion.w#*quaternion.z#) matrix[0,1]=-(2.0*quaternion.z#*quaternion.y#+2.0*quaternion.w#*quaternion.x#) matrix[1,1]=(1.0-2.0*quaternion.y#*quaternion.y#-2.0*quaternion.x#*quaternion.x#) matrix[2,1]=-(2.0*quaternion.w#*quaternion.y#-2.0*quaternion.x#*quaternion.z#) matrix[0,2]=2.0*quaternion.w#*quaternion.z#-2.0*quaternion.x#*quaternion.y# matrix[1,2]=2.0*quaternion.x#*quaternion.z#+2.0*quaternion.w#*quaternion.y# matrix[2,2]=1.0-2.0*quaternion.z#*quaternion.z#-2.0*quaternion.y#*quaternion.y#