Exemplo n.º 1
0
CSoundManager::CSoundManager()
	: m_Context(nullptr), m_Device(nullptr), m_ALSourceBuffer(nullptr),
	m_CurrentTune(nullptr), m_CurrentEnvirons(nullptr),
	m_Worker(nullptr), m_DistressMutex(), m_PlayListItems(nullptr), m_SoundGroups(),
	m_Gain(.5f), m_MusicGain(.5f), m_AmbientGain(.5f), m_ActionGain(.5f), m_UIGain(.5f),
	m_Enabled(false), m_BufferSize(98304), m_BufferCount(50),
	m_SoundEnabled(true), m_MusicEnabled(true), m_MusicPaused(false),
	m_AmbientPaused(false), m_ActionPaused(false),
	m_RunningPlaylist(false), m_PlayingPlaylist(false), m_LoopingPlaylist(false),
	m_PlaylistGap(0), m_DistressErrCount(0), m_DistressTime(0)
{
	CFG_GET_VAL("sound.mastergain", m_Gain);
	CFG_GET_VAL("sound.musicgain", m_MusicGain);
	CFG_GET_VAL("sound.ambientgain", m_AmbientGain);
	CFG_GET_VAL("sound.actiongain", m_ActionGain);
	CFG_GET_VAL("sound.uigain", m_UIGain);

	AlcInit();

	if (m_Enabled)
	{
		SetMasterGain(m_Gain);
		InitListener();

		m_PlayListItems = new PlayList;
	}

	if (!CXeromyces::AddValidator(g_VFS, "sound_group", "audio/sound_group.rng"))
		LOGERROR("CSoundManager: failed to load grammar file 'audio/sound_group.rng'");

	RegisterFileReloadFunc(ReloadChangedFileCB, this);
}
Exemplo n.º 2
0
	CSimulation2Impl(CUnitManager* unitManager, CTerrain* terrain) :
		m_SimContext(), m_ComponentManager(m_SimContext), m_EnableOOSLog(false)
	{
		m_SimContext.m_UnitManager = unitManager;
		m_SimContext.m_Terrain = terrain;
		m_ComponentManager.LoadComponentTypes();

		RegisterFileReloadFunc(ReloadChangedFileCB, this);

//		m_EnableOOSLog = true; // TODO: this should be a command-line flag or similar
	}
Exemplo n.º 3
0
CGUIManager::CGUIManager()
{
	m_ScriptRuntime = g_ScriptRuntime;
	m_ScriptInterface.reset(new ScriptInterface("Engine", "GUIManager", m_ScriptRuntime));
	m_ScriptInterface->SetCallbackData(this);
	m_ScriptInterface->LoadGlobalScripts();

	if (!CXeromyces::AddValidator(g_VFS, "gui_page", "gui/gui_page.rng"))
		LOGERROR("CGUIManager: failed to load GUI page grammar file 'gui/gui_page.rng'");
	if (!CXeromyces::AddValidator(g_VFS, "gui", "gui/gui.rng"))
		LOGERROR("CGUIManager: failed to load GUI XML grammar file 'gui/gui.rng'");

	RegisterFileReloadFunc(ReloadChangedFileCB, this);
}
Exemplo n.º 4
0
	CSimulation2Impl(CUnitManager* unitManager, shared_ptr<ScriptRuntime> rt, CTerrain* terrain) :
		m_SimContext(), m_ComponentManager(m_SimContext, rt),
		m_EnableOOSLog(false), m_EnableSerializationTest(false)
	{
		m_SimContext.m_UnitManager = unitManager;
		m_SimContext.m_Terrain = terrain;
		m_ComponentManager.LoadComponentTypes();

		RegisterFileReloadFunc(ReloadChangedFileCB, this);

		// Tests won't have config initialised
		if (CConfigDB::IsInitialised())
		{
			CFG_GET_VAL("ooslog", Bool, m_EnableOOSLog);
			CFG_GET_VAL("serializationtest", Bool, m_EnableSerializationTest);
		}
	}
Exemplo n.º 5
0
CShaderManager::CShaderManager()
{
#if USE_SHADER_XML_VALIDATION
    {
        TIMER_ACCRUE(tc_ShaderValidation);
        CVFSFile grammar;
        if (grammar.Load(g_VFS, L"shaders/program.rng") != PSRETURN_OK)
            LOGERROR("Failed to read grammar shaders/program.rng");
        else
        {
            if (!m_Validator.LoadGrammar(grammar.GetAsString()))
                LOGERROR("Failed to load grammar shaders/program.rng");
        }
    }
#endif

    // Allow hotloading of textures
    RegisterFileReloadFunc(ReloadChangedFileCB, this);
}
Exemplo n.º 6
0
L10n::L10n()
	: currentLocaleIsOriginalGameLocale(false), useLongStrings(false), dictionary(new tinygettext::Dictionary())
{
	// Determine whether or not to print tinygettext messages to the standard
	// error output, which it tinygettext’s default behavior, but not ours.
	bool tinygettext_debug = false;
	CFG_GET_VAL("tinygettext.debug", tinygettext_debug);
	if (!tinygettext_debug)
	{
		tinygettext::Log::log_info_callback = 0;
		tinygettext::Log::log_warning_callback = 0;
		tinygettext::Log::log_error_callback = 0;
	}

	LoadListOfAvailableLocales();
	ReevaluateCurrentLocaleAndReload();

	// Handle hotloading
	RegisterFileReloadFunc(ReloadChangedFileCB, this);
}
Exemplo n.º 7
0
CParticleManager::CParticleManager() :
	m_CurrentTime(0.f)
{
	RegisterFileReloadFunc(ReloadChangedFileCB, this);
}
Exemplo n.º 8
0
	CColladaManagerImpl(const PIVFS& vfs)
		: dll("Collada"), m_VFS(vfs), m_skeletonHashInvalidated(true)
	{
		// Support hotloading
		RegisterFileReloadFunc(ReloadChangedFileCB, this);
	}
Exemplo n.º 9
0
CObjectManager::CObjectManager(CMeshManager& meshManager, CSkeletonAnimManager& skeletonAnimManager, CSimulation2& simulation)
: m_MeshManager(meshManager), m_SkeletonAnimManager(skeletonAnimManager), m_Simulation(simulation)
{
	RegisterFileReloadFunc(ReloadChangedFileCB, this);
}