clray
Realtime GPU (OpenCL) polygon mesh raytracer (by jtsiomb)
vulkan-compute-ray-tracing
Interactive ray tracer made with Vulkan compute shader. (by grigoryoskin)
clray | vulkan-compute-ray-tracing | |
---|---|---|
1 | 3 | |
3 | 38 | |
- | - | |
10.0 | 3.9 | |
over 8 years ago | over 2 years ago | |
C++ | C++ | |
GNU General Public License v3.0 only | - |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
clray
Posts with mentions or reviews of clray.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-09-23.
-
How do we write a ray tracer in opengl?
But this is all very awkward and pointless. Pixel shaders are not designed for that, and textures are not ideal for passing such information to the GPU. Ideally, you would use OpenGL compute shaders, or any other GPU compute API, and pass your geometry in "buffers". I've written a polygon mesh raytracer like that in OpenCL once upon a time: https://github.com/jtsiomb/clray
vulkan-compute-ray-tracing
Posts with mentions or reviews of vulkan-compute-ray-tracing.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-09-23.
-
How do we write a ray tracer in opengl?
It's better to use a compute shader than fragment because it's better parallelizable. The idea is the same as with fragment shader, you just use compute to write into a texture. I have done something similar in Vulkan, you can take a look: https://github.com/grigoryoskin/vulkan-compute-ray-tracing https://github.com/grigoryoskin/vulkan-compute-ray-tracing/blob/master/resources/shaders/source/ray-trace-compute.comp
-
Check out my ray tracer!
https://github.com/grigoryoskin/vulkan-compute-ray-tracing I'm making a small ray tracer, loosely following rt in one weekend series. It renders the scene with the compute shader into a texture and then displays it with fragment shader. Currently it has only lambertian materials, but I'm working on adding PBR. I use binary volume hierarchy for acceleration, but in simple scenes I found out that just iterating through a list of triangles is faster. It has one problem though, sometimes(!) it crashes on start or finish, making me think it's some kind of synchronization issue (also discussed here). I have layout transform and semaphore between compute and graphics, which looks tight to me, but I would be super grateful if someone could point out where I am wrong. Or it could be some moltenVK bug, which would also be ok with me. I would appreciate any kind of feedback, since I'm still learning (both vk and c++)
-
Can you try running my ray tracer?
I made a ray tracer in Vulkan, and while it runs fine on my personal Mac book air, when I try to run it on my work Mac book pro, it either crashes at start due to some memory error, or renders a blank screen. I'm trying super hard to find the issue, but I'm out of ideas. These are the only computers I have, so I'm willing to accept that it's some moltenVK issue or something, if it runs on other systems. Here is the repo with build instructions: https://github.com/grigoryoskin/vulkan-compute-ray-tracing
What are some alternatives?
When comparing clray and vulkan-compute-ray-tracing you can also consider the following projects:
RayTracingInVulkan - Implementation of Peter Shirley's Ray Tracing In One Weekend book using Vulkan and NVIDIA's RTX extension.
RayTracer - Ray Tracer in C++ with openGL.
LearnOpenGL - Code repository of all OpenGL chapters from the book and its accompanying website https://learnopengl.com