MCPcopy Create free account
hub / github.com/MyGUI/mygui / doManualRender

Method doManualRender

Tools/EditorFramework/MyGUI_FilterNoneSkin.cpp:48–100  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

46 }
47
48 void FilterNone::doManualRender(IVertexBuffer* _buffer, ITexture* _texture, size_t _count)
49 {
50#if defined(MYGUI_OGRE_PLATFORM)
51
52 #if OGRE_COMPILER == OGRE_COMPILER_MSVC
53 #define OGRE_IGNORE_DEPRECATED_BEGIN __pragma(warning(push)) __pragma(warning(disable : 4996))
54 #define OGRE_IGNORE_DEPRECATED_END __pragma(warning(pop))
55 #else
56 #define OGRE_IGNORE_DEPRECATED_BEGIN \
57 _Pragma("GCC diagnostic push") _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"")
58 #define OGRE_IGNORE_DEPRECATED_END _Pragma("GCC diagnostic pop")
59 #endif
60
61 if (OgreRenderManager::getInstancePtr()->getManualRender())
62 OgreRenderManager::getInstancePtr()->begin();
63
64 OgreRenderManager::getInstancePtr()->setManualRender(true);
65
66 if (_texture)
67 {
68 OgreTexture* texture = static_cast<OgreTexture*>(_texture);
69 Ogre::TexturePtr texture_ptr = texture->getOgreTexture();
70 if (texture_ptr)
71 {
72 OgreRenderManager::getInstancePtr()->getRenderSystem()->_setTexture(0, true, texture_ptr);
73 OGRE_IGNORE_DEPRECATED_BEGIN
74 #if OGRE_VERSION < MYGUI_DEFINE_VERSION(14, 0, 0)
75 // TODO: use _setSampler
76 OgreRenderManager::getInstancePtr()->getRenderSystem()->_setTextureUnitFiltering(
77 0,
78 Ogre::FO_NONE,
79 Ogre::FO_NONE,
80 Ogre::FO_NONE);
81 #endif
82 OGRE_IGNORE_DEPRECATED_END
83 }
84 }
85
86 OgreVertexBuffer* buffer = static_cast<OgreVertexBuffer*>(_buffer);
87 Ogre::RenderOperation* operation = buffer->getRenderOperation();
88 operation->vertexData->vertexCount = _count;
89
90 OgreRenderManager::getInstancePtr()->getRenderSystem()->_render(*operation);
91#elif defined(MYGUI_OPENGL_PLATFORM)
92 OpenGLRenderManager::getInstancePtr()->doRender(_buffer, _texture, _count);
93#elif defined(MYGUI_DIRECTX_PLATFORM)
94 DirectXRenderManager::getInstancePtr()->doRender(_buffer, _texture, _count);
95#elif defined(MYGUI_DIRECTX11_PLATFORM)
96 DirectX11RenderManager::getInstancePtr()->doRender(_buffer, _texture, _count);
97#elif defined(MYGUI_OPENGL3_PLATFORM)
98 OpenGL3RenderManager::getInstancePtr()->doRender(_buffer, _texture, _count);
99#endif
100 }
101
102}

Callers 1

renderToTargetMethod · 0.80

Calls 8

getInstancePtrFunction · 0.85
getOgreTextureMethod · 0.80
getRenderSystemMethod · 0.80
getRenderOperationMethod · 0.80
getManualRenderMethod · 0.45
beginMethod · 0.45
setManualRenderMethod · 0.45
doRenderMethod · 0.45

Tested by

no test coverage detected