Update krov_engine_main.cu

This commit is contained in:
waternine9 2022-02-09 21:48:41 -05:00
parent d8b69f01c8
commit 7fdacd4514

View File

@ -21,9 +21,8 @@
#include <curand_kernel.h> #include <curand_kernel.h>
#include "cudamathOld.cuh" #include "cudamathOld.cuh"
#include <thrust/device_vector.h> #include <thrust/device_vector.h>
#include "OpenImageDenoise/oidn.hpp"
#define RESOLUTION 512 #define RESOLUTION 512
#define ALLOC_MEM_TRIS_NUM 800 #define ALLOC_MEM_TRIS_NUM 200
__host__ __device__ struct Triangle __host__ __device__ struct Triangle
{ {
public: public:
@ -341,7 +340,7 @@ void main()
srand(time(NULL)); srand(time(NULL));
Mesh mesh; Mesh mesh;
mesh.triangles = std::vector<Triangle>(ALLOC_MEM_TRIS_NUM); mesh.triangles = std::vector<Triangle>(ALLOC_MEM_TRIS_NUM);
loadFromObjectFile("C:/Users/arthu/ObjFiles/helmet.obj", mesh.triangles); loadFromObjectFile("DIRECTORY TO YOUR OBJECT FILE", mesh.triangles);
cv::Mat canvas; cv::Mat canvas;
glm::mat4 projection = glm::perspectiveFov(glm::half_pi<float>() / 2.0f, 2.0f, 2.0f, 0.01f, 100.0f); glm::mat4 projection = glm::perspectiveFov(glm::half_pi<float>() / 2.0f, 2.0f, 2.0f, 0.01f, 100.0f);
@ -356,9 +355,6 @@ void main()
float cameraDist = 4.0f; float cameraDist = 4.0f;
float depth_UNDERCOVER = 1.0f; float depth_UNDERCOVER = 1.0f;
int depth = 1.0f; int depth = 1.0f;
oidn::DeviceRef device = oidn::newDevice();
device.commit();
oidn::FilterRef filter = device.newFilter("RT"); // generic ray tracing filter
while (true) while (true)
{ {
frameCount++; frameCount++;
@ -445,16 +441,6 @@ void main()
mesh.triangles = oldTris; mesh.triangles = oldTris;
std::cout << (clock() - s) / CLOCKS_PER_SEC << std::endl; std::cout << (clock() - s) / CLOCKS_PER_SEC << std::endl;
// Create a denoising filter
if (depth_UNDERCOVER > 4.0f)
{
canvas.convertTo(canvas, CV_32FC3);
filter.setImage("color", canvas.data, oidn::Format::Float3, RESOLUTION, RESOLUTION);
filter.setImage("output", canvas.data, oidn::Format::Float3, RESOLUTION, RESOLUTION);
filter.commit();
filter.execute();
}
cv::imshow("Output", canvas); cv::imshow("Output", canvas);
cv::setMouseCallback("Output", mouseCallback); cv::setMouseCallback("Output", mouseCallback);
cv::waitKey(1); cv::waitKey(1);