Added a Matrix::value_type typedef'd trait into osg::Matrix, defaulting its
value to float, and converted the internal code across to use value_type. This allows Matrix to be converted to use double's simply by change the definition of value_type. Added Matrix::glLoadlMatrix and Matrix::glMultMatrix() to help encapsulate the changes between float and double matrix usage. Updated code that uses Matrix so it doesn't assume float or double matrices.
This commit is contained in:
@@ -260,10 +260,14 @@ void DataOutputStream::writeVec4Array(osg::Vec4Array* a){
|
||||
}
|
||||
}
|
||||
|
||||
void DataOutputStream::writeMatrix(osg::Matrix mat){
|
||||
float* p = mat.ptr();
|
||||
for(int i=0;i<16;i++){
|
||||
writeFloat(p[i]);
|
||||
void DataOutputStream::writeMatrix(const osg::Matrix& mat)
|
||||
{
|
||||
for(int r=0;r<4;r++)
|
||||
{
|
||||
for(int c=0;c<4;c++)
|
||||
{
|
||||
writeFloat(mat(r,c));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user