Renderização de pixels a partir da matriz de valores RGB no SDL 1.2?

Estou trabalhando em um emulador de NES agora e estou tendo problemas para descobrir como renderizar os pixels. Estou usando uma matriz tridimensional para armazenar o valor RGB de cada pixel. A definição da matriz é assim para o tamanho da tela de 256 x 224:

byte screenData[224][256][3];

Por exemplo,[0][0][0] mantém o valor azul,[0][0][1] mantém os valores verdes e[0][0][2] mantém o valor vermelho do pixel na posição da tela[0][0].

Quando a bandeira vblank fica alta, preciso renderizar a tela. Quando o SDL for renderizar a tela, a matriz screenData estará cheia dos valores RGB de cada pixel. Consegui encontrar uma função chamadaSDL_CreateRGBSurfaceFrom que parecia funcionar para o que eu quero fazer. No entanto, todos os exemplos que eu vi usam matrizes unidimensionais para os valores RGB e não uma matriz tridimensional.

Qual seria a melhor maneira de renderizar meus pixels? Também seria bom se a função me permitisse redimensionar a superfície de alguma forma, para não precisar usar um tamanho de janela de 256 x 224.

questionAnswers(2)

yourAnswerToTheQuestion