I’m a Christian and software engineer; I create random graphics projects and websites. Feel free to ask me for help with programming, or about my faith!

  • 4 Posts
  • 33 Comments
Joined 3 years ago
cake
Cake day: June 12th, 2023

help-circle

  • https://github.com/KiranWells/corgi

    Like a lot of graphics programmers, I fell into the rabbit hole of rendering fractals. However, I never stopped - over the past couple of years I have slowly been building one of the most sophisticated Mandelbrot/Julia rendering programs that I am aware of. It has a mostly intuitive user interface, and does all of the calculations on the GPU. It has to use a bunch of mathematical tricks to get around the limits of single-point precision available in shaders. Because of the GPU rendering algorithm, I’ve managed to view fractal locations at around 10^250 times magnification with near real-time performance.

    I also built a really in-depth compositing/coloring system, allowing you to make some really crazy images and get a lot of variation even for the same location:

    A grid of 9 rendered fractals, each one with the same rendered location but drastically different coloring styles.

    Although it has only been me working on it, I think it is in a pretty mature state so far, and I would gladly take PRs/issues if anyone happens to be interested. It should support any OS if you compile it from source, but I don’t have binary releases set up yet.


  • For anyone who is confused: This is exploiting an old soundness bug in the Rust compiler that is still present. The GitHub issue page has this comment from maintainers:

    we already had a crate published on crates.io before which used this bug to transmute in safe code, see #25860 (comment).

    this issue is a priority to fix for the types team and has been so for years now. there is a reason for why it is not yet fixed. fixing it relies on where-bounds on binders which are blocked on the next-generation trait solver. we are actively working on this and cannot fix the unsoundness before it’s done.





  • For anyone who is still confused about what causes this: Firefox launches copies of itself when creating new website instances (usually when loading a website that has not already been loaded). Because of this, if it is updated in the background (through any means; I usually see this after a manual system update), Firefox has to restart when you try and load a new site because it cannot create any compatible copies of itself, since the old version is the one that is still running and the copies would use the new (updated) version.

    The solution is to only update when Firefox is closed, or restart it when it asks.










  • I think the behavior could actually make sense with real physics, as the vehicle might be designed to mimic what the driver expects rather than real physics. For example, my car often shuts off the engine when I am not accelerating because it is a hybrid. So, if I don’t press the gas pedal, it wouldn’t really make sense for it to move. However, it is designed to artificially engage the engine when none of the pedals are pressed to more closely mimic the behavior of non-hybrid cars.

    If most pilots are used to the behavior if a vehicle in atmosphere, a space ship might be designed to mimic that behavior (through weak reverse thrusters or something else) to make it easier for pilots to get used to.