New
The latest blog posts to take off on Hacker News. 2,047 posts.
The IBM PC, Part 1 (2012)
What with the arrival of the category-defining Commodore VIC-20 and the dramatic growth of the British PC market, 1981 has provided us with no shortage of new machines and other technical developments to talk about. Yet I’ve saved the biggest event of all for last: the introduction of the IBM PC, the debut of an…
4D Toys: a box of four-dimensional toys
So I have been working on Miegakure for a long time now, and I have created and accumulated many cool 4D things of all sorts. I think it’s about time that I share some of them, so…
How a 64k intro is made
The demoscene is about producing cool real time works (as in “runs on your computer”) called demos . Some demos are really small, say 64 kilobytes or less, and these are called intros . The name comes from “crack intros”. So an intro is just a demo that’s small.
Writing a second video game for the Micro:bit in Rust
I recently published a story about bitflyer, a simple game for the BBC micro:bit.
Pushing Polygons on the Mega Drive
Write-up of the polygon renderer used for the Mega Drive demo “Overdrive 2”.
Eigentechno – Principal Component Analysis applied to electronic music
Applying Principal Component Analysis to a data-set of short electronic music loops
Beware of Transparent Pixels
If you use sprites with transparency in your game — and you most likely do for the UI at least — you’ll probably want to pay …
Making a Game in Rust
Last week, I released A Snake’s Tale on iOS , Android , Windows, Mac, and Linux .
Lightmap Compression in the Witness
In my initial implementation of our lightmapping technology I simply stored lightmap textures in RGBA16F format. This produced excellent results, but at a very high memory cost. I later switched to the R10G10B10A2 fixed point format to reduce the memory footprint of our lightmaps, but that introduce
Python plays Grand Theft Auto V
Python Programming tutorials from beginner to advanced on a massive variety of topics. All video and text tutorials are free.
Street Fighter II's AI Engine
By today’s standards, the Artificial Intelligence in Street Fighter 2 World Warrior isn’t very sophisticated. These days, when most people talk about AI they’re talking about mach…
The 640 K Barrier
There was a demon in memory. They said whoever challenged him would lose. Their programs would lock up, their machines would crash, and all their data would disintegrate.
Zi2zi: Master Chinese Calligraphy with Conditional Adversarial Networks
zi2zi is the follow-up work for my last project , once again tackling the same problem of style transfer between Chinese fonts.
Ultima VI
After Richard Garriott and his colleagues at Origin Systems finished each Ultima game — after the manic final crunch of polishing and testing, after the release party, after the triumphant show appearances and interviews in full Lord British regalia — there must always arise the daunting question of what to do next…
Thirteen Years of Bad Game Code
Alone on a Friday night, in need of some inspiration, you decide to relive some of your past programming conquests. The old archive hard drive slowly spins up, and the source code of the glory days scrolls by... Oh no. This is not at all what you expected. Were things really this bad? Why did no one tell you? Why were…
Writing a Raytracer in Rust – Part 1
Hello! This is part one of a short series of posts on writing a simple raytracer in Rust. I’ve never written one of these before, so it should be a learning experience all around. So what is a raytracer anyway? The short version is it’s a computer program that traces the paths of simulated rays of light through a…
Recompiling the Lost Vikings
In my previous blog post I talked about reverse engineering the virtual machine used to implement objects in the Lost Vikings. The Lost Vikings was released in 1993 by Silicon and Synapse, now bett…
Chasing the First Arcade Easter Egg
It all started with a project I was working on called “Fixing Gran Trak 10” about the first car racing arcade video game from 1974. I had completed the electrical repairs and was trying to intervie…
Secret colours of the Commodore 64
In 1991 I was fourteen years old. It would be fair to say I was obsessed with computers. I proudly owned a brown ‘breadbox’ Commodore 64 with an exotic upgrade - an Oceanic 5.25” disk drive:
Railroad Tycoon
It says much about Sid Meier, a born game designer if ever there was one, that he tended to get some of his best work done when he was allegedly on vacation. A few years after his significant other had lost all track of him on what she thought was a romantic getaway to the Caribbean but he came to see as the ideal…
Omnispeak – A Commander Keen Reimplementation
Omnispeak is an open-source reimplementation of Commander Keen episodes 4, 5, and 6. It aims to be a pixel-perfect, bug-for-bug clone of the original games, and is compatible with savegames from the DOS version.
Massively Interleaved Sprite Crunch – C64 Demo Effect (2016)
This article describes the inner workings of Massively Interleaved Sprite Crunch ( MISC ), a new C64 demo effect introduced in my demo Lunatico .
Avegant “Light Field” Display
Surprised at CES 2017 – Avegant Focus Planes (“Light Field”) While at CES 2017 I was invited to Avegant’s Suite and was expecting to see a new and improved and/or a lower cost ver…