Я пытаюсь изучить SDL2. Основное отличие (как я вижу) от старого SDL и SDL2 состоит в том, что у старого SDL было окно, представленное на нем, все изображения были поверхностями, а все операции с изображениями и блики были поверхностными. В SDL2 у нас есть поверхности и текстуры. Если я правильно понял, поверхности находятся в ОЗУ, а текстуры находятся в графической памяти. Правильно ли это?
Моя цель - сделать объектно-ориентированную оболочку для SDL2, потому что у меня была аналогичная вещь для SDL. Я хочу иметь классное окно и изображение класса (имеет частную текстуру и поверхность). Окно будет содержать содержимое, представленное экземпляром класса изображения, и все блики будут представлять собой изображение для изображения объектов. Как организовать эти операции с изображениями:
- Пиксельная манипуляция должна быть на уровне поверхности?
- Если я хочу скопировать часть одной картинки в другую без ее рендеринга, она должна быть на уровне поверхности?
- Должен ли я заливать поверхность текстурой только тогда, когда я хочу отобразить ее на экране?
- Лучше ли отображать все это на одной поверхности, а затем отображать ее в текстуре окна или отдельно отображать каждую картинку в текстуру окна?
Как правило, когда я должен использовать поверхность и когда следует использовать текстуру?
Спасибо за ваше время, и вся помощь и предложения приветствуются:)