From d7ea3f046e7c380e8c970eeab78e1f844907687e Mon Sep 17 00:00:00 2001 From: Pavel Rojtberg Date: Sat, 15 Feb 2025 19:21:05 +0100 Subject: [PATCH] Main: RenderTarget - add TargetPriorityGroup to replace #defines --- OgreMain/include/OgreRenderTarget.h | 16 ++++++++++------ OgreMain/src/OgreRenderSystem.cpp | 2 -- OgreMain/src/OgreRenderTarget.cpp | 2 +- OgreMain/src/OgreRenderTexture.cpp | 4 ++-- 4 files changed, 13 insertions(+), 11 deletions(-) diff --git a/OgreMain/include/OgreRenderTarget.h b/OgreMain/include/OgreRenderTarget.h index fe3be22c715..41ce5482732 100644 --- a/OgreMain/include/OgreRenderTarget.h +++ b/OgreMain/include/OgreRenderTarget.h @@ -33,12 +33,10 @@ THE SOFTWARE. #include "OgrePixelFormat.h" #include "OgreHeaderPrefix.h" -/* Define the number of priority groups for the render system's render targets. */ -#ifndef OGRE_NUM_RENDERTARGET_GROUPS - #define OGRE_NUM_RENDERTARGET_GROUPS 10 - #define OGRE_DEFAULT_RT_GROUP 4 - #define OGRE_REND_TO_TEX_RT_GROUP 2 -#endif +/// @deprecated +#define OGRE_REND_TO_TEX_RT_GROUP Ogre::RenderTarget::TP_REND_TO_TEX +/// @deprecated +#define OGRE_DEFAULT_RT_GROUP Ogre::RenderTarget::TP_DEFAULT namespace Ogre { @@ -86,6 +84,12 @@ namespace Ogre { FB_AUTO }; + enum TargetPriorityGroup + { + TP_REND_TO_TEX = 2, + TP_DEFAULT = 4, + }; + RenderTarget(); virtual ~RenderTarget(); diff --git a/OgreMain/src/OgreRenderSystem.cpp b/OgreMain/src/OgreRenderSystem.cpp index 53e6197caf9..fdb51560492 100644 --- a/OgreMain/src/OgreRenderSystem.cpp +++ b/OgreMain/src/OgreRenderSystem.cpp @@ -362,8 +362,6 @@ namespace Ogre { //--------------------------------------------------------------------------------------------- void RenderSystem::attachRenderTarget( RenderTarget &target ) { - assert( target.getPriority() < OGRE_NUM_RENDERTARGET_GROUPS ); - mRenderTargets.emplace(target.getName(), &target); mPrioritisedRenderTargets.emplace(target.getPriority(), &target); } diff --git a/OgreMain/src/OgreRenderTarget.cpp b/OgreMain/src/OgreRenderTarget.cpp index baae9c7ac27..55c6f3d95df 100644 --- a/OgreMain/src/OgreRenderTarget.cpp +++ b/OgreMain/src/OgreRenderTarget.cpp @@ -34,7 +34,7 @@ THE SOFTWARE. namespace Ogre { RenderTarget::RenderTarget() - : mPriority(OGRE_DEFAULT_RT_GROUP) + : mPriority(TP_DEFAULT) , mDepthBufferPoolId(DepthBuffer::POOL_DEFAULT) , mDepthBuffer(0) , mActive(true) diff --git a/OgreMain/src/OgreRenderTexture.cpp b/OgreMain/src/OgreRenderTexture.cpp index b2bf76f5a6e..4378e496960 100644 --- a/OgreMain/src/OgreRenderTexture.cpp +++ b/OgreMain/src/OgreRenderTexture.cpp @@ -35,7 +35,7 @@ namespace Ogre RenderTexture::RenderTexture(HardwarePixelBuffer *buffer, uint32 zoffset): mBuffer(buffer), mZOffset(zoffset) { - mPriority = OGRE_REND_TO_TEX_RT_GROUP; + mPriority = TP_REND_TO_TEX; mWidth = mBuffer->getWidth(); mHeight = mBuffer->getHeight(); @@ -62,7 +62,7 @@ namespace Ogre //----------------------------------------------------------------------------- MultiRenderTarget::MultiRenderTarget(const String &name) { - mPriority = OGRE_REND_TO_TEX_RT_GROUP; + mPriority = TP_REND_TO_TEX; mName = name; /// Width and height is unknown with no targets attached mWidth = mHeight = 0;