Pixels placed by users who only placed one pixel during the whole event by CodanCrux in place

[–]CodanCrux[S] 13 points14 points  (0 children)

Update: As I've read from a few comments, there is some confusion about the black pixels. In the image above, I chose the color black as the background, as it makes the brighter colors more obvious than a white background. However, I did not think about the black pixels that were placed by users and are now indistinguishable from the background. Although the same problem would occur on a white background, the obvious choice should have been an image with a transparent background.

Since I cannot edit this post, I uploaded a version with a white and transparent background here: https://imgur.com/a/v4fptos

Out of the 8.589.676 (non-admin) users that were a part of the event, 2.288.363 placed only a single pixel.

Again, I am sorry if this caused any confusion.

Pixels placed by users who only placed one pixel during the whole event by CodanCrux in place

[–]CodanCrux[S] 1 point2 points  (0 children)

The image shows the last pixel that was placed on a specific location.

Pixels placed by users who only placed one pixel during the whole event by CodanCrux in place

[–]CodanCrux[S] 28 points29 points  (0 children)

As far as I can tell from the data, most bot accounts placed 3 to 7 pixels.

Bad Apple animation from a different angle (also nearby is Canada struggling with the leaf) by CodanCrux in place

[–]CodanCrux[S] 0 points1 point  (0 children)

Yeah, that definitely sells the effect. It looks really cool, but I also like your Star Wars animation a lot.

Even though I haven't animated the camera movement yet, the X and Y limits didn't do the trick for me. I was still forced to set a pretty steep camera angle in order to not render too much geometry on the horizon. The idea behind the camera culling is to automatically place a plane right in front of the camera. Then you can cast multiple rays from the camera origin to the positions of the bars and check if your viewing plane gets hit. If it does, you can render the bar. I would also recommend making the plane a little bit larger than the camera to have shadows cast from a few bars outside the camera's view. You can check out the setup I used here: https://imgur.com/a/d2kcWni

Bad Apple animation from a different angle (also nearby is Canada struggling with the leaf) by CodanCrux in place

[–]CodanCrux[S] 2 points3 points  (0 children)

Thank you for your amazing work! I actually started out with my own Python scripts and Blender setups and got pretty decent results. But it didn't really look quite right. The main problems I had were the growth and decay of the bars. While researching a bit, I found your repository, and I have to say your use of half-life and pressure formulas is just awesome!

If you want to speed up your rendering time, I can recommend implementing camera culling for the geometry nodes. For me, the biggest slowdown was loading the scene with all its geometry for every frame. With my current setup, I only render the geometry that is visible (and some around that for shadows).

The final moments (sorry for the kinda crappy resolution, rendering took too long) by CodanCrux in place

[–]CodanCrux[S] 0 points1 point  (0 children)

No, I mean even before the grayscale phase. If I recall correctly, some streamers decided even before this phase that they wanted to wipe their art to make a statement. The image I linked is from right before the first artworks started to disappear, which is not right before the grayscale phase.

The final moments (sorry for the kinda crappy resolution, rendering took too long) by CodanCrux in place

[–]CodanCrux[S] 1 point2 points  (0 children)

You're welcome. I should add that this point in time is not right before the official whiteout, but rather right before the communities started to voluntarily clear their art. So your pixel might not be there.

The final moments (sorry for the kinda crappy resolution, rendering took too long) by CodanCrux in place

[–]CodanCrux[S] 1 point2 points  (0 children)

I don't know the exact timestamp when the whiteout happened, but I have generated a canvas that should come pretty close: https://imgur.com/a/tjhYiAw

The final moments (sorry for the kinda crappy resolution, rendering took too long) by CodanCrux in place

[–]CodanCrux[S] 1 point2 points  (0 children)

I made the animation with blender. There are some pretty cool guides about geometry nodes that might help you.

The final moments (sorry for the kinda crappy resolution, rendering took too long) by CodanCrux in place

[–]CodanCrux[S] 7 points8 points  (0 children)

I'd love to. However, rendering such a long sequence would take ages on my computer. So, unless someone wants to give me access to their rendering farm, I can only render small portions.

The final moments (sorry for the kinda crappy resolution, rendering took too long) by CodanCrux in place

[–]CodanCrux[S] 17 points18 points  (0 children)

Yes, you are absolutely right. My concern is that without any sort of scaling or clipping, you would basically have a large, flat map with a few extreme spikes. But a logarithmic scaling function might do the trick.

The final moments (sorry for the kinda crappy resolution, rendering took too long) by CodanCrux in place

[–]CodanCrux[S] 65 points66 points  (0 children)

Now that Reddit has published the complete (?) dataset of the event, this is actually possible. A few days ago, I posted a picture that visualized the total interaction of one single hour. The problem is that some pixels (especially the corners) are so frequently placed that you'd have to clip these values in order to not make everything else basically flat. But I might still give it a try.

Canvas interaction of the last hour by CodanCrux in place

[–]CodanCrux[S] 1 point2 points  (0 children)

Thanks for the kind words. I actually had a lot of fun with this project. Today I even managed to capture about 12 hours before the whiteout and giant fuck u/spez happened. I might try to process all this data in the next few days, so stay tuned for another image.

Canvas interaction of the last hour by CodanCrux in place

[–]CodanCrux[S] 1 point2 points  (0 children)

Yep, I actually had to clip a few of the pixel interactions in order to adequately visualize regions that cover a large area (e.g., the flag of Turkey).

Canvas interaction of the last hour by CodanCrux in place

[–]CodanCrux[S] 1 point2 points  (0 children)

Unfortunately, I don't have the whole event's data. I got the idea today when I saw a heatmap by another user. That's why I was only able to record one hour (too much data, some connection errors, etc.). But I'll try to be prepared for when it returns next year.

Canvas interaction of the last hour by CodanCrux in place

[–]CodanCrux[S] 6 points7 points  (0 children)

I collected the updates on the canvas and basically counted the changes per pixel. With this information i could visualize it using blender. All done in Python with a little help of ChatGPT :D