@eniko can’t do anything _too_ interesting in Star Wars, unfortunately.
Graphics programmer.
Trans lesbian. Math geek. Coaster enthusiast.
🏳️⚧️🏳️🌈 she/her
Opinions expressed here are my own and do not represent any current or past employer.
@eniko can’t do anything _too_ interesting in Star Wars, unfortunately.
please I'm begging you all stop working so hard to make everything worse
Also, I'm pretty sure I've said this before, but I'll say it again:
Part of your job as a senior is to tell your juniors about your fuckups. The embarrassing cringe reckless and lazy bullshit that you did when you were new, and the various times you brought down Prod. We ALL did it sometime. And then tell them: the moment you realized you fucked up, I know, the impulse is to try and cover it up, but don't do it. Come to the seniors you trust, and they'll help you unfuck it, and fight management tooth and claw like mamma and pappa bears to defend you from any shitheads in management. Because that's what our seniors did to us.
I just published my new article:
The Secrets of Floating-Point Numbers
https://asawicki.info/articles/secrets_of_floating_point_numbers_en.php
@castano The decals section has a bunch of not-organic stuff with alpha. I think there's also some chainlink fences in there somewhere?
@castano ambientCG has a bunch of free PBR sets with opacity. Example: https://ambientcg.com/view?id=ScatteredLeaves007
@aeva Yeah it's a free upgrade these days.
Lovely nerdy dive on mipmap selection.
https://pema.dev/2025/05/09/mipmaps-too-much-detail/
(cross-posted from https://bsky.app/profile/pema99.bsky.social - looks like they are also @pema ?)
@aeva (Standard caveats: I have not tested this code, just typed it out. It should be roughly the right shape though.)
@aeva If you want wider ops, you need to combine the results of subgroup ops yourself. (This isn't really on VK/GLSL either, HLSL has the same issue.)
For bonus fun: it's not actually specified which threads in a workgroup map to which subgroups.
So to do a full workgroup add, you'd need to do something like:
```
sum = subgroupAdd(value);
if (subgroupElect()) {
atomicAdd(sharedMemSum, sum);
groupMemoryBarrier();
sum = sharedMemSum;
}
sum = subgroupBroadcastFirst(sum);
```
Tired: "C counts arrays starting at 0 but by default, FORTRAN starts at 1"
Wired: "C counts arrays starting at 0 and by default, FORTRAN starts at 0!"
@efi if you look at the Transmission slot of the fabric material, you’ll see that it’s weight gets set to 1.0 on import. Same for all other materials in this scene. That’s the cause of the issue.
I believe this is triggered because the materials have a Tf transmissive color filter despite having a Tr translucency of 0.
Yup. Deleting all three of those fields in each material resolves the problem.
It's in 3.6 too. Huh.
I think the cause is the materials in question have:
```
d 1.0
Tr 0.0
Tf 1.0 1.0 1.0
```
In theory, `d 1.0` and `Tr 1.0` should both disable transmission, but maybe having the transmission filter color triggers the bug?
Oops, I'm wrong. 4.0 _also_ does this, although it has less visual effect in the viewport for some reason.
@efi That'd be helpful; I don't really want yet another account to deal with.
Repro is trivial: download Crytek Sponza from Morgan McGuire's site: https://casual-effects.com/data/ , import it, observe weird materials.
@efi No idea. Searching changelogs doesn't yield anything but I am a few versions behind.
Blender 4.2 has a strange bug where any OBJ import seems to get transmission set to 1.0 on all materials.
4.0 does it right. Hmm.
@lisyarus Fancy! Fractal voronoi?
@aeva Someone: What does your game look like?
Graphics programmer: alright so we have three shadow passes (one per cascade), one z pre-pass, a gbuffer pass, tiled lighting pass, then tiled forward+ pass for transparent objects, and a final compositing pass,