renderOneFrame never returns

A place for users of OGRE to discuss ideas and experiences of utilitising OGRE in their games / demos / applications.
Post Reply
petrotheos
Gnoblar
Posts: 11
Joined: Mon Sep 18, 2017 5:37 pm

renderOneFrame never returns

Post by petrotheos » Fri Sep 22, 2017 5:32 pm

I used breakpoints it blocks in this line.

Code: Select all

void RenderSystem::_updateAllRenderTargets(bool swapBuffers)
{
	// Update all in order of priority
	// This ensures render-to-texture targets get updated before render windows
	RenderTargetPriorityMap::iterator itarg, itargend;
	itargend = mPrioritisedRenderTargets.end();
	for(itarg = mPrioritisedRenderTargets.begin(); itarg != itargend; ++itarg)
	{
		[color=#FF0000]if(itarg->second->isActive() && itarg->second->isAutoUpdated())
			itarg->second->update(swapBuffers);[/color]
	}
}
0 x

frostbyte
Orc Shaman
Posts: 737
Joined: Fri May 31, 2013 2:28 am
x 14

Re: renderOneFrame never returns

Post by frostbyte » Fri Sep 22, 2017 8:53 pm

afaik, ogre does'nt suffer from this sort of alpha problems/bugs( it's mostly the users fault )
my wild guess is that you may have an endless loop cycle in a renderQueue/renderTarget Listener that you've implemented
other than that it can be faulty compilation which may result in memory leaks leading to this, but usually ogre will just crash in this sort of situation, always check ogre.log for hints, good luck
0 x
the woods are lovely dark and deep
but i have promises to keep
and miles to code before i sleep
and miles to code before i sleep..

coolest videos link( two minutes paper )...
https://www.youtube.com/user/keeroyz/videos

petrotheos
Gnoblar
Posts: 11
Joined: Mon Sep 18, 2017 5:37 pm

Re: renderOneFrame never returns

Post by petrotheos » Sat Sep 23, 2017 10:35 am

I haven't implemented any.
I use UWP app with SwapChainPanel not CoreWindow to use XAML UI. Maybe there is problem with that?

Code: Select all

miscParams["externalWindowHandle"] = Ogre::StringConverter::toString((uintptr_t)(void *)swapChainPanel);
miscParams["windowType"] = "SwapChainPanel";
0 x

petrotheos
Gnoblar
Posts: 11
Joined: Mon Sep 18, 2017 5:37 pm

Re: renderOneFrame never returns

Post by petrotheos » Sun Jan 21, 2018 10:22 am

I placed the render inside this and runs it on the UI thread and it works.

Code: Select all

Windows::ApplicationModel::Core::CoreApplication::MainView->CoreWindow->Dispatcher->RunAsync(CoreDispatcherPriority::High, ref new DispatchedHandler([=]()
{
	mCriticalSection.Lock();
	mRoot->renderOneFrame();
	mCriticalSection.Unlock();
}));


Last bumped by petrotheos on Sun Jan 21, 2018 10:22 am.
0 x

Post Reply