From 7f86477c3e0b56b3161c2e0e5b17739e18a90f03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Wed, 9 Jun 2021 21:15:09 +0200 Subject: [PATCH] Adapt to Magnum changes. --- src/python/magnum/gl.cpp | 4 +++- src/python/magnum/shaders.cpp | 8 +++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/python/magnum/gl.cpp b/src/python/magnum/gl.cpp index 17bd9de..5767270 100644 --- a/src/python/magnum/gl.cpp +++ b/src/python/magnum/gl.cpp @@ -495,7 +495,9 @@ void gl(py::module_& m) { /* Public interface */ .def_property_readonly("id", &GL::AbstractShaderProgram::id, "OpenGL program ID") .def("validate", &GL::AbstractShaderProgram::validate, "Validate program") - .def("draw", static_cast(&GL::AbstractShaderProgram::draw), "Draw a mesh") + .def("draw", [](GL::AbstractShaderProgram& self, GL::Mesh& mesh) { + self.draw(mesh); + }, "Draw a mesh") #if !defined(MAGNUM_TARGET_GLES2) && !defined(MAGNUM_TARGET_WEBGL) .def("dispatch_compute", &GL::AbstractShaderProgram::dispatchCompute, "Dispatch compute") #endif diff --git a/src/python/magnum/shaders.cpp b/src/python/magnum/shaders.cpp index 745fda7..576eb55 100644 --- a/src/python/magnum/shaders.cpp +++ b/src/python/magnum/shaders.cpp @@ -45,7 +45,9 @@ namespace magnum { namespace { template void anyShader(PyNonDestructibleClass& c) { - c.def("draw", static_cast(&GL::AbstractShaderProgram::draw), "Draw a mesh"); + c.def("draw", [](GL::AbstractShaderProgram& self, GL::Mesh& mesh) { + self.draw(mesh); + }, "Draw a mesh"); } template void flat(PyNonDestructibleClass, GL::AbstractShaderProgram>& c) { @@ -61,7 +63,7 @@ template void flat(PyNonDestructibleClass& self) { - return typename Shaders::FlatGL::Flag(UnsignedByte(self.flags())); + return typename Shaders::FlatGL::Flag(UnsignedShort(self.flags())); }, "Flags") .def_property("transformation_projection_matrix", nullptr, &Shaders::FlatGL::setTransformationProjectionMatrix, "Transformation and projection matrix") @@ -196,7 +198,7 @@ void shaders(py::module_& m) { py::arg("flags") = Shaders::PhongGL::Flag{}, py::arg("light_count") = 1) .def_property_readonly("flags", [](Shaders::PhongGL& self) { - return Shaders::PhongGL::Flag(UnsignedShort(self.flags())); + return Shaders::PhongGL::Flag(UnsignedInt(self.flags())); }, "Flags") .def_property_readonly("light_count", &Shaders::PhongGL::lightCount, "Light count")