diff --git a/applications/reconstruct/include/ftl/ray_cast_util.hpp b/applications/reconstruct/include/ftl/ray_cast_util.hpp index 911ad3d6b789524919da9c379b1753e58c0ca355..fdf932a5c6d9342768f7f45e2609e2df3c7539ce 100644 --- a/applications/reconstruct/include/ftl/ray_cast_util.hpp +++ b/applications/reconstruct/include/ftl/ray_cast_util.hpp @@ -196,9 +196,9 @@ struct RayCastData { } __device__ - void traverseCoarseGridSimpleSampleAll(const ftl::voxhash::HashData& hash, const float3& worldCamPos, const float3& worldDir, const float3& camDir, const int3& dTid, float minInterval, float maxInterval) const + void traverseCoarseGridSimpleSampleAll(const ftl::voxhash::HashData& hash, const RayCastParams& rayCastParams, const float3& worldCamPos, const float3& worldDir, const float3& camDir, const int3& dTid, float minInterval, float maxInterval) const { - const RayCastParams& rayCastParams = c_rayCastParams; + //const RayCastParams& rayCastParams = c_rayCastParams; // Last Sample RayCastSample lastSample; lastSample.sdf = 0.0f; lastSample.alpha = 0.0f; lastSample.weight = 0; // lastSample.color = int3(0, 0, 0); diff --git a/applications/reconstruct/src/ray_cast_sdf.cu b/applications/reconstruct/src/ray_cast_sdf.cu index 709f6534b5d45871502bb2ff2ccc573849335e2c..09795894869cdf6138b265020d97a5cd25a443dd 100644 --- a/applications/reconstruct/src/ray_cast_sdf.cu +++ b/applications/reconstruct/src/ray_cast_sdf.cu @@ -15,12 +15,12 @@ //texture<float, cudaTextureType2D, cudaReadModeElementType> rayMinTextureRef; //texture<float, cudaTextureType2D, cudaReadModeElementType> rayMaxTextureRef; -__global__ void renderKernel(ftl::voxhash::HashData hashData, RayCastData rayCastData) +__global__ void renderKernel(ftl::voxhash::HashData hashData, RayCastData rayCastData, RayCastParams rayCastParams) { const unsigned int x = blockIdx.x*blockDim.x + threadIdx.x; const unsigned int y = blockIdx.y*blockDim.y + threadIdx.y; - const RayCastParams& rayCastParams = c_rayCastParams; + //const RayCastParams& rayCastParams = c_rayCastParams; if (x < rayCastParams.m_width && y < rayCastParams.m_height) { rayCastData.d_depth[y*rayCastParams.m_width+x] = MINF; @@ -52,7 +52,7 @@ __global__ void renderKernel(ftl::voxhash::HashData hashData, RayCastData rayCas // printf("ERROR (%d,%d): [ %f, %f ]\n", x, y, minInterval, maxInterval); //} - rayCastData.traverseCoarseGridSimpleSampleAll(hashData, worldCamPos, worldDir, camDir, make_int3(x,y,1), minInterval, maxInterval); + rayCastData.traverseCoarseGridSimpleSampleAll(hashData, rayCastParams, worldCamPos, worldDir, camDir, make_int3(x,y,1), minInterval, maxInterval); } } @@ -68,7 +68,7 @@ extern "C" void renderCS(const ftl::voxhash::HashData& hashData, const RayCastDa //printf("Ray casting render...\n"); - renderKernel<<<gridSize, blockSize, 0, stream>>>(hashData, rayCastData); + renderKernel<<<gridSize, blockSize, 0, stream>>>(hashData, rayCastData, rayCastParams); #ifdef _DEBUG cudaSafeCall(cudaDeviceSynchronize());