summaryrefslogtreecommitdiff
path: root/main.cu
blob: 2b1b180d7fb423ec49fc78b7c225e498aa144fa8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include <stdio.h>
#include <stdint.h>
#include <cuda_runtime.h>
#include <string.h>

#include "raylib.h"

__global__ void test_image(uint8_t *image);

int main() {
  const int size_x = 100;
  const int size_y = 100;
  uint8_t *image_d;
  Image image = GenImageColor(size_x, size_y, BLUE);
  SetTraceLogLevel(LOG_ERROR);

  InitWindow(size_x, size_y, "cuda teseteroni");

  cudaMalloc((void **)&image_d, 100 * 100 * 4);
  test_image<<<1, dim3(3,3)>>>(image_d); 
  cudaDeviceSynchronize();
  //for(;;);
  
  //if(!IsWindowFullscreen()) ToggleFullscreen();

  while(!WindowShouldClose()) {
    cudaMemcpy(image.data, (void **)image_d, 100 * 100 * 4, cudaMemcpyDeviceToHost);
    //memset(image.data, (int32_t)0x0000ff, 100 * 100 * 4);
    BeginDrawing();
    DrawTexture(LoadTextureFromImage(image), 0, 0, WHITE);
    EndDrawing();
  }
  
  



  return 0;
}