diff options
author | Campbell Barton <ideasman42@gmail.com> | 2009-04-05 10:08:41 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2009-04-05 10:08:41 +0400 |
commit | 53e721305ef76505257bba3c62c24a042a3030a9 (patch) | |
tree | 0a7fe9adbaab2bb3a73d9c75fce5d3fb15a42127 /source/gameengine/Ketsji/BL_Shader.cpp | |
parent | 04ef5a492af04fa9317245c7a843afed1cbd8252 (diff) |
BGE Python API
- made camera use PyAttributeDef's
- removed unneeded duplicate matrix type checks
- fixed own bug (added since 2.48a) that broke a converting 4x4 matrix to a PyObject
Diffstat (limited to 'source/gameengine/Ketsji/BL_Shader.cpp')
-rw-r--r-- | source/gameengine/Ketsji/BL_Shader.cpp | 31 |
1 files changed, 12 insertions, 19 deletions
diff --git a/source/gameengine/Ketsji/BL_Shader.cpp b/source/gameengine/Ketsji/BL_Shader.cpp index 279721b4840..c82a9979fe1 100644 --- a/source/gameengine/Ketsji/BL_Shader.cpp +++ b/source/gameengine/Ketsji/BL_Shader.cpp @@ -1278,19 +1278,16 @@ KX_PYMETHODDEF_DOC( BL_Shader, setUniformMatrix4, int loc = GetUniformLocation(uniform); if(loc != -1) { - if (PyObject_IsMT_Matrix(matrix, 4)) + MT_Matrix4x4 mat; + if (PyMatTo(matrix, mat)) { - MT_Matrix4x4 mat; - if (PyMatTo(matrix, mat)) - { #ifdef SORT_UNIFORMS - mat.getValue(matr); - SetUniformfv(loc, BL_Uniform::UNI_MAT4, matr, (sizeof(float)*16), (transp!=0) ); + mat.getValue(matr); + SetUniformfv(loc, BL_Uniform::UNI_MAT4, matr, (sizeof(float)*16), (transp!=0) ); #else - SetUniform(loc,mat,(transp!=0)); + SetUniform(loc,mat,(transp!=0)); #endif - Py_RETURN_NONE; - } + Py_RETURN_NONE; } } } @@ -1319,20 +1316,16 @@ KX_PYMETHODDEF_DOC( BL_Shader, setUniformMatrix3, int loc = GetUniformLocation(uniform); if(loc != -1) { - if (PyObject_IsMT_Matrix(matrix, 3)) + MT_Matrix3x3 mat; + if (PyMatTo(matrix, mat)) { - MT_Matrix3x3 mat; - if (PyMatTo(matrix, mat)) - { #ifdef SORT_UNIFORMS - mat.getValue(matr); - SetUniformfv(loc, BL_Uniform::UNI_MAT3, matr, (sizeof(float)*9), (transp!=0) ); + mat.getValue(matr); + SetUniformfv(loc, BL_Uniform::UNI_MAT3, matr, (sizeof(float)*9), (transp!=0) ); #else - SetUniform(loc,mat,(transp!=0)); + SetUniform(loc,mat,(transp!=0)); #endif - Py_RETURN_NONE; - - } + Py_RETURN_NONE; } } } |