2 #include "RendererOpenGL.h"
3 #include "VertexGeometry.h"
4 #include "Primitives.h"
6 #include "ParticleSystemCuda.h"
7 #include "CudaTexture.h"
10 #include "GLM/gtc.hpp"
11 #include "GLM/gtx/type_ptr.hpp"
32 void resize(
int width,
int height);
36 void render(
float elapsedTime);
155 GLuint volumeTextureHandle;
157 GLuint pcdTextureHandle;
160 GLuint transferTextureHandle;
162 GLuint transferTextureHandle2D;
164 GLuint tfParticleHandle;
167 bool transferFunction;
182 glm::vec4* quadVertices;
192 void bindRayCastingTextures();
194 void unbindRayCastingTextures();
200 View* m_volumeBricks_front;
201 View* m_volumeBricks_back;
209 FBO::FBOPtr fbo_back;
210 FBO::FBOPtr fbo_front;
215 View* m_raycasting2D;
230 unsigned int bspile_weights;
231 unsigned int bspile_dev_weights;
239 void initPixelBuffer();
242 float invViewMatrix[12];
247 struct cudaGraphicsResource *cuda_pbo_resource;
249 void AfterLoadingOfVolume(
int width,
int height,
int depth);