@demofox@mastodon.gamedev.place cover

Graphics and game dev research. previously nvidia, blizzard, monolith, others. graphics, audio synth, exotic computation. No gods, no masters. http://blog.demofox.org.

This profile is from a federated server and may be incomplete. View on remote instance

demofox , to random
@demofox@mastodon.gamedev.place avatar

New Blog Post: A Low Discrepancy Shuffle Iterator (+Random Access & Inversion)

What if you had a shuffle iterator that could traverse a shuffle, without actually shuffling.

What if that shuffle was a low discrepancy sequence so neighboring values were very different and had nice numerical properties?

Another POV: selection without replacement. stateless, and low discrepancy.

https://blog.demofox.org/2024/05/19/a-low-discrepancy-shuffle-iterator-random-access-inversion/

demofox OP ,
@demofox@mastodon.gamedev.place avatar

C++ header only implementation available at https://github.com/Atrix256/GoldenRatioShuffle/blob/main/LDShuffle.h

demofox OP ,
@demofox@mastodon.gamedev.place avatar

@lritter I can always count on you to understand and appreciate these things, and have done similar work. It's nice not to just be a crackpot in the corner 😀

demofox OP ,
@demofox@mastodon.gamedev.place avatar

@toerror that is so cool. If you haven't seen the term "format preserving encryption" is the formal term for it. It's a weird name, but it's used a lot. Credit card companies use it to generate the next credit card number, I've heard :)

demofox OP ,
@demofox@mastodon.gamedev.place avatar

@j2kun yeah for sure! And I need to update the code to cache that off 😂

demofox OP ,
@demofox@mastodon.gamedev.place avatar

@j2kun and thanks Jeremy. This is so niche, it seems very few people will understand the value, but you are definitely one of them :)

demofox OP ,
@demofox@mastodon.gamedev.place avatar

@BartWronski that's a neat idea!
I've also tried a bit to get this working in 2d. I thought I had a nice solution but then I tried at different resolutions, and it fell apart.

demofox OP ,
@demofox@mastodon.gamedev.place avatar

@BartWronski good idea, it might! I'll give it a go

BartWronski , to random
@BartWronski@mastodon.gamedev.place avatar

Are there any shader toy experts here?

Two of my recent shader toys display just black on iOS Safari (no compilation errors), while a separate iOS app shows them "okay" (some bugs, but at least not a black screen).
https://www.shadertoy.com/view/clXXDs
https://www.shadertoy.com/view/MfyXzV
Nothing crazy, pretty simple, but using feedback for TAA accumulation.

demofox ,
@demofox@mastodon.gamedev.place avatar

@BartWronski you might try explicitly initializing the buffer values to make sure no NaNs are coming from uninitialized memory.

demofox ,
@demofox@mastodon.gamedev.place avatar

@BartWronski yeah it could be

demofox ,
@demofox@mastodon.gamedev.place avatar

@BartWronski it would be great to get a pix or renderdoc capture wouldn't it? It seems like they (browsers) sometimes have support for it, but then remove it, then re add it in a different way. It makes it real hard when it's so opaque, but it also forces us users to get real creative with debugging, which is a nice skill to have after acquiring it tbh 😂

stux , to random
@stux@mstdn.social avatar
demofox ,
@demofox@mastodon.gamedev.place avatar

@stux tfw my dad was talking about pong 25+ years ago

demofox , to random
@demofox@mastodon.gamedev.place avatar

Anyone have any tips for repairing or desoldering corroded solder? I've tried applying fresh solder but not all points would take it.
Also, I'm thinking the brown line across the bottom is supposed to be a connection between all of them for ground. I think its corroded to not work as well anymore. Does that look/sound right to people? In the second image, it's the side with a single wire plugged in.

image/jpeg

demofox OP ,
@demofox@mastodon.gamedev.place avatar

@dotstdy thanks a lot. I have some solderwick, I forgot. And replacement buttons and LED. I shall give it a go

demofox OP ,
@demofox@mastodon.gamedev.place avatar

@TomF that makes a lot of sense.

demofox OP ,
@demofox@mastodon.gamedev.place avatar

Thanks @TomF and @dotstdy , I drilled out the corroded chunks of solder and cleaned it up some. Now to reassemble it with fresh components.

demofox , to random
@demofox@mastodon.gamedev.place avatar

An ESPN article talks about a rendering algorithm a friend of mine made (gibs). LOL what an odd world we live in...
https://www.espn.com/college-football/story/_/id/40153072/inside-return-ea-sports-college-football-video-game

demofox OP ,
@demofox@mastodon.gamedev.place avatar

@steadmanticore phenomenal? 😀

whitequark , to random
@whitequark@mastodon.social avatar

being ready to die affords you the most complete freedom of action you can have. therefore you must be ready to die at any moment

demofox ,
@demofox@mastodon.gamedev.place avatar

@whitequark I honestly dig this pov.

Quinnypig , to random
@Quinnypig@awscommunity.social avatar

I'm sorry Slack, you're doing fucking WHAT with user DMs, messages, files, etc? I'm positive I'm not reading this correctly.

demofox ,
@demofox@mastodon.gamedev.place avatar

@Quinnypig yikes. All sorts of NDA'd info, trade secrets, unpublished research, secret game projects etc etc just right there sucked up into an LLM.

demofox , to random
@demofox@mastodon.gamedev.place avatar

Hey @mbr , I remember you did that LDS thing with integers where you had an integer representation of Phi.
How did you calculate that integer version of Phi?
Did you just multiply phi by the the maximum value the int could represent and convert to int (floor / round)?

demofox OP ,
@demofox@mastodon.gamedev.place avatar

@mbr
Ah thanks.
I'm thinking about doing a "golden ratio shuffle" where you multiply phi by N (the number of items to shuffle), cast to integer, then search for the nearest coprime to do the repeated addition and modulus thing.
It makes it be less accurate phi, but always maximal length if my thinking is right :P

demofox OP ,
@demofox@mastodon.gamedev.place avatar

@mbr thanks Marc, I appreciate the assistance :)

demofox OP ,
@demofox@mastodon.gamedev.place avatar

@mbr I was just having that thought in the shower just now. Yeah. We were on the same page but didn't mention that 😂

demofox , to random
@demofox@mastodon.gamedev.place avatar

I asked my son "if you flip a coin 3 times, is it more likely to get 3 heads in a row, or head, tails, tails?"
He thought for a second and thought "they are equally likely aren't they?"
Oh damn... he is so much smarter than I was.

demofox OP ,
@demofox@mastodon.gamedev.place avatar

I asked a follow up "lets say you flip two coins and add up how many heads you get. Is it more likely to get 0 or 1 as a result?"
He said "they are equally likely"
aha! I got him. Told him there are 2 ways to get 1 head, but only 1 way to get no heads and he said...
"oh that's like the galton board we made".
I thought i got him and then he started down the path of deriving the central limit theorem.
Geez kid, you are 10, chill out a bit! 😆

demofox OP ,
@demofox@mastodon.gamedev.place avatar

@MartianDays same same

demofox OP ,
@demofox@mastodon.gamedev.place avatar

@SonnyBonds oh man. That's mean!

seanmiddleditch , to random
@seanmiddleditch@hachyderm.io avatar

My wife is upset that they're called "toots" on Mastodon because, and I quote, "you're all just farting at each other!"

demofox ,
@demofox@mastodon.gamedev.place avatar

@seanmiddleditch do you know the story? It's actually true

demofox , (edited )
@demofox@mastodon.gamedev.place avatar

@seanmiddleditch this is the best resource I can find but afaik the person who suggested toot knew it was a fart thing but Eugen did not realize :P
https://mastodon.social/@Gargron/100419966679180204

BartWronski , (edited ) to random
@BartWronski@mastodon.gamedev.place avatar

I am excited to finally share our recent paper "Filtering After Shading With Stochastic Texture Filtering" (with @mattpharr @marcosalvi and Marcos Fajardo), published at ACM I3D'24 / PACM CGIT, where we won the best paper award! 1/N

demofox ,
@demofox@mastodon.gamedev.place avatar

@BartWronski great job on the come back story!

demofox ,
@demofox@mastodon.gamedev.place avatar

@BartWronski haha - that feeling when you have two reviewer .

demofox ,
@demofox@mastodon.gamedev.place avatar

@BartWronski @aras artists are smarter than we give them credit for. I'm pretty sure incorrect lighting falloff was making up for the renders not being sRGB correct :P

demofox ,
@demofox@mastodon.gamedev.place avatar

@aras @BartWronski it sure is. I've tried to cite posts in both STBN and now FAST noise papers, and got a lot of push back on both papers. It's interesting cause the "real competitors" we ought to compare against live in blog posts IMO. (not as much push back at i3d btw Bart! that was nice.)

demofox ,
@demofox@mastodon.gamedev.place avatar

@aras @BartWronski like i have it on my personal blog todo list that i need to compare FAST vs these 2 types of noise.
https://tellusim.com/improved-blue-noise/
https://acko.net/blog/stable-fiddusion/

demofox ,
@demofox@mastodon.gamedev.place avatar

@aras @BartWronski Yeah, Bart is a mensch haha. & I love that the best research comes from people that are well versed in both worlds.

demofox ,
@demofox@mastodon.gamedev.place avatar

@mtothevizzah @BartWronski @aras @neil those trips sound so great

demofox ,
@demofox@mastodon.gamedev.place avatar

@BartWronski @wadeb @mtothevizzah @iralmeida @aras I've been pushing for more use of differentiable slang at seed and ea. It's really nice if you want to do any learning/optimization at runtime. You can have the slang compiler turn it into raw hlsl too which makes it nice and portable.

lritter , to random
@lritter@mastodon.gamedev.place avatar

after AI, what will be the next tech hype to get mad about? submissions are open

demofox ,
@demofox@mastodon.gamedev.place avatar

@dysfun @lritter agreed about quantum if it gets here fast enough!

demofox ,
@demofox@mastodon.gamedev.place avatar

@JamesWidman @dysfun @lritter not sure yet 😂

demofox ,
@demofox@mastodon.gamedev.place avatar

@JamesWidman @dysfun @lritter how dare it search an unsorted list in O(sqrt(N)).
(Grover's algorithm)

demofox , to random
@demofox@mastodon.gamedev.place avatar

Repairing a 3d print. Totally feels like a combination of welding and surface mount soldering 😂

demofox OP ,
@demofox@mastodon.gamedev.place avatar

@luis yeah, it works amazingly well, except the knees

demofox OP ,
@demofox@mastodon.gamedev.place avatar

@luis no, but that's not a bad idea

demofox , to random
@demofox@mastodon.gamedev.place avatar

For folks that know me as "the blue noise guy", I've put together a 50 minute video that talks about many of the things I've learned in my ~decade long dive into noise and related topics - up to and including our latest paper published days ago at I3D.
I hope you enjoy it!
https://www.youtube.com/watch?v=tethAU66xaA

A slide showing how random numbers which are positively correlated on the screen give correlated resulting renders, uncorrelated random numbers give uncorrelated renders, and negative correlation random numbers give negatively correlated renders. Negatively correlated renders have the best perceptual quality, despite all three having the same actual error.

demofox OP ,
@demofox@mastodon.gamedev.place avatar

@Az it's unfortunate that dithering helps reduce how many colors & bits you use, but makes it a lot harder to compress 😂

demofox OP ,
@demofox@mastodon.gamedev.place avatar

@mamoniem not enough people know about 1d blue noise textures, let alone spatiotemporal, and now the generalization to arbitrary spatial and temporal filters.
More people need to hop on the train :)
I think there is still a lot of work to do in the area too. Lots of useful discoveries left to be made.

demofox OP ,
@demofox@mastodon.gamedev.place avatar

@apoorvaj Thanks a lot, i really appreciate you saying that :)

demofox OP ,
@demofox@mastodon.gamedev.place avatar

@longbool thanks a lot :)

Edmonds_Scanner , to random
@Edmonds_Scanner@universeodon.com avatar

Turn that frown upside down.
Ok, now keep turning it all the way around and back down again, creating a powerful super-frown.
One so deep that not even angry magic bears would dare cross your path.

demofox ,
@demofox@mastodon.gamedev.place avatar

@Edmonds_Scanner half spin frown takes 2 full rotations 🙃

  • All
  • Subscribed
  • Moderated
  • Favorites
  • random
  • tech
  • kbinEarth
  • testing
  • interstellar
  • wanderlust
  • All magazines