Я пытаюсь добавить графический интерфейс для упрощения редактирования уровня в нашем игровом движке. Мы используем SFML для всех основных компонентов (управление окнами, события ввода и т. Д.). Я выбрал AntTweakBar, потому что это хорошо известная библиотека с несколькими примерами. Я следил за учебником по адресу AntTweakBar's websiteAntTweakBar не регистрирует события мыши SFML
Мне удалось нарисовать простой бар с этими примерами. Однако события мыши, полученные SFML, не регистрируются функцией TwEventSDL()
от AntTweakBar. Ниже приведен примерный код для ввода:
sf::Event event;
while (_pWindow->pollEvent(event))
{
// Check if the event should be handled by AntTweakBar
int handled = TwEventSFML(&event, 2, 3); // for SFML version 2.3
if (!handled){
switch (event.type)
{
case sf::Event::MouseButtonPressed: // To check whether SFML received mouse button events properly
if (event.mouseButton.button == sf::Mouse::Button::Left){
std::cout << "Left button pressed" << std::endl;
std::cout << "x: " << event.mouseButton.x << std::endl;
std::cout << "y: " << event.mouseButton.y << std::endl;
}
}
}
else{ //To check whether TwEventSFML received events
std::cout << "FINALLY!" << std::endl;
}
Когда я нажимаю кнопки, я вижу «НАКОНЕЦ!». появление. Я также вижу, что мои щелчки мыши получены SFML. Однако, когда я нажимаю на элемент AntTweakBar (будь то кнопка или раздел справки), он не регистрирует его. (Кроме того, я не вижу «НАКОНЕЦ!», Когда я использую мышь).
Любая помощь или идеи будут оценены.