Shipping textures as PNGs is suboptimal
Are you shipping textures to players as PNGs? The goal of this post is to convince you that this is suboptimal, and walk you through a better approach.
Are you shipping textures to players as PNGs? The goal of this post is to convince you that this is suboptimal, and walk you through a better approach.
A gauntlet thrown
Explore Bill Benter’s iconic horse betting strategy, enhanced with modern code and contrasted against three decades of evolving data.
Rune Skovbo Johansen has a really sweet Surface-Stable Fractal Dithering technique, where the dither dots “stick” to 3D surfaces, yet the dot density adapts to the view distance and zoom level.
For those of you who are living under a rock, Valve announced three new hardware devices joining …
For the past few years, cheats have evolved rapidly. First came memory reading aimbots, then colorbots, and now AI aim assist. Cheats have escaped the host PC. How does it affect the players and anti-cheats?
One of my favorite joys is exploring a city late at night on rollerblades. I’ve been doing it fairly regularly for about 10 years now, first in Boston and then in NYC. Every time day turns to night and back again a city takes a breath. At night people flow out or huddle up in buildings, leaving the streets clear for…
Article explaining simulation algorithms that produce complex organic behaviours, starting with the classic physarum algorithm from Jeff Jones.
Introduction I created a Game Boy emulator in Ruby and released it as a gem called rubyboy! (I’d be happy if you could give it a star!) And now it runs in the browser using WebAssembly! Try the demo in your browser! Screenshots Rubyでゲームボーイのエミュレータを作りました! カラー対応やWasmでブラウザ対応もやっていきたい💪 GitHub: https://t.co/hFwmZD6FNp…
You've most likely heard about gradient noise through the name Perlin noise , which refers to one particular implementation with various CPU optimizations. Because it's an incredible tool for creative work, it's used virtually everywhere: visual effects, video games, procedural mathematical art, etc. While getting it…
Author’s note: I originally intended for this post to cover adventure games, computer role-playing games, wargames and other simulations, a brief look at the home video game market, and final…
See this ugly pixel shift when upsampling a downsampled image? My post describes where it can come from and how to avoid those! It’s been more than two decades of me using bilinear texture filterin…
We traditionally divide consoles into “generations”—the earliest devices like the Magnavox Odyssey are the first generation, the Atari 2600 is second, the NES third, the SNES and Genesi…
A year-long journey through polygon meshes, cubemaps, and smoothed-particle hydrodynamics in pursuit of a modern SimEarth
tl;dr: pl_synth is a tiny music synthesizer for C & JS and an editor (“tracker”) to create instruments and arrangements.
Some passions are lifelong, but many others fade away over the course of a life, to be replaced by others. Not long after Jon Van Caneghem, the founder of New World Computing, sold his company to 3DO , it started to become obvious to everyone who worked for him that the torch he carried for computer games no longer…
As I write this, Inform 7 is approaching its third birthday. I7 is a tool for creating interactive fiction (text adventure games). Like all the most powerful IF development tools, I7 is a programming language -- a powerful and peculiar one.
How do we represent a rotation in 3 dimensions? This is a surprisingly deep question, and one we can learn a lot from. Our goal will be to “rediscover” quaternions from first principles, building them up by exploring different representations and fixing the failures along the way.
Tutorials and articles of Inigo Quilez on computer graphics, fractals, math, art, demoscene, shaders and more.
A few years ago when I was into reverse engineering and binary analysis (and game modding), I did a lot of research into anticheats work. I was curious about tracking their updates, since that would allow me to:
Nintendo's Switch 2, launched with Mario Kart World, suffers from inadequate HDR implementation despite industry standards. The game qualifies "fake HDR," using SDR-first methods that limit color and dynamic range. Developers must prioritize HDR from the outset to truly leverage its potential and enhance visual…
There is an amazing shadertoy called “Tiny Clouds” by stubbe (twitter: @Stubbesaurus) which flies you through nearly photorealistic clouds in only 10 lines of code / 280 characters (2 o…
Adding multi-scale noise layers, mountain distance fields, and elevation blending to create detailed terrain from the paint map foundation.
Tangent space is often presented as a confusing block of shader math. This is a deep dive into what tangent vectors actually mean, how they emerge from UVs to bridge 2D and 3D space, and the geometry that makes normal mapping possible.
Dithering is still a surprisingly applicable technique, not just for practical reasons (such as preparing a full-color image for output on a non-color printer), but for artistic reasons as well. Dithering also has applications in web design, where it is a useful technique for reducing images with high color counts to…
Recently, there's been a European Citizens' Initiative called "Stop Destroying Videogames" which by now has hit the milestone of 1'000'000 signatures. You're still encouraged to sign it if you care about its goals and are a EU citizen, since not all of those are likely to be valid signatures, but overall this is a…