GithubHelp home page GithubHelp logo

nvpro-samples / optix_advanced_samples Goto Github PK

View Code? Open in Web Editor NEW
406.0 406.0 84.0 66.16 MB

CMake 2.36% C 46.21% C++ 26.47% Cuda 4.81% Python 0.04% CSS 0.29% HTML 18.27% JavaScript 0.36% Objective-C 1.10% Less 0.08%
nvidia optix

optix_advanced_samples's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

optix_advanced_samples's Issues

KDtree algorithm in photon map

It seems that kdtree's building is done on cpu without multi-thread...
For example, I get only 8fps with 2700x and 2080Ti when there are 1024 photons at almost all resolutions(4k max).
And if it's done by multi-thread or cuda, real-time isn't impossible I think.

Could NOT find DevIL (missing: IL_LIBRARIES ILU_LIBRARIES IL_INCLUDE_DIR)

I have set like this in FindOptiX.cmake:
set(OptiX_INSTALL_DIR D:/develop/library/OptiX SDK 6.0.0/)
set(ILU_LIBRARIES D:/develop/library/DevIL/lib/x64/Release/ILU.lib)
set(IL_LIBRARIES D:/develop/library/DevIL/lib/x64/Release/DevIL.lib)
set(ILUT_LIBRARIES D:/develop/library/DevIL/lib/x64/Release/ILUT.lib)

the Cmake-gui Configure error:
Could NOT find DevIL (missing: IL_LIBRARIES ILU_LIBRARIES IL_INCLUDE_DIR)
CMake Error at CMake/FindOptiX.cmake:121 (message):
OptiX library not found. Please set OptiX_INSTALL_DIR to locate it
automatically.
Call Stack (most recent call first):
CMake/FindOptiX.cmake:130 (OptiX_report_error)
CMakeLists.txt:203 (find_package)

OptiX Error: Unknown error

Hi,
How can I resolve the following error


mahmood@orca:bin$ ./optixGlass 
OptiX Error: 'Unknown error (Details: Function "RTresult _rtBufferCreateFromGLBO(RTcontext, unsigned int, unsigned int, RTbuffer_api**)" caught exception: Encountered a CUDA error: cuGLGetDevices returned (304): Operating system call failed
================================================================================
Backtrace:
	(0) () +0x711f17
	(1) () +0x7102cb
	(2) () +0x321a7f
	(3) () +0x19eb43
	(4) rtBufferCreateFromGLBO() +0x5b1
	(5) sutil::createOutputBuffer(optix::Handle<optix::ContextObj>, RTformat, unsigned int, unsigned int, bool) +0xe8
	(6) createContext(bool) +0x254
	(7) main() +0x197
	(8) __libc_start_main() +0xe7
	(9) _start() +0x2a

================================================================================
)'

CUDA is 10.

About subpixel jitter

In /src/optixGlass/path_trace_camera.cu
subpixel jitter is done by

float2 subpixel_jitter = frame == 0 ? make_float2( 0.0f ) : make_float2(rnd( seed ) - 0.5f, rnd( seed ) - 0.5f);

But rand(seed) - 0.5 will generate jitter sample out of range [0, 1]. This may cause the pixel sample jitter to the neighbor pixels.

Xcursor.h not found but X11_Xcursor_INCLUDE_PATH is set correctly

On a system with no root access, I manually extracted libxcursor-dev to a folder and set the proper variables in ccmake ../src/ command.

mnaderan@fury0:/mnt/local/mnaderan/op/optix_advanced_samples/build$ grep -r X11_Xcursor_INCLUDE_PATH .
./CMakeCache.txt:X11_Xcursor_INCLUDE_PATH:PATH=/mnt/local/mnaderan/op/libxcursor-dev/include
./CMakeCache.txt://ADVANCED property for variable: X11_Xcursor_INCLUDE_PATH
./CMakeCache.txt:X11_Xcursor_INCLUDE_PATH-ADVANCED:INTERNAL=1
./CMakeCache.txt://MODIFIED property for variable: X11_Xcursor_INCLUDE_PATH
./CMakeCache.txt:X11_Xcursor_INCLUDE_PATH-MODIFIED:INTERNAL=ON

However, make fails with this message

mnaderan@fury0:/mnt/local/mnaderan/op/optix_advanced_samples/build$ make
Scanning dependencies of target glfw
[  0%] Building C object support/glfw/src/CMakeFiles/glfw.dir/context.c.o
cc1: warning: command line option ‘-std=c++11’ is valid for C++/ObjC++ but not for C
In file included from /mnt/local/mnaderan/op/optix_advanced_samples/src/support/glfw/src/internal.h:169:0,
                 from /mnt/local/mnaderan/op/optix_advanced_samples/src/support/glfw/src/context.c:28:
/mnt/local/mnaderan/op/optix_advanced_samples/src/support/glfw/src/x11_platform.h:39:10: fatal error: X11/Xcursor/Xcursor.h: No such file or directory
 #include <X11/Xcursor/Xcursor.h>
          ^~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
support/glfw/src/CMakeFiles/glfw.dir/build.make:62: recipe for target 'support/glfw/src/CMakeFiles/glfw.dir/context.c.o' failed
make[2]: *** [support/glfw/src/CMakeFiles/glfw.dir/context.c.o] Error 1
CMakeFiles/Makefile2:191: recipe for target 'support/glfw/src/CMakeFiles/glfw.dir/all' failed
make[1]: *** [support/glfw/src/CMakeFiles/glfw.dir/all] Error 2
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2

In fact, the file exists

mnaderan@fury0:/mnt/local/mnaderan/op/optix_advanced_samples/build$ ls ../../libxcursor-dev/include/X11/Xcursor/Xcursor.h

How can I fix that?

MSB8066 Error

Hi!
First I tried to build the repository with OptiX 7.4 and CUDA 11.5. However, as of the older dependencies, that did not work.

Later I tried to build the repository for OptiX 6.5.0, and CUDA 10.0 with MSVS 2019 (64bit) following the discussion (https://forums.developer.nvidia.com/t/build-errors-in-optix-advanced-samples/107275).

Unfortunately, the building process with CMake was success, but while opening the .sln and opening any project (as startup project), it is not working showing the MSB8066 Error. How can I get rid of it and run the sample codes? Here is a screen shot:

three

OIT

in OPTIXglass example , you launch light repeatedly to get fragment,if i want to save this fragment in device memory how i should do,(dynamic application) because if i get a enough memory (i success to relize the way) this need to a bigger memory than i need do you have other way(i have tried to malloc in optix but the .cu file need to compile to .ptx file,optix don't allow me to do)

Warning about DevIL

Hi
I don't understand DevIL part of the build instructions. What should I install and the set the variables?

 CMake Warning at optixIntroduction/CMakeLists.txt:41 (message):
   DevIL image library not found.  Please set IL_LIBRARIES, ILU_LIBRARIES,
   ILUT_LIBRARIES, and IL_INCLUDE_DIR to build OptiX introduction samples 07
   to 10.

PTX error: File not found

Hey,

I built the project successfully, however, when I tried to run the basic examples the application terminated and I got this error:

File not found (Details: Function "RTresult _rtProgramCreateFromPTXFile(RTcontext, const char*, const char*, RTprogram_api**)" caught exception: File not found - ./optix_advanced_samples-master/src/lib/ptx/optixIntro_01_generated_raygeneration.cu.ptx)

I have Optix 6.0.0 and CUDA 11.1.

Have you ever encountered this problem?

Thank you in advance.

Chnaging the number of particles

I want to do some tests with the examples. I would like to know how can I change the number of particles in the OptixParticles and the number of triangles in the OptixGlass? I reviewed the code, however, I didn't find a clear answer for that. I mean, the number of particles is not hard coded in the src folder. How the total number of particles and triangles are calculated?

Frame count bug in ProgressivePhotonMap

if ( accumulation_frame == 1 ) {

    if (s_print_timings) std::cerr << "Starting RT pass ... ";
    double t0 = sutil::currentTime();

    // Trace viewing rays
    context->launch( rtpass, camera.width(), camera.height() );

    double t1 = sutil::currentTime();
    if (s_print_timings) std::cerr << "finished. " << t1 - t0 << std::endl;

    context["total_emitted"]->setFloat(  0.0f );
}

Counter accumulation_frame in the first invocation of launch_all is 0, while launch_all initialize the viewing rays when accumulation_frame == 1.

for ( unsigned int frame = 0; frame < numframes; ++frame ) {
    context["frame_number"]->setFloat( static_cast<float>( frame++ ) );
    launch_all( camera, photon_launch_dim, frame, photons_buffer, photon_map_buffer );
}

The frame counter here increases twice.

How can I debug the .cu files

I'm very glad to see this awesome project. But when I try to write some different shaders, I fail to set breakpoint in neither the .cu files nor the compiled ptx files with cuda-gdb. Could you please give me some guidance about the debug?

Builds fine on VS2015, but not VS2017 nor VS2019

CMake runs successfully for VS2017 and VS2019 targets, however, building the solutions in 2017 or 2019 both error with failure to generate PTX files. Is there a workaround or will this be fixed at some point in the future? Thanks.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.