Pema99
@pema99.bsky.social
Senior Graphics Engineer, Lighting Team @unity.com. Check out my stuff at http://github.com/pema99 and https://pema.dev Interested in all things graphics, VR, language dev and functional programming. @pemathedev on Twitter/X.
I made an experimental "GPU mode" in my toy shader debugger (pema.dev/hlsl/). It runs the shader on the GPU with WebGPU by transpiling to WGSL with the Slang compiler. You can click on a pixel to drop into the interpreter and start debugging. Also added image previews when you hover variables. :)
I made an experimental "GPU mode" in my toy shader debugger (pema.dev/hlsl/). It runs the shader on the GPU with WebGPU by transpiling to WGSL with the Slang compiler. You can click on a pixel to drop into the interpreter and start debugging. Also added image previews when you hover variables. :)
(🧵 1/6) Recently I've been working on an HLSL interpreter, which can execute shader code entirely on the CPU github.com/pema99/HLSLI... I used it to make a cute little interactive debugger demo. You can try it yourself at pema.dev/hlsl/
genuinely one of the best songs of all time, it’s unbelievable that its almost 60 years old
The Velvet Underground - Heroin
Listen to Heroin on TIDAL
tidal.com
I just pushed out v7.0.0 of my shaders, and while I wanted to do a full on fancy trailer and a bunch of other promotion stuff - I didnt want to delay it any further. So it is live now! 350+ commits, hundreds of lines of changelog, all free shaders.orels.sh Happy Holidays! ❤️ #unity3d #shaders
Its been a month since i started using @gingerbill.org 's Odin language, so I feel compelled to finally write something about that For context: I'm working on a little steamvr overlay tool in my free time. The goal is to learn more about steamvr and to write something lower level than i usually do
We are looking for a Vulkan engineer to join our render team at IOI! Available locations are Copenhagen, Malmo and Barcelona. Feel free to reach out if you are interested or have question 😄 ioi.dk/careers?pane...
IOI Careers
Welcome to IOI Careers. Explore open jobs, and dive into our five unique studios across Copenhagen, Malmö, Barcelona, Istanbul, and Brighton.
ioi.dk
Light Volumes 2.0 will support baked 3D shadows for point and spot lights, and that's how it can be used! Thanks to @pema99.bsky.social for implementing this feature!
Want to do a quick photon mapping test, but it's a slow start because I spent most of the time so far playing with the debug rays instead. It does immediately show that the basic GPU hash rand I used is no good. #metalrt #rendering
What album or artist would you say profoundly reshaped the way YOU perceive music?
What album or artist would you say profoundly reshaped the way YOU perceive music?
Area Light Volumes... Thanks to @pema99.bsky.social for implementing and contributing such an amazing feature to VRC Light Volumes! I can already imagine people using it as studio softboxes for photography!
I made my fluid sim particles got towards the nearest light from the light volumes. youtu.be/i8PFoagQhP0
Particle gravity towards VRC Light Volume light direction
YouTube video by d4rkpl4y3r
youtu.be
In today's new blog post, I try to provide some intuition and clear up some misconceptions about early Z cull behavior on desktop GPUs. Have a read if that interests you! therealmjp.github.io/posts/to-ear...
To Early-Z, or Not To Early-Z
Depth In The Logical Rendering Pipeline Where Does Early-Z Fit In? When Does Early-Z Have To Be Disabled? Discard/Alpha Test Pixel Shader Depth Export UAVs/Storage Textures/Storage Buffers Forcing Ear...
therealmjp.github.io
Slang can be made extremely close to GLSL/Shadertoy style of shaders by using a set of defines and typealiases, I've made a template in compute.toyts just for that compute.toys/view/1947 I also ported my most popular shadertoy using it: compute.toys/view/1948
one of the curious things I try with different GPUs is r_colorMipLevels 1 in q3dm1 on Quake3
I wrote a blog post about mipmap level selection. pema.dev/2025/05/09/m...
Just got the final assets of a logo + wordmark I'm planning to use for my shaders from @scjreal.bsky.social Wanted to shout out their work and how nice and smooth everything went. If you have some branding pieces you want to get done - you should check them out ❤️
When programmers allocate memory, we simply remember to free it later
Quote this post with a fact from your field which is a complete total lie, but which people outside your field would completely believe if you posted it confidently on social media
I stared at this for a good 20 seconds thinking it was an autostereogram... But it's actually just white noise
working on that new shit
Today I uploaded my Powder Toy in #VRChat creation as a world, so people who don't know me can play with it: vrchat.com/home/launch?... I also added 10 new elements, including a bunch of explosives which can push around particles when detonated, via a rudimentary wind simulation.
I made Powder Toy in VRChat! It supports several kinds of liquids and solids, including chemical reactions between them. It's done entirely with fragment shaders and cameras, so I can put it on my avatar.
me linking this in slack feels like casting an aoe spell that targets every engineer in a huge radius
I dug this out of the depths of my Discord server...