Aerolith: Giving a Small Arcade Game a Clear Shape
Aerolith is a three-mission arcade-shooter prologue for iPhone. Automatic fire, a short escape route and readable threats keep the game's attention on movement through the screen.
3 min readThe notebook / 2016 to 2026
Cameras, virtual spaces, small tools and the ideas behind them. Notes from the places where software meets the world.
138 articles
No articles match this search.
Aerolith is a three-mission arcade-shooter prologue for iPhone. Automatic fire, a short escape route and readable threats keep the game's attention on movement through the screen.
3 min readI built a Thalassa game prototype with GPT-6 over a weekend and shared it while much of the graphics was still missing. The next useful step is choosing what needs to become coherent before adding more.
2 min readI tried making a Gaussian scene from one ordinary photograph. The awkward result around a face was a useful reminder that a plausible new view is an inference, not another captured observation.
2 min readGeoCalib estimates camera parameters and gravity direction from one image. It is useful for bringing unfamiliar photographs into graphics workflows, provided calibration estimates are not mistaken for a complete scene reconstruction.
3 min readThe v3 rewrite of my Unity printer plugin separates capture, document layout and platform printing. A capability-based API makes differences between desktop, mobile and browser output explicit.
4 min readMy Safari extension prototype reuses a page's video as a texture and presents the correct region to each eye in WebXR. The crop is simple; orientation, controls and browser playback behavior take more care.
3 min readJ Bostock's essay on mode collapse is a useful prompt to examine how successful habits can narrow a creative practice. I am interested in preserving the ability to try unfamiliar work without treating specialization as a failure.
3 min readMy early visionOS Hopalong prototype turns a deterministic attractor into a spatial tunnel. The interesting design work is in scale, movement and the viewer's ability to remain comfortable inside the pattern.
3 min readI replaced the old feel.digital placeholder with a new one using Codex. A small site can carry a sense of place before it grows into a large archive of work.
2 min readI started porting an old assembly and Pascal project to Swift and Metal with Codex. The first problem worth fixing was how the agent explained its work, because I still needed to understand the transformation.
2 min readI asked Claude Code to read AquaDegrees for iOS, leave it untouched and build an Android counterpart. About an hour later, an emulator was running the result, including widget and watch components.
3 min readSmart-contract simulators provide a concrete way to test an agent against executable behavior. Anthropic's study is most useful as a lesson in reproducible security evaluation, rather than a headline about stolen funds.
3 min readOmniX links panoramic generation with depth and material estimation. The useful question is what survives when an attractive panorama becomes a scene that can be relit and viewed from elsewhere.
3 min readA Canon camera and a Unity scene operate on different schedules. My plugin work connects device control and live-view data while making session lifetime and threading explicit.
3 min readI used Gemini CLI to build Compliage while on holiday, including data work, payments, tests and deployment. The experience made the role of a precise engineering request more obvious, not less.
4 min readSOG packages Gaussian scenes into a more compact form for delivery. Its practical significance is the shorter path from a captured scene to a page someone can actually open.
3 min readI have been taking more spatial photos and videos because I enjoy revisiting ordinary moments in a headset. The value is personal, and it changes what I consider worth capturing.
2 min readAquaDegrees keeps its scope close to a single question: how warm is the water nearby? By summer 2025, its phone and Watch surfaces were different ways to reach that same answer.
3 min readAdding AquaDegrees to Apple Watch exposed the difference between fetching a value and showing a timely value on a watch face. Synchronization and refresh behavior deserve as much attention as the compact layout.
4 min readAfter two nights with Claude Code, the useful lesson was about task definition and review. Fast implementation is most valuable when I can say precisely what a correct result should do.
2 min readI tried NotebookLM in Russian and liked the result. Listening can reveal a different structure in research material, but the original documents remain the place to check what the narration claims.
2 min readA stereo compression comparison needs separate left-eye and right-eye measurements, aligned frames and an explicit aggregation method. My script sets up the experiment, but its summary is not a sequence-level benchmark.
4 min readMy small C utility extracts one eye from a large stereo HEVC frame, resizes it and encodes a smaller output. It is a useful example of why a preview stream should have an explicit purpose.
3 min readEVER changes the rendering calculation behind an ellipsoid-based scene. Exact volumetric integration offers a useful comparison with the screen-space approximation used by Gaussian splatting.
3 min readClaude helped me build a Python camera server and a browser control panel in about half an hour. Preview and settings worked as a prototype; simultaneous dual-4K recording remained the next experiment.
3 min readI ordered a Jetson Orin Nano Super to explore a compact stereo-camera setup. The immediate engineering question is video throughput, especially on a board without a dedicated hardware encoder.
3 min readGitHub Spark proposes personal micro-apps built through a natural-language editor and managed runtime. The difficult boundary is between a convincing demonstration and a tool that stays useful after repeated use.
3 min readUnity 6 makes mobile web a more explicit target. A good browser game starts with its loading and input constraints, because the first minute includes the wait before the first move.
3 min readTrying Replit Agent made a backlog of small ideas feel more approachable. The valuable change is reaching a testable interaction sooner, while keeping the experiment small enough to judge.
3 min readThe first store-version milestone for AquaDegrees was a change in expectations. A useful prototype had to become an app that could explain itself without its developer standing nearby.
3 min readVR-GS adds simulation and interaction to a Gaussian scene. It exposes the missing link between a representation that looks like an object and one that can respond like an object.
3 min readExperimental distributed inference can combine the memory of several machines. The useful distinction is between fitting a larger model and making it respond faster.
3 min readDeep stereo matching is easier to understand as a chain of assumptions than as a leaderboard. Calibration, ambiguous surfaces and temporal consistency shape the result before a model reaches an application.
3 min readThe early water-temperature app starts with a narrow, practical question. Its hardest design requirement is making a small answer understandable without implying more precision than the data provides.
3 min readStable Audio 2.0 makes longer generated audio possible. Interactive sound still needs deliberate structure, transitions and a clear place in the scene.
3 min readMAS builds 3D motion from a model trained on 2D motion evidence. Its interesting step is the repeated negotiation between plausible views and a consistent moving skeleton.
3 min readChrome 121 brought WebGPU to a subset of Android devices. Compute access is useful, but a mobile browser still has a frame budget, a battery and a page that must respond to touch.
3 min readA two-minute InVideo experiment produced a complete short from a single request. The useful result was a first edit I could react to, rather than a collection of separate assets.
3 min readMarigold uses a diffusion model's visual prior to estimate relative depth from one image. Useful depth structure does not imply a physical distance measurement.
3 min readA small camera baseline produces less stereo disparity, which can be useful for close subjects even though it limits depth separation farther away.
3 min read4D Gaussian Splatting makes dynamic scenes render quickly after training. Live volumetric streaming needs several additional parts of the pipeline.
2 min readBarry Martin's Hopalong recurrence generates intricate orbits from a few parameters. A small implementation makes its rules easy to explore.
3 min readAras's Unity Gaussian Splatting project brings a new scene representation into a familiar engine, exposing practical questions about blending, memory and interaction.
3 min readEnhanced RTMP extends a familiar ingest path for newer video codecs, making compatibility across the entire streaming chain the central question.
3 min readA local document assistant needs reliable retrieval and visible evidence. The language model is only one part of answering questions about a folder.
4 min readThe first Metal implementation in llama.cpp moves local generation onto Apple silicon GPUs, while memory and the distinction between prompt processing and decoding remain important.
3 min readThe second Leap Motion controller announcement made me revisit why hand tracking appealed to me, and what a useful gesture interface still needs.
2 min readMake-It-3D combines image evidence with a diffusion prior, showing both the appeal and the ambiguity of generating an object from one view.
3 min readI used GPT-4 to build a small Python application connecting YouTube Data API and ChatGPT API. The useful surprise was how it explained the surrounding setup.
2 min readToolformer explores how a language model can learn when an external calculation or lookup is useful, rather than relying on text prediction alone.
3 min readLenovo's Project Chronos concept treats the camera as a sensor for an avatar, raising questions about depth, tracking and access to the resulting data.
3 min readApple's Core ML Stable Diffusion work brings local generation closer to ordinary applications, where memory, responsiveness and model packaging become product decisions.
3 min readStereo depth turns disparity into distance. HITNet improves the matching stage, while calibration and uncertainty still determine how the result can be used.
3 min readNerfstudio makes radiance-field experiments easier to inspect and repeat, bringing attention to the workflow around the rendering method.
3 min readA 3D scene can provide composition for diffusion, but stable geometry in the input does not guarantee stable details in the generated sequence.
3 min readGenerated images suggest a route toward generated places, but a navigable world must preserve relationships that a single picture can leave unresolved.
2 min readMegaPortraits separates a source identity from driving motion, while using learned priors to fill information that a single portrait cannot contain.
3 min readPresence Platform and The World Beyond suggest how a mixed-reality application can treat a room as an interactive place rather than a video background.
2 min readMy search for 4K60 GoPro streaming led to Open GoPro and GoPro Labs, and to a useful separation between controlling a camera and obtaining its video.
3 min readThe Oculus anniversary brings attention back to comfort, latency and the practical cost of entering VR.
2 min readNeuralRecon combines local surface predictions over time. A stable room scan depends on that accumulation as well as the quality of each frame.
3 min readDisco Diffusion makes generation feel like an editable experiment, with seeds, parameters and intermediate results exposed in a notebook.
3 min readA decentralized ledger can still reach its users through centralized servers. Web3 applications need to be examined along the whole request path.
3 min readPlenoxels separates the value of a radiance-field representation from the assumption that a neural network must store it.
3 min readCanon's Dual Fisheye design puts two views on one sensor, simplifying synchronization while leaving stereo geometry and projection work intact.
3 min readHyperNeRF uses an expanded representation to handle changes that a simple deformation of a fixed scene cannot describe cleanly.
3 min readCanvas turns semantic regions into images, making composition and material choice direct controls while leaving exact detail partly to the model.
3 min readFortnite's Rift Tour shows how a musical event can use movement, scale and shared timing as part of its composition.
3 min readProcedural terrain becomes easier to understand when broad shape, fine variation and safe distance estimates are treated separately.
3 min readUnity's Apple Silicon preview raises practical questions about native plugins, editor tooling and reproducible project environments.
3 min readLearned garment deformation can make clothing more practical to animate, but body contact, material behavior and unfamiliar poses remain distinct challenges.
3 min readNVIDIA's AR SDK can provide face and body estimates, but an avatar needs an explicit mapping from those measurements to its own expressive controls.
3 min readAn NFT connects a token record to metadata and media through several systems. Persistence depends on how those connections are maintained.
3 min readMetaHuman lowers the cost of assembling a detailed digital person, while leaving performance, lighting and character decisions in the creator's hands.
3 min readMediaPipe Holistic shows why face, hand and body tracking benefit from a coordinated pipeline instead of three unrelated detectors.
3 min readBalenciaga Afterworld makes fashion presentation spatial. That changes how a viewer moves, where attention lands and how clothing can be inspected.
3 min readPutting style transfer into a game requires attention to image conversion, GPU work and temporal stability as well as the neural network.
3 min readThe early WebXR depth proposal could help virtual objects respond to real surfaces, but depth must be aligned, interpreted and trusted selectively.
3 min readA small virtual production setup needs a dependable matte, matched camera geometry and controlled delay before it needs a complicated set.
3 min readNeRF-W separates persistent scene structure from changing appearance and temporary occluders in uncontrolled photo collections.
3 min readMy Broadcast AR SDK changes expose head pose and alter the sample workflow. They show why tracking integration extends beyond inference.
3 min readGawain from The Heretic is a useful reference for thinking about how facial geometry, lighting and motion must agree.
3 min readThe open Vahana VR and VideoStitch code reveals why a 360 pipeline needs separate answers for calibration, seams, timing and delivery.
3 min readA webcam becomes an input device when tracking data is translated into stable, correctly timed controls for a graphics application.
3 min readThe original NeRF represents a scene with density and view-dependent color. Rendering a new view means sampling that function along camera rays.
4 min readPerson removal depends on remembering a plausible background, handling uncertain boundaries and keeping the result stable across frames.
3 min readSpatial collaboration becomes useful when people need to point at the same object, rather than simply occupy the same virtual room.
3 min readStyleGAN2 traces recurring image artifacts back to architecture and training choices. Cleaner outputs improve the tool without making its latent space a complete model of the world.
3 min readA distributed volumetric capture system needs a common space and a common timeline. Small disagreements turn into visible seams on moving subjects.
3 min readSpleeter estimates separate musical sources from a finished mix. Its usefulness comes from making an imperfect inverse problem easy to explore.
3 min readThe public PrinterPluginPro documentation turns a Unity image into a clear integration contract: readable pixel data, explicit page fitting and a deliberate capture step.
4 min readA browser face filter combines capture, tracking and rendering on a shared frame budget. Small timing and coordinate errors can break the illusion.
3 min readMediaPipe's hand-tracking pipeline separates locating a palm from estimating finger landmarks. A usable gesture interface needs another layer of state and feedback.
3 min readNeural Point-Based Graphics attaches learned features to a point cloud and trains a renderer to turn projected features into an image.
3 min readDeepView uses layered images to synthesize nearby viewpoints. Occlusion is the reason a stack of layers can do more than a single depth-warped photograph.
3 min readBrowser AR reduces the cost of entering a spatial experience. A good prototype still needs a narrow tracking promise and a useful fallback.
3 min readA small soccer environment exposes the design decisions behind learned behavior: what agents observe, which actions they can take and what earns a reward.
3 min readOpenPose's Unity wrapper supplies body keypoints. Turning those estimates into interaction requires coordinate mapping, confidence handling and a clear behavior when tracking fails.
3 min readMultiple depth cameras can turn a remote person into a spatial capture. The useful freedom depends on coverage, alignment and what the cameras cannot see.
3 min readMobile XR moves camera, tracking and display data through a shared power budget. More compute helps only when the whole pipeline keeps up.
3 min readA fisheye image is a map of directions. Calibration and rectification depend on choosing a projection that respects its wide field of view.
3 min readMy VR180 broadcast experiments led into MP4 projection metadata, where a rectangular video frame becomes separate views on a mesh.
3 min readBerkeley's SFV pipeline turns video into a motion reference, then trains a simulated character to reproduce the skill under physics.
3 min readFirefox Reality brings the web's familiar idea of following a link into a headset, where navigation and text input need different treatment.
2 min readVR180 spends its image budget on the space in front of the camera. That changes both technical sampling and the way a scene should be staged.
3 min readA reconstruction pipeline needs agreement about lenses, coordinate systems and time before it can turn images into a trustworthy scene.
3 min readSeurat simplifies a scene around a chosen region of viewpoints. Limiting where the viewer can move creates room for much richer appearance.
3 min readLivepeer's alpha connects a concrete computing job to a coordination protocol. The interesting questions concern service quality, verification and payment.
3 min readA monocular video can constrain a digital human from several directions, provided the system accounts for the person's motion between frames.
3 min readI want to learn machine learning through images and graphics problems I can inspect, starting with small experiments and honest comparisons.
3 min readProgressive GAN training begins with a small image and adds detail gradually. The transition between resolutions is part of the method.
2 min readThe Mandelbrot set is a compact way to understand GPU work: independent pixels, repeated arithmetic and a surprising amount of control-flow variation.
2 min readZcash separates proof that a transaction is valid from public disclosure of its contents. Privacy still depends on the surrounding transaction path.
3 min readFilmic makes the transformation from scene values to display values explicit. A bright pixel need not lose all of its neighbors to clipping.
2 min readMultiPoolMiner is an example of a controller choosing between changing estimates. Switching costs and stale measurements complicate the obvious rule.
2 min readA map and a decade selector offer a different rhythm for music discovery: choose a direction, then let the archive surprise you.
2 min readglTF 2.0 gives materials a portable description, making it easier to move a scene without carrying one renderer's shader code along with it.
3 min readTransaction visualizations make a network feel tangible, but their mappings can hide uncertainty about what the activity actually means.
2 min readThe Great 78 Project makes old recordings explorable through careful transfers, metadata and access to the imperfections of the source.
2 min readMy early PrinterPluginPro work connects a Unity texture to a physical printer. The difficult part is the boundary between rendering and native output.
4 min readThe June GDAX price collapse shows how order-book liquidity, stop orders and forced selling can amplify one another.
3 min readA light field samples where rays travel as well as where they land. Refocusing becomes an operation on those samples.
3 min readA small .NET RTMP client separates three ideas that are often bundled together: media transport, remote calls and video encoding.
3 min readGenerative design makes the definition of a problem part of the design itself. The useful output is a set of informed choices.
3 min readA fragment shader turns coordinates and time into an image. A tiny moving shape is enough to explain the feedback loop.
2 min readMax Cooper and Maxime Causeret turn musical repetition into a visual study of growth, motion and small variations.
3 min readpix2pix treats image translation as a learned relationship between paired examples, with a second network judging whether the result fits.
3 min readMy early theta_stitch work sits inside a deceptively compact problem: reconciling lens geometry, overlap and parallax between two fisheye images.
3 min readWave Function Collapse builds larger patterns by propagating local constraints. Its successes and contradictions are both useful to understand.
3 min readWaveNet generates an audio waveform through conditional prediction, revealing both the richness and the cost of working at sample scale.
3 min readEthereum's hard fork separates two questions that are often bundled together: how a ledger records decisions and how people decide which ledger to follow.
3 min readSurround 360's open rendering pipeline shows why stereo stitching is a chain of geometric decisions rather than a single blending effect.
3 min readSmart contract security begins with assumptions about adversaries, state changes and external calls, not with the word immutable.
3 min readDaydream's mobile focus makes scope, input and the cost of every rendered frame central design decisions.
3 min readA multicamera VR rig has to agree about time and geometry before its images can become a comfortable stereo panorama.
3 min readHoloLens development changes interface design by making gaze, gestures, sound and the surrounding room part of the same problem.
3 min readNeural style transfer turns visual resemblance into an optimization problem, with useful results and a surprisingly specific meaning of style.
3 min readEarly A-Frame makes a useful promise: describe a small 3D scene with familiar web tools, then share it through a link.
3 min read