本文整理汇总了C++中WindowManager::Create方法的典型用法代码示例。如果您正苦于以下问题:C++ WindowManager::Create方法的具体用法?C++ WindowManager::Create怎么用?C++ WindowManager::Create使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WindowManager
的用法示例。
在下文中一共展示了WindowManager::Create方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Initialize
/// @copydoc RendererInitialization::Initialize()
bool RendererInitializationWin::Initialize()
{
WindowManager* pWindowManager = WindowManager::GetStaticInstance();
if( !pWindowManager )
{
HELIUM_TRACE(
TraceLevels::Info,
( TXT( "RendererInitializationWin::Initialize(): No window manager created. A window manager is necessary for " )
TXT( "RendererInitializationWin execution.\n" ) ) );
return false;
}
if( !D3D9Renderer::CreateStaticInstance() )
{
return false;
}
Renderer* pRenderer = D3D9Renderer::GetStaticInstance();
HELIUM_ASSERT( pRenderer );
if( !pRenderer->Initialize() )
{
Renderer::DestroyStaticInstance();
return false;
}
// Create the main application window.
Config& rConfig = Config::GetStaticInstance();
StrongPtr< GraphicsConfig > spGraphicsConfig(
rConfig.GetConfigObject< GraphicsConfig >( Name( TXT( "GraphicsConfig" ) ) ) );
HELIUM_ASSERT( spGraphicsConfig );
uint32_t displayWidth = spGraphicsConfig->GetWidth();
uint32_t displayHeight = spGraphicsConfig->GetHeight();
bool bFullscreen = spGraphicsConfig->GetFullscreen();
bool bVsync = spGraphicsConfig->GetVsync();
Window::Parameters windowParameters;
windowParameters.pTitle = TXT( "Helium" );
windowParameters.width = displayWidth;
windowParameters.height = displayHeight;
windowParameters.bFullscreen = bFullscreen;
m_pMainWindow = pWindowManager->Create( windowParameters );
HELIUM_ASSERT( m_pMainWindow );
if( !m_pMainWindow )
{
HELIUM_TRACE( TraceLevels::Error, TXT( "Failed to create main application window.\n" ) );
return false;
}
m_pMainWindow->SetOnDestroyed( Delegate<Window*>( this, &RendererInitializationWin::OnMainWindowDestroyed ) );
Renderer::ContextInitParameters contextInitParams;
contextInitParams.pWindow = m_pMainWindow->GetHandle();
contextInitParams.displayWidth = displayWidth;
contextInitParams.displayHeight = displayHeight;
contextInitParams.bFullscreen = bFullscreen;
contextInitParams.bVsync = bVsync;
bool bContextCreateResult = pRenderer->CreateMainContext( contextInitParams );
HELIUM_ASSERT( bContextCreateResult );
if( !bContextCreateResult )
{
HELIUM_TRACE( TraceLevels::Error, TXT( "Failed to create main renderer context.\n" ) );
return false;
}
// Create and initialize the render resource manager.
RenderResourceManager& rRenderResourceManager = RenderResourceManager::GetStaticInstance();
rRenderResourceManager.Initialize();
// Create and initialize the dynamic drawing interface.
DynamicDrawer& rDynamicDrawer = DynamicDrawer::GetStaticInstance();
if( !rDynamicDrawer.Initialize() )
{
HELIUM_TRACE( TraceLevels::Error, TXT( "Failed to initialize dynamic drawing support.\n" ) );
return false;
}
return true;
}