X-Git-Url: https://git.jsancho.org/?p=c-irrlicht.git;a=blobdiff_plain;f=src%2FIVideoDriver.cpp;fp=src%2FIVideoDriver.cpp;h=61333989136cdecf3f75933c93084e7d41acd2fc;hp=6bc1020f8cfab87bf61778c141f85a379bfe2e07;hb=7e6e206937c54b100b45b2732edf19a7cc4a3edb;hpb=75c3ceb26453f2b265c3eabdd7518d26abfeed1c diff --git a/src/IVideoDriver.cpp b/src/IVideoDriver.cpp index 6bc1020..6133398 100644 --- a/src/IVideoDriver.cpp +++ b/src/IVideoDriver.cpp @@ -32,31 +32,17 @@ extern "C" { 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 @@ -69,49 +55,12 @@ extern "C" { irr_scene_E_PRIMITIVE_TYPE pType, irr_video_E_INDEX_TYPE iType) { - // Convert vertices - irr::video::S3DVertex irrVertices[vertexCount]; - for (int i=0; ipos.x, vertex->pos.y, vertex->pos.z, - vertex->normal.x, vertex->normal.y, vertex->normal.z, - irr::video::SColor(vertex->color.a, - vertex->color.r, - vertex->color.g, - vertex->color.b), - vertex->tCoords.x, vertex->tCoords.y); - } - - // Convert indices - size_t indexListSize = - ((iType == irr_video_EIT_16BIT) ? sizeof(irr::u16) : sizeof(irr::u32)) * - primCount * 3; - void* irrIndexList = malloc(indexListSize); - - for (int i=0; idrawVertexPrimitiveList(&irrVertices[0], vertexCount, - irrIndexList, primCount, + ->drawVertexPrimitiveList(vertices, vertexCount, + indexList, primCount, (irr::video::E_VERTEX_TYPE)vType, (irr::scene::E_PRIMITIVE_TYPE)pType, (irr::video::E_INDEX_TYPE)iType); - - free(irrIndexList); } int