X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;ds=sidebyside;f=src%2FIVideoDriver.cpp;h=61333989136cdecf3f75933c93084e7d41acd2fc;hb=refs%2Fheads%2Fmaster;hp=50ee3454283db4ec73ea0d2d7c634c489f0ae4ab;hpb=8d84fb35562071d38c50f6d78880aa3cb626c0fc;p=c-irrlicht.git diff --git a/src/IVideoDriver.cpp b/src/IVideoDriver.cpp index 50ee345..6133398 100644 --- a/src/IVideoDriver.cpp +++ b/src/IVideoDriver.cpp @@ -26,37 +26,41 @@ extern "C" { int irr_video_beginScene(irr_video_IVideoDriver* driver, - int backBuffer, - int zBuffer, + bool backBuffer, + bool zBuffer, const irr_video_SColor* color, irr_video_SExposedVideoData* videoData, const irr_core_rect_s32* sourceRect) { - // Color - irr::video::SColor col = irr::video::SColor(color->a, color->r, - color->g, color->b); - // Video data // TODO irr::video::SExposedVideoData vdata = irr::video::SExposedVideoData(); - // Source rect - irr::core::rect rect; - if (sourceRect != NULL) - { - rect = irr::core::rect(sourceRect->x, - sourceRect->y, - sourceRect->x2, - sourceRect->y2); - } - // Begin scene return ((irr::video::IVideoDriver*)driver) ->beginScene(backBuffer, zBuffer, - col, + *(irr::video::SColor*)color, vdata, - sourceRect != NULL ? &rect : 0); + (irr::core::rect*)sourceRect); + } + + void + irr_video_drawVertexPrimitiveList(irr_video_IVideoDriver* driver, + const void* vertices, + uint32_t vertexCount, + const void* indexList, + uint32_t primCount, + irr_video_E_VERTEX_TYPE vType, + irr_scene_E_PRIMITIVE_TYPE pType, + irr_video_E_INDEX_TYPE iType) + { + ((irr::video::IVideoDriver*)driver) + ->drawVertexPrimitiveList(vertices, vertexCount, + indexList, primCount, + (irr::video::E_VERTEX_TYPE)vType, + (irr::scene::E_PRIMITIVE_TYPE)pType, + (irr::video::E_INDEX_TYPE)iType); } int @@ -91,13 +95,9 @@ extern "C" { void irr_video_setMaterial(irr_video_IVideoDriver* driver, - const irr_video_SMaterial material) + irr_video_SMaterial* material) { - irr::video::SMaterial irrMaterial = irr::video::SMaterial(); - irrMaterial.Lighting = material.lighting; - irrMaterial.Wireframe = material.wireframe; - - ((irr::video::IVideoDriver*)driver)->setMaterial(irrMaterial); + ((irr::video::IVideoDriver*)driver)->setMaterial(*(irr::video::SMaterial*)material); } void