metaforce/specter/lib/Specter.cpp

34 lines
1.1 KiB
C++
Raw Normal View History

2015-11-26 00:24:01 +00:00
#include "Specter/ViewSystem.hpp"
namespace Specter
{
static LogVisor::LogModule Log("Specter");
void ViewSystem::init(boo::IGraphicsDataFactory* factory, FontCache* fcache)
{
m_factory = factory;
2015-11-26 07:35:43 +00:00
m_mainFont = fcache->prepMainFont(factory, false, 10.0, 72);
m_monoFont = fcache->prepMonoFont(factory, false, 10.0, 72);
2015-11-26 00:24:01 +00:00
switch (factory->platform())
{
case boo::IGraphicsDataFactory::Platform::OGL:
init<boo::GLDataFactory>(static_cast<boo::GLDataFactory*>(factory), fcache);
break;
#if _WIN32
case boo::IGraphicsDataFactory::Platform::D3D11:
case boo::IGraphicsDataFactory::Platform::D3D12:
init<boo::ID3DDataFactory>(static_cast<boo::ID3DDataFactory*>(factory), fcache);
break;
#elif BOO_HAS_METAL
case boo::IGraphicsDataFactory::Platform::Metal:
init<boo::MetalDataFactory>(static_cast<boo::MetalDataFactory*>(factory), fcache);
break;
#endif
default:
Log.report(LogVisor::FatalError, _S("unable to init view system for %s"), factory->platformName());
}
2015-11-26 07:35:43 +00:00
fcache->closeBuiltinFonts();
2015-11-26 00:24:01 +00:00
}
}