You can download the LDD file for it here: http://1drv.ms/1bSM59JVolumetric TesseractAncient2024-10-11 | A tesseract rotating on a volumetric display. This is a 4D object projected into 3D space, then filmed on a 2D camera. The display is a homebrew swept volume display (it spins a bunch of LEDs to create a true glasses-free 3D image). It's refreshing at about 25 Hz - the flickering is an artefact of the video. The dome is just cosmetic - it doesn't hold a vacuum (the holes in the base are there to let air in so it doesn't overheat).Autostereoscopic DisplayAncient2024-10-02 | Like my volumetric display, this spins an LED matrix at high speed to produce a 3D image - but the way it does it is quite different. Instead of lighting up LEDs at specific points in space, it uses a directional screen to present different images to each eye. The effect works without glasses from any direction.
It doesn't flicker in person - that's an artefact of the video.Volumetric Display ProgressAncient2024-09-28 | Another scrappy video showing the current state of my volumetric display. With the dome on it can spin faster, but the dynamic balance still needs some work.
This is a true 3D display; it works without glasses from any angle. The principle is the same as a 'hologram fan', except that instead of spinning a 1D strip of LEDs to make a 2D image, it spins a 2D panel of LEDs to make a 3D image. Like any persistence of vision display, it looks flickery on video unless it's spinning comfortably faster than the camera's frame rate. This is getting close to the point where you could just point your phone at it and get reasonable footage, but it still comes out looking worse on video than it does to the eye.Volumetric Display - model viewerAncient2024-09-06 | Shoving my phone recklessly close to the spinning voxels of a poorly balanced swept volume display, to try to convey a sense of the depth it achieves.
The display takes advantage of the persistence of vision effect. It's like a hologram fan, but instead of spinning a 1D strip to make a 2D image, it spins a 2D panel to make a 3D image. In person it's not as flickery as it appears in this video - filming it is challenging because to reduce the flicker you have to increase the exposure time, which reduces the framerate of the video.
I've gone for a shorter exposure and more flicker in this video, because I had complaints (so many complaints) about the framerate in a previous video. Even so it's not 30 fps, and the youtube codec struggles badly with the confetti effect of those rapidly shimmering voxels.
The real solution is to increase the spin rate, and that's the ultimate aim of this new design.
youtube.com/shorts/97cLIO7FNtwVoxel DoomAncient2024-08-09 | Doom ported to a volumetric display.Endless TrenchAncient2024-06-08 | A procedurally generated trench run. Probably needs more tile variants. Also it's in 3D.Volumetric Doom Spin UpAncient2024-06-03 | Doom 2 ported to my volumetric display, showing the spin up sequence & attract loop.Volumetric Doom Side by SideAncient2024-04-29 | This is a port of Doom running on my volumetric display. I've overlaid the original game running the same demo for comparison.Voxel DoomAncient2024-04-27 | Doom ported to a homebrew volumetric display.Voxel VoyagerAncient2024-03-31 | More 3D display shenanigans.3D displayAncient2024-03-24 | A slightly better lit video of my voxel display. The image is generated by an LED matrix updating at 4000 fps and spinning at 600 rpm, to pass through every point in a 128x128x128 volume.Holographic displayAncient2024-03-24 | A volumetric 3D display. Just like the PoV displays which spin a line to create a 2D image, this spins a plane to create a 3D image. The addressable volume is 128x128x128 voxels.Thumby DoomAncient2023-09-25 | The Thumby uses the same processor and screen as my Lego computer, so it runs the same Doom port. It really is tiny!
The game is playable in the sense that you can run around in the world. It's not playable in the sense of being a fun time.
The installer is here: github.com/AncientJames/rp2040-doom/releases/tag/v1.0.1Artificial HorizonAncient2023-03-07 | Uploading here for the sake of completeness. A view of the in-brick accelerometer in action for the first time.Busy little screensAncient2023-03-07 | Another grid o' bricks randomly regenerating their UITilt DoomAncient2023-02-18 | I hooked up the accelerometer, so Doom is now "playable" entirely on the brick.
The capacitive touch wasn't tuned very well, so it's a bit shooty.Doom on a ringAncient2023-01-29 | I sourced some small batteries for the lego computer, and needed to try them out. Why not a ring?
The circuit is a single PCB which I cracked along 4 score lines to wrap it into a ring. I wanted to see if this was a useable technique. It isn't. The result was very fragile, and I lost the connections to the capacitive pads and USB port during encapsulation.
If I make another, it will either be fpc or castellated construction.
I've chopped out sections that went on a bit, but tried to leave in enough of everything to show the whole process.
Edited together from a few different builds, so there's some continuity errors with the resin colour at the end.
Code for driving the screen in greyscale is here: github.com/AncientJames/uGrey The screen is a 0.42" OLED, available from aliexpress or similar. Yes it runs Doom. youtube.com/watch?v=TJHSMpYi8bgBare BricksAncient2022-11-28 | A set of bare circuits for the brick computer, making random UI screens.Doom USBAncient2022-11-05 | Brick Doom with a keyboard plugged in, being played badly.Lego DoomAncient2022-11-05 | A decent quality video of Doom running on a little computer in a brick.brickdoomAncient2022-08-23 | Doom running on (an RP2040 stuffed into) a Lego brick. The display is a 1bpp 72x40 oled; greyscale is achieved by flicking between 3 contrast levels. It's very challenging matching exposure to this refresh rate, hence the horrible video quality.Lego death star targeting computer.Ancient2022-06-12 | A little microcontroller and oled screen cast into a lego brick mould. The studs contain capacitive touch sensors.Lego computer brickAncient2022-06-09 | Tiny oled screen and microcontroller embedded in a Lego brick.Conways Life in LegoAncient2021-09-03 | I'd forgotten about this youtube channel, but apparently the algorithm hadn't. Here's another view of the life gizmo in its final form. Instructions for building it are at bricksafe.com/pages/AncientJames/life-mk-iiLego Life: GliderAncient2018-09-22 | ...New lifeAncient2018-09-22 | ...Cell build timelapseAncient2018-08-29 | ...Life LargeAncient2018-08-19 | ...Conways Life in LegoAncient2018-08-19 | Fully mechanical implementation of the Life cellular automatonConway’s Life in LEGOAncient2018-08-18 | ...TimelapseAncient2018-08-18 | Small modification, repeated.scroller testAncient2015-10-06 | ...Lego TetrisAncient2015-05-01 | Yeah, not really.Lever LockAncient2015-04-22 | You can download the instructions for this (as a Lego Digital Designer file) here: bricksafe.com/files/AncientJames/lever%20lock%202.lxfPixelAncient2015-04-11 | The pixel mechanism from my bitmap display. 25 of them are crammed together inside this: youtube.com/watch?v=OyC_Qh6B0hwLever LockAncient2015-04-01 | There's another view of this here: youtube.com/watch?v=9gnJU6qT1kI
And the Lego Digital Designer file for it is here: bricksafe.com/files/AncientJames/lever%20lock%202.lxf5x5 BitmapAncient2015-03-31 | It works!De Bruijn Matrix DisplayAncient2015-03-30 | ...Lego Ball PumpAncient2015-03-30 | ...Jansen LinkageAncient2015-03-30 | ...StrandbeestAncient2015-03-30 | (Another) Lego StrandbeestLego bitmap displayAncient2015-01-14 | Scrolling mechanical displayTilterAncient2014-10-07 | ...Seven segment displayAncient2014-09-27 | ...