SFML: положение пользовательского курсора смещается относительно позиции фактического курсора [duplicate]

Пакет Visual Studio NuGet необходимо обновить для новой версии набора инструментов

У меня просто возникла проблема с подключением libpng с Visual Studio 2013. Проблема в том, что в файле пакета были только библиотеки для Visual Studio 2010 и 2012.

Правильное решение - надеяться, что разработчик выпустит обновленный пакет и затем обновит его, но он работал для меня, взломав дополнительную настройку для VS2013, указав на файлы библиотеки VS2012.

Я отредактировал пакет (в папке packages внутри каталога решения), найдя packagename\build\native\packagename.targets и внутри этого файла, скопировав все секции v110. Я изменил v110 на v120 в полях условий только очень осторожно, чтобы пути с именами файлов были все как v110. Это просто позволило Visual Studio 2013 подключиться к библиотекам на 2012 год, и в этом случае он работал.

0
задан Mystic 4 February 2014 в 15:35
поделиться

1 ответ

Вы должны вызвать window.mapPixelToCoords(), чтобы преобразовать позицию вашего пикселя в систему координат вашего представления.

sf::Vector2i pixel_pos = sf::Mouse::getPosition(window.mywindow);
sf::Vector2f coord_pos = window.mywindow.mapPixelToCoords(pixel_pos);

И как общий совет: не используйте публичные классы - mywindow и playerSprite не должны быть доступны снаружи.

3
ответ дан Lukas 1 September 2018 в 10:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: