forked from jaildesigner-jailgames/jaildoctors_dilemma
Treballant en la caché de les paletes
This commit is contained in:
@@ -6,6 +6,11 @@
|
||||
#include <memory>
|
||||
#include <string>
|
||||
|
||||
// Alias
|
||||
using Palette = std::array<Uint32, 256>;
|
||||
|
||||
Palette loadPalette(const std::string &file_path);
|
||||
|
||||
struct SurfaceData
|
||||
{
|
||||
Uint8 *data; // Listado de indices de la paleta que conforman la imagen almacenada
|
||||
@@ -61,7 +66,7 @@ class Surface
|
||||
{
|
||||
private:
|
||||
std::shared_ptr<SurfaceData> surface_data_; // Datos a dibujar
|
||||
std::array<Uint32, 256> palette_; // Paleta para volcar la SurfaceData a una Textura
|
||||
Palette palette_; // Paleta para volcar la SurfaceData a una Textura
|
||||
int transparent_color_; // Indice de la paleta que se omite en la copia de datos
|
||||
|
||||
public:
|
||||
@@ -77,6 +82,7 @@ public:
|
||||
|
||||
// Carga una paleta desde un archivo
|
||||
void loadPalette(const std::string &file_path);
|
||||
void loadPalette(Palette palette);
|
||||
|
||||
// Copia una región de la SurfaceData de origen a la SurfaceData de destino
|
||||
void render(int dx, int dy, int sx, int sy, int w, int h);
|
||||
|
||||
Reference in New Issue
Block a user