Как внедрить в игру только часть кода OpenGL, написанного с использованием SDL? - PullRequest
0 голосов
/ 22 мая 2018

Итак, я делаю игру, похожую на Vector Runner.У меня есть фоновая текстура и пара текстурных объектов, реализованных с использованием SDL.Я хочу повернуть фон, используя glRotate.Я не хочу, чтобы он двигался или что-то в этом роде, я просто хочу иметь другой взгляд на него (похожий на вид от третьего лица) и оставить его таким.Поскольку сейчас все SDL, могу ли я просто создать background.h и .cpp и реализовать OpenGL только там, или мне нужно использовать его через весь код, или есть ли способ сделать это с помощью SDL?

1 Ответ

0 голосов
/ 22 мая 2018

Лично я бы не стал смешивать OpenGL с 2D-кодом типа поверхности SDL.Я бы либо реализовывал спрайты также с помощью OpenGL (быстрее, больше опций для манипулирования), либо использовал функции SDL, где это возможно (самый простой вариант), либо использовал программный рендеринг для поворота фона (очень переносимый и все под вашим контролем).

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

Если вы хотите сделать вращение самостоятельно, вы можете использовать методы наложения текстур и визуализировать их попиксельно.А если фон не перемещается, вам нужно будет сделать это только один раз и сохранить результат в буфере.

SDL также имеет функцию рендеринга, которая дает вам возможность повернуть исходное изображение (без перспективыпараметры трансформации): https://wiki.libsdl.org/SDL_RenderCopyEx

...