7 ms·
This looks bad since the resolution of the dither pattern is too low. Maybe mipmapping it would help?
by WithinReason 2y ago
This looks bad since the resolution of the dither pattern is too low. Maybe mipmapping it would help?
- qingcharles 2y agoThis definitely seems like the wrong platform to experiment with this technique. It's a lot of work to have such a poor result when there are other solutions which would produce much nicer results with less effort. Plus it is doing a wild amount of per-pixel computation for this. I don't wanna knock the author too bad, though. He put the hours in and he documented every step in serious detail, so mad respect for that.
- madeofpalk 2y agoI'm sure doing it on the Playdate was the point.
- brianpan 2y agoHis Game Boy Advance was probably out of batteries. Sometimes you gotta make do.
- gyomu 2y ago> This definitely seems like the wrong platform to experiment with this technique As an owner of a playdate, it’s kind of the wrong platform for… everything. So in that sense it’s right at home. You have to respect the vision, execution, and the commitment to the product - the hardware looks great and feels great. The games are all kinda gimmicky and obviously limited by the platform though. Falls squarely into the “I want to love this thing so bad, but I just can’t” camp.
- mobiledev2014 2y agoIt’s definitely not for everyone but I feel like, of the people who were intrigued enough to buy one, you’re probably in the minority. I would have found it worth it just with the first season of games. It has exceeded my wildest expectations
- bjconlan 2y agoYeah I agree. The dithering effects in Everybody wants to crank the world[0] are much more visually satisfying but as you pointed out perhaps it's the levels of the textures that make it feel... Well like textures. [0] https://aras-p.github.io/demo-pd-cranktheworld/ https://aras-p.github.io/demo-pd-cranktheworld/
- diffuse_l 2y agoYou can estimate mip levels per triangle and subdivde them based on the wanted mip level across z lines, instead of doing the calculation per pixel. It's a bit wonky, but can work, at least for the bigger triangles. I've linked some code that does something along those lines for mipmapping [1]. [1] https://github.com/Gil-AdB/REVIVAL/blob/0da65f18a34b74575a89694d21c9058f20f75f18/FDS/FRUSTRUM/FRUSTRUM.CPP#L454 https://github.com/Gil-AdB/REVIVAL/blob/0da65f18a34b74575a89...
- WithinReason 2y agoyeah I was wondering if you could use blue noise mipmaps, trilinear sample from it, then round to 0 or 1. With the right mipbias it feels like it should look OK.
- diffuse_l 2y agoTrilinear might be possible, but then you'll still need per pixel derivatives, no?
- cubefox 2y agoThe dither pattern is not really aligned with the screen pixels. So you can't have just one black or white dot per pixel. The alignment is only approximate, so you have dots that are much larger than pixels.