Working on EmberGen and more.
Discord: vassvik @vassvik@mastodon.gamedev.place
Hi I'm Morten. I work at JangaFX, where I primarily work on EmberGen, but I occasionally work on our other tools as well.
I hope to eventually start posting more fluid sim and graphics content, hopefully even blogposts and some code too.
Curse of awful laptops broken?
Curse of awful laptops broken?
momentsingraphics.de/SiggraphAsia...
momentsingraphics.de/SiggraphAsia...
Includes an analysis of NVIDIA’s wireframe paper & fixes its issues.
fauder.github.io/posts/2025/1...
#GraphicsProgramming #Rendering #OpenGL #ShaderDev #GameDev
Includes an analysis of NVIDIA’s wireframe paper & fixes its issues.
fauder.github.io/posts/2025/1...
#GraphicsProgramming #Rendering #OpenGL #ShaderDev #GameDev
Realtime capture in the viewport on 4090.
The projection struggles a bit on this scale, so I brute forced it a bit, so it's a bit slower than it has to be. FMG to initialize should help a lot here.
Realtime capture in the viewport on 4090.
The projection struggles a bit on this scale, so I brute forced it a bit, so it's a bit slower than it has to be. FMG to initialize should help a lot here.
#indiedev #gamedev #computergraphics #computationalgeometry #topology
#indiedev #gamedev #computergraphics #computationalgeometry #topology
#VFXFriday #realtimevfx #vfx
#VFXFriday #realtimevfx #vfx
Left: RGB blending
Right: Mixbox blending
Interestingly I there's a lot to take from this for smoke scattering, which generally has an absorption component, so subtractive color mixing makes sense I think?
Left: RGB blending
Right: Mixbox blending
Interestingly I there's a lot to take from this for smoke scattering, which generally has an absorption component, so subtractive color mixing makes sense I think?
I use 27-way linked lists on the GPU, and it's good and highly appropriate!
I use 27-way linked lists on the GPU, and it's good and highly appropriate!
This time instead of having a fixed depth-slice count (which is common for games for a variety of reasons) we'll instead focus on trying to maintain a uniform and non-elongated froxel shapes, which results a variable slice count
www.desmos.com/geometry/yl5...
This time instead of having a fixed depth-slice count (which is common for games for a variety of reasons) we'll instead focus on trying to maintain a uniform and non-elongated froxel shapes, which results a variable slice count
www.desmos.com/geometry/yl5...
The most common approach is to distribute the depth-slices in an "exponential" manner between a near and far plane, which is probably more appropriately named "geometric" since it relies on a geometric progression.
www.desmos.com/geometry/qd1...
The most common approach is to distribute the depth-slices in an "exponential" manner between a near and far plane, which is probably more appropriately named "geometric" since it relies on a geometric progression.
www.desmos.com/geometry/qd1...
Midpoint quadrature — split your interval into n equal subintervals, add up the (smooth!) integrand evaluated at the midpoints and multiply by the width of a subinterval — is of course only second order accurate, 🧵
Midpoint quadrature — split your interval into n equal subintervals, add up the (smooth!) integrand evaluated at the midpoints and multiply by the width of a subinterval — is of course only second order accurate, 🧵
Uses direct references to objects in the viewport (which are visually disambiguated using colors), and dynamically coloring the test point based on whether it's inside or outside the frustum
Uses direct references to objects in the viewport (which are visually disambiguated using colors), and dynamically coloring the test point based on whether it's inside or outside the frustum
Nice and quiet in Schiphol
Nice and quiet in Schiphol
Roughly a 5 years old paper by now, but seems awfully relevant still. By a former student of @cemyuksel.com, who I believe is at Nvidia now.
Roughly a 5 years old paper by now, but seems awfully relevant still. By a former student of @cemyuksel.com, who I believe is at Nvidia now.