2 <name>CUDA and OpenGL Interop of Images</name>
3 <description><![CDATA[This sample shows how to copy CUDA image back to OpenGL using the most efficient methods.]]></description>
4 <whitepaper></whitepaper>
5 <minspec>SM 1.0</minspec>
6 <keywords>GPGPU,CUDA,Image Processing,Opengl</keywords>
7 <scope>2:Graphics Interop,2:Image Processing,2:Performance Strategies</scope>
9 <file>data\ref_simpleCUDA2GL.ppm</file>
12 <qatest>-file=ref_simpleCUDA2GL.ppm</qatest>
14 <cudaapi>cudaGLSetGLDevice</cudaapi>
15 <cudaapi>cudaGraphicsMapResources</cudaapi>
16 <cudaapi>cudaGraphicsUnmapResources</cudaapi>
17 <cudaapi>cudaGraphicsResourceGetMappedPointer</cudaapi>
18 <cudaapi>cudaGraphicsRegisterResource</cudaapi>
19 <cudaapi>cudaGraphicsGLRegisterBuffer</cudaapi>
20 <cudaapi>cudaGraphicsUnregisterResource</cudaapi>
22 <keyconcepts level="basic">Graphics Interop</keyconcepts>
23 <keyconcepts level="basic">Image Processing</keyconcepts>
24 <keyconcepts level="basic">Performance Strategies</keyconcepts>
26 <!-- *** Additional project definition information *** -->
27 <!-- Libraries that the project should be linked against. Document may contain any number of "libraries" elements. -->
28 <!-- Attributes "os" and "arch" are optional and may be used in any combination. -->
29 <!-- "framework" attribute will be ignored on platforms other then Mac OS X -->
30 <library>GLU</library>
32 <library os="macosx" framework="true">GLUT</library>
33 <library os="linux">X11</library>
34 <library os="linux">GLEW</library>
35 <library os="linux">glut</library>
37 <!-- Either absolute or relative to sample -->
38 <library-path os="windows" arch="x86_64">../../common/lib/x64</library-path>
39 <library-path os="windows" arch="Win32">../../common/lib/Win32</library-path>
40 <library-path os="linux" arch="x86_64">../../common/lib/linux/x86_64</library-path>
41 <library-path os="linux" arch="i686">../../common/lib/linux/i686</library-path>
42 <library-path os="macosx">../../common/lib/darwin</library-path>
44 <!-- Either absolute or relative to sample -->
45 <include-path>./</include-path>
46 <include-path>../</include-path>
47 <include-path>../../common/inc</include-path>
49 <!-- Can be either "separate" or "whole", omitting this element means that sample can be compiled either way -->
50 <devicecompilation>whole</devicecompilation>
52 <!-- These options will be passed to NVCC compiler as is and for all files -->
54 <nvcc-compiler file="simpleCUDA2GL.cu"></nvcc-compiler>
55 <sm-arch>sm10</sm-arch>
56 <sm-arch>sm20</sm-arch>
57 <sm-arch>sm30</sm-arch>
59 <!-- One of "exe|dll|lib" (exe is default) -->
62 <!-- By default IDE will open file "samplename.(cu|cpp) -->
63 <primary-file>main.cpp</primary-file>
65 <!-- Collection of [OS][:arch] tokens -->
66 <supported-env>linux:x86_64, linux:i686, windows7, macosx:x86_64, macosx:i686, :arm</supported-env>