Создание плагина - не могу вызывать функции-члены

Работа со ScriptDragon, чтобы попытаться применить некоторые функции HTC Vive в Skyrim с помощью OpenVR.

На чем я работаю. Умеет инициализировать гарнитуру, так как при отсутствии ошибок возвращается, и указатель на объект гарнитуры не равен нулю, а индикатор vive меняет цвет с красного на зеленый, когда я вхожу в игру.

За работой

void InitHMD(vr::IVRSystem* hmd)
{
    vr::EVRInitError eError = vr::VRInitError_None;
    hmd = vr::VR_Init(&eError, vr::VRApplication_Other);

    if (eError != vr::VRInitError_None)
    {
        PrintNote("Error: %s", eError);
    }
    else
    {
        PrintNote("HMD succesfully initialized");
    }
    //extra chech for my own sanity
    if (hmd == nullptr)
    {
        PrintNote("NULL POINTER HMD");
    }
    else
    {
        PrintNote("HMD pointer set");
    }

}

Запуск текстовых опор игры показывает, что указатель HMD установлен, и он был успешно инициализирован. Полный источник доступен здесь. Когда когда-либо нажата клавиша home, она вызывает функцию-член hmd и внезапно ломается.

Не работает после иници

bool temp = hmd->IsInputFocusCapturedByAnotherProcess();

Что не работает, так это то, что как только я пытаюсь получить доступ к любой из функций-участников, происходит сбой игры, из-за чего я начинаю думать, что я не инициализировал гарнитуру полностью или возникла проблема с выделением памяти.

У меня есть свойства компоновщика и включает настройки и все внешние файлы, где они должны быть.

ScriptDragon не должен быть проблемой, так как кто-то еще сделал нечто подобное с Razer Hydra и в своем источнике, может вызывать функции-члены внутри API.

0 ответов

Другие вопросы по тегам