Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //2011-0301
- //#include <string.h>
- #include <SDL2/SDL.h>
- //const int SCREEN_WIDTH = 1280;
- //const int SCREEN_HEIGHT = 720;
- #define SCREEN_WIDTH 1280
- #define SCREEN_HEIGHT 720
- int main(int argc, char **argv) {
- bool quit = false;
- if(SDL_Init(SDL_INIT_VIDEO | SDL_INIT_JOYSTICK) < 0) {
- printf("SDL init failed: %s\n", SDL_GetError());
- return 1;
- }
- SDL_Window* window = SDL_CreateWindow(NULL, SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, SCREEN_WIDTH, SCREEN_HEIGHT, SDL_WINDOW_SHOWN);
- SDL_Renderer * renderer = SDL_CreateRenderer(window, -1, SDL_RENDERER_SOFTWARE);
- SDL_Texture * texture = SDL_CreateTexture(renderer, SDL_PIXELFORMAT_RGBA8888, SDL_TEXTUREACCESS_STATIC, SCREEN_WIDTH, SCREEN_HEIGHT);
- Uint32 pixels[SCREEN_WIDTH * SCREEN_HEIGHT];
- memset(pixels, 255, SCREEN_WIDTH * SCREEN_HEIGHT * 4);
- int j;
- for (j = 0; j < SDL_NumJoysticks(); j++) {
- if (SDL_JoystickOpen(j) == NULL) {
- printf("SDL_JoystickOpen: %s\n", SDL_GetError());
- SDL_Quit();
- return 1;
- }
- }
- while (!quit) {
- SDL_UpdateTexture(texture, NULL, pixels, SCREEN_WIDTH * 4);
- SDL_Event event;
- while (SDL_PollEvent(&event)) {
- //printf("event.type=%d; fingerdown=%d; fingermotion=%d", event.type, SDL_FINGERDOWN, SDL_FINGERMOTION);
- if (event.type == SDL_FINGERDOWN || event.type == SDL_FINGERMOTION) {
- int touchX = event.tfinger.x * SCREEN_WIDTH;
- int touchY = event.tfinger.y * SCREEN_HEIGHT;
- pixels[touchY * SCREEN_WIDTH + touchX] = 0;
- } else if (event.type == SDL_JOYBUTTONDOWN) {
- if(event.jbutton.button == SDL_CONTROLLER_BUTTON_RIGHTSHOULDER)
- quit = true;
- }
- }
- SDL_RenderClear(renderer);
- SDL_RenderCopy(renderer, texture, NULL, NULL);
- SDL_RenderPresent(renderer);
- //SDL_Delay(25);
- }
- //delete[] pixels;
- SDL_DestroyTexture(texture);
- SDL_DestroyRenderer(renderer);
- SDL_DestroyWindow(window);
- SDL_Quit();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement