Where do I start graphics programming? 5

Sometimes I get this question. And since it happens frequent enough, I decided I should write it publicly so that others can benefit, and also so I don’t have to repeat myself every time ūüôā   In case you don’t know me, I’m self taught. I started doing graphics programming […]


C++ iterable enums 3

This is a rant. C++17 is at our doorstep and we’re no closer to iterable enums. And what annoys me is that I coded a solution in a single day as proof of concept that¬†should be implemented at compiler level, yet I refuse to believe I’m 100 times smarter than […]


Beware of SV_Coverage

There’s a lack of information on SV_Coverage¬†(gl_SampleMaskIn & gl_SampleMask¬†in GL lingo defined in ARB_sample_shading). And I got hit by it over and over again. I guess part of the reason must be that MSAA was often considered a magic black box, and most of the uses of SV_Coverage¬†are advanced topics. […]


Mesa radeonsi: I’m impressed

Around 5 months ago I upgraded from Ubuntu 14.04 to 16.04. Little did I know fglrx was no longer supported (the proprietary binary driver blob from AMD) and at that time the AMDGPU Pro driver (the new proprietary driver with an open source kernel driver) for GCN 1.0 cards was […]


Frustum vs Pyramid intersection (also Frustum vs Frustum) 1

I couldn’t find much (helpful) info about this online, other than “just use SAT” in a sentence with no code or explanation. Maybe my Google-Fu failed me. But considering Emil Persson labelled this a hard problem, perhaps it isn’t only me (note: Hard here does not refer to Hard NP. […]


Clustered Forward vs Deferred Shading

So… this is a highly discussed topic these days. Many engines already do Deferred Shading. Doom 2016 decided to go Forward at 60 FPS with 1080p, thus making popular that¬†big AAA titles with high demands can do Forward just fine (although it’s not the first nor only AAA title that […]


Solución: La página de AFIP no permite eliminar adherentes de Obra Social

La p√°gina de AFIP siempre est√° llena de actualizaciones, muchas de ellas innecesarias. Y sucede que en la √ļltima actualizaci√≥n algunos se habr√°n encontrado con la sorpresa que es imposible eliminar un adherente de Obra Social del Monotributo. El¬†caso en cuesti√≥n se trataba de un allegado cuyo familiar adherente hab√≠a […]


Solving GPUView 4000 was unexpected at this time error. 3

Also in Spanish “No se esperaba 4000 en este momento” Turns out GPUView’s latest log.cmd that comes with Windows ADK for Windows 10 is quite moronic and US-centric. This error happens because the script at C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit\gpuview\log.cmd calls systeminfo: systeminfo > me.txt findstr /sipn /C:”Total Physical […]


Git, the Linux kernel, and other projects. 2

So every now and then I hear: – We’re falling short on git. It wasn’t designed for big projects. [often in the context of game development] – Is your project as big as the Linux Kernel? No? I thought so. I find this¬†extremely misleading. Not because the Linux Kernel isn’t […]


Compiling & Running Lithosphere 4

So I got interested into terrain editing software. Of the little free stuff I tried, I was marveled by lithosphere. However it lacked some important UX enhancements (like undo/redo, saving to PNG, or a useful open/save file dialog). It’s Open Source written in Python, so I tried to give it […]