Нужно создать фрейм буфер в ОЗУ через обычный malloc например и обращаться к нему как к двумерному массиву:
|
В приведенном мною коде это есть.
Uint32 buffer[screenWidth][screenHeight];
затем достаточно сделать только ОДИН вызов SDL чтобы он весь буфер скопировал в видеопамять и вывел на экран.
|
Так опять же, это делает функция :
Я в курсе, что после каждой записи пикселя в ОЗУ глупо выплёскивать всё это на экран, не дождавшись завершения обновления всей картинки.