| Achievement | Engine/Game |
|---|---|
| storing world space positions in gbuffer | STALKER |
| uploaded texture upside down | All Quake engines |
| fixed function pipeline on top of a single vertex buffer | Tesseract |
| made your own texture compression format that works with the driver's decoder somehow | Darkplaces (S2TC) |
| cleared color, depth and stencil buffers individually | idTech4 |
| line rendering with quads | Various |
| per-vertex lighting | Cube, Minecraft, Gears of War, Skyrim |
| used facet normals | Various |
| manual gamma correction on sRGB textures | Various |
| used degenerate vertices to build triangle strip | Various |
| used separate vertex buffers for vertex attributes | Various |
| blamed it on the driver | Every engine |
| "fixed" shadow acne with subnormal bias | Darkplaces, Cube2, Tesseract |
| surface area heuristic uses hyperbolic functions | Irrlicht |
| scene graph is a linked list | GL Quake, Serious Sam |
| mixing audio in render loop | Win Quake, GL Quake |
| blocking on hardware occlusion queries | Various |
| skeletal animation done in scripting language | Total Annihilation, Natrual Selection 2 |
| wrote a geometry shader | Various "AAA" engines |
| environment mapping using different sky texture | Various |
| block-compresssed tangent space normal maps | Various |
| font rendering with texture per-glyph | libass |
| wrote SIMD for unaligned data | idTech3, idTech4, Darkplaces, others |
| integrated Scaleform | Wayforward, others |
| shipped a debug build | Skyrim |
| shipped with debugger because it didn't crash in debugger | Unknown |
| compiled with -ffast-math and physics became more interesting | Any engine using Bullet |
| issued hardware occlusion queries for the HUD | Stardock (Galactic Civilizations) |
| render functions are virtual | Unreal 4 |
| glReadPixels without a PBO | Various |
| destroyed render resources after deleting graphics context | Various |
| wrote software rasterizer because driver kept crashing | Epic (UT99) (Pixomatic) |
| level stored in XML | Various tile/side-scroller games |
| shipped dedicated server bins for s390x only | Battlefield 1942 (x86 came later) |
| "thread safe" heap allocator uses thread local storage as a heap | Unknown |
| game scripting language requires a SAT solver | Mono scripting (C# requires SAT) |
| engine depends on Qt | Wayforward (arguable though) |
| hybrid shader language built ontop of macros targeting GLSL and HLSL | Source 2 (togl), Doom 3 BFG, RAGE |
| implemented atomics using global mutex | Oberon Media |
| debug build is slower than running release build in valgrind | Neothyne |
| incremental GC is called when player takes damage | Unknown |
| in game updater uses bittorrent | WoW |
| in-house developed SWF renderer | Doom 3 BFG, RAGE |
| temporal blocking artefacts caused from encoding video frames with S3TC | Neothyne |
| added whitespace because asset hashed to the same hash as another asset | Spyro: Enter the Dragon |
| engine (or engine components) are shared libraries | Source 2 |
| gimbal lock while using quaternions because euler angles still exist in pipeline | Neothyne |
| issued a hardware occlusion query based on a future frame (frame independent rendering) | Not disclosed |
| actually did something about "half pixel offset" in D3D that made things worse | Unity |
| used both OpenGL and D3D at the same time | CryEngine (Compute was GL) |
| Ported to OSx and Linux by writing a D3D to OpenGL "porting layer" | CryEngine, Source |
| Physics simulation fixes T-junctions in meshes each physics step | CryEngine |
| Syncronization primitives implemented with shared memory and files (File system sync) | CryEngine |
| User interface is a webbrower | Tabletop Simulator, Overgrowth, GTA V, others |
| Allocates all of system memory | Various |
| Input event processing on audio thread | Bioshock Infinite |
| IPC using flat files on disk | XCom |
| Oblique frustum is actually a cylinder | Starsiege: Tribes |
| SIMD math code using virtual functions | No Man's Sky |
| Serialized entity state as separate files (with more open FDs than a default install supports) | ARK: Survival Evolved |
| native Linux/MacOS OpenGL port runs slower than Windows version in Wine | Source engine |
| shipped with assertions enabled | Shovel Knight |
| bootstraps itself just so it can render its icon set | Houdini |
| creates temporary files to format strings, which is then used as keys to reference objects | CryEngine |
| reference counted pointers for event handling in input processing | Godot |
| everything inherits from a base object type | Godot, UE, UE2, UE3, UE4, CryEngine |
Last active
October 7, 2024 07:07
-
-
Save graphitemaster/f8e6666c48fbedf6e554 to your computer and use it in GitHub Desktop.
Engine achievements
Author
I mean opposed to an atlas of glyphs in one texture - here I mean each character / glyph is it's own texture.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Bitmap font you mean? BG2:EE does that as well. The "enhanced edition" of Infinity Engine.