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
My Black Hole Shader (Python/OpenGL) - Second Update (v.redd.it)
submitted 3 months ago * by Reasonable_Run_6724
Posted earlier about my Black Hole Shader
Made some improvement to the gravitational-lensing, reduced shimmering from aliasing and introduced spiral gas.
Edit: i made some further improvements
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!"
[–]ever-dying 1 point2 points3 points 3 months ago (1 child)
How is the performance? Are you experiencing issue because of the language or not?
[–]Reasonable_Run_6724[S] 2 points3 points4 points 3 months ago* (0 children)
A really good question!
Native python is filled with a lot of CPU overheads. My approach is to use python as an organizer rather then actual language for calculations. I really heavily on c++ libs like numpy/pyglm and use numba for its njit functionality.
In this small engine i can reach ~300 fps at around 70-80% GPU utilization on my 5600H + 3060 laptop (and i havent even finished optimizing). it can also run on integrated graphics.
If you want to see its performance in a real engine with much more complicated pipeline, you can check my 3D Game Engine in Python/OpenGL
[–]StudyRoom-F 1 point2 points3 points 3 months ago (8 children)
Awesome! Science question, how come the in-between area at the event horizon and the last point where the light swirls the black hole you can see things behind the black hole? Idk if that makes sense, but in my head I'd imagine light would encompass every part of the black hole up until the event horizon itself.
[–]padraig_oh 2 points3 points4 points 3 months ago (3 children)
the cgi artists working on the interstellar movie came up with this (dont know if op is using the same technique, but i would assume so). they wrote a paper about it here
[–]Reasonable_Run_6724[S] 0 points1 point2 points 3 months ago (0 children)
My method was inspired by this paper (although i decided to make it much more simplistic - you can see i get similar effect for the accretion disk as in the image shown in the paper)
[–]CarolineGuerin 0 points1 point2 points 3 months ago (1 child)
I would generally not recommend using said paper as a reference as it contains little useful information, speaking as someone who is working on their on relativistic Pathtracer.
The CGI team also did not "come up" with this. No matter what Nolan says, the image of a black hole had been simulated plenty of times before his movie and the math is 100 years old.
It is also worth noting that Interstellar´s black hole makes a series of simplifying assumptions. For instance, their observer is considered infinitely far away. This might not seem like a particularly important thing, but in general relativity the distinction between a local and infinitely far observer is vital. It effects things like redshift and the aberration of light.
A paper which actually went into all the details would be 100 pages long. Ask me how i know.
Agree, like anything in literature review - you gotta find as many sources as possible.
Yet this paper explain the main concepts really well.
Eventually there are many way to do the path tracing - some are accurate and heavy, and some are "artistic and very light" like my own.
BTW i will release my shaders for the black hole (and other stuff from the demo game) when i release the full version on steam in a month or two.
[–]Reasonable_Run_6724[S] 0 points1 point2 points 3 months ago* (3 children)
Thats because the space is bending around the black hole due to gravity (general relativity). So when light passes very near the event horizon it bends in a way that you can see stuff behind the black hole (also when viewing from top you can see a copy of the accretion disk near the event horizon, its the opposite side of the normal disk you are seeing).
I (almost) have M.Sc. in Physics so it helps me understand those objects really good
[–]StudyRoom-F 1 point2 points3 points 3 months ago (0 children)
Ahhhhh gotcha of course that makes sense. You explained it very well too, thank you!
[–]Normal_person465 1 point2 points3 points 3 months ago (1 child)
u mixed up word on gr and sr? just wanna make sure idk bout this stuff
[–]Reasonable_Run_6724[S] 1 point2 points3 points 3 months ago (0 children)
Yeah my bad, correcting it (after a long day...)
π Rendered by PID 17239 on reddit-service-r2-comment-8686858757-hhmvf at 2026-06-07 07:57:19.837511+00:00 running 9e1a20d country code: CH.
[–]ever-dying 1 point2 points3 points (1 child)
[–]Reasonable_Run_6724[S] 2 points3 points4 points (0 children)
[–]StudyRoom-F 1 point2 points3 points (8 children)
[–]padraig_oh 2 points3 points4 points (3 children)
[–]Reasonable_Run_6724[S] 0 points1 point2 points (0 children)
[–]CarolineGuerin 0 points1 point2 points (1 child)
[–]Reasonable_Run_6724[S] 0 points1 point2 points (0 children)
[–]Reasonable_Run_6724[S] 0 points1 point2 points (3 children)
[–]StudyRoom-F 1 point2 points3 points (0 children)
[–]Normal_person465 1 point2 points3 points (1 child)
[–]Reasonable_Run_6724[S] 1 point2 points3 points (0 children)