- S'ha llevat la carpeta ".vscode" i la merdeta que estava dins
- Afegit mòdul jshader. - Afegit shader al arxiu de dades - Actualitzat makefile per a la ocasió - Afegit lo de afegir caràcter 0 al final si es vol en jfile - Llevat el flag d'executable que tenien tots els arxius, jo que se perqué
This commit is contained in:
22
jdraw8.cpp
Executable file → Normal file
22
jdraw8.cpp
Executable file → Normal file
@@ -2,13 +2,14 @@
|
||||
#include "jfile.h"
|
||||
#include <fstream>
|
||||
#include "gif.h"
|
||||
#include "jshader.h"
|
||||
|
||||
#ifdef GCWZERO
|
||||
#define SCREEN_WIDTH 320
|
||||
#define SCREEN_HEIGHT 240
|
||||
#else
|
||||
#define SCREEN_WIDTH 640
|
||||
#define SCREEN_HEIGHT 480
|
||||
#define SCREEN_WIDTH 960
|
||||
#define SCREEN_HEIGHT 720
|
||||
#endif
|
||||
|
||||
JD8_Surface screen = NULL;
|
||||
@@ -25,6 +26,7 @@ char *fps = (char *)malloc(10);
|
||||
SDL_Window* sdlWindow = NULL;
|
||||
SDL_Renderer* sdlRenderer = NULL;
|
||||
SDL_Texture* sdlTexture = NULL;
|
||||
SDL_Texture* backBuffer = NULL;
|
||||
|
||||
void JD8_Init(const char *title) {
|
||||
screen = (JD8_Surface)calloc( 1, 64000 );
|
||||
@@ -32,10 +34,18 @@ void JD8_Init(const char *title) {
|
||||
pixel_data = (Uint32*)calloc(1, 320 * 200 * 4); // 1048576 );
|
||||
|
||||
sdlWindow = SDL_CreateWindow( title, SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, SCREEN_WIDTH, SCREEN_HEIGHT, SDL_WINDOW_SHOWN );
|
||||
sdlRenderer = SDL_CreateRenderer(sdlWindow, -1, 0);
|
||||
SDL_SetHint(SDL_HINT_RENDER_DRIVER, "opengl");
|
||||
SDL_SetHint(SDL_HINT_RENDER_SCALE_QUALITY, "nearest");
|
||||
sdlRenderer = SDL_CreateRenderer(sdlWindow, -1, SDL_RENDERER_ACCELERATED | SDL_RENDERER_TARGETTEXTURE);
|
||||
|
||||
sdlTexture = SDL_CreateTexture(sdlRenderer, SDL_PIXELFORMAT_ABGR8888, SDL_TEXTUREACCESS_STREAMING, 320, 200);
|
||||
backBuffer = SDL_CreateTexture(sdlRenderer, SDL_PIXELFORMAT_ARGB8888, SDL_TEXTUREACCESS_TARGET, 320, 200);
|
||||
|
||||
int filesize = 0;
|
||||
char *buffer = JF_GetBufferFromResource("crtpi.glsl", filesize, true);
|
||||
|
||||
shader::init(sdlWindow, backBuffer, buffer);
|
||||
free(buffer);
|
||||
}
|
||||
|
||||
void JD8_Quit() {
|
||||
@@ -180,8 +190,10 @@ void JD8_Flip() {
|
||||
}
|
||||
}
|
||||
SDL_UpdateTexture(sdlTexture, NULL, pixel_data, 320 * sizeof(Uint32));
|
||||
SDL_RenderCopy(sdlRenderer, sdlTexture, NULL, &rect);
|
||||
SDL_RenderPresent(sdlRenderer);
|
||||
SDL_SetRenderTarget(sdlRenderer, backBuffer);
|
||||
SDL_RenderCopy(sdlRenderer, sdlTexture, NULL, NULL);
|
||||
shader::render();
|
||||
//SDL_RenderPresent(sdlRenderer);
|
||||
}
|
||||
|
||||
void JD8_FreeSurface(JD8_Surface surface) {
|
||||
|
||||
Reference in New Issue
Block a user