Implémentation du raytracing pour Global Memory/Shared Memory/Constant Memory
[GPU.git] / WCudaMSE / Student_Cuda_Image / src / cpp / core / 04_RayTracing / moo / device / RayTracingDevice.h
1 #ifndef RAY_TRACING_DEVICE_H
2 #define RAY_TRACING_DEVICE_H
3
4 #include "ConstantMemoryLink.h"
5
6 #include "Sphere.h"
7 #include "RayTracingCommon.h"
8
9 #if CURRENT_MEMORY_MODEL == MEMORY_MODEL_GLOBAL or CURRENT_MEMORY_MODEL == MEMORY_MODEL_SHARED
10
11 __global__
12 void rayTracing(uchar4* ptrDevPixels, const Sphere* ptrDevSpheres, int w, int h, float t);
13
14 #elif CURRENT_MEMORY_MODEL == MEMORY_MODEL_CONSTANT
15
16 /**
17 * Accès à la mémoire constante contenant les sphères.
18 */
19 ConstantMemoryLink constantMemorySpheresLink();
20
21 __global__
22 void rayTracing(uchar4* ptrDevPixels, int w, int h, float t);
23
24 #endif
25
26 #endif