Piston Developers 🍿🥤🐸
pistondeveloper.bsky.social
Piston Developers 🍿🥤🐸
@pistondeveloper.bsky.social
A modular game engine written in Rust https://piston.rs
Research branch: https://advancedresearch.github.io

Discord (Piston): https://discord.gg/TkDnS9x
Discord (AdvancedResearch): https://discord.gg/JkrhJJRBR2
There are two default trait methods on the Controller. This sets up the acceleration structures such that they get reused for each simulation iteration. The setup is `O(N)` and acceleration structures ensures it's reduced to `O(1)` at simulation.
November 12, 2025 at 9:07 PM
The Shader is part of the Controller. The Controller is basically a trait that you implement, with two trait methods, one for the shader and one for simulation:
November 12, 2025 at 8:59 PM
I've been doing some experimenting with the idea of a figure shader. So far, I figured out that this is a version of the Model-View-Controller (MVC) pattern.

One challenge: It's difficult to code.

1500 LOC for MVC, 520 LOC for figure shader.

540 LOC of Dyon code generates the MVC pattern.
November 12, 2025 at 8:24 PM
If you struggle with getting productive with Rust, try the following:

1. In Cargo.toml, add the following (see image)
2. Use Esc as shortcut for exiting e.g. see `WindowSettings::exit_on_esc`
3. Use bash command `while true; do <your_command> || exit 1; done`
4. The `current` library
5. Dyon
November 9, 2025 at 7:27 AM
This machine, we call Civilization.

Democracy was invented at the beginning of our Civilization.

Democracy will be here long time after all of us are dead and gone.

In the end, there is no Civilization without Justice.

In Rome, she was "Justitia". In Ancient Greece, she was "Themis".
November 6, 2025 at 3:58 AM
There might be situations where you change the semantics of the two triangles. I don't know what it would be.

Anti-aliasing is important when you have sharp edges of polygons. I added analytic anti-aliasing based on Cohen-Sutherland algorithm for clipping lines to a unit square (a pixel):
November 5, 2025 at 7:41 PM
I lift this trait to `Arc<S>`, so I can share content between sub-scenes.

Now, it is easy to convert from `RayToSphereRgba` to `Scene` by wrapping them in converters. I use one for normal 3D and one for cartoon shading:
November 5, 2025 at 7:27 PM
Since I only use spheres in my custom pipeline, I use another trait `RayToSphereRgba`, so I can focus on generating the spheres and do camera transformation on the rays:
November 5, 2025 at 7:24 PM
Since I have multiple cameras, I need to use to `Arc` so that the content of the scene is shared in the 4 views. So, I implement `Scene` for `Arc<S>` where `S: Scene`:
November 5, 2025 at 7:16 PM
A `Scene` is simply any object that takes a ray and generates a `Nite`:
November 5, 2025 at 7:13 PM
In the screenshot above, I split the viewport into 4 different camera angles and override the shaders per `Nite` with a uniform shader. Here, I use `FstDepth(0.3)`, `FstColor`, `FstNorm` and the default non-uniform shader.
November 5, 2025 at 6:42 PM
Tim Sweeney likes to claim in interviews that you only need to look up 2 triangles per pixel to render realistic graphics.

Now, what is interesting about this idea, it that it is kind of paradoxical design: Ray tracing rarely need that much information. I've decided to explore this design space.
November 5, 2025 at 6:35 PM
In the plane, sphere-packing results in a hexagon. So, each hexagon is like a Big Observer Sphere, which don't take that seriously as an observer, but as a way to think about density of observers. There can be irregular conditions, e.g. change in laws of physics between pocket universes:
November 3, 2025 at 5:49 PM
We might consider tiling space-time using Big Observer Spheres, using the analogy of sphere packing:
November 3, 2025 at 5:44 PM
New paper (first draft):

Anti-Nominalism

In this paper I introduce Anti-Nominalism, which is a weaker version of Seshatism. I explain how it relates to Nominalism critique and why it should be taken seriously by Platonists.
github.com/advancedrese...
October 30, 2025 at 11:34 PM
What I don't understand is that if people write Aramaic around the Dead Sea and have a practice of medicine that supports their religion, why would they suddenly start translating their texts into Greek? Why writing primarily in Hebrew?

Kipp Davis argued there is some back-translating from Greek.
October 27, 2025 at 9:46 PM
Here is another one:
October 27, 2025 at 3:26 PM
These paintings are not made by people that are contemporary with the historical personality, so this leads to a phenomena where cultural changes influences how we perceive a person, which is fictional.

For example: Here's Jesus waking up Lazarus in a catacomb.
October 27, 2025 at 3:19 PM
Most people don't actually know what Platonism means. On Wikipedia, it says:

All of this is misleading and wrong. I can tell you what Platonism means.
October 27, 2025 at 8:36 AM
This mother is not going to have food for her kids in coming months, while all the counties in her state voted for Trump.

Fox News won't show these videos. Just like under Stalin, the US media is complicit in criminal starvation of the population.

It's time for Trump to resign.

#resist
October 25, 2025 at 4:09 PM
This is the hierarchy of helpfulness:
October 23, 2025 at 9:06 PM
Follow the example of George Bush Jr:
October 21, 2025 at 8:18 PM
Every day, lots of kids learn to read for their first time. Up until this moment, their brains have struggled with letters and words. Right now, their brains start to experience reading as a flow, just like riding a bike.

Reading to young children regularly can nearly double their chances.
October 21, 2025 at 1:45 PM
🐸🐸🐸
October 21, 2025 at 11:38 AM
October 18, 2025 at 10:34 PM