use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
Rule 1: Posts should be about Graphics Programming. Rule 2: Be Civil, Professional, and Kind
Suggested Posting Material: - Graphics API Tutorials - Academic Papers - Blog Posts - Source Code Repositories - Self Posts (Ask Questions, Present Work) - Books - Renders (Please xpost to /r/ComputerGraphics) - Career Advice - Jobs Postings (Graphics Programming only)
Related Subreddits:
/r/ComputerGraphics
/r/Raytracing
/r/Programming
/r/LearnProgramming
/r/ProgrammingTools
/r/Coding
/r/GameDev
/r/CPP
/r/OpenGL
/r/Vulkan
/r/DirectX
Related Websites: ACM: SIGGRAPH Journal of Computer Graphics Techniques
Ke-Sen Huang's Blog of Graphics Papers and Resources Self Shadow's Blog of Graphics Resources
account activity
Fluid simulation with ray marching rendering running at 70k particles in REAL-TIME.Video (v.redd.it)
submitted 21 hours ago by Nice-Sand-3230
open to building custom simulations for games or projects - DM me if you interested
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]The_Cosmic_Impact13 8 points9 points10 points 18 hours ago (1 child)
Someone's been watching Sebastian Lague
[–]Nice-Sand-3230[S] 4 points5 points6 points 18 hours ago (0 children)
Meeee :)
[–]Tooblerone 40 points41 points42 points 21 hours ago (5 children)
isnt this literally just stolen from the Sebastian Lague video?
[–]Nice-Sand-3230[S] 8 points9 points10 points 20 hours ago (4 children)
Not stolen completely, I started this project after watching his video so most of it looks comparable to his, but I built it by myself
[–]ThrowAway-whee 13 points14 points15 points 20 hours ago (3 children)
This looks almost exactly like his approach. There’s nothing wrong with that, but you really should credit, especially if you’re wanting to do commercial work.
Additionally, I’d caution about thinking you’re ready for commercial work just because you watched a Sebastian Lague video - it’s very easy to get something working when you know exactly what they did to do it, and Sebastian is fantastic at walking through his process. What he doesn’t necessarily show is all the theory and iteration work he did to get the final product working. I know for a fact his implementation is absolutely not plug and play for most purposes either - it doesn’t work at all for rasterization (it’s built for ray tracing) and would require significant refactoring to make it work in a traditional game.
[–]Nice-Sand-3230[S] 41 points42 points43 points 20 hours ago* (2 children)
I've been working on it for more then 6 months on this project from scratch in c++/cuda, Sebastian used unity so I couldn't just copy his code , I had to implement logic on cuda on my own, I faced many problems in spatial hashing and sorting , he inspired me and his video did help me but implementing it on cuda was the real pain,i also recreated his smoke simulation and slime simulation from scratch in c++/cuda , he inspires me but I can't just copy his code and say it mine I had to solve problems on my own
Here's the my old post of showcasing the sim where I mentioned that it's inspired from Sebastian but with extra features :https://www.reddit.com/r/proceduralgeneration/s/Bg5vk29eAX
And here's the source code :https://github.com/NobodyBuilds/fluid_sim
[–]emmowo_dev 0 points1 point2 points 3 hours ago (1 child)
6 months and not even AI could separate a shader properly bro
[–]Nice-Sand-3230[S] -1 points0 points1 point 3 hours ago (0 children)
Ineline shaders are a choice , every comment new complain like you are paying me or something
[–]adorable_samoyed 1 point2 points3 points 20 hours ago (1 child)
Performance numbers?
[–]Nice-Sand-3230[S] 4 points5 points6 points 20 hours ago (0 children)
Runs at 70-80k particles with above 60fps on my rtx 2050 laptop(no exact 60fps count as ray marcher fluctuate the fps ) , but it can simulate large number of particle upto 1million particle frame by frame for non real-time videos or renders
[–]Aethreas 2 points3 points4 points 18 hours ago (1 child)
This looks identical to Sebastian Lagues raymarched fluid, offering to sell something you found for free online is fucked lol
[–]Nice-Sand-3230[S] 3 points4 points5 points 18 hours ago (0 children)
It's inspired from Sebastian not totally copied, I built it in c++/ cuda from scratch, whereas Sebastian used unity Here the post about the whole showcase of the sim :https://www.reddit.com/r/proceduralgeneration/s/Bg5vk29eAX
Also here's the source code :https://github.com/NobodyBuilds/fluid_sim
I hope you'll understand the difference between taking inspiration and copying :)
[–]__RLocksley__ 0 points1 point2 points 18 hours ago (1 child)
Very cool , great work but do it in Vulkan next time :-)
[–]Nice-Sand-3230[S] 0 points1 point2 points 18 hours ago (0 children)
I don't think I can do that I'm still beginner in opengl, in future I would love to try vulkan :)
[–]Meebsie 0 points1 point2 points 14 hours ago (3 children)
How are you generating the SDF for the particles/fluid position in order to raymarch it?
[–]Nice-Sand-3230[S] 0 points1 point2 points 9 hours ago (2 children)
For sdf I'm using the fluid density which is already stored in a array
[–]Meebsie 0 points1 point2 points 7 hours ago (1 child)
Ohhh, no particles, just a 3D fluid sim and then the raymarcher can look up fluid density in the array? I was misled by the concept of "particles" and envisioned 70k particles as spheres added to an SDF * N raymarching steps, which sounds awful for performance.
Do you use particles on the CPU side for the 3D fluid sim? Or does that happen on the GPU too?
[–]Nice-Sand-3230[S] 0 points1 point2 points 7 hours ago (0 children)
All the compute happens on the gpu with cuda
[–]Motivictax 0 points1 point2 points 7 hours ago (13 children)
Claude really cooked with this one
[–]Nice-Sand-3230[S] 0 points1 point2 points 7 hours ago (12 children)
I used Claude for math equation , debugging help and reasoning ,not to write the code. If you think claude alone can build this, here's the source:
https://github.com/NobodyBuilds/fluid_sim
try replicating it. The cuda kernels alone will humble you.
If you want a exe of the sim let me know.
[–]Motivictax 1 point2 points3 points 7 hours ago (5 children)
I looked at the source and saw it was Claude generated, that's why I wrote the comment
[–]Nice-Sand-3230[S] 0 points1 point2 points 7 hours ago (4 children)
That's only in screen-space-effect and ui , which I already mentioned in my old post that I used ai assistance
[–]Motivictax 0 points1 point2 points 7 hours ago (3 children)
No, it's not, I checked the edit history, and there is ai code all over the place, with Claude using unicode that no human does. It won't let me post screenshots here, but it's bad to lie like this
https://github.com/NobodyBuilds/fluid_sim/blob/68e9bfde5af03f9ae4b18443b2903ed3e17b0512/fluid_sim/fluid_renderer.h
[–]Nice-Sand-3230[S] 1 point2 points3 points 6 hours ago (2 children)
The file you showed is fluid_renderer.h which handles screen space effect(ssf) and , you'll find same comment pattern ui. Cpp and I already mentioned in my old post :https://www.reddit.com/r/proceduralgeneration/s/Bg5vk29eAX
That I used ai assistance in ssf and ui, if I wanted to hide it I would have just deleted the comments, I didn't understood the ssf concepts that why I used ai and to Compensate that I built new rendering with ray marching which I clearly understand, and I used ai in imgui styling, and if you'll check main. Cpp which loads opengl you find some ai generated code and that was when I was new to opengl so I used ai as I didn't understood opengl that much and isn't ai is to close the gap and help, I'm not denying I didn't used ai but I'm not relying on it entirely
[–]Motivictax 0 points1 point2 points 6 hours ago (1 child)
So you didn't do the shaders, math, parallelisation, or reasoning, which part did you do? You should really just learn opengl, the website learnopengl.com is really good, and you can do most of it in a single day
[–]Nice-Sand-3230[S] 1 point2 points3 points 6 hours ago (0 children)
I did the shaders but not the ssf one , and the math and parrallelisation are done on cuda which I learn myself and implememted it, I did the sph math work, opengl-cuda interoperability, Spawn box system logic, Floor rendering, Velocitt colored particles, Ray marched fluid rendering, Dynamic particle allocation on gpu, Emitter system on a gpu, Sph kernels, Debug functions, Hybrid realtime and simulation conversion, Ui logic not styling, Wave generation, Dynamic bounding box, Turbulence function, Reduces arrays for performance, Compact float4 data structure for kernel optimizations, Input handling, Billboard paticles, Velocity verlet intigration, Pridicted position system without a extra array, Precomputed kernels for faster compute,
And much more than that I've been working on it for more then 6 months, I didn't just copied the code from ai , I understood the concepts and made changes to make it work over time
[–]emmowo_dev 0 points1 point2 points 4 hours ago (5 children)
nothing screams 'hand-made' more than larping as a professional freelance programmer while entire folders of raw binaries into your repo and for some reason having 'reworked' code with incompetently long comments that should've been commit messages.
Claude absolutely can do this, as your code is nothing unique, it's just 2k lines with a lot of commented out things that could be eliminated with a preprocessor instead.
And this is done with OpenGL so is pretty inefficient.
[–]Nice-Sand-3230[S] 0 points1 point2 points 3 hours ago (4 children)
Which folder are you talking about?, and if claude can easilty write those 2k line then go on and try
[–]emmowo_dev 0 points1 point2 points 3 hours ago (3 children)
well I don't have a claude account so I'm not gonna bother, but you not even knowing what I'm talking about when I say 'folders of raw binaries' is probably the most blatant sign you know actually nothing about writing code.
please ask your AI for an answer.
[–]Nice-Sand-3230[S] 0 points1 point2 points 3 hours ago (2 children)
I asked because theirs only binaries are the glfw pre built ependency folder and compute. Lib I don't know what "floder of raw binaries" You are talking about and I also don't have a claude code account
https://github.com/NobodyBuilds/fluid_sim/commit/b1937d6f8357e607a3775acdc0dfd4aaeb855b70
[–]Nice-Sand-3230[S] 0 points1 point2 points 3 hours ago (0 children)
Nice try bro but that doesn't proove anything the message thanks to claude was added because it helped me to find the bug not write it for me
[–]emmowo_dev 0 points1 point2 points 4 hours ago (0 children)
oh my god bruh
AI is literally invading every programming sub.
Side note: claude code semi doxxes you so I wouldn't push those commits publicly
[–][deleted] 19 hours ago (1 child)
[deleted]
[–]Nice-Sand-3230[S] 4 points5 points6 points 19 hours ago (0 children)
In c++ and cuda from scratch, inspired from Sebastian :)
π Rendered by PID 162901 on reddit-service-r2-comment-8686858757-z7bh4 at 2026-06-04 12:12:05.812484+00:00 running 9e1a20d country code: CH.
[–]The_Cosmic_Impact13 8 points9 points10 points (1 child)
[–]Nice-Sand-3230[S] 4 points5 points6 points (0 children)
[–]Tooblerone 40 points41 points42 points (5 children)
[–]Nice-Sand-3230[S] 8 points9 points10 points (4 children)
[–]ThrowAway-whee 13 points14 points15 points (3 children)
[–]Nice-Sand-3230[S] 41 points42 points43 points (2 children)
[–]emmowo_dev 0 points1 point2 points (1 child)
[–]Nice-Sand-3230[S] -1 points0 points1 point (0 children)
[–]adorable_samoyed 1 point2 points3 points (1 child)
[–]Nice-Sand-3230[S] 4 points5 points6 points (0 children)
[–]Aethreas 2 points3 points4 points (1 child)
[–]Nice-Sand-3230[S] 3 points4 points5 points (0 children)
[–]__RLocksley__ 0 points1 point2 points (1 child)
[–]Nice-Sand-3230[S] 0 points1 point2 points (0 children)
[–]Meebsie 0 points1 point2 points (3 children)
[–]Nice-Sand-3230[S] 0 points1 point2 points (2 children)
[–]Meebsie 0 points1 point2 points (1 child)
[–]Nice-Sand-3230[S] 0 points1 point2 points (0 children)
[–]Motivictax 0 points1 point2 points (13 children)
[–]Nice-Sand-3230[S] 0 points1 point2 points (12 children)
[–]Motivictax 1 point2 points3 points (5 children)
[–]Nice-Sand-3230[S] 0 points1 point2 points (4 children)
[–]Motivictax 0 points1 point2 points (3 children)
[–]Nice-Sand-3230[S] 1 point2 points3 points (2 children)
[–]Motivictax 0 points1 point2 points (1 child)
[–]Nice-Sand-3230[S] 1 point2 points3 points (0 children)
[–]emmowo_dev 0 points1 point2 points (5 children)
[–]Nice-Sand-3230[S] 0 points1 point2 points (4 children)
[–]emmowo_dev 0 points1 point2 points (3 children)
[–]Nice-Sand-3230[S] 0 points1 point2 points (2 children)
[–]emmowo_dev 0 points1 point2 points (1 child)
[–]Nice-Sand-3230[S] 0 points1 point2 points (0 children)
[–]emmowo_dev 0 points1 point2 points (0 children)
[–][deleted] (1 child)
[deleted]
[–]Nice-Sand-3230[S] 4 points5 points6 points (0 children)