Созданные ответы форума
-
АвторСообщения
-
Проблема уже решена. Причиной этого было то, что присвоение камеры далеко находилось от движения моего спрайта
Тогда, пожалуйста, весь код скиньте
Посмотрите на этот код, может поможет, здесь я привёл с совпадением чисел int из двух списков
C++12345678910111213list <int> lst1, lst2;list <int>::iterator it1, it2;for (it1 = lst1.begin(); it1 != lst1.end(); it1++){for (it2 = lst2.begin(); it2 != lst2.end(); it2++){if (*it1 == *it2){std::cout << "Что-то совпало\n";}}}Может вам нужно перевести координаты мыши?
C++12Vector2i pixelPos = Mouse::getPosition(window);//забираем коорд курсораVector2f pos = window.mapPixelToCoords(pixelPos);//переводим их в игровые (уходим от коорд окна)У меня в консольке долго доходит информация из потока, поток же выполняется в цикле “Пока окно открыто”. Пришлось использовать потоки для событий, к примеру, у меня щас есть меню, чтобы не грузить основной потом main, я решил создал ещё один поток для оживления кнопок, что-то типа подсветки и т.п. Ну если всё делать в основном потоке, получается, что чем больше проверок и самого кода, тем медленнее выводится информация в консоль и замедляется работа программы. Вот такие вот дела.
Здесь может быть много вариантов, скиньте код. Возможно лаги из-за того, что создаёте карту в цикле, и да, игра будет становиться всё медленнее и медленнее, так как строки кода увеличиваются, при этом будет лагать, а в процессах всё в порядке, памяти мало занимает. Чтобы код читался быстрее, нужно использовать потоки, чтобы параллельно выполнялось, тогда и скорость быстрей будет. Но всё же скиньте код, а то так не понятно, что там
C++1thread.terminate();Этот метод мне помог, но иногда при закрытии окна зависает консоль, странно
Если что – sf::Thread находится у меня в самом классе, а не в main
Неа, всё равно та же ошибка
Вложения:
You must be logged in to view attached files.Видимо sf::String вы объявляете в заголовочном файле .h. Если это так, то вы этот файл не можете подключать более одного раза, ибо компилятор будет ругается.
Спасибо Вам огромное!!! Дай Бог Вам здоровья и счастья))
1 точка – позиция спрайта, 2 точка – позиция курсора. В моём случае есть только одна точка – позиция спрайта. Имелось в виду, что спрайт двигался от одной точки к другой по вектору нормали, а у меня второй точки нет, есть только одна – позиция спрайта
Я всегда знаю позицию моего спрайта, но когда спрайт поворачивается, то его определённые части, к примеру пускай это будет лоб танка, не понятно как выяснить. И в уроках было показано направление от одной очке к другой, а если у меня нет этой другой точки, есть только одна, что делать…
-
АвторСообщения