Search
Write a publication
Pull to refresh
7
0
Send message
Метод create вызывался сразу после объявления RenderTexture, но так как исключение выскакивало именно на строке объявления RenderTexture, в вопрос его не писал.
Спасибо Вам за помощь!

Я обновил Visual Studio, после обновил SFML до версии 2.5.0. Насколько я понял, проблема была не в версии SFML, а в настройке его. Я допустил несколько ошибок при установке SFML, но теперь все нормально и исключение больше не выскакивает.

Еще раз спасибо Вам за советы!
Достаточно интересная идея, возможно в будущем реализую её.
Релиз добавил. GitHub'ом пользуюсь всего неделю, по этому что такое «бинарник» не знаю. Если объясните что это такое, постараюсь обязательно добавить.
Я подумывал реализовать все немного по-другому. С помощью графиков функций построить отдельные части тела(голову, ноги, туловище) и потом, с помощью поворота и передвижения данных текстур создать иллюзию передвижения NPC.
Данный вопрос я задал на stackoverflow, но ответа не дождался. Если вы мне поможете я буду несказанно благодарен.

P.S. Там вы найдете и пример кода в котором выскакивает исключение, и скриншот с самим исключением.

Спасибо большое за советы! Постараюсь пояснить, какие возникают сложности с SFML.


У меня была следующая идея по оптимизации игры: я заметил что низкий FPS вызван отрисовкой фрактальных деревьев, так как отрисовать ~20-30 веток разных размеров и толщины не простая задача. Я настроил генерацию деревьев так, чтобы в кадре помещалось максимум 3 дерева(при таком количестве был достаточно стабильный FPS). Но вот какая идея мне пришла в голову: что если просто каждому дереву выдать свой спрайт, текстура для которого будет генерироваться при создании дерева? В таком случае, просадка FPS была бы только при генерации планеты. Но когда я решил реализовать это, я столкнулся с проблемой SFML: чтобы сгенерировать текстуру, я использовал RenderTexture. Если функцию, в которой объявляется RenderTexture вызывать из функции main, все отлично работает. Но если же вызывать непосредственно из конструктора класса выскакивает исключение. Я пытался бороться с ним, но увы, решения не нашел. Я пошел другим путем: я создал массив текстур, который хранил текстуры всех деревьев. Но опять же, SFML меня и тут удивил: при попытке загрузить текстуру из массива, загружалась абсолютно пустая текстура. Из-за вот таких проблем, FPS в игре достаточно низкий, а например текстур планет в космосе всего 12(опять же, генерация текстур при входе в сектор не может быть произведена, выскакивает исключение).


Из-за таких неудобных моментов я и подумываю перенести проект на какой-нибудь движок.


В c++ с потоками я не работал, но например на java я реализовывал потоки. Раньше, когда я создавал игры на Яве, мне нужны были 2-3 потока. Чаще всего первый отвечал за логику, второй за отрисовку, а третий за музыку. При создании же данной игры я хотел создать отдельный поток для отрисовки деревьев, но решил оставить это на потом.


Ещё раз спасибо большое за Ваши советы, обязательно посмотрю видеоуроки про на c++.

Достаточно интересная идея, но проблема в том, что FPS на планете и так не достаточно высокий из-за фрактальных деревьев. Также, для NPC нужны будут анимации, которые, боюсь, не смогу выразить через графики различных формул. Спасибо за идею, задумаюсь над её реализацией.
Спасибо что указали на мою ошибку. Я имел ввиду график квадратного корня из x.

Information

Rating
Does not participate
Registered
Activity