ogrecave / ogre-next Goto Github PK
View Code? Open in Web Editor NEWaka ogre v2 - scene-oriented, flexible 3D C++ engine
Home Page: https://ogrecave.github.io/ogre-next/api/latest
License: Other
aka ogre v2 - scene-oriented, flexible 3D C++ engine
Home Page: https://ogrecave.github.io/ogre-next/api/latest
License: Other
[reporter="al2950", created="Tue, 14 Oct 2014 12:21:40 +0200"]
This is minor point, but at the moment you have to define all the compositor nodes you want to use in the same file as the workspace is defined. It would be much tidier to be able to have them separate.
Either a script inheritance type thing, or have a different extensions for workspaces & nodes.
Any thoughts...!?
It's been reported this RS requires doing:
fwdFragCoord.y = 1.0f - fwdFragCoord.y;
But last time I tried, I couldn't reproduce. I could've been wrong though
I am building Ogre xcode project from source with such commands:
cmake -D OGRE_BUILD_RENDERSYSTEM_METAL=1 -D OGRE_USE_BOOST=0 -D OGRE_CONFIG_THREAD_PROVIDER=0 -D OGRE_CONFIG_THREADS=0 -D OGRE_BUILD_SAMPLES2=1 -D OGRE_UNITY_BUILD=1 -D OGRE_SIMD_NEON=0 -D OGRE_BUILD_TESTS=0 -D OGRE_SIMD_SSE2=0 -G Xcode ..
and I get GL3Plus errors
In file included from /Users/dkr/Documents/Bitbucket/ogre/ogre2.1/RenderSystems/GL3Plus/src/windowing/OSX/OgreOSXCocoaContext.mm:29:
In file included from /Users/dkr/Documents/Bitbucket/ogre/ogre2.1/RenderSystems/GL3Plus/include/windowing/OSX/OgreOSXCocoaContext.h:31:
In file included from /Users/dkr/Documents/Bitbucket/ogre/ogre2.1/RenderSystems/GL3Plus/include/OgreGL3PlusContext.h:32:
In file included from /Users/dkr/Documents/Bitbucket/ogre/ogre2.1/RenderSystems/GL3Plus/include/OgreGL3PlusPrerequisites.h:80:
/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Headers/gl3ext.h:187:77: error: expected function body after function declarator
GLAPI void APIENTRY glVertexAttribDivisorARB (GLuint index, GLuint divisor) OPENGL_DEPRECATED(10.6, 10.14);
^
/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Headers/gl3ext.h:249:104: error: expected function body after function declarator
GLAPI void APIENTRY glLabelObjectEXT (GLenum type, GLuint object, GLsizei length, const GLchar *label) OPENGL_DEPRECATED(10.6, 10.14);
^
/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Headers/gl3ext.h:250:119: error: expected function body after function declarator
GLAPI void APIENTRY glGetObjectLabelEXT (GLenum type, GLuint object, GLsizei bufSize, GLsizei *length, GLchar *label) OPENGL_DEPRECATED(10.6, 10.14);
^
/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Headers/gl3ext.h:259:81: error: expected function body after function declarator
GLAPI void APIENTRY glInsertEventMarkerEXT (GLsizei length, const char *marker) OPENGL_DEPRECATED(10.6, 10.14);
^
/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Headers/gl3ext.h:260:79: error: expected function body after function declarator
GLAPI void APIENTRY glPushGroupMarkerEXT (GLsizei length, const char *marker) OPENGL_DEPRECATED(10.6, 10.14);
^
/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Headers/gl3ext.h:261:48: error: expected function body after function declarator
GLAPI void APIENTRY glPopGroupMarkerEXT (void) OPENGL_DEPRECATED(10.6, 10.14);
^
/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Headers/gl3ext.h:271:69: error: expected function body after function declarator
GLAPI void APIENTRY glDepthBoundsEXT (GLclampd zmin, GLclampd zmax) OPENGL_DEPRECATED(10.6, 10.14);
^
/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Headers/gl3ext.h:307:47: error: expected function body after function declarator
GLAPI void APIENTRY glFlushRenderAPPLE (void) OPENGL_DEPRECATED(10.6, 10.14);
^
/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Headers/gl3ext.h:308:48: error: expected function body after function declarator
GLAPI void APIENTRY glFinishRenderAPPLE (void) OPENGL_DEPRECATED(10.6, 10.14);
^
/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Headers/gl3ext.h:309:40: error: expected function body after function declarator
GLAPI void APIENTRY glSwapAPPLE (void) OPENGL_DEPRECATED(10.6, 10.14);
^
/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Headers/gl3ext.h:319:94: error: expected function body after function declarator
GLAPI GLenum APIENTRY glObjectPurgeableAPPLE (GLenum objectType, GLuint name, GLenum option) OPENGL_DEPRECATED(10.6, 10.14);
^
/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Headers/gl3ext.h:320:96: error: expected function body after function declarator
GLAPI GLenum APIENTRY glObjectUnpurgeableAPPLE (GLenum objectType, GLuint name, GLenum option) OPENGL_DEPRECATED(10.6, 10.14);
^
/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Headers/gl3ext.h:321:111: error: expected function body after function declarator
GLAPI void APIENTRY glGetObjectParameterivAPPLE (GLenum objectType, GLuint name, GLenum pname, GLint *params) OPENGL_DEPRECATED(10.6, 10.14);
^
/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Headers/gl3ext.h:339:96: error: expected function body after function declarator
GLAPI void APIENTRY glTextureRangeAPPLE (GLenum target, GLsizei length, const GLvoid *pointer) OPENGL_DEPRECATED(10.6, 10.14);
^
/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Headers/gl3ext.h:340:99: error: expected function body after function declarator
GLAPI void APIENTRY glGetTexParameterPointervAPPLE (GLenum target, GLenum pname, GLvoid **params) OPENGL_DEPRECATED(10.6, 10.14);
^
/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Headers/gl3ext.h:353:47: error: expected function body after function declarator
GLAPI void APIENTRY glTextureBarrierNV (void) OPENGL_DEPRECATED(10.6, 10.14);
^
/Users/dkr/Documents/Bitbucket/ogre/ogre2.1/RenderSystems/GL3Plus/src/windowing/OSX/OgreOSXCocoaContext.mm:56:13: warning: 'copyAttributesFromContext:withMask:' is deprecated: first deprecated in macOS 10.8 [-Wdeprecated-declarations]
[cloneCtx copyAttributesFromContext:mNSGLContext withMask:0];
^
In file included from /Users/dkr/Documents/Bitbucket/ogre/ogre2.1/RenderSystems/GL3Plus/src/windowing/OSX/OgreOSXCocoaContext.mm:29:
In file included from /Users/dkr/Documents/Bitbucket/ogre/ogre2.1/RenderSystems/GL3Plus/include/windowing/OSX/OgreOSXCocoaContext.h:32:
/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSOpenGL.h:225:1: note: 'copyAttributesFromContext:withMask:' has been explicitly marked deprecated here
[reporter="lee", created="Tue, 2 Jun 2015 09:02:56 +0200"]
I create a plane mesh and assign "Marble" datablock to it(from sample's material). When rendering, program caused a assertion at RenderSystem::createUniqueDepthBufferFor:
assert( !renderTarget->getDepthBuffer() );
I am trying to get the similar render results on Ogre and on Unity.
but I am getting different results, please have a look on this thread
Also, I was comparing the Unity shader source code and the Ogre shader (BRDFs_piece_ps.glsl), from my understanding, Unity is using something similar to Default BRDF (not the Default | Uncorrelated) but with an optimized different math. (documentation suggest to use DefaultUncorrelated to get Unity results)
(Note: on that function on unity shader, they have a #if 0, so they are not using the more correct math)
I was trying to change the Ogre shader for the "Smith GGX Height-Correlated" term but it didn't get the results I expect.
Could you clarify about this shader differences?
Which one is more physical correct?
[reporter="hhyyrylainen", created="Mon, 7 Jul 2014 21:30:20 +0200"]
When using custom shaders my log is constantly spammed with "Error prior to using GLSL Program Object: Validation successfull" messages. There are no graphical glitches and the shader is working correctly. After using break on OpenGL error I found that the function in OgreGLRenderSystem.cpp called GLRenderSystem::_setPointSpritesEnabled doesn't check has the opengl call made by it caused an error. This causes the shader binding code report the error. I fixed this by adding glGetError(); after line 1548. There have been discussion on the forums about a similar issue before and it was, too, caused by a missing get error call (http://www.ogre3d.org/forums/viewtopic.php?f=2&t=44132&start=25)
Commits 48ef672 and 0c10ff2 added true specular IBL support.
We need to explain in the manual how to generate cubemaps that can be used for accurate specular PBR IBL.
Explanations of these instructions are in https://forums.ogre3d.org/viewtopic.php?f=25&t=95523&p=546854#p546854
The file in object is not installed (due to not having .h
extension) when you run CMake INSTALL
target (see also: https://forums.ogre3d.org/viewtopic.php?f=25&t=95649). This file is useful when you're developing a custom HLMS implementation since it contains common code that you can avoid to copy&paste.
Please apply the following patch to solve this issue.
Visual Studio (64-bit) generates a ton of warnings, even on public headers meant to be included by users.
They need to be cleaned up
In the case that only silencing them is enough (because they're too trivial and too global), consider if they could be put these #pragmas in OgreHeaderPrefix and OgreHeaderSuffix which are included in every header in Ogre.
This is for 2-1 branch:
I am trying to follow the "EmptyProject" example, trying to build it multiple ways...
Looks like this example project it is not updated:
The CMake is coping all .libs to Plugins folders for each bin/target path
but the source code is looking for the plugins.cfg / plugins_d.cfg on the bin/Data path
As mentioned in this forum thread https://forums.ogre3d.org/viewtopic.php?f=25&t=95092#p545907
there is an exception if rendering performed and VaoManager::_update ends up increasing the frame number before calling SceneManager::_frameEnded Hlms::frameEnded.
This was extremely rare in Ogre 2.1 because one would need to call VaoManager::_update explicitly, but in 2.2 it can happen as a side-effect of waiting a texture to finish streaming.
My idea is to call these two functions from inside VaoManager::_update if they haven't been already.
The issue is taking me long is that there are some (rare) edge cases that need to be handled (and if they're not, it would be extremely difficult to understand what's going wrong when things go wrong):
The extreme edge case is if VaoManager::update gets called right between Hlms::preparePassHash (i.e. in RenderQueue::renderPassPrepare or in RenderQueue::renderSingleObject) and Hlms::postCommandBufferExecution
Because if that happens (we call frameEnded in between), then we can't guarantee rendering will be glitch-free, as the dynamic BufferPacked will have been filled with the data, but when calling mCommandBuffer->execute() and postCommandBufferExecution, we will be binding BufferPacked with the wrong binding offset and thus the GPU would read old/garbage data.
I'm thinking of adding a simple boolean in RenderQueue::renderPassPrepare i.e. mRenderingStarted. And if VaoManager::update calls frameEnded while this boolean is true, trigger an assert.
Although this does not handle the edge case, it explicitly can tell us what went wrong.
And as a rule we should not call VaoManager::_update in the middle of rendering (i.e. move it outside!!!), or do some BufferPacked magic to move the frame index backwards/forward to point to the correct offset (though this is hard and very error prone)
This is related to 2-1 banch:
I am trying to build the "EmptyProject".
I am able to build Ogre project and install it. It builds the examples etc.
I am able to run the Cmake in the "EmptyProject" to generate the makefiles.
In the cmake-gui I can see the SDL2_DIR pointing to "/usr/lib/x86_64-linux-gnu/cmake/SDL2"
But it fails to build. It looks like the SDL is detected but the include is not correctly added to include paths of the project.
I am using latest Linux Mint (Ubuntu based).
[reporter="Ogre.Transporter", created="Thu, 27 Mar 2014 10:19:13 +0100"]
Sample_DeferredShading
1>C:\Sources\OGRE\Samples\DeferredShading\include\DeferredLightCP.h(18): fatal error C1083: Cannot open include file: 'OgreCompositorInstance.h': No such file or directory
1>c:\sources\ogre\samples\deferredshading\include\ListenerFactoryLogic.h(18): fatal error C1083: Cannot open include file: 'OgreCompositorInstance.h': No such file or directory
1>..\..\..\..\Sources\OGRE\Samples\DeferredShading\src\DLight.cpp(285): error C2039: 'isShadowTechniqueInUse' : is not a member of 'Ogre::SceneManager'
1> C:\Sources\OGRE\OgreMain\include\OgreSceneManager.h(256) : see declaration of 'Ogre::SceneManager'
1>..\..\..\..\Sources\OGRE\Samples\DeferredShading\src\DLight.cpp(335): error C2661: 'Ogre::Camera::Camera' : no overloaded function takes 2 arguments
1>..\..\..\..\Sources\OGRE\Samples\DeferredShading\src\DLight.cpp(338): error C2039: 'getShadowCameraSetup' : is not a member of 'Ogre::SceneManager'
1> C:\Sources\OGRE\OgreMain\include\OgreSceneManager.h(256) : see declaration of 'Ogre::SceneManager'
1>..\..\..\..\Sources\OGRE\Samples\DeferredShading\src\DLight.cpp(338): error C2227: left of '->getShadowCamera' must point to class/struct/union/generic type
1>C:\Sources\OGRE\Samples\DeferredShading\include\DeferredShading.h(42): fatal error C1083: Cannot open include file: 'OgreCompositorInstance.h': No such file or directory
1>c:\sources\ogre\samples\deferredshading\include\DeferredShading.h(42): fatal error C1083: Cannot open include file: 'OgreCompositorInstance.h': No such file or directory
Sample_ShaderSystem
1>..\..\..\..\Sources\OGRE\Samples\ShaderSystem\src\ShaderSystem.cpp(1166): error C2065: 'PSSMShadowCameraSetup' : undeclared identifier
1>..\..\..\..\Sources\OGRE\Samples\ShaderSystem\src\ShaderSystem.cpp(1166): error C2065: 'pssmSetup' : undeclared identifier
1>..\..\..\..\Sources\OGRE\Samples\ShaderSystem\src\ShaderSystem.cpp(1166): error C2061: syntax error : identifier 'PSSMShadowCameraSetup'
1>..\..\..\..\Sources\OGRE\Samples\ShaderSystem\src\ShaderSystem.cpp(1167): error C2065: 'pssmSetup' : undeclared identifier
1>..\..\..\..\Sources\OGRE\Samples\ShaderSystem\src\ShaderSystem.cpp(1167): error C2227: left of '->calculateSplitPoints' must point to class/struct/union/generic type
1> type is ''unknown-type''
1>..\..\..\..\Sources\OGRE\Samples\ShaderSystem\src\ShaderSystem.cpp(1168): error C2065: 'pssmSetup' : undeclared identifier
1>..\..\..\..\Sources\OGRE\Samples\ShaderSystem\src\ShaderSystem.cpp(1168): error C2227: left of '->setSplitPadding' must point to class/struct/union/generic type
1> type is ''unknown-type''
1>..\..\..\..\Sources\OGRE\Samples\ShaderSystem\src\ShaderSystem.cpp(1169): error C2065: 'pssmSetup' : undeclared identifier
1>..\..\..\..\Sources\OGRE\Samples\ShaderSystem\src\ShaderSystem.cpp(1169): error C2227: left of '->setOptimalAdjustFactor' must point to class/struct/union/generic type
1> type is ''unknown-type''
1>..\..\..\..\Sources\OGRE\Samples\ShaderSystem\src\ShaderSystem.cpp(1170): error C2065: 'pssmSetup' : undeclared identifier
1>..\..\..\..\Sources\OGRE\Samples\ShaderSystem\src\ShaderSystem.cpp(1170): error C2227: left of '->setOptimalAdjustFactor' must point to class/struct/union/generic type
1> type is ''unknown-type''
1>..\..\..\..\Sources\OGRE\Samples\ShaderSystem\src\ShaderSystem.cpp(1171): error C2065: 'pssmSetup' : undeclared identifier
1>..\..\..\..\Sources\OGRE\Samples\ShaderSystem\src\ShaderSystem.cpp(1171): error C2227: left of '->setOptimalAdjustFactor' must point to class/struct/union/generic type
1> type is ''unknown-type''
1>..\..\..\..\Sources\OGRE\Samples\ShaderSystem\src\ShaderSystem.cpp(1178): error C2653: 'PSSMShadowCameraSetup' : is not a class or namespace name
1>..\..\..\..\Sources\OGRE\Samples\ShaderSystem\src\ShaderSystem.cpp(1178): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>..\..\..\..\Sources\OGRE\Samples\ShaderSystem\src\ShaderSystem.cpp(1178): error C2143: syntax error : missing ';' before '&'
1>..\..\..\..\Sources\OGRE\Samples\ShaderSystem\src\ShaderSystem.cpp(1178): error C2065: 'srcSplitPoints' : undeclared identifier
1>..\..\..\..\Sources\OGRE\Samples\ShaderSystem\src\ShaderSystem.cpp(1178): error C2065: 'pssmSetup' : undeclared identifier
1>..\..\..\..\Sources\OGRE\Samples\ShaderSystem\src\ShaderSystem.cpp(1178): error C2227: left of '->getSplitPoints' must point to class/struct/union/generic type
1> type is ''unknown-type''
1>..\..\..\..\Sources\OGRE\Samples\ShaderSystem\src\ShaderSystem.cpp(1181): error C2065: 'srcSplitPoints' : undeclared identifier
1>..\..\..\..\Sources\OGRE\Samples\ShaderSystem\src\ShaderSystem.cpp(1181): error C2228: left of '.size' must have class/struct/union
1> type is ''unknown-type''
1>..\..\..\..\Sources\OGRE\Samples\ShaderSystem\src\ShaderSystem.cpp(1183): error C2065: 'srcSplitPoints' : undeclared identifier
Sample_SSAO
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(147): error C2039: 'setCompositorEnabled' : is not a member of 'Ogre::CompositorManager2'
1> C:\Sources\OGRE\OgreMain\include\Compositor/OgreCompositorManager2.h(94) : see declaration of 'Ogre::CompositorManager2'
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(148): error C2039: 'setCompositorEnabled' : is not a member of 'Ogre::CompositorManager2'
1> C:\Sources\OGRE\OgreMain\include\Compositor/OgreCompositorManager2.h(94) : see declaration of 'Ogre::CompositorManager2'
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(150): error C2039: 'setCompositorEnabled' : is not a member of 'Ogre::CompositorManager2'
1> C:\Sources\OGRE\OgreMain\include\Compositor/OgreCompositorManager2.h(94) : see declaration of 'Ogre::CompositorManager2'
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(151): error C2039: 'removeCompositor' : is not a member of 'Ogre::CompositorManager2'
1> C:\Sources\OGRE\OgreMain\include\Compositor/OgreCompositorManager2.h(94) : see declaration of 'Ogre::CompositorManager2'
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(155): error C2039: 'setCompositorEnabled' : is not a member of 'Ogre::CompositorManager2'
1> C:\Sources\OGRE\OgreMain\include\Compositor/OgreCompositorManager2.h(94) : see declaration of 'Ogre::CompositorManager2'
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(156): error C2039: 'removeCompositor' : is not a member of 'Ogre::CompositorManager2'
1> C:\Sources\OGRE\OgreMain\include\Compositor/OgreCompositorManager2.h(94) : see declaration of 'Ogre::CompositorManager2'
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(161): error C2039: 'setCompositorEnabled' : is not a member of 'Ogre::CompositorManager2'
1> C:\Sources\OGRE\OgreMain\include\Compositor/OgreCompositorManager2.h(94) : see declaration of 'Ogre::CompositorManager2'
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(162): error C2039: 'removeCompositor' : is not a member of 'Ogre::CompositorManager2'
1> C:\Sources\OGRE\OgreMain\include\Compositor/OgreCompositorManager2.h(94) : see declaration of 'Ogre::CompositorManager2'
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(199): error C2039: 'addCompositor' : is not a member of 'Ogre::CompositorManager2'
1> C:\Sources\OGRE\OgreMain\include\Compositor/OgreCompositorManager2.h(94) : see declaration of 'Ogre::CompositorManager2'
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(200): error C2039: 'setCompositorEnabled' : is not a member of 'Ogre::CompositorManager2'
1> C:\Sources\OGRE\OgreMain\include\Compositor/OgreCompositorManager2.h(94) : see declaration of 'Ogre::CompositorManager2'
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(200): error C2065: 'mViewport' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(206): error C2039: 'addCompositor' : is not a member of 'Ogre::CompositorManager2'
1> C:\Sources\OGRE\OgreMain\include\Compositor/OgreCompositorManager2.h(94) : see declaration of 'Ogre::CompositorManager2'
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(206): error C2065: 'mViewport' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(207): error C2039: 'setCompositorEnabled' : is not a member of 'Ogre::CompositorManager2'
1> C:\Sources\OGRE\OgreMain\include\Compositor/OgreCompositorManager2.h(94) : see declaration of 'Ogre::CompositorManager2'
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(207): error C2065: 'mViewport' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(215): error C2039: 'addCompositor' : is not a member of 'Ogre::CompositorManager2'
1> C:\Sources\OGRE\OgreMain\include\Compositor/OgreCompositorManager2.h(94) : see declaration of 'Ogre::CompositorManager2'
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(215): error C2065: 'mViewport' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(216): error C2039: 'setCompositorEnabled' : is not a member of 'Ogre::CompositorManager2'
1> C:\Sources\OGRE\OgreMain\include\Compositor/OgreCompositorManager2.h(94) : see declaration of 'Ogre::CompositorManager2'
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(216): error C2065: 'mViewport' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(221): error C2039: 'setCompositorEnabled' : is not a member of 'Ogre::CompositorManager2'
1> C:\Sources\OGRE\OgreMain\include\Compositor/OgreCompositorManager2.h(94) : see declaration of 'Ogre::CompositorManager2'
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(221): error C2065: 'mViewport' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(222): error C2039: 'setCompositorEnabled' : is not a member of 'Ogre::CompositorManager2'
1> C:\Sources\OGRE\OgreMain\include\Compositor/OgreCompositorManager2.h(94) : see declaration of 'Ogre::CompositorManager2'
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(222): error C2065: 'mViewport' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(429): error C2065: 'mViewport' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(429): error C2227: left of '->setBackgroundColour' must point to class/struct/union/generic type
1> type is ''unknown-type''
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(484): error C2065: 'compositorManager' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(484): error C2227: left of '->setCompositorEnabled' must point to class/struct/union/generic type
1> type is ''unknown-type''
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(484): error C2065: 'mViewport' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(486): error C2065: 'compositorManager' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(486): error C2227: left of '->setCompositorEnabled' must point to class/struct/union/generic type
1> type is ''unknown-type''
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(486): error C2065: 'mViewport' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(595): error C2065: 'compositorManager' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(595): error C2227: left of '->setCompositorEnabled' must point to class/struct/union/generic type
1> type is ''unknown-type''
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(595): error C2065: 'mViewport' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(597): error C2065: 'compositorManager' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(597): error C2227: left of '->setCompositorEnabled' must point to class/struct/union/generic type
1> type is ''unknown-type''
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(597): error C2065: 'mViewport' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(700): error C2065: 'compositorManager' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(700): error C2227: left of '->setCompositorEnabled' must point to class/struct/union/generic type
1> type is ''unknown-type''
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(700): error C2065: 'mViewport' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(701): error C2065: 'compositorManager' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(701): error C2227: left of '->setCompositorEnabled' must point to class/struct/union/generic type
1> type is ''unknown-type''
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(701): error C2065: 'mViewport' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(710): error C2065: 'compositorManager' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(710): error C2227: left of '->addCompositor' must point to class/struct/union/generic type
1> type is ''unknown-type''
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(710): error C2065: 'mViewport' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(711): error C2065: 'compositorManager' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(711): error C2227: left of '->setCompositorEnabled' must point to class/struct/union/generic type
1> type is ''unknown-type''
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(711): error C2065: 'mViewport' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(714): error C2039: 'setPosition' : is not a member of 'Ogre::Light'
1> c:\sources\ogre\ogremain\include\OgreLight.h(70) : see declaration of 'Ogre::Light'
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(720): error C2065: 'compositorManager' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(720): error C2227: left of '->setCompositorEnabled' must point to class/struct/union/generic type
1> type is ''unknown-type''
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(720): error C2065: 'mViewport' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(721): error C2065: 'compositorManager' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(721): error C2227: left of '->removeCompositor' must point to class/struct/union/generic type
1> type is ''unknown-type''
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(721): error C2065: 'mViewport' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(730): error C2065: 'compositorManager' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(730): error C2227: left of '->setCompositorEnabled' must point to class/struct/union/generic type
1> type is ''unknown-type''
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(730): error C2065: 'mViewport' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(802): error C2065: 'compositorManager' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(802): error C2227: left of '->removeCompositor' must point to class/struct/union/generic type
1> type is ''unknown-type''
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(802): error C2065: 'mViewport' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(808): error C2065: 'compositorManager' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(808): error C2227: left of '->addCompositor' must point to class/struct/union/generic type
1> type is ''unknown-type''
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(808): error C2065: 'mViewport' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(809): error C2065: 'compositorManager' : undeclared identifier
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(809): error C2227: left of '->setCompositorEnabled' must point to class/struct/union/generic type
1> type is ''unknown-type''
1>C:\Sources\OGRE\Samples\SSAO\include\SSAO.h(809): error C2065: 'mViewport' : undeclared identifier
Sample_Terrain
1>C:\Sources\OGRE\Samples\Terrain\include\Terrain.h(611): error C2027: use of undefined type 'Ogre::PSSMShadowCameraSetup'
1> C:\Sources\OGRE\Components\Terrain\include\OgreTerrainMaterialGeneratorA.h(37) : see declaration of 'Ogre::PSSMShadowCameraSetup'
1>C:\Sources\OGRE\Samples\Terrain\include\Terrain.h(611): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>C:\Sources\OGRE\Samples\Terrain\include\Terrain.h(611): error C2143: syntax error : missing ';' before '&'
1>C:\Sources\OGRE\Samples\Terrain\include\Terrain.h(611): error C2065: 'splitPointList' : undeclared identifier
1>C:\Sources\OGRE\Samples\Terrain\include\Terrain.h(612): error C2440: 'static_cast' : cannot convert from 'Ogre::ShadowCameraSetup *' to 'Ogre::PSSMShadowCameraSetup *'
1> Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>C:\Sources\OGRE\Samples\Terrain\include\Terrain.h(612): error C2227: left of '->getSplitPoints' must point to class/struct/union/generic type
1>C:\Sources\OGRE\Samples\Terrain\include\Terrain.h(615): error C2065: 'splitPointList' : undeclared identifier
1>C:\Sources\OGRE\Samples\Terrain\include\Terrain.h(695): error C2440: 'static_cast' : cannot convert from 'Ogre::ShadowCameraSetup *' to 'Ogre::PSSMShadowCameraSetup *'
1> Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
[reporter="portaloffreedom", created="Sun, 19 Jul 2015 15:54:07 +0200"]
my project folder path contains a double +, which breaks the buid system
This is the commands that I runned:
$ mkdir build && cd build
$ cmake ..
[...]
RegularExpression::compile(): Nested *?+.
RegularExpression::compile(): Error in compile.
CMake Error at OgreMain/CMakeLists.txt:443 (string):
string sub-command REGEX, mode REPLACE failed to compile regex
"((/home/matteo/progetti/c+/ogre/OgreMain|/home/matteo/progetti/c+/ogre/build)/)?(include|src)/".
[...]
โ Configuring incomplete, errors occurred!
See also "/home/matteo/progetti/c++/ogre/build/CMakeFiles/CMakeOutput.log".
See also "/home/matteo/progetti/c++/ogre/build/CMakeFiles/CMakeError.log".
Changing the path from /home/matteo/progetti/c++/ogre/ to /home/matteo/progetti/cpp/ogre/ fixes the problem.
I think anyway that this issue should be solved as I suppose having only one * or one + in the path could break the build in a totally not understandable way.
[reporter="al2950", created="Sun, 9 Nov 2014 23:10:45 +0100"]
Currently SceneDepth only works if there is a shadow node in the pass. Furthermore SceneDepth uses the ShadowSceneDepth code path which is a little confusing when first looking at it.
Suggest implementing a separate GetSceneDepth which works with the current set rendering camera instead of querying the pass shadow node. The scene depth should be the intersection of the near/far planes with the current scene AABB. However I am not sure where these results should be cached (if at all), perhaps the camera, sceneManager, or current compositor node?
Hi,
I'm using Ogre 2.0 for mission critical systems.
SEGV occurred when rendering was looping for a long time and no operation.
***** environment ****
OS : RHEL 6 Compatible
GPU : NVIDIA Quadro M5000
RenderSystem : OpenGL 2.x
`Drawing on Render Window created with Java (SWT + GTK2)`
commit : 349b4dcd8f6e210f6e9da185286128cd73740d40
**********************
Details are shown below.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
(gdb) bt
#0 0x000000359f8328e5 in raise () from /lib64/libc.so.6
#1 0x000000359f8340c5 in abort () from /lib64/libc.so.6
#2 0x00007f71812a9795 in os::abort(bool) () from /usr/java/jdk1.8.0_66/jre/lib/amd64/server/libjvm.so
#3 0x00007f7181447e23 in VMError::report_and_die() () from /usr/java/jdk1.8.0_66/jre/lib/amd64/server/libjvm.so
#4 0x00007f71812aefbf in JVM_handle_linux_signal () from /usr/java/jdk1.8.0_66/jre/lib/amd64/server/libjvm.so
#5 0x00007f71812a5753 in signalHandler(int, siginfo*, void*) () from /usr/java/jdk1.8.0_66/jre/lib/amd64/server/libjvm.so
#6 <signal handler called>
#7 begin (this=0x0) at /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_vector.h:435
#8 Ogre::ObjectMemoryManager::getNumRenderQueues (this=0x0)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Math/Array/OgreObjectMemoryManager.cpp:177
#9 0x00007f67989fde63 in Ogre::SceneManager::updateAllLodsThread (this=0x7f6756803bc0, request=..., threadIdx=140081810357872)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:2159
#10 0x00007f67568085f8 in ?? ()
#11 0x00007f6756808640 in ?? ()
#12 0x00007f6756808618 in ?? ()
#13 0x00007f67989ff0fe in Ogre::SceneManager::_updateWorkerThread (this=0x7f67568b6a80, threadHandle=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5473
#14 0x00007f67989ff1cd in updateWorkerThread (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5426
#15 Ogre::updateWorkerThread_internal (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5428
#16 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#17 0x000000359f8e894d in clone () from /lib64/libc.so.6
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
(gdb) frame 8
#8 Ogre::ObjectMemoryManager::getNumRenderQueues (this=0x0)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Math/Array/OgreObjectMemoryManager.cpp:177
177 ArrayMemoryManagerVec::const_iterator begin= mMemoryManagers.begin();
(gdb) print *this
Cannot access memory at address 0x0
(gdb)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
173 //-----------------------------------------------------------------------------------
174 size_t ObjectMemoryManager::getNumRenderQueues() const
175 {
176 size_t retVal = -1;
177 ArrayMemoryManagerVec::const_iterator begin= mMemoryManagers.begin(); //#<--
178 ArrayMemoryManagerVec::const_iterator itor = mMemoryManagers.begin();
179 ArrayMemoryManagerVec::const_iterator end = mMemoryManagers.end();
180
181 while( itor != end )
182 {
183 if( itor->getUsedMemory() )
184 retVal = itor - begin;
185 ++itor;
186 }
187
188 return retVal + 1;
189 }
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
(gdb) up
#9 0x00007f67989fde63 in Ogre::SceneManager::updateAllLodsThread (this=0x7f6756803bc0, request=..., threadIdx=140081810357872)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:2159
2159 const size_t numRenderQueues = memoryManager->getNumRenderQueues();
========================================================================================================================
2147 //-----------------------------------------------------------------------
2148 void SceneManager::updateAllLodsThread( const UpdateLodRequest &request, size_t threadIdx )
2149 {
2150 LodStrategy *lodStrategy = LodStrategyManager::getSingleton().getDefaultStrategy();
2151
2152 const Camera *lodCamera = request.lodCamera;
2153 ObjectMemoryManagerVec::const_iterator it = request.objectMemManager->begin();
2154 ObjectMemoryManagerVec::const_iterator en = request.objectMemManager->end();
2155
2156 while( it != en )
2157 {
2158 ObjectMemoryManager *memoryManager = *it;
2159 const size_t numRenderQueues = memoryManager->getNumRenderQueues(); //#<--
2160
2161 size_t firstRq = std::min<size_t>( request.firstRq, numRenderQueues );
2162 size_t lastRq = std::min<size_t>( request.lastRq, numRenderQueues );
2163
2164 for( size_t i=firstRq; i<lastRq; ++i )
2165 {
2166 ObjectData objData;
2167 const size_t totalObjs = memoryManager->getFirstObjectData( objData, i );
2168
2169 //Distribute the work evenly across all threads (not perfect), taking into
2170 //account we need to distribute in multiples of ARRAY_PACKED_REALS
2171 size_t numObjs = ( totalObjs + (mNumWorkerThreads-1) ) / mNumWorkerThreads;
2172 numObjs = ( (numObjs + ARRAY_PACKED_REALS - 1) / ARRAY_PACKED_REALS ) *
2173 ARRAY_PACKED_REALS;
2174
2175 const size_t toAdvance = std::min( threadIdx * numObjs, totalObjs );
2176
2177 //Prevent going out of bounds (usually in the last threadIdx, or
2178 //when there are less entities than ARRAY_PACKED_REALS
2179 numObjs = std::min( numObjs, totalObjs - toAdvance );
2180 objData.advancePack( toAdvance / ARRAY_PACKED_REALS );
2181
2182 lodStrategy->lodUpdateImpl( numObjs, objData, lodCamera, request.lodBias );
2183 }
2184
2185 ++it;
2186 }
2187 }
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
(gdb) print *request.objectMemManager
$42 = std::vector of length 2, capacity 2 = {0x7f6756803d08, 0x7f6756803db8}
Two elements..
(gdb) print *request.objectMemManager._M_impl._M_start[0]
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
$39 = {<Ogre::ArrayMemoryManager::RebaseListener> = {_vptr.RebaseListener = 0x7f6798fc89b0}, mMemoryManagers =
std::vector of length 51, capacity 64 = {{<Ogre::ArrayMemoryManager> = {_vptr.ArrayMemoryManager = 0x7f6798fc8cc0, mMemoryPools =
std::vector of length 10, capacity 10 = {0x7f6756822e00 "\230|\201Vg\177", 0x7f67568231e0 "\270%\202Vg\177", 0x7f67568235e0 "",
0x7f6756824100 "", 0x7f6756824c40 "", 0x7f6756824e60 "", 0x7f6756825080 "\377\377\177\177", 0x7f67568252a0 "\377\377\377\377",
0x7f67568254c0 "", 0x7f67568256e0 "\377\377\377\377"}, mElementsMemSizes = 0x7f6798ce0d60, mCleanupRoutines = 0x7f6798fc8c60,
mTotalMemoryMultiplier = 88, mUsedMemory = 1, mMaxMemory = 116, mMaxHardLimit = 18446744073709551612, mCleanupThreshold = 100,
mAvailableSlots = std::vector of length 0, capacity 0, mRebaseListener = 0x7f6756803d08, mLevel = 0, mManagerType =
Ogre::ArrayMemoryManager::ObjectDataType, static MAX_MEMORY_SLOTS = 18446744073709551595}, mDummyNode = 0x7f67567feab8, mDummyObject =
0x7f6756808a18, static ElementsMemSize = {8, 8, 24, 24, 4, 4, 4, 4, 4, 4}, static ObjCleanupRoutines = {
0x7f6798c848a0 <Ogre::cleanerFlat(char*, size_t, char*, size_t, size_t, size_t, size_t)>,
0x7f6798c848a0 <Ogre::cleanerFlat(char*, size_t, char*, size_t, size_t, size_t, size_t)>,
0x7f6798c84690 <Ogre::cleanerArrayAabb(char*, size_t, char*, size_t, size_t, size_t, size_t)>,
0x7f6798c84690 <Ogre::cleanerArrayAabb(char*, size_t, char*, size_t, size_t, size_t, size_t)>,
0x7f6798c848a0 <Ogre::cleanerFlat(char*, size_t, char*, size_t, size_t, size_t, size_t)>,
0x7f6798c848a0 <Ogre::cleanerFlat(char*, size_t, char*, size_t, size_t, size_t, size_t)>,
0x7f6798c848a0 <Ogre::cleanerFlat(char*, size_t, char*, size_t, size_t, size_t, size_t)>,
0x7f6798c848a0 <Ogre::cleanerFlat(char*, size_t, char*, size_t, size_t, size_t, size_t)>,
0x7f6798c848a0 <Ogre::cleanerFlat(char*, size_t, char*, size_t, size_t, size_t, size_t)>,
0x7f6798c848a0 <Ogre::cleanerFlat(char*, size_t, char*, size_t, size_t, size_t, size_t)>}}, {<Ogre::ArrayMemoryManager> = {
_vptr.ArrayMemoryManager = 0x7f6798fc8cc0, mMemoryPools = std::vector of length 10, capacity 10 = {
0x7f675682fa60 "\270\352\177Vg\177", 0x7f675682fe40 "\030\212\200Vg\177", 0x7f6756830240 "", 0x7f6756830d60 "", 0x7f67568318a0 "",
0x7f6756831ac0 "", 0x7f6756831ce0 "", 0x7f6756831f00 "", 0x7f6756832120 "", 0x7f6756832340 ""}, mElementsMemSizes = 0x7f6798ce0d60,
mCleanupRoutines = 0x7f6798fc8c60, mTotalMemoryMultiplier = 88, mUsedMemory = 0, mMaxMemory = 116, mMaxHardLimit =
18446744073709551612, mCleanupThreshold = 100, mAvailableSlots = std::vector of length 0, capacity 0, mRebaseListener = 0x7f6756803d08,
mLevel = 1, mManagerType = Ogre::ArrayMemoryManager::ObjectDataType, static MAX_MEMORY_SLOTS = 18446744073709551595}, mDummyNode =
0x7f67567feab8, mDummyObject = 0x7f6756808a18, static ElementsMemSize = <same as static member of an already seen type>,
static ObjCleanupRoutines = <same as static member of an already seen type>}, {<Ogre::ArrayMemoryManager> = {_vptr.ArrayMemoryManager =
0x7f6798fc8cc0, mMemoryPools = std::vector of length 10, capacity 10 = {0x7f6756832960 "\270\352\177Vg\177",
0x7f6756832d60 "\030\212\200Vg\177", 0x7f6756833140 "", 0x7f6756833c80 "", 0x7f67568347a0 "", 0x7f67568349c0 "", 0x7f6756834be0 "",
0x7f6756834e00 "", 0x7f6756835020 "", 0x7f6756835240 ""}, mElementsMemSizes = 0x7f6798ce0d60, mCleanupRoutines = 0x7f6798fc8c60,
mTotalMemoryMultiplier = 88, mUsedMemory = 0, mMaxMemory = 116, mMaxHardLimit = 18446744073709551612, mCleanupThreshold = 100,
mAvailableSlots = std::vector of length 0, capacity 0, mRebaseListener = 0x7f6756803d08, mLevel = 2, mManagerType =
Ogre::ArrayMemoryManager::ObjectDataType, static MAX_MEMORY_SLOTS = 18446744073709551595}, mDummyNode = 0x7f67567feab8, mDummyObject =
0x7f6756808a18, static ElementsMemSize = <same as static member of an already seen type>,
static ObjCleanupRoutines = <same as static member of an already seen type>}, {<Ogre::ArrayMemoryManager> = {_vptr.ArrayMemoryManager =
0x7f6798fc8cc0, mMemoryPools = std::vector of length 10, capacity 10 = {0x7f6756835460 "\270\352\177Vg\177",
0x7f6756835860 "\030\212\200Vg\177", 0x7f6756835c40 "", 0x7f6756836780 "", 0x7f67568372a0 "", 0x7f67568374c0 "", 0x7f67568376e0 "",
0x7f6756837900 "", 0x7f6756837b20 "", 0x7f6756837d40 ""}, mElementsMemSizes = 0x7f6798ce0d60, mCleanupRoutines = 0x7f6798fc8c60,
mTotalMemoryMultiplier = 88, mUsedMemory = 0, mMaxMemory = 116, mMaxHardLimit = 18446744073709551612, mCleanupThreshold = 100,
mAvailableSlots = std::vector of length 0, capacity 0, mRebaseListener = 0x7f6756803d08, mLevel = 3, mManagerType =
Ogre::ArrayMemoryManager::ObjectDataType, static MAX_MEMORY_SLOTS = 18446744073709551595}, mDummyNode = 0x7f67567feab8, mDummyObject =
0x7f6756808a18, static ElementsMemSize = <same as static member of an already seen type>,
static ObjCleanupRoutines = <same as static member of an already seen type>}, {<Ogre::ArrayMemoryManager> = {_vptr.ArrayMemoryManager =
0x7f6798fc8cc0, mMemoryPools = std::vector of length 10, capacity 10 = {0x7f6756838780 "\270\352\177Vg\177",
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
(gdb) print *request.objectMemManager._M_impl._M_start[1]
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
$44 = {<Ogre::ArrayMemoryManager::RebaseListener> = {_vptr.RebaseListener = 0x7f6798fc89b0}, mMemoryManagers =
std::vector of length 0, capacity 0, mTotalObjects = 0, mDummyNode = 0x7f6756808d78, mDummyTransformPtrs = {mIndex = 0 '\000', mParents =
0x0, mOwner = 0x0, mPosition = 0x0, mOrientation = 0x0, mScale = 0x0, mDerivedPosition = 0x7f6755edd9e0, mDerivedOrientation =
0x7f6755ddd7a0, mDerivedScale = 0x7f6755edda60, mDerivedTransform = 0x7f6756808c60, mInheritOrientation = 0x0, mInheritScale = 0x0},
mDummyObject = 0x7f6756808f88, mMemoryManagerType = Ogre::SCENE_STATIC, mTwinMemoryManager = 0x7f6756803d08}
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Looks like the iterator has been destroyed.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
#10 0x00007f67568085f8 in ?? ()
#11 0x00007f6756808640 in ?? ()
#12 0x00007f6756808618 in ?? ()
#13 0x00007f67989ff0fe in Ogre::SceneManager::_updateWorkerThread (this=0x7f67568b6a80, threadHandle=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5473
#14 0x00007f67989ff1cd in updateWorkerThread (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5426
#15 Ogre::updateWorkerThread_internal (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5428
#16 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#17 0x000000359f8e894d in clone () from /lib64/libc.so.6
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Iterator seems to be provided by "Ogre::SceneManager::mEntitiesMemoryManagerCulledList", so I checked all threads.
(java thread is omitted)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
(gdb) thread apply all bt
Thread 397 (Thread 0x7f7181c9b700 (LWP 14620)):
#0 0x000000359f8df293 in poll () from /lib64/libc.so.6
#1 0x00007f68f179a8c8 in Java_org_eclipse_swt_internal_gtk_OS_Call(__complex __complex int0_t) ()
from /home/teeepesasys/.swt/lib/linux/x86_64/libswt-pi-gtk-4629.so
#2 0x00007f718354ee4c in ?? ()
#3 0x00007f6efa40f868 in ?? ()
#4 0x00007f690e24d208 in ?? ()
#5 0x00007f6efaa398b8 in ?? ()
#6 0x00007f692d638120 in ?? ()
#7 0x00007f692d6380e8 in ?? ()
#8 0x00007f690e7f78c8 in ?? ()
#9 0x00007f690e7f78c8 in ?? ()
#10 0x00007fffa8705814 in ?? ()
#11 0x00007f7185578b18 in ?? ()
#12 0x0000000000000000 in ?? ()
Thread 376 (Thread 0x7f674d639700 (LWP 21501)):
#0 0x00000035a000b43c in pthread_cond_wait@@GLIBC_2.3.2 ()
from /lib64/libpthread.so.0
#1 0x00007f6798c93ab9 in boost::condition_variable_any::wait<boost::unique_lock<boost::recursive_mutex> > (this=0x7f67567e3880, m=...)
at /usr/local/boost_1_58_0/include/boost/thread/pthread/condition_variable.hpp:184
#2 0x00007f6798c9258f in Ogre::DefaultWorkQueue::waitForNextRequest (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:157
#3 0x00007f6798c92324 in Ogre::DefaultWorkQueue::_threadMain (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:185
#4 0x00007f679863ddf4 in thread_proxy ()
from /home/teeepesa/ANMDK/prg/cur/ap/lib/nativelibs/boost_1_58_0/lib/libboost_thread.so.1.58.0
#5 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#6 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 375 (Thread 0x7f674e03a700 (LWP 21500)):
#0 0x00000035a000b43c in pthread_cond_wait@@GLIBC_2.3.2 ()
from /lib64/libpthread.so.0
#1 0x00007f6798c93ab9 in boost::condition_variable_any::wait<boost::unique_lock<boost::recursive_mutex> > (this=0x7f67567e3880, m=...)
at /usr/local/boost_1_58_0/include/boost/thread/pthread/condition_variable.hpp:184
#2 0x00007f6798c9258f in Ogre::DefaultWorkQueue::waitForNextRequest (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:157
#3 0x00007f6798c92324 in Ogre::DefaultWorkQueue::_threadMain (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:185
#4 0x00007f679863ddf4 in thread_proxy ()
from /home/teeepesa/ANMDK/prg/cur/ap/lib/nativelibs/boost_1_58_0/lib/libboost_thread.so.1.58.0
#5 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#6 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 374 (Thread 0x7f675123f700 (LWP 21495)):
#0 0x00000035a000b43c in pthread_cond_wait@@GLIBC_2.3.2 ()
from /lib64/libpthread.so.0
#1 0x00007f6798c93ab9 in boost::condition_variable_any::wait<boost::unique_lock<boost::recursive_mutex> > (this=0x7f67567e3880, m=...)
at /usr/local/boost_1_58_0/include/boost/thread/pthread/condition_variable.hpp:184
#2 0x00007f6798c9258f in Ogre::DefaultWorkQueue::waitForNextRequest (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:157
#3 0x00007f6798c92324 in Ogre::DefaultWorkQueue::_threadMain (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:185
#4 0x00007f679863ddf4 in thread_proxy ()
from /home/teeepesa/ANMDK/prg/cur/ap/lib/nativelibs/boost_1_58_0/lib/libboost_thread.so.1.58.0
#5 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#6 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 367 (Thread 0x7f6753a43700 (LWP 21490)):
#0 0x00000035a000b43c in pthread_cond_wait@@GLIBC_2.3.2 ()
from /lib64/libpthread.so.0
#1 0x00007f6798c93ab9 in boost::condition_variable_any::wait<boost::unique_lock<boost::recursive_mutex> > (this=0x7f67567e3880, m=...)
at /usr/local/boost_1_58_0/include/boost/thread/pthread/condition_variable.hpp:184
#2 0x00007f6798c9258f in Ogre::DefaultWorkQueue::waitForNextRequest (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:157
#3 0x00007f6798c92324 in Ogre::DefaultWorkQueue::_threadMain (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:185
#4 0x00007f679863ddf4 in thread_proxy ()
from /home/teeepesa/ANMDK/prg/cur/ap/lib/nativelibs/boost_1_58_0/lib/libboost_thread.so.1.58.0
#5 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#6 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 362 (Thread 0x7f674c237700 (LWP 21504)):
#0 0x00000035a000b43c in pthread_cond_wait@@GLIBC_2.3.2 ()
from /lib64/libpthread.so.0
#1 0x00007f6798c93ab9 in boost::condition_variable_any::wait<boost::unique_lock<boost::recursive_mutex> > (this=0x7f67567e3880, m=...)
at /usr/local/boost_1_58_0/include/boost/thread/pthread/condition_variable.hpp:184
#2 0x00007f6798c9258f in Ogre::DefaultWorkQueue::waitForNextRequest (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:157
#3 0x00007f6798c92324 in Ogre::DefaultWorkQueue::_threadMain (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:185
#4 0x00007f679863ddf4 in thread_proxy ()
from /home/teeepesa/ANMDK/prg/cur/ap/lib/nativelibs/boost_1_58_0/lib/libboost_thread.so.1.58.0
#5 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#6 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 361 (Thread 0x7f674f43c700 (LWP 21498)):
#0 0x00000035a000b43c in pthread_cond_wait@@GLIBC_2.3.2 ()
from /lib64/libpthread.so.0
#1 0x00007f6798c93ab9 in boost::condition_variable_any::wait<boost::unique_lock<boost::recursive_mutex> > (this=0x7f67567e3880, m=...)
at /usr/local/boost_1_58_0/include/boost/thread/pthread/condition_variable.hpp:184
#2 0x00007f6798c9258f in Ogre::DefaultWorkQueue::waitForNextRequest (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:157
#3 0x00007f6798c92324 in Ogre::DefaultWorkQueue::_threadMain (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:185
#4 0x00007f679863ddf4 in thread_proxy ()
from /home/teeepesa/ANMDK/prg/cur/ap/lib/nativelibs/boost_1_58_0/lib/libboost_thread.so.1.58.0
#5 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#6 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 348 (Thread 0x7f674b836700 (LWP 21505)):
#0 0x00000035a000b43c in pthread_cond_wait@@GLIBC_2.3.2 ()
from /lib64/libpthread.so.0
#1 0x00007f6798c93ab9 in boost::condition_variable_any::wait<boost::unique_lock<boost::recursive_mutex> > (this=0x7f67567e3880, m=...)
at /usr/local/boost_1_58_0/include/boost/thread/pthread/condition_variable.hpp:184
#2 0x00007f6798c9258f in Ogre::DefaultWorkQueue::waitForNextRequest (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:157
#3 0x00007f6798c92324 in Ogre::DefaultWorkQueue::_threadMain (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:185
#4 0x00007f679863ddf4 in thread_proxy ()
from /home/teeepesa/ANMDK/prg/cur/ap/lib/nativelibs/boost_1_58_0/lib/libboost_thread.so.1.58.0
#5 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#6 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 347 (Thread 0x7f675083e700 (LWP 21496)):
#0 0x00000035a000b43c in pthread_cond_wait@@GLIBC_2.3.2 ()
from /lib64/libpthread.so.0
#1 0x00007f6798c93ab9 in boost::condition_variable_any::wait<boost::unique_lock<boost::recursive_mutex> > (this=0x7f67567e3880, m=...)
at /usr/local/boost_1_58_0/include/boost/thread/pthread/condition_variable.hpp:184
#2 0x00007f6798c9258f in Ogre::DefaultWorkQueue::waitForNextRequest (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:157
#3 0x00007f6798c92324 in Ogre::DefaultWorkQueue::_threadMain (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:185
#4 0x00007f679863ddf4 in thread_proxy ()
from /home/teeepesa/ANMDK/prg/cur/ap/lib/nativelibs/boost_1_58_0/lib/libboost_thread.so.1.58.0
#5 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#6 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 345 (Thread 0x7f674ea3b700 (LWP 21499)):
#0 0x00000035a000b43c in pthread_cond_wait@@GLIBC_2.3.2 ()
from /lib64/libpthread.so.0
#1 0x00007f6798c93ab9 in boost::condition_variable_any::wait<boost::unique_lock<boost::recursive_mutex> > (this=0x7f67567e3880, m=...)
at /usr/local/boost_1_58_0/include/boost/thread/pthread/condition_variable.hpp:184
#2 0x00007f6798c9258f in Ogre::DefaultWorkQueue::waitForNextRequest (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:157
#3 0x00007f6798c92324 in Ogre::DefaultWorkQueue::_threadMain (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:185
#4 0x00007f679863ddf4 in thread_proxy ()
from /home/teeepesa/ANMDK/prg/cur/ap/lib/nativelibs/boost_1_58_0/lib/libboost_thread.so.1.58.0
#5 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#6 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 336 (Thread 0x7f679b8f8700 (LWP 20711)):
#0 0x00000035a000c2cc in pthread_barrier_wait () from /lib64/libpthread.so.0
#1 0x00007f67989f93a2 in Ogre::SceneManager::updateAllLods (this=
0x7f6756803bc0, lodCamera=<value optimized out>,
lodBias=<value optimized out>, firstRq=<value optimized out>,
lastRq=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:2199
#2 0x00007f6798c7b1f6 in Ogre::CompositorPassScene::execute (this=
0x7f6755689ad8, lodCamera=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Compositor/Pass/PassScene/OgreCompositorPassScene.cpp:130
#3 0x00007f6798c709e0 in Ogre::CompositorNode::_update (this=0x7f67567f8198,
lodCamera=0x0, sceneManager=0x7f6756803bc0)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Compositor/OgreCompositorNode.cpp:462
#4 0x00007f6798c65632 in Ogre::CompositorWorkspace::_update (this=
0x7f67568023d8)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Compositor/OgreCompositorWorkspace.cpp:519
#5 0x00007f6798c6754d in Ogre::CompositorManager2::_update (this=
0x7f67567f5308)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Compositor/OgreCompositorManager2.cpp:543
#6 0x00007f67989e0db7 in Ogre::Root::_updateAllRenderTargets (this=
0x7f67567dd4a8)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreRoot.cpp:1470
#7 0x00007f67989e0f35 in Ogre::Root::renderOneFrame (this=0x7f67567dd4a8)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreRoot.cpp:1003
#8 0x00007f6756f81f23 in ?? ()
#9 0x00007f687c7bd000 in ?? ()
#10 0x00007f679b8f7450 in ?? ()
#11 0x00007f679b8f74a0 in ?? ()
#12 0x00007f687c7bd1f8 in ?? ()
#13 0x00007f679b8f74f0 in ?? ()
#14 0x0000000000000000 in ?? ()
Thread 332 (Thread 0x7f6754e45700 (LWP 21488)):
#0 0x00000035a000b43c in pthread_cond_wait@@GLIBC_2.3.2 ()
from /lib64/libpthread.so.0
#1 0x00007f6798c93ab9 in boost::condition_variable_any::wait<boost::unique_lock<boost::recursive_mutex> > (this=0x7f67567e3880, m=...)
at /usr/local/boost_1_58_0/include/boost/thread/pthread/condition_variable.hpp:184
#2 0x00007f6798c9258f in Ogre::DefaultWorkQueue::waitForNextRequest (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:157
#3 0x00007f6798c92324 in Ogre::DefaultWorkQueue::_threadMain (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:185
#4 0x00007f679863ddf4 in thread_proxy ()
from /home/teeepesa/ANMDK/prg/cur/ap/lib/nativelibs/boost_1_58_0/lib/libboost_thread.so.1.58.0
#5 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#6 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 322 (Thread 0x7f6751c40700 (LWP 21494)):
#0 0x00000035a000b43c in pthread_cond_wait@@GLIBC_2.3.2 ()
from /lib64/libpthread.so.0
#1 0x00007f6798c93ab9 in boost::condition_variable_any::wait<boost::unique_lock<boost::recursive_mutex> > (this=0x7f67567e3880, m=...)
at /usr/local/boost_1_58_0/include/boost/thread/pthread/condition_variable.hpp:184
#2 0x00007f6798c9258f in Ogre::DefaultWorkQueue::waitForNextRequest (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:157
#3 0x00007f6798c92324 in Ogre::DefaultWorkQueue::_threadMain (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:185
#4 0x00007f679863ddf4 in thread_proxy ()
from /home/teeepesa/ANMDK/prg/cur/ap/lib/nativelibs/boost_1_58_0/lib/libboost_thread.so.1.58.0
#5 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#6 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 307 (Thread 0x7f674ad35700 (LWP 21533)):
#0 0x00000035a000c2cc in pthread_barrier_wait () from /lib64/libpthread.so.0
#1 0x00007f67989ff10a in Ogre::SceneManager::_updateWorkerThread (this=
0x7f6756803bc0, threadHandle=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5493
#2 0x00007f67989ff1cd in updateWorkerThread (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5426
#3 Ogre::updateWorkerThread_internal (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5428
#4 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#5 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 256 (Thread 0x7f6752641700 (LWP 21493)):
#0 0x00000035a000b43c in pthread_cond_wait@@GLIBC_2.3.2 ()
from /lib64/libpthread.so.0
#1 0x00007f6798c93ab9 in boost::condition_variable_any::wait<boost::unique_lock<boost::recursive_mutex> > (this=0x7f67567e3880, m=...)
at /usr/local/boost_1_58_0/include/boost/thread/pthread/condition_variable.hpp:184
#2 0x00007f6798c9258f in Ogre::DefaultWorkQueue::waitForNextRequest (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:157
#3 0x00007f6798c92324 in Ogre::DefaultWorkQueue::_threadMain (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:185
#4 0x00007f679863ddf4 in thread_proxy ()
from /home/teeepesa/ANMDK/prg/cur/ap/lib/nativelibs/boost_1_58_0/lib/libboost_thread.so.1.58.0
#5 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#6 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 252 (Thread 0x7f6754444700 (LWP 21489)):
#0 0x00000035a000b43c in pthread_cond_wait@@GLIBC_2.3.2 ()
from /lib64/libpthread.so.0
#1 0x00007f6798c93ab9 in boost::condition_variable_any::wait<boost::unique_lock<boost::recursive_mutex> > (this=0x7f67567e3880, m=...)
at /usr/local/boost_1_58_0/include/boost/thread/pthread/condition_variable.hpp:184
#2 0x00007f6798c9258f in Ogre::DefaultWorkQueue::waitForNextRequest (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:157
#3 0x00007f6798c92324 in Ogre::DefaultWorkQueue::_threadMain (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:185
#4 0x00007f679863ddf4 in thread_proxy ()
from /home/teeepesa/ANMDK/prg/cur/ap/lib/nativelibs/boost_1_58_0/lib/libboost_thread.so.1.58.0
#5 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#6 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 137 (Thread 0x7f674cc38700 (LWP 21503)):
#0 0x00000035a000b43c in pthread_cond_wait@@GLIBC_2.3.2 ()
from /lib64/libpthread.so.0
#1 0x00007f6798c93ab9 in boost::condition_variable_any::wait<boost::unique_lock<boost::recursive_mutex> > (this=0x7f67567e3880, m=...)
at /usr/local/boost_1_58_0/include/boost/thread/pthread/condition_variable.hpp:184
#2 0x00007f6798c9258f in Ogre::DefaultWorkQueue::waitForNextRequest (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:157
#3 0x00007f6798c92324 in Ogre::DefaultWorkQueue::_threadMain (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:185
#4 0x00007f679863ddf4 in thread_proxy ()
from /home/teeepesa/ANMDK/prg/cur/ap/lib/nativelibs/boost_1_58_0/lib/libboost_thread.so.1.58.0
#5 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#6 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 121 (Thread 0x7f674fe3d700 (LWP 21497)):
#0 0x00000035a000b43c in pthread_cond_wait@@GLIBC_2.3.2 ()
from /lib64/libpthread.so.0
#1 0x00007f6798c93ab9 in boost::condition_variable_any::wait<boost::unique_lock<boost::recursive_mutex> > (this=0x7f67567e3880, m=...)
at /usr/local/boost_1_58_0/include/boost/thread/pthread/condition_variable.hpp:184
#2 0x00007f6798c9258f in Ogre::DefaultWorkQueue::waitForNextRequest (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:157
#3 0x00007f6798c92324 in Ogre::DefaultWorkQueue::_threadMain (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:185
#4 0x00007f679863ddf4 in thread_proxy ()
from /home/teeepesa/ANMDK/prg/cur/ap/lib/nativelibs/boost_1_58_0/lib/libboost_thread.so.1.58.0
#5 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#6 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 105 (Thread 0x7f6753042700 (LWP 21491)):
#0 0x00000035a000b43c in pthread_cond_wait@@GLIBC_2.3.2 ()
from /lib64/libpthread.so.0
#1 0x00007f6798c93ab9 in boost::condition_variable_any::wait<boost::unique_lock<boost::recursive_mutex> > (this=0x7f67567e3880, m=...)
at /usr/local/boost_1_58_0/include/boost/thread/pthread/condition_variable.hpp:184
#2 0x00007f6798c9258f in Ogre::DefaultWorkQueue::waitForNextRequest (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:157
#3 0x00007f6798c92324 in Ogre::DefaultWorkQueue::_threadMain (this=
0x7f67567e3398)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Threading/OgreDefaultWorkQueueStandard.cpp:185
#4 0x00007f679863ddf4 in thread_proxy ()
from /home/teeepesa/ANMDK/prg/cur/ap/lib/nativelibs/boost_1_58_0/lib/libboost_thread.so.1.58.0
#5 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#6 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 23 (Thread 0x7f6741726700 (LWP 21552)):
#0 0x00000035a000c2cc in pthread_barrier_wait () from /lib64/libpthread.so.0
#1 0x00007f67989ff10a in Ogre::SceneManager::_updateWorkerThread (this=
0x7f6756803bc0, threadHandle=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5493
#2 0x00007f67989ff1cd in updateWorkerThread (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5426
#3 Ogre::updateWorkerThread_internal (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5428
#4 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#5 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 19 (Thread 0x7f6742127700 (LWP 21551)):
#0 0x00000035a000c2cc in pthread_barrier_wait () from /lib64/libpthread.so.0
#1 0x00007f67989ff10a in Ogre::SceneManager::_updateWorkerThread (this=
0x7f6756803bc0, threadHandle=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5493
#2 0x00007f67989ff1cd in updateWorkerThread (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5426
#3 Ogre::updateWorkerThread_internal (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5428
#4 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#5 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 15 (Thread 0x7f6747b30700 (LWP 21540)):
#0 0x00000035a000c2cc in pthread_barrier_wait () from /lib64/libpthread.so.0
#1 0x00007f67989ff10a in Ogre::SceneManager::_updateWorkerThread (this=
0x7f6756803bc0, threadHandle=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5493
#2 0x00007f67989ff1cd in updateWorkerThread (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5426
#3 Ogre::updateWorkerThread_internal (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5428
#4 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#5 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 14 (Thread 0x7f6743f2a700 (LWP 21546)):
#0 0x00000035a000c2cc in pthread_barrier_wait () from /lib64/libpthread.so.0
#1 0x00007f67989ff10a in Ogre::SceneManager::_updateWorkerThread (this=
0x7f6756803bc0, threadHandle=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5493
#2 0x00007f67989ff1cd in updateWorkerThread (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5426
#3 Ogre::updateWorkerThread_internal (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5428
#4 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#5 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 12 (Thread 0x7f674492b700 (LWP 21545)):
#0 0x00000035a000c2cc in pthread_barrier_wait () from /lib64/libpthread.so.0
#1 0x00007f67989ff10a in Ogre::SceneManager::_updateWorkerThread (this=
0x7f6756803bc0, threadHandle=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5493
#2 0x00007f67989ff1cd in updateWorkerThread (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5426
#3 Ogre::updateWorkerThread_internal (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5428
#4 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#5 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 11 (Thread 0x7f674672e700 (LWP 21542)):
#0 0x00000035a000c2cc in pthread_barrier_wait () from /lib64/libpthread.so.0
#1 0x00007f67989ff10a in Ogre::SceneManager::_updateWorkerThread (this=
0x7f6756803bc0, threadHandle=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5493
#2 0x00007f67989ff1cd in updateWorkerThread (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5426
#3 Ogre::updateWorkerThread_internal (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5428
#4 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#5 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 10 (Thread 0x7f674532c700 (LWP 21544)):
#0 0x00000035a000c2cc in pthread_barrier_wait () from /lib64/libpthread.so.0
#1 0x00007f67989ff10a in Ogre::SceneManager::_updateWorkerThread (this=
0x7f6756803bc0, threadHandle=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5493
#2 0x00007f67989ff1cd in updateWorkerThread (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5426
#3 Ogre::updateWorkerThread_internal (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5428
#4 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#5 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 9 (Thread 0x7f6749933700 (LWP 21537)):
#0 0x00000035a000c2cc in pthread_barrier_wait () from /lib64/libpthread.so.0
#1 0x00007f67989ff10a in Ogre::SceneManager::_updateWorkerThread (this=
0x7f6756803bc0, threadHandle=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5493
#2 0x00007f67989ff1cd in updateWorkerThread (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5426
#3 Ogre::updateWorkerThread_internal (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5428
#4 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#5 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 8 (Thread 0x7f6748f32700 (LWP 21538)):
#0 0x00000035a000c2cc in pthread_barrier_wait () from /lib64/libpthread.so.0
#1 0x00007f67989ff10a in Ogre::SceneManager::_updateWorkerThread (this=
0x7f6756803bc0, threadHandle=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5493
#2 0x00007f67989ff1cd in updateWorkerThread (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5426
#3 Ogre::updateWorkerThread_internal (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5428
#4 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#5 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 7 (Thread 0x7f6742b28700 (LWP 21550)):
#0 0x00000035a000c2cc in pthread_barrier_wait () from /lib64/libpthread.so.0
#1 0x00007f67989ff10a in Ogre::SceneManager::_updateWorkerThread (this=
0x7f6756803bc0, threadHandle=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5493
#2 0x00007f67989ff1cd in updateWorkerThread (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5426
#3 Ogre::updateWorkerThread_internal (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5428
#4 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#5 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 5 (Thread 0x7f674712f700 (LWP 21541)):
#0 0x00000035a000c2cc in pthread_barrier_wait () from /lib64/libpthread.so.0
#1 0x00007f67989ff10a in Ogre::SceneManager::_updateWorkerThread (this=
0x7f6756803bc0, threadHandle=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5493
#2 0x00007f67989ff1cd in updateWorkerThread (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5426
#3 Ogre::updateWorkerThread_internal (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5428
#4 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#5 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 4 (Thread 0x7f6745d2d700 (LWP 21543)):
#0 0x00000035a000c2cc in pthread_barrier_wait () from /lib64/libpthread.so.0
#1 0x00007f67989ff10a in Ogre::SceneManager::_updateWorkerThread (this=
0x7f6756803bc0, threadHandle=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5493
#2 0x00007f67989ff1cd in updateWorkerThread (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5426
#3 Ogre::updateWorkerThread_internal (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5428
#4 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#5 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 3 (Thread 0x7f6743529700 (LWP 21548)):
#0 0x00000035a000c2cc in pthread_barrier_wait () from /lib64/libpthread.so.0
#1 0x00007f67989ff10a in Ogre::SceneManager::_updateWorkerThread (this=
0x7f6756803bc0, threadHandle=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5493
#2 0x00007f67989ff1cd in updateWorkerThread (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5426
#3 Ogre::updateWorkerThread_internal (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5428
#4 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#5 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 2 (Thread 0x7f6748531700 (LWP 21539)):
#0 0x00000035a000c2cc in pthread_barrier_wait () from /lib64/libpthread.so.0
#1 0x00007f67989ff10a in Ogre::SceneManager::_updateWorkerThread (this=
0x7f6756803bc0, threadHandle=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5493
#2 0x00007f67989ff1cd in updateWorkerThread (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5426
#3 Ogre::updateWorkerThread_internal (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5428
#4 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#5 0x000000359f8e894d in clone () from /lib64/libc.so.6
Thread 1 (Thread 0x7f674a334700 (LWP 21536)):
#0 0x000000359f8328e5 in raise () from /lib64/libc.so.6
#1 0x000000359f8340c5 in abort () from /lib64/libc.so.6
#2 0x00007f71812a9795 in os::abort(bool) ()
from /usr/java/jdk1.8.0_66/jre/lib/amd64/server/libjvm.so
#3 0x00007f7181447e23 in VMError::report_and_die() ()
from /usr/java/jdk1.8.0_66/jre/lib/amd64/server/libjvm.so
#4 0x00007f71812aefbf in JVM_handle_linux_signal ()
from /usr/java/jdk1.8.0_66/jre/lib/amd64/server/libjvm.so
#5 0x00007f71812a5753 in signalHandler(int, siginfo*, void*) ()
from /usr/java/jdk1.8.0_66/jre/lib/amd64/server/libjvm.so
#6 <signal handler called>
#7 begin (this=0x0)
at /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_vector.h:435
#8 Ogre::ObjectMemoryManager::getNumRenderQueues (this=0x0)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/Math/Array/OgreObjectMemoryManager.cpp:177
#9 0x00007f67989fde63 in Ogre::SceneManager::updateAllLodsThread (this=
0x7f6756803bc0, request=..., threadIdx=140081810357872)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:2159
#10 0x00007f67568085f8 in ?? ()
#11 0x00007f6756808640 in ?? ()
#12 0x00007f6756808618 in ?? ()
#13 0x00007f67989ff0fe in Ogre::SceneManager::_updateWorkerThread (this=
0x7f67568b6a80, threadHandle=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5473
#14 0x00007f67989ff1cd in updateWorkerThread (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5426
#15 Ogre::updateWorkerThread_internal (argName=<value optimized out>)
at /var/lib/jenkins/workspace/Asianux_build-Middleware-ogre/ogre/OgreMain/src/OgreSceneManager.cpp:5428
#16 0x00000035a0007851 in start_thread () from /lib64/libpthread.so.0
#17 0x000000359f8e894d in clone () from /lib64/libc.so.6
(gdb)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
It looks like โThread 336โ and โThread 1โ are running at the same time.
Is this analysis correct? ?
Just wanted to point out a couple of issues with the Ogre Deps, linked issues can be found here:
https://bitbucket.org/cabalistic/ogredeps/issues/38/vs2019-compile-issues
https://bitbucket.org/cabalistic/ogredeps/issues/39/should-this-all-be-moved-to-the-ogre-cave
Ogre takes absurdly long to build.
Ridiculously longer if using C++11 or newer instead of C++98
While Unity builds help a lot to reduce build times, it is not an acceptable solution for Ogre developers.
Ogre 2.1+ breaks strict aliasing in several places:
Basically almost every instance where '*reinterpret_cast<>' is used.
There are 4 solutions to it:
#define CAST(type, x) (((union {typeof(x) src; type dst;}*)&(x))->dst)
CAST(unsigned short, a) = 4;Thus it may be easier if we just define a macro that translates to the preferred solution:
gpuPtr[3] = OGRE_BITCAST( uint32, m_parentTerra->m_skirtSize );
This way debug builds could use raw reinterpret_cast while Release mode is built with an alternative option; and the syntax is kept sane
from OGRECave/ogre#583
It would appear forward 3d things, eg lights, decals etc are broken when using Orthographic rendering. I have only been able to test up to the last revision on bitbucket, but has been broken for a very long time. Earliest revision I have tested is ea7f397
Will continue to look in to it, after I have migrated to Github branches
I am running on Linux on a Intel GPU the Sample_PbsMaterials and from what I read in this thread it is not rendering correctly the sRGB (because my image looks darkers / not gamma corrected)
I am able to run Unity3D on my machine and it seems to not suffer from this problem.
Is that still some issue with Ogre?
Graphics: Card: Intel Haswell-ULT Integrated Graphics Controller bus-ID: 00:02.0
Display Server: X.Org 1.18.4 drivers: intel (unloaded: fbdev,vesa) Resolution: [email protected]
GLX Renderer: Mesa DRI Intel Haswell GLX Version: 3.0 Mesa 17.0.7 Direct Rendering: Yes
While working on a Gentoo ebuild for the first major Ogre 2.1 release (congrats on that!), I hit some compilation issues.
One question beforehand: I have to build with
-DOGRE_BUILD_COMPONENT_PROPERTY=no
-DOGRE_BUILD_COMPONENT_RTSHADERSYSTEM=no
-DOGRE_BUILD_RTSHADERSYSTEM_CORE_SHADERS=no
-DOGRE_BUILD_RTSHADERSYSTEM_EXT_SHADERS=no
-DOGRE_BUILD_COMPONENT_TERRAIN=no
-DOGRE_BUILD_COMPONENT_VOLUME=no
-DOGRE_BUILD_PLUGIN_CG=no
Are these just not ported, yet, or remnants in CMakeLists.txt
that can be ignored?
-DOGRE_BUILD_COMPONENT_HLMS_PBS=yes
-DOGRE_BUILD_COMPONENT_HLMS_PBS_MOBILE=no
-DOGRE_BUILD_COMPONENT_HLMS_UNLIT=yes
-DOGRE_BUILD_COMPONENT_HLMS_UNLIT_MOBILE=no
-DOGRE_BUILD_COMPONENT_PAGING=yes
-DOGRE_BUILD_COMPONENT_PLANAR_REFLECTIONS=yes
-DOGRE_BUILD_COMPONENT_SCENE_FORMAT=yes
-DOGRE_BUILD_PLATFORM_NACL=no
-DOGRE_BUILD_RENDERSYSTEM_GL3PLUS=yes
-DOGRE_BUILD_RENDERSYSTEM_GLES2=yes
-DOGRE_BUILD_SAMPLES2=yes
-DOGRE_BUILD_TESTS=yes
-DOGRE_BUILD_TOOLS=yes
-DOGRE_CONFIG_ALLOCATOR=1
-DOGRE_CONFIG_ENABLE_FINE_LIGHT_MASK_GRANULARITY=yes
-DOGRE_CONFIG_ENABLE_FREEIMAGE=yes
-DOGRE_CONFIG_ENABLE_GL_STATE_CACHE_SUPPORT=yes
-DOGRE_CONFIG_ENABLE_JSON=yes
-DOGRE_CONFIG_MEMTRACK_DEBUG=no
-DOGRE_CONFIG_MEMTRACK_RELEASE=no
-DOGRE_CONFIG_THREADS=2
-DOGRE_CONFIG_THREAD_PROVIDER=std
-DOGRE_FULL_RPATH=no
-DOGRE_INSTALL_DOCS=yes
-DOGRE_INSTALL_SAMPLES=yes
-DOGRE_INSTALL_SAMPLES_SOURCE=yes
-DOGRE_LEGACY_ANIMATIONS=no
-DOGRE_PROFILING_PROVIDER=none
-DOGRE_USE_BOOST=no
-DOGRE_CONFIG_DOUBLE=no
I was able to compile with these settings after applying the following three patches.
The first error was in OgrePVRTCCodec.cpp
, which was just a missing include, so I keep this short.
/tmp/ogre-next-2.1/OgreMain/src/OgrePVRTCCodec.cpp: In member function โvirtual Ogre::Codec::DecodeResult Ogre::PVRTCCodec::decode(Ogre::DataStreamPtr&) constโ:
/tmp/ogre-next-2.1/OgreMain/src/OgrePVRTCCodec.cpp:164:15: error: invalid use of incomplete type โclass Ogre::DataStreamโ
164 | stream->read(&headerV2, sizeof(PVRTCTexHeaderV2));
| ^~
--- a/OgreMain/src/OgrePVRTCCodec.cpp 2020-04-27 20:00:44.816974345 +0200
+++ b/OgreMain/src/OgrePVRTCCodec.cpp 2020-04-27 20:03:49.186962841 +0200
@@ -33,6 +33,7 @@
#include "OgreException.h"
#include "OgreLogManager.h"
#include "OgreBitwise.h"
+#include "OgreDataStream.h"
#define FOURCC(c0, c1, c2, c3) (c0 | (c1 << 8) | (c2 << 16) | (c3 << 24))
#define PVR_TEXTURE_FLAG_TYPE_MASK 0xff
Both suffer the same problem, so I only post the error once and then the two patches.
Error:
FAILED: Components/Paging/CMakeFiles/OgrePaging.dir/src/OgreGrid3DPageStrategy.cpp.o
/usr/lib/ccache/bin/x86_64-pc-linux-gnu-g++
-DBOOST_THREAD_VERSION=4 -DOGRE_PAGING_EXPORTS -DOgrePaging_EXPORTS
-D_MT -D_USRDLL -I/tmp/ogre-next-2.1/OgreMain/include -Iinclude -I/usr/include/freetype2
-I/usr/include/OIS -I/opt/nvidia-cg-toolkit/include/Cg -I/opt/nvidia-cg-toolkit/include
-I/tmp/ogre-next-2.1 -I/tmp/ogre-next-2.1/Components/Paging/include -Wall -Winit-self
-Wno-overloaded-virtual -Wcast-qual -Wwrite-strings -Wextra -Wno-unused-parameter
-Wshadow -Wno-missing-field-initializers -Wno-long-long -Wno-unused-but-set-parameter
-march=native -O2 -pipe -ggdb -DOGRE_DEBUG_MODE=0 -Wno-deprecated-copy
-Wno-class-memaccess -msse -msse2 -fPIC -fPIC -pthread
-DOGRE_GCC_VISIBILITY -fvisibility=hidden -fvisibility-inlines-hidden -MD
-MT Components/Paging/CMakeFiles/OgrePaging.dir/src/OgreGrid3DPageStrategy.cpp.o
-MF Components/Paging/CMakeFiles/OgrePaging.dir/src/OgreGrid3DPageStrategy.cpp.o.d
-o Components/Paging/CMakeFiles/OgrePaging.dir/src/OgreGrid3DPageStrategy.cpp.o
-c /tmp/ogre-next-2.1/Components/Paging/src/OgreGrid3DPageStrategy.cpp
/tmp/ogre-next-2.1/Components/Paging/src/OgreGrid3DPageStrategy.cpp:
In member function โvirtual void Ogre::Grid3DPageStrategy::updateDebugDisplay(Ogre::Page*, Ogre::SceneNode*)โ:
/tmp/ogre-next-2.1/Components/Paging/src/OgreGrid3DPageStrategy.cpp:370:23:
error: โclass Ogre::Passโ has no member named โsetLightingEnabledโ; did you mean โsetLightScissoringEnabledโ?
370 | pass->setLightingEnabled(false);
| ^~~~~~~~~~~~~~~~~~
| setLightScissoringEnabled
/tmp/ogre-next-2.1/Components/Paging/src/OgreGrid3DPageStrategy.cpp:372:23:
error: โclass Ogre::Passโ has no member named โsetDepthWriteEnabledโ; did you mean โsetPointSpritesEnabledโ?
372 | pass->setDepthWriteEnabled(false);
| ^~~~~~~~~~~~~~~~~~~~
| setPointSpritesEnabled
/tmp/ogre-next-2.1/Components/Paging/src/OgreGrid3DPageStrategy.cpp:386:36:
error: โRenderOperationโ has not been declared
386 | mo->begin(matName, RenderOperation::OT_LINE_STRIP);
| ^~~~~~~~~~~~~~~
--- a/Components/Paging/src/OgreGrid2DPageStrategy.cpp 2020-04-28 09:43:23.119894582 +0200
+++ b/Components/Paging/src/OgreGrid2DPageStrategy.cpp 2020-04-28 09:44:00.844892228 +0200
@@ -405,9 +405,9 @@
{
mat = MaterialManager::getSingleton().create(matName, ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME);
Pass* pass = mat->getTechnique(0)->getPass(0);
- pass->setLightingEnabled(false);
+ //pass->setLightingEnabled(false);
pass->setVertexColourTracking(TVC_AMBIENT);
- pass->setDepthWriteEnabled(false);
+ //pass->setDepthWriteEnabled(false);
mat->load();
}
@@ -416,7 +416,7 @@
if (sn->numAttachedObjects() == 0)
{
mo = p->getParentSection()->getSceneManager()->createManualObject();
- mo->begin(matName, RenderOperation::OT_LINE_STRIP);
+ mo->begin(matName, OperationType::OT_LINE_STRIP);
}
else
{
and
--- a/Components/Paging/src/OgreGrid3DPageStrategy.cpp 2020-04-28 09:31:06.301940556 +0200
+++ b/Components/Paging/src/OgreGrid3DPageStrategy.cpp 2020-04-28 09:40:51.777904025 +0200
@@ -367,9 +367,9 @@
{
mat = MaterialManager::getSingleton().create(matName, ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME);
Pass* pass = mat->getTechnique(0)->getPass(0);
- pass->setLightingEnabled(false);
+ //pass->setLightingEnabled(false);
pass->setVertexColourTracking(TVC_AMBIENT);
- pass->setDepthWriteEnabled(false);
+ //pass->setDepthWriteEnabled(false);
mat->load();
}
@@ -383,7 +383,7 @@
else
{
mo = p->getParentSection()->getSceneManager()->createManualObject();
- mo->begin(matName, RenderOperation::OT_LINE_STRIP);
+ mo->begin(matName, OperationType::OT_LINE_STRIP);
}
ColourValue vcol = ColourValue::Green;
I have decided to post an issue rather then creating a pull request, because I know too little about the inner workings of Ogre-2.1 to be sure these patches are sane. Everything compiles fine, now, which is great. But do these changes also end up in a working product?
However, keep up the great work! Ogre was, is, and always will be just awesome!
[reporter="Ogre.Transporter", created="Sun, 2 Feb 2014 17:59:10 +0100"]
OgreScriptTranslator.h:
#include "OgrePrerequisites.h"
#include "Compositor/OgreCompositorCommon.h"
#include "OgreScriptCompiler.h"
#include "OgreHeaderPrefix.h"
At the moment OgreCompositorCommon.h is not located in a subfolder Compositor. The file is located in the main include folder after install.
[reporter="rogual", created="Wed, 12 Aug 2015 21:20:13 +0200"]
MSVC 2013 compiles Ogre just fine, but linking my project to Ogre gives "undefined external Ogre::AllocatedObject::operator new".
Looking through the Ogre code, I noticed this block of template instantiations in OgreMemoryAllocatedObject.cpp:
template class AllocatedObject<GeneralAllocPolicy>;
template class AllocatedObject<GeometryAllocPolicy>;
template class AllocatedObject<AnimationAllocPolicy>;
template class AllocatedObject<SceneCtlAllocPolicy>;
template class AllocatedObject<SceneObjAllocPolicy>;
template class AllocatedObject<ResourceAllocPolicy>;
template class AllocatedObject<ScriptingAllocPolicy>;
template class AllocatedObject<RenderSysAllocPolicy>;
Notably, that class is absent. I tried adding it:
template class AllocatedObject<SceneCtlAlignPolicy>;<br/>
...and now my project links just fine. Not sure if this is an Ogre bug or if this is the right fix.
We carried over from 1.x's Github Pages
Our current main page:
https://ogrecave.github.io/ogre-next/
Talks about 1.x and points to manuals for these versions.
It is based on DDGI, more material:
First we'll start using the voxelized results from VCT. Afterwards once we have Raytracing, we'll also allow to use Raytracing instead; since both are very similars (with VCT we shoot cones instead of rays)
Update 2019-09-29:
Update 2019-10-04:
Hi guys,
Thanks very much for your work on OGRE.
I've used it on a few toy applications in the past and am currently integrating it into a VR application.
I'm having trouble getting the Tutorial_OpenVR sample to work correctly.
The latest code, (both 8579b35 and 52a6f47), crashes with the following error:
An exception has occured: OGRE EXCEPTION(5:ItemIdentityException): Compute Job with name [Hash 0x704694c7] not found in HlmsCompute::findComputeJob at [OGRE_ROOT]/OgreMain/src/OgreHlmsCompute.cpp (line 557)
After defining OGRE_IDSTRING_ALWAYS_READABLE 1
, the IdString in question turns out to be: VR/RadialDensityMaskReconstruct
.
I've attempted to pass in a computer shader, using HlmsComputeJob::createComputeJob
and guessing that /Samples/Media/Compute/VR/Foveated/RadialDensityMaskReconstruct_cs.glsl
is the file in question, but I haven't gotten this to work yet.
In order to find a working example, I dug around in the git history and got these two commits to run, albeit with a significant rendering glitch.
ea3b3f1, 075d36b -> Both run, but with many visual artifacts.
Finally, I tried combining the latest OGRE code with the "working" Tutorial_OpenVR code,
OGRE commit: 52a6f47
OpenVR_Tutorial commit: ea3b3f1
But this produces the same results as first case, crashing with ItemIdentityException
in HlmsCompute::findComputeJob
.
Please let me know what I can do to get to the bottom of this. Thank you!
OGRE_MEDIA_PACKS_DIR and OGRE_MEDIA_TEXTURES_DIR are defined too late, after the scripts for installation are configured, causing resources2.cfg to have the wrong paths.
[reporter="dermont", created="Tue, 10 Nov 2015 15:17:56 +0100"]
Sorry for raising such trivial issue again, another unicode problem parsing OgreResourceTransition.h with gccxml.
Same position/problem as https://ogre3d.atlassian.net/browse/OGRE-495.
Version v2-1 7983:3675ffea3b57 on Linux.
I'm completely new to OGRE and I've been setting up my project according to the official tutorial here. I'm using Arch Linux. I know ogre-next is not very friendly for new users but I'd prefer using ogre-next for learning as it'll force me to get more familiar with how it works. I used setup scripts to setup ogre and installed it using generated ninja files.
#include <OGRE/Ogre.h>
gives me an error here saying that "Vao/OgreBufferPacked.h"
file does not exist.
I checked locally, it's does (/usr/local/include/OGRE/Vao/OgreBufferPacked.h
).
From looking at sources I infer that OGRE
is actually the root of included files - by which I mean #include <Ogre.h> would actually include that file in project sources. Problem is that on Linux, it is placed in /usr/local/include/OGRE
file which means that all ogre includes have to be prefixed with OGRE/
. Prepending OGRE/
to header include paths fixes this issue. Moving the includes outside of 'OGRE' subdirectory would too, but I don't want to pollute my include directory with files unmanaged by the package manager.
What I also find confusing is the usage of "
for absolute include paths. From my understanding of C++, "
is conventionally used for relative include paths and angled brackets for paths relative to searched include directories (although "
falls back to that behaviour so I might be just nitpicking now). Using relative include paths would be much better in cases like these and would make include files resilient to inconsistent placement.
Placing ogre headers directly inside include directory is bad.
Here are some possible solutions:
#include "something.h"
statements, this would make setting up SDK much simpler.While this might be easy to fix with a script prepending OGRE to includes, consider the fact that lots of new users using Linux will face a similar problem and patching files locally is not the best solution.
I might also be doing something wrong in which case most of the issue above doesn't make much sense.
Note about this bug report: I'm using 2.1unstable (out of necessity, not my choice) which is pretty old, so the bug I describe may have been fixed already. Also, I don't completely understand the Python-Ogre codebase I have inherited, and it may use Ogre in strange unintended ways. So, this crash may be a consequence of bad design of my codebase rather than Ogre itself.
When enabling a directional light, I get a NULL pointer dereference in HlmsPbs::preparePassHash(), around line 1199 of OgreHlmsPbs.cpp:
if( i >= shadowCastingDirLights && i < numDirectionalLights ) { while( affectedLights[nonShadowLightIdx] ) <---- CRASH ++nonShadowLightIdx; light = globalLightList.lights[nonShadowLightIdx++]; assert( light->getType() == Light::LT_DIRECTIONAL ); }
affectedLights refers to a std::vector<bool> which is the member variable mAffectedLights of a CompositorShadowNode. mAffectedLights is empty, so affectedLights[nonShadowLightIdx] is out of range.
mAffectedLights is not iinitialized on CompositorShadowNode construction, so it is empty by default. The only code that adds entries to mAffectedLights is the method CompositorShadowNode::clearShadowCastingLights() which ensures mAffectedLights always contains at least one entry, with value "false":
mAffectedLights.clear(); //Reserve last place for avoid crashing with static //lights that weren't collected into globalLightList mAffectedLights.resize( globalLightList.lights.size() + 1u, false );
CompositorShadowNode::clearShadowCastingLights() does not get called before the crash occurs. So I think either:
I fixed the crash by adding this line to the end of the CompositorShadowNode constructor:
mAffectedLights.resize( 1u, false );
I don't know if this is correct.
Hi,
Is it possible to test DDGI now?
What is the status of DDGI?
When the bone memory manager cleanup is performed, the SkeletonInstance manual bones array becomes incorrect as it depends on the bone transform index which can change.
This causes some bones to randomly switch to manual mode causing problems.
UPDATE:
ORIGINAL:
Now that we're in Github, we could take advantage of CI integrations!
We have a few dedicated HW for CI, I'm trying to reach David Rogers who is managing those, to get access to these servers.
If we can't, then we'll just use whatever free cloud plans are available.
I'm particularly interested in CI that can follow Pull Requests.
While fixing #33 I remembered Root calls CompositorManager2::_update, which calls RenderSystem::updateCompositorManager which calls CompositorManager2::_updateImplementation
The reason for this is that MetalRenderSystem gets the chance to enclose CompositorManager2::_updateImplementation inside an @autorelease tag.
However when we, or our users, manually perform:
workspace->_beginUpdate( forceBeginFrame );
workspace->_update();
workspace->_endUpdate( forceEndFrame );
No such @autorelease enclosure is present.
It appears we need to add a similar function that will perform _update on one or several workspaces; allowing MetalRenderSystem to enclose that call in an autorelease pool
As the title says, Sample_IesProfiles
works just with GL render system. If you launch it using D3D11 render system, you get this is the error (also see the attached shader):
Ogre: High-level program 100000000PixelShader_ps encountered an error during loading and is thus not supported.
OGRE EXCEPTION(-2147467259:RenderingAPIException): Cannot compile D3D11 high-level shader 100000000PixelShader_ps Errors:
D:\Development\SDK\OGRE\OGRE\build\x64\bin\Debug\100000000PixelShader_ps.hlsl(495,10): error X3004: undeclared identifier 'lightProfiles'
in D3D11HLSLProgram::compileMicrocode at D:/Development/SDK/OGRE/OGRE/RenderSystems/Direct3D11/src/OgreD3D11HLSLProgram.cpp (line 569)
In addition, there's a memory leak at line 82 of OgreLightProfiles.cpp
:
IesLoader *iesLoader = OGRE_NEW IesLoader( filename, dataStr.c_str() );
mIesData.push_back( iesLoader );
Content of mIesData
is never destroyed.
from you blog I know that 1.x keep compatibility๏ผ 2.x aims at edge tech๏ผwhy not make ogre2 more purely? full 2.x๏ผ no v1
code failed to build on mac os with xcode/clang 10
the following code fails to build on mac os with clang 10
namespace std
{
#if __cplusplus < 201103L && OGRE_PLATFORM != OGRE_PLATFORM_EMSCRIPTEN
namespace tr1
{__cplusplus
#endif
template < typename T >
struct hash< Ogre::SharedPtr< T > > : hash< T* >
{
typedef hash< T* > MyBase;
typedef Ogre::SharedPtr< T > argument_type;
typedef size_t result_type;
result_type operator()( const argument_type& k ) const
{
return MyBase::operator()( k.get() );
}
};
#if __cplusplus < 201103L && OGRE_PLATFORM != OGRE_PLATFORM_EMSCRIPTEN
}
#endif
}
the compiler complains about the namespace.
the root cause is that __cplusplus is incorrectly set to 199711L
looking at the cmake file:
set(CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LANGUAGE_STANDARD "c++11")
this code doesn't work at all, because if check make command with make VERBOSE=1, there is no -std=c++11 flag set.
I have to use
cmake -DCMAKE_CXX_FLAGS="-std=c++11 -stdlib=libc++"
this issue is the same as openscenegraph/OpenSceneGraph#637
Latest Visual Studio 2017 (vc141) and Visual Studio 2019 latest compiler update (VisualStudio.16.Release/16.4.2+29613.14) both don't like the code that lives in:
OgreMain\src\OgreImageDownsampler.cpp(197,14):
fatal error C1001: An internal error has occurred in the compiler.
The issue has been also reported here:
https://developercommunity.visualstudio.com/content/problem/601701/ogre-v21-source-internal-compiler-error-with-visua.html
Compiler doesn't like when a .cpp module gets recursively included with different set of macro definitions. Proposed workaround is to refactor the code in OgreImageDownsampler.cpp by moving the 'problematic' piece of macro-magic code (that recursively includes itself) -- into its own separate header with a different name. After that refactor all the code compiles successfully and works great.
I'm attaching a proposed .patch below
N/A
N/A
Cannot bind cubemap probes to materials using per-pixel PCC. Steps to reproduce it: just change mPerPixelReflections
to true
in LocalCubemapsManualProbesGameState::LocalCubemapsManualProbesGameState
.
10:00:26: Creating resource group General
10:00:26: Creating resource group Internal
10:00:26: Creating resource group Autodetect
10:00:26: SceneManagerFactory for type 'DefaultSceneManager' registered.
10:00:26: Registering ResourceManager for type Material
10:00:26: Registering ResourceManager for type Mesh
10:00:26: Registering ResourceManager for type Mesh2
10:00:26: Registering ResourceManager for type OldSkeleton
10:00:26: MovableObjectFactory for type 'ParticleSystem' registered.
10:00:26: ArchiveFactory for archive type FileSystem registered.
10:00:26: ArchiveFactory for archive type Zip registered.
10:00:26: ArchiveFactory for archive type EmbeddedZip registered.
10:00:26: DDS codec registering
10:00:26: FreeImage version: 3.15.3
10:00:26: This program uses FreeImage, a free, open source image library supporting all common bitmap formats. See http://freeimage.sourceforge.net for details
10:00:26: Supported formats: bmp,ico,jpg,jif,jpeg,jpe,jng,koa,iff,lbm,mng,pbm,pbm,pcd,pcx,pgm,pgm,png,ppm,ppm,ras,tga,targa,tif,tiff,wap,wbmp,wbm,psd,cut,xbm,xpm,gif,hdr,g3,sgi,exr,j2k,j2c,jp2,pfm,pct,pict,pic
10:00:26: OITD codec registering
10:00:26: Registering ResourceManager for type HighLevelGpuProgram
10:00:26: MovableObjectFactory for type 'Decal' registered.
10:00:26: MovableObjectFactory for type 'InternalCubemapProbe' registered.
10:00:26: MovableObjectFactory for type 'Entity' registered.
10:00:26: MovableObjectFactory for type 'Item' registered.
10:00:26: MovableObjectFactory for type 'Light' registered.
10:00:26: MovableObjectFactory for type 'Rectangle2Dv2' registered.
10:00:26: MovableObjectFactory for type 'BillboardSet' registered.
10:00:26: MovableObjectFactory for type 'ManualObject2' registered.
10:00:26: MovableObjectFactory for type 'BillboardChain' registered.
10:00:26: MovableObjectFactory for type 'RibbonTrail' registered.
10:00:26: MovableObjectFactory for type 'WireAabb' registered.
10:00:26: Loading library .\RenderSystem_Direct3D11_d
10:00:26: Installing plugin: D3D11 RenderSystem
10:00:26: D3D11: Direct3D11 Rendering Subsystem created.
10:00:26: D3D11: Driver Detection Starts
10:00:26: D3D11: "Intel(R) HD Graphics 630"
10:00:26: D3D11: "NVIDIA GeForce GTX 1060"
10:00:26: D3D11: "Microsoft Basic Render Driver (software)"
10:00:26: D3D11: Driver Detection Ends
10:00:26: Plugin successfully installed
10:00:26: Loading library .\RenderSystem_GL3Plus_d
10:00:26: Installing plugin: GL 3+ RenderSystem
10:00:26: OpenGL 3+ Rendering Subsystem created.
10:00:26: Plugin successfully installed
10:00:26: Loading library .\Plugin_ParticleFX_d
10:00:26: Installing plugin: ParticleFX
10:00:26: Particle Emitter Type 'Point' registered
10:00:26: Particle Emitter Type 'Box' registered
10:00:26: Particle Emitter Type 'Ellipsoid' registered
10:00:26: Particle Emitter Type 'Cylinder' registered
10:00:26: Particle Emitter Type 'Ring' registered
10:00:26: Particle Emitter Type 'HollowEllipsoid' registered
10:00:26: Particle Affector Type 'LinearForce' registered
10:00:26: Particle Affector Type 'ColourFader' registered
10:00:26: Particle Affector Type 'ColourFader2' registered
10:00:26: Particle Affector Type 'ColourImage' registered
10:00:26: Particle Affector Type 'ColourInterpolator' registered
10:00:26: Particle Affector Type 'Scaler' registered
10:00:26: Particle Affector Type 'Rotator' registered
10:00:26: Particle Affector Type 'DirectionRandomiser' registered
10:00:26: Particle Affector Type 'DeflectorPlane' registered
10:00:26: Plugin successfully installed
10:00:26: *-*-* OGRE Initialising
10:00:26: *-*-* Version 2.2.1unstable (Cerberus)
10:00:26: D3D11: RenderSystem Option: sRGB Gamma Conversion = Yes
10:00:26: D3D11: RenderSystem Option: Allow NVPerfHUD = No
10:00:26: D3D11: RenderSystem Option: Backbuffer Count = Auto
10:00:26: D3D11: RenderSystem Option: Driver type = Hardware
10:00:26: D3D11: RenderSystem Option: Fast Shader Build Hack = Yes
10:00:26: D3D11: RenderSystem Option: Floating-point mode = Fastest
10:00:26: D3D11: RenderSystem Option: Full Screen = No
10:00:26: D3D11: RenderSystem Option: Information Queue Exceptions Bottom Level = Info (exception on any message)
10:00:26: D3D11: RenderSystem Option: MSAA = 1
10:00:26: D3D11: RenderSystem Option: Max Requested Feature Levels = 11.1
10:00:26: D3D11: RenderSystem Option: Min Requested Feature Levels = 9.1
10:00:26: D3D11: RenderSystem Option: Rendering Device = (default)
10:00:26: D3D11: RenderSystem Option: VSync = No
10:00:26: D3D11: RenderSystem Option: VSync Interval = 1
10:00:26: D3D11: RenderSystem Option: Vendor Extensions = Auto
10:00:26: D3D11: RenderSystem Option: Video Mode = 1280 x 720 @ 32-bit colour
10:00:26: D3D11: RenderSystem Option: sRGB Gamma Conversion = Yes
10:00:28: CPU Identifier & Features
10:00:28: -------------------------
10:00:28: * CPU ID: GenuineIntel: Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz
10:00:28: * Logical cores: 8
10:00:28: * SSE: yes
10:00:28: * SSE2: yes
10:00:28: * SSE3: yes
10:00:28: * MMX: yes
10:00:28: * MMXEXT: yes
10:00:28: * 3DNOW: no
10:00:28: * 3DNOWEXT: no
10:00:28: * CMOV: yes
10:00:28: * TSC: yes
10:00:28: * FPU: yes
10:00:28: * PRO: yes
10:00:28: * HT: no
10:00:28: -------------------------
10:00:28: D3D11 : Subsystem Initialising
10:00:28: D3D11: Driver Detection Starts
10:00:28: D3D11: "Intel(R) HD Graphics 630"
10:00:28: D3D11: "NVIDIA GeForce GTX 1060"
10:00:28: D3D11: "Microsoft Basic Render Driver (software)"
10:00:28: D3D11: Driver Detection Ends
10:00:28: D3D11: Requested "(default)", selected "Intel(R) HD Graphics 630"
10:00:28: ***************************************
10:00:28: *** D3D11: Subsystem Initialized OK ***
10:00:28: ***************************************
10:00:28: D3D11RenderSystem::_createRenderWindow "Local Reflections using Parallax Corrected Cubemaps. Manual vs Auto modes.", 1280x720 windowed miscParams: MSAA=1 externalWindowHandle=264980 gamma=Yes reverse_depth=Yes title=Local Reflections using Parallax Corrected Cubemaps. Manual vs Auto modes. vsync=No
10:00:28: Registering ResourceManager for type GpuProgram
10:00:28: RenderSystem capabilities
10:00:28: -------------------------
10:00:28: RenderSystem Name: Direct3D11 Rendering Subsystem
10:00:28: GPU Vendor: intel
10:00:28: Device Name: Intel(R) HD Graphics 630
10:00:28: Driver Version: 22.20.16.4749
10:00:28: * Fixed function pipeline: no
10:00:28: * Hardware generation of mipmaps: yes
10:00:28: * Texture blending: yes
10:00:28: * Anisotropic texture filtering: yes
10:00:28: * Dot product texture operation: yes
10:00:28: * Cube mapping: yes
10:00:28: * Hardware stencil buffer: yes
10:00:28: - Stencil depth: 8
10:00:28: - Two sided stencil support: yes
10:00:28: - Wrap stencil values: yes
10:00:28: * Hardware vertex / index buffers: yes
10:00:28: * 32-bit index buffers: yes
10:00:28: * Vertex programs: yes
10:00:28: * Number of floating-point constants for vertex programs: 512
10:00:28: * Number of integer constants for vertex programs: 16
10:00:28: * Number of boolean constants for vertex programs: 16
10:00:28: * Fragment programs: yes
10:00:28: * Number of floating-point constants for fragment programs: 512
10:00:28: * Number of integer constants for fragment programs: 16
10:00:28: * Number of boolean constants for fragment programs: 16
10:00:28: * Geometry programs: yes
10:00:28: * Number of floating-point constants for geometry programs: 512
10:00:28: * Number of integer constants for geometry programs: 16
10:00:28: * Number of boolean constants for geometry programs: 16
10:00:28: * Tessellation Hull programs: yes
10:00:28: * Number of floating-point constants for tessellation hull programs: 512
10:00:28: * Number of integer constants for tessellation hull programs: 16
10:00:28: * Number of boolean constants for tessellation hull programs: 16
10:00:28: * Tessellation Domain programs: yes
10:00:28: * Number of floating-point constants for tessellation domain programs: 512
10:00:28: * Number of integer constants for tessellation domain programs: 16
10:00:28: * Number of boolean constants for tessellation domain programs: 16
10:00:28: * Compute programs: yes
10:00:28: * Number of floating-point constants for compute programs: 512
10:00:28: * Number of integer constants for compute programs: 16
10:00:28: * Number of boolean constants for compute programs: 16
10:00:28: * Supported Shader Profiles: cs_5_0 ds_5_0 gs_4_0 gs_4_1 gs_5_0 hlsl hs_5_0 ps_4_0 ps_4_0_level_9_1 ps_4_0_level_9_3 ps_4_1 ps_5_0 vs_4_0 vs_4_0_level_9_1 vs_4_0_level_9_3 vs_4_1 vs_5_0
10:00:28: * Texture Compression: yes
10:00:28: - DXT: yes
10:00:28: - VTC: no
10:00:28: - PVRTC: no
10:00:28: - ATC: no
10:00:28: - ETC1: no
10:00:28: - ETC2: no
10:00:28: - BC4/BC5: yes
10:00:28: - BC6H/BC7: yes
10:00:28: - ASTC: no
10:00:28: * Hardware Occlusion Query: yes
10:00:28: * User clip planes: yes
10:00:28: * VET_UBYTE4 vertex element type: yes
10:00:28: * Infinite far plane projection: yes
10:00:28: * Hardware render-to-texture: yes
10:00:28: * Floating point textures: yes
10:00:28: * Non-power-of-two textures: yes
10:00:28: * 1d textures: yes
10:00:28: * Volume textures: yes
10:00:28: * Max Texture resolution (2D) 16384
10:00:28: * Max Texture resolution (3D) 2048
10:00:28: * Max Texture resolution (Cubemaps) 16384
10:00:28: * Multiple Render Targets: 8
10:00:28: - With different bit depths: yes
10:00:28: * Point Sprites: yes
10:00:28: * Extended point parameters: yes
10:00:28: * Max Point Size: 256
10:00:28: * Vertex texture fetch: yes
10:00:28: * Number of world matrices: 0
10:00:28: * Number of texture units: 16
10:00:28: * Stencil buffer depth: 8
10:00:28: * Number of vertex blend matrices: 0
10:00:28: - Max vertex textures: 4
10:00:28: - Vertex textures shared: no
10:00:28: * Render to Vertex Buffer : yes
10:00:28: * Hardware Atomic Counters: no
10:00:28: * Compute max threads per threadgroup per axis: 1024, 1024, 64
10:00:28: * Compute max threads per threadgroup total: 1024
10:00:28: * Using Reverse Z: yes
10:00:28: DefaultWorkQueue('Root') initialising on thread 20040.
10:00:28: DefaultWorkQueue('Root')::WorkerFunc - thread 11164 starting.
10:00:28: DefaultWorkQueue('Root')::WorkerFunc - thread 8216 starting.
10:00:28: DefaultWorkQueue('Root')::WorkerFunc - thread 15516 starting.
10:00:28: DefaultWorkQueue('Root')::WorkerFunc - thread 1580 starting.
10:00:28: DefaultWorkQueue('Root')::WorkerFunc - thread 8416 starting.
10:00:28: DefaultWorkQueue('Root')::WorkerFunc - thread 3496 starting.
10:00:28: DefaultWorkQueue('Root')::WorkerFunc - thread 18376 starting.
10:00:28: DefaultWorkQueue('Root')::WorkerFunc - thread 17172 starting.
10:00:28: Particle Renderer Type 'billboard' registered
10:00:28: OverlayElementFactory for type Panel registered.
10:00:28: OverlayElementFactory for type BorderPanel registered.
10:00:28: OverlayElementFactory for type TextArea registered.
10:00:28: Registering ResourceManager for type Font
10:00:28: Creating resource group Essential
10:00:28: Added resource location 'D:/Development/SDK/OGRE/OGRE 2.2/Samples/Media/packs/DebugPack.zip' of type 'Zip' to resource group 'Essential'
10:00:28: Added resource location 'D:/Development/SDK/OGRE/OGRE 2.2/Samples/Media/packs/CornellBox.zip' of type 'Zip' to resource group 'Essential'
10:00:28: Added resource location 'D:/Development/SDK/OGRE/OGRE 2.2/Samples/Media/2.0/scripts/materials/Common' of type 'FileSystem' to resource group 'General'
10:00:28: Added resource location 'D:/Development/SDK/OGRE/OGRE 2.2/Samples/Media/2.0/scripts/materials/Common/Any' of type 'FileSystem' to resource group 'General'
10:00:28: Added resource location 'D:/Development/SDK/OGRE/OGRE 2.2/Samples/Media/2.0/scripts/materials/Common/GLSL' of type 'FileSystem' to resource group 'General'
10:00:28: Added resource location 'D:/Development/SDK/OGRE/OGRE 2.2/Samples/Media/2.0/scripts/materials/Common/GLSLES' of type 'FileSystem' to resource group 'General'
10:00:28: Added resource location 'D:/Development/SDK/OGRE/OGRE 2.2/Samples/Media/2.0/scripts/materials/Common/HLSL' of type 'FileSystem' to resource group 'General'
10:00:28: Added resource location 'D:/Development/SDK/OGRE/OGRE 2.2/Samples/Media/2.0/scripts/materials/Common/Metal' of type 'FileSystem' to resource group 'General'
10:00:28: Creating resource group Popular
10:00:28: Added resource location 'D:/Development/SDK/OGRE/OGRE 2.2/Samples/Media/2.0/scripts/Compositors' of type 'FileSystem' to resource group 'Popular'
10:00:28: Added resource location 'D:/Development/SDK/OGRE/OGRE 2.2/Samples/Media/models' of type 'FileSystem' to resource group 'Popular'
10:00:28: Added resource location 'D:/Development/SDK/OGRE/OGRE 2.2/Samples/Media/materials/textures' of type 'FileSystem' to resource group 'Popular'
10:00:28: Added resource location 'D:/Development/SDK/OGRE/OGRE 2.2/Samples/Media/materials/textures/Cubemaps' of type 'FileSystem' to resource group 'Popular'
10:00:28: Added resource location 'D:/Development/SDK/OGRE/OGRE 2.2/Samples/Media/2.0/scripts/materials/LocalCubemaps/' of type 'FileSystem' to resource group 'General'
10:00:28: Added resource location 'D:/Development/SDK/OGRE/OGRE 2.2/Samples/Media/2.0/scripts/materials/LocalCubemaps/GLSL' of type 'FileSystem' to resource group 'General'
10:00:28: Added resource location 'D:/Development/SDK/OGRE/OGRE 2.2/Samples/Media/2.0/scripts/materials/LocalCubemaps/HLSL' of type 'FileSystem' to resource group 'General'
10:00:28: Added resource location 'D:/Development/SDK/OGRE/OGRE 2.2/Samples/Media/2.0/scripts/materials/LocalCubemaps/Metal' of type 'FileSystem' to resource group 'General'
10:00:28: Added resource location 'D:/Development/SDK/OGRE/OGRE 2.2/Samples/Media/2.0/scripts/materials/TutorialSky_Postprocess' of type 'FileSystem' to resource group 'General'
10:00:28: [INFO] Texture cache not found at .//textureMetadataCache.json
10:00:28: Parsing scripts for resource group Autodetect
10:00:28: Finished parsing scripts for resource group Autodetect
10:00:28: Creating resources for group Autodetect
10:00:28: All done
10:00:28: Parsing scripts for resource group Essential
10:00:28: Parsing script Materials.material
10:00:28: Parsing script CornellBox.material.json
10:00:28: Parsing script DebugFont.fontdef
10:00:28: Finished parsing scripts for resource group Essential
10:00:28: Creating resources for group Essential
10:00:28: All done
10:00:28: Parsing scripts for resource group General
10:00:28: Parsing script Quad.program
10:00:28: Parsing script Copyback.material
10:00:28: Parsing script DepthUtils.material
10:00:28: Parsing script DPM.material
10:00:28: Parsing script DPSM.material
10:00:28: Parsing script EsmGaussianBlurLogFilter.material
10:00:29: Parsing script HiddenAreaMeshVr.material
10:00:29: Parsing script PccDepthCompressor.material
10:00:29: Parsing script RadialDensityMask.material
10:00:29: Parsing script Sky.material
10:00:29: Parsing script BlendProjectCubemap.material
10:00:29: Parsing script CopyCubemap.material
10:00:29: Parsing script SkyPostprocess.material
10:00:29: Parsing script EsmGaussianBlurLogFilter.material.json
10:00:29: Parsing script Mipmaps.material.json
10:00:29: Finished parsing scripts for resource group General
10:00:29: Creating resources for group General
10:00:29: All done
10:00:29: Parsing scripts for resource group Internal
10:00:29: Finished parsing scripts for resource group Internal
10:00:29: Creating resources for group Internal
10:00:29: All done
10:00:29: Parsing scripts for resource group Popular
10:00:29: Parsing script InstancedStereo.compositor
10:00:29: Parsing script LocalCubemaps.compositor
10:00:29: Parsing script PbsMaterials.compositor
10:00:29: Parsing script PlanarReflections.compositor
10:00:29: Parsing script ScreenSpaceReflections.compositor
10:00:29: Parsing script ShadowMapDebugging.compositor
10:00:29: Parsing script StaticShadowMaps.compositor
10:00:29: Parsing script StencilTest.compositor
10:00:29: Parsing script StereoRendering.compositor
10:00:29: Parsing script TutorialSky_Postprocess.compositor
10:00:29: Parsing script TutorialUav01_Setup.compositor
10:00:29: Parsing script TutorialUav02_Setup.compositor
10:00:29: Parsing script Tutorial_DynamicCubemap.compositor
10:00:29: Parsing script Tutorial_OpenVRWorkspace.compositor
10:00:29: Parsing script Tutorial_ReconstructPosFromDepth.compositor
10:00:29: Parsing script Tutorial_Terrain.compositor
10:00:30: Parsing script UvBaking.compositor
10:00:30: Finished parsing scripts for resource group Popular
10:00:30: Creating resources for group Popular
10:00:30: All done
10:00:30: Mesh: Loading Cube_d.mesh.
10:00:30: WARNING: Cube_d.mesh is an older format ([MeshSerializer_v2.1 R1]); you should upgrade it as soon as possible using the OgreMeshTool tool.
10:00:31: Warnings while compiling D3D11 high-level shader 100000002PixelShader_ps:
D:\Development\SDK\OGRE\OGRE 2.2\build\x64\bin\Debug\100000002PixelShader_ps.hlsl(1261,14): warning X3078: 'i': loop control variable conflicts with a previous declaration in the outer scope; most recent declaration will be used
> OgreHlmsPbs_d.dll!Ogre::CubemapProbe::_addReference() Line 612 C++
OgreHlmsPbs_d.dll!Ogre::HlmsPbsDatablock::setCubemapProbe(Ogre::CubemapProbe * probe) Line 940 C++
Sample_LocalCubemapsManualProbes.exe!Demo::LocalCubemapsManualProbesGameState::createScene01() Line 309 C++
Sample_LocalCubemapsManualProbes.exe!Demo::BaseSystem::createScene01() Line 29 C++
Sample_LocalCubemapsManualProbes.exe!Demo::MainEntryPoints::mainAppSingleThreaded(HINSTANCE__ * hInst, HINSTANCE__ * hPrevInstance, char * strCmdLine, int nCmdShow) Line 82 C++
Sample_LocalCubemapsManualProbes.exe!WinMainApp(HINSTANCE__ * hInst, HINSTANCE__ * hPrevInstance, char * strCmdLine, int nCmdShow) Line 23 C++
Sample_LocalCubemapsManualProbes.exe!WinMain(HINSTANCE__ * hInst, HINSTANCE__ * hInst2, char * strCmdLine, int intParam) Line 35 C++
[External Code]
- this 0x0000022c4bebf8e0 {mProbeCameraPos={x=-0.000000000 y=1.79999900 z=0.232415006 } mArea={mCenter={x=-0.000000000 ...} ...} ...} Ogre::CubemapProbe *
Ogre::AllocatedObject<Ogre::CategorisedAllocPolicy<0> > {...} Ogre::AllocatedObject<Ogre::CategorisedAllocPolicy<0>>
+ mProbeCameraPos {x=-0.000000000 y=1.79999900 z=0.232415006 } Ogre::Vector3
+ mArea {mCenter={x=-0.000000000 y=12.0119743 z=0.232414007 } mHalfSize={x=6.29473877 y=12.1488724 z=5.28473806 } } Ogre::Aabb
+ mAreaInnerRegion {x=1.00000000 y=1.00000000 z=0.300000012 } Ogre::Vector3
+ mOrientation {m=0x0000022c4bebf910 {0x0000022c4bebf910 {1.00000000, 0.000000000, 0.000000000}, 0x0000022c4bebf91c {...}, ...} } Ogre::Matrix3
+ mInvOrientation {m=0x0000022c4bebf934 {0x0000022c4bebf934 {1.00000000, 0.000000000, 0.000000000}, 0x0000022c4bebf940 {...}, ...} } Ogre::Matrix3
+ mProbeShape {mCenter={x=-0.000000000 y=12.0119743 z=0.232414007 } mHalfSize={x=6.32621241 y=12.2096167 z=5.31116152 } } Ogre::Aabb
+ mTexture 0x0000022c4b18e2f0 {mDefaultDisplaySrv=0x0000022c4b58eb90 <Information not available, no symbols loaded for d3d11_3SDKLayers.dll> ...} Ogre::TextureGpu * {RenderSystem_Direct3D11_d.dll!Ogre::D3D11TextureGpu}
mCubemapArrayIdx 0 unsigned short
mMsaa 1 '\x1' unsigned char
mWorkspaceMipmapsExecMask 1 '\x1' unsigned char
+ mWorkspaceDefName {mHash=206068075 mDebugString=0x0000022c4bebf980 "LocalCubemapsProbeWorkspace" } Ogre::IdString
+ mClearWorkspace 0x0000000000000000 <NULL> Ogre::CompositorWorkspace *
+ mWorkspace 0x0000022c4baae630 {mDefinition=0x0000022c3ebc7450 {mName={mHash=206068075 mDebugString=0x0000022c3ebc74f4 "LocalCubemapsProbeWorkspace" } ...} ...} Ogre::CompositorWorkspace * {OgreMain_d.dll!Ogre::CompositorWorkspace}
+ mCamera 0x0000022c4b2dc880 {mSceneMgr=0x0000022c4b803310 {...} mOrientation={w=1.00000000 x=0.000000000 y=0.000000000 ...} ...} Ogre::Camera * {OgreMain_d.dll!Ogre::Camera}
+ mCreator 0x0000022c4b3bc440 {mDirtyProbes={ size=0 } mTrackedPosition={x=3.76757598 y=1.79999697 z=20.8438702 } ...} Ogre::ParallaxCorrectedCubemapBase * {Sample_LocalCubemapsManualProbes.exe!Ogre::ParallaxCorrectedCubemapAuto}
+ mInternalProbe 0x0000022c33d4ece0 {mGpuData=0x0000022c33d4ee28 {0x0000022c33d4ee28 {1.00000000, 0.000000000, 0.000000000, ...}, ...} } Ogre::InternalCubemapProbe * {OgreMain_d.dll!Ogre::InternalCubemapProbe}
+ mConstBufferForManualProbes 0x0000000000000000 <NULL> Ogre::ConstBufferPacked *
mNumDatablockUsers 0 unsigned int
mPriority 10 unsigned short
mStatic true bool
mEnabled true bool
mDirty false bool
mNumIterations 8 unsigned short
mMask 4294967295 unsigned int
I'm not sure why it happens, but the dll is not copied to the bin folder from the Dependencies folder; causing D3D11 plugin to fail to load without giving much reasons.
As explained in Generating Perfect Normal Maps for Unity (and Other Programs) and asked in an old Ogre forum post Mikktspace has become standard in the industry, but we don't use it.
We have an older TangentSpaceCalc implementation, which could use be replaced to use mikktspace.h and mikktspace.c instead.
If it helps, DERGO has a Vao version that may be easier to read due to its simplicity. The simplicity comes from the fact that it happily generates duplicated vertices instead of trying to reuse vertices.
VertexBufferDownloadHelper is also a powerful tool to access vertices on the GPU in an easy way.
Finally the shader needs to be modified to use, instead of TBN, use:
vNout = normalize( vNt.x * vT + vNt.y * vB + vNt.z * vN );
We already generate bitangents in pixel shader.
This shouldn't require too much work.
As reported by Lax there is a shader compiler error when using normal maps for Terra
13:35:21: OGRE EXCEPTION(-2147467259:RenderingAPIException): Cannot compile D3D11 high-level shader 700000008PixelShader_ps Errors:
C:\Users\lukas\Documents\GameEngineDevelopment\bin\Debug\700000008PixelShader_ps.hlsl(1070,41-50): error X3004: undeclared identifier 'geomNormal'
in D3D11HLSLProgram::compileMicrocode at C:\Users\lukas\Documents\GameEngineDevelopment\external\Ogre2.2SDK\RenderSystems\Direct3D11\src\OgreD3D11HLSLProgram.cpp (line 569)
13:35:21: High-level program 700000008PixelShader_ps encountered an error during loading and is thus not supported.
OGRE EXCEPTION(-2147467259:RenderingAPIException): Cannot compile D3D11 high-level shader 700000008PixelShader_ps Errors:
C:\Users\lukas\Documents\GameEngineDevelopment\bin\Debug\700000008PixelShader_ps.hlsl(1070,41-50): error X3004: undeclared identifier 'geomNormal'
in D3D11HLSLProgram::compileMicrocode at C:\Users\lukas\Documents\GameEngineDevelopment\external\Ogre2.2SDK\RenderSystems\Direct3D11\src\OgreD3D11HLSLProgram.cpp (line 569)
13:35:21: OGRE EXCEPTION(-2147467259:RenderingAPIException): Cannot compile D3D11 high-level shader 700000009PixelShader_ps Errors:
C:\Users\lukas\Documents\GameEngineDevelopment\bin\Debug\700000009PixelShader_ps.hlsl(1070,41-50): error X3004: undeclared identifier 'geomNormal'
in D3D11HLSLProgram::compileMicrocode at C:\Users\lukas\Documents\GameEngineDevelopment\external\Ogre2.2SDK\RenderSystems\Direct3D11\src\OgreD3D11HLSLProgram.cpp (line 569)
13:35:21: High-level program 700000009PixelShader_ps encountered an error during loading and is thus not supported.
OGRE EXCEPTION(-2147467259:RenderingAPIException): Cannot compile D3D11 high-level shader 700000009PixelShader_ps Errors:
C:\Users\lukas\Documents\GameEngineDevelopment\bin\Debug\700000009PixelShader_ps.hlsl(1070,41-50): error X3004: undeclared identifier 'geomNormal'
in D3D11HLSLProgram::compileMicrocode at C:\Users\lukas\Documents\GameEngineDevelopment\external\Ogre2.2SDK\RenderSystems\Direct3D11\src\OgreD3D11HLSLProgram.cpp (line 569)
It has been pointed out to me that, unlike our 1.x sister, we lack a simple skeleton that with a few lines one can have Ogre running ASAP on screen.
ExampleProject is too complex for that.
That's my fault for thinking 2.x users come from a 1.x background (Ogre setup is almost the same) and trying to be a perfectionist:
The thing about GameEntityManager and co. is that we don't dictate how you want to do things (you can do your render loop how ever you want), but there are many common mistakes and that's what we teach from Tutorial01 to Tutorial06 and why we provide the "SamplesCommon" framework library.
While one could do things whatever way one wants, I found myself several times having to advise users on how to fix: Performance problems, Stutter, high input latency, lack of determinism (which complicates testing, and in the case of certain applications; it completely destroys them); even if single threaded.
All things that could've been avoided if the base fundamentals were solid.
But being so perfectionist I forget I need to show first how to get a window on screen with no dependencies.
It has been brought to my attention Ogre 2.2 only longer allows to specify the depth buffer format via DepthBuffer::DefaultDepthBufferFormat (which is super tricky and confusing), and that there is no way to disable depth buffer on render windows.
A lot of rendering may actually happen offscreen and then copied to render windows, which means a lot of use cases involve disabling the depth buffer for the render window
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.