@mbr@mastodon.gamedev.place
@mbr@mastodon.gamedev.place avatar

mbr

@mbr@mastodon.gamedev.place

jack of no trades

This profile is from a federated server and may be incomplete. Browse more on the original instance.

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

interesting problem: progressively mapping a cosmically high number of unique strings of arbitrary length to an ordered set so that we can assign an index to each string, extract a substring from each index, and filter strings not in the set.

evidently, this approach requires compression. the compressed result is functionally equivalent to a regular expression, or a schema validation system.

mbr,
@mbr@mastodon.gamedev.place avatar

@lritter Huh. Today's XKCD:

https://xkcd.com/2934/

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

On twitter @sebbbi mentions a cheap approximation of sin(π x) on [-1,1]

sin(π x)/4 ≈ x - x |x|

Normally if we want a two term approximation of an odd function we're stuck with the form:

a(x) = c₁ x + c₃ x³

but if we move away from pure polynomials then another two term form is possible:

b(x) = k₁ x + k₂ x |x|

and this generalizes to however many term odd/even function approximations (filling in otherwise skipped powers with one as abs which spit into two subexpressions w & w/o abs)

mbr,
@mbr@mastodon.gamedev.place avatar

@sebbbi As an example:

f(x) = 4 atan(x)/π on [-1,1]

the abs error approximated as forms a(x) and b(x). orange & blue respectively.

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)?

mbr,
@mbr@mastodon.gamedev.place avatar

@demofox Yeap. And to get a maximum length sequence for the bit width you round to odd.

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

@demofox So [0,N) where N is now not a power of two: t = NΦ, find 'd' which is the nearest integer to 't' which is coprime with N? 'd' is the additive constant and the iteration visits all the elements. Sounds right to me.

mbr,
@mbr@mastodon.gamedev.place avatar

@demofox Oh. General audience clarification: since Φ > 1 I should have explicitly stated using (Φ mod 1)...the fractional part.

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.

mbr,
@mbr@mastodon.gamedev.place avatar

@dougmerritt @demofox Nod. But "real" random isn't any fun.

mbr,
@mbr@mastodon.gamedev.place avatar

@demofox @dougmerritt To expand. With pseudo-random (or LDS) you have a set of known properties. And the fact you can repeat exactly the same sequences (or subset thereof) is of great value. Real random is a niche thing that's only has limited usefulness in "security" IMHO.

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

I guess I never did really think about why we call them trees.

https://twitter.com/Anthony_Bonato/status/1787499373712077233

mbr,
@mbr@mastodon.gamedev.place avatar

@yiningkarlli I wonder if this is intended as self deprecating humor considering the state of "math naming stuff".

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

A new number coding contender enters the ring. https://arxiv.org/pdf/2404.18603

image/png

mbr,
@mbr@mastodon.gamedev.place avatar

@fatlimey Le sigh. I think this was my biggest double-take moment.

mbr,
@mbr@mastodon.gamedev.place avatar

@pervognsen @fatlimey I'm guessing not. Same author's thesis was on unums.

dpiponi, to random
@dpiponi@mathstodon.xyz avatar

I don't know if I hallucinated this but maybe someone recognises it:

I'm sure I once (~20 years ago) saw an arbitrary precision real number library for C or C++ that worked by picking some fixed precision and worked until it produced a result at the required precision, or, if it convinced itself it couldn't achieve that precision, did some kind of backtracking so it could redo the computation at a higher fixed precision. Somewhat analogously to how transactional memory works - and I think under the hood there may have been some unusual memory model.

Sound familiar to anyone?

mbr,
@mbr@mastodon.gamedev.place avatar

@dpiponi It does. The one I was aware of is not coming to me at the moment though.

dubroy, to random
@dubroy@hachyderm.io avatar

New blog post: Bytecode VMs in surprising places
https://dubroy.com/blog/bytecode-vms-in-surprising-places/

Most people probably associate bytecode VMs with general-purpose programming languages. But sometimes they appear in surprising places!

mbr,
@mbr@mastodon.gamedev.place avatar

@pervognsen @dubroy I don't know what either GCC or clang is doing today but (considering) converting a integer multiply by constant to shift/add/sub sequence can be handled as a mini VM.

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

I really think my employers should be able to get compensation from Microsoft for the NUMBER OF TIMES THEY UPDATE WINDOWS LOSING ALL MY CURRENT DEBUGGING STATE AND FUCKING MY DAY UP.

Ranty shout over but Jeez Louise it'll take me a good hour to just get all the tools setup in the right way this morning SIGH.

mbr,
@mbr@mastodon.gamedev.place avatar

@neilhenning A couple of times I've had a multi-day empirical testing or searching thing murdered. Wasn't happy.

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

I'm pretty tepid on Jazz in general but this track that won a German "composition of the year" award is quite pleasing methinks.

https://www.youtube.com/watch?v=Iwq0Fd8qYKU&list=OLAK5uy_kowNXJBg-tSAqIo7u6g1_utGP7Sn4VKYM

steve, to random
@steve@discuss.systems avatar

The Two Cultures:

Neighbor A: /invites everyone over for May-the-fourth potluck/
Neighbor B: Sadly, i will miss out. I will be at the Venice Biennale. Next year?

mbr,
@mbr@mastodon.gamedev.place avatar
NOTimothyLottes, to random
@NOTimothyLottes@mastodon.gamedev.place avatar

If you enjoyed the visuals in the Dune 2 movie and want to try it out at a grand scale, at 230m tall, the Great Sand Dunes (CO) is a worthy stop. Just be careful, the nearby towns entire GDP comes from speeding tickets, and they will go as low as to ticket you for speeding during a lane crossing pass.

mbr,
@mbr@mastodon.gamedev.place avatar

@neilhenning @NOTimothyLottes The "dune du pilat" in France is pretty cool. Ocean on one side, forest on the other and over 100m tall.

https://en.wikipedia.org/wiki/Dune_of_Pilat

mbr,
@mbr@mastodon.gamedev.place avatar

@neilhenning @NOTimothyLottes IKR? Totally freaky.

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

Today I non-ironically used a linked list for a data structure. AMA.

mbr,
@mbr@mastodon.gamedev.place avatar

@pervognsen @rovarma Moreover you can flip the script and argue that all of data structures is just creative uses of lists and arrays.

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

I'm in the process of completely redesigning my blog. I used Jekyll and tbh I never liked it - I often needed to use raw html for some stuff anyway. Now transitioning to a pure html+css+js site, like some caveman :)

image/png
image/png

mbr,
@mbr@mastodon.gamedev.place avatar

@lisyarus I've thought about killing Jekyll and using markdeep instead.

molly0xfff, to ArtificialIntelligence
@molly0xfff@hachyderm.io avatar

I spent a long time experimenting with AI before finally writing about it in depth. It can be pretty useful — but is it worth it?

https://www.citationneeded.news/ai-isnt-useless/

mbr,
@mbr@mastodon.gamedev.place avatar

@BartWronski typo: realt-time

thomastc, to godot
@thomastc@mastodon.gamedev.place avatar

New blog post, about floating point precision and how I implemented an ECS in !
https://frozenfractal.com/blog/2024/4/11/around-the-world-14-floating-the-origin/

mbr,
@mbr@mastodon.gamedev.place avatar

@thomastc Aside: the other (very large scale) option is breaking everything up into local coordinate systems. This way coordinates can remain in single precision (or fixed point for that matter).

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

I have to say, the voice acting in bg3 is among the best I've seen (well, heard)
and man this game is taking a long time to finish
how do some people finish this multiple times?!

mbr,
@mbr@mastodon.gamedev.place avatar

@logicalerror IKR? Steam lists me at 230 hours for 1 play through and I felt like I was rushing myself.

pkhuong, to random

On uint128 (sigh…): kind of weird for the Rust u128 ABI post to suggest 16-byte aligned u128 is more efficient on x86-64 because of the architecture. There is no architectural support yet for memory operations on qword pairs. The benchmark counts instructions, so I guess maybe some copies were SSEd? I suppose we should align all 2, 4, 8, and 16-byte structs to their size on x86-64, because architecture… (and any real perf degradation from narrow-to-wide store forwarding failure wouldn't show up in the instruction count https://gist.github.com/travisdowns/bc9af3a0aaca5399824cf182f85b9e9c!)

[*]: "part of the reason for an ABI to specify the alignment of a datatype is because it is more efficient on that architecture. We actually got to see that firsthand: the initial performance run with the manual alignment change showed nontrivial improvements to compiler performance (which relies heavily on 128-bit integers to work with integer literals)." https://blog.rust-lang.org/2024/03/30/i128-layout-update.html

mbr,
@mbr@mastodon.gamedev.place avatar

@dotstdy @lritter @pkhuong Idle curiosity. Does it just (predictably) in order backfills any gaps?

steve, to random
@steve@discuss.systems avatar

Time to make the paneer!

mbr,
@mbr@mastodon.gamedev.place avatar

@steve Fast lane Farmer's cheese.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • JUstTest
  • thenastyranch
  • DreamBathrooms
  • khanakhh
  • magazineikmin
  • Youngstown
  • Durango
  • slotface
  • InstantRegret
  • mdbf
  • rosin
  • kavyap
  • cisconetworking
  • osvaldo12
  • megavids
  • everett
  • GTA5RPClips
  • tacticalgear
  • ethstaker
  • ngwrru68w68
  • cubers
  • normalnudes
  • tester
  • modclub
  • Leos
  • provamag3
  • anitta
  • lostlight
  • All magazines