41554 blogs · [ { "id": "01a087e9-ea61-73ed-8297-8147d516c292", "title": "Notes from benchmarking WASM and optimized JS", "url": "https://tchayen.com/notes-from-benchmarking-wasm-and-optimized-js", "published_at": "2025-10-19T00:00:00+00:00" }, { "id": "01a087e9-ea61-73ed-8297-8147d5fd6a8c", "title": "WebGPU: OBJ Loading and Perspective Camera", "url": "https://tchayen.com/webgpu-obj-loading-and-perspective-camera", "published_at": "2025-05-04T00:00:00+00:00" }, { "id": "01a087e9-ea61-73ed-8297-8147d6975dc3", "title": "Handmade pathfinding mesh for games", "url": "https://tchayen.com/handmade-pathfinding-mesh-for-games", "published_at": "2025-02-23T00:00:00+00:00" }, { "id": "01a087e9-ea61-73ed-8297-8147d7149fa4", "title": "Unicode Text Rendering in Zig with FreeType and HarfBuzz", "url": "https://tchayen.com/unicode-text-rendering-in-zig-with-freetype-and-harfbuzz", "published_at": "2024-10-18T00:00:00+00:00" }, { "id": "01a087e9-ea61-73ed-8297-8147d7a48b5d", "title": "Open Problems of A* for Any Angle Pathfinding", "url": "https://tchayen.com/open-problems-of-a-star-for-any-angle-pathfinding", "published_at": "2024-05-08T00:00:00+00:00" }, { "id": "01a087e9-ea61-73ed-8297-8147d858040b", "title": "Constrained Delaunay Triangulation from a Paper", "url": "https://tchayen.com/constrained-delaunay-triangulation-from-a-paper", "published_at": "2024-03-23T00:00:00+00:00" }, { "id": "01a087e9-ea61-73ed-8297-8147d936a454", "title": "Drawing Text in WebGPU Using Just the Font File", "url": "https://tchayen.com/drawing-text-in-webgpu-using-just-the-font-file", "published_at": "2023-09-29T00:00:00+00:00" }, { "id": "01a087e9-ea61-73ed-8297-8147d9a271b8", "title": "Thousands of Styled Rectangles at 120 FPS on the GPU", "url": "https://tchayen.com/thousands-styled-rectangles-in-120fps-on-gpu", "published_at": "2023-08-29T00:00:00+00:00" }, { "id": "01a087e9-ea61-73ed-8297-8147d9eb9236", "title": "PBR in WebGPU: Implementation Details", "url": "https://tchayen.com/pbr-in-webgpu-implementation-details", "published_at": "2023-07-15T00:00:00+00:00" }, { "id": "01a087e9-ea61-73ed-8297-8147daa5af63", "title": "How to Write a Flexbox Layout Engine", "url": "https://tchayen.com/how-to-write-a-flexbox-layout-engine", "published_at": "2023-06-25T00:00:00+00:00" }, { "id": "01a087e9-ea61-73ed-8297-8147db01bbe9", "title": "Using Zig for Writing OpenGL in Browsers", "url": "https://tchayen.com/using-zig-for-writing-opengl-in-browsers", "published_at": "2023-04-29T00:00:00+00:00" }, { "id": "01a087e9-ea61-73ed-8297-8147db137823", "title": "Understanding React by Implementing It", "url": "https://tchayen.com/understanding-react-by-implementing-it", "published_at": "2021-08-12T00:00:00+00:00" }, { "id": "01a087e9-ea61-73ed-8297-8147db437109", "title": "Baked Lighting in react-three-fiber", "url": "https://tchayen.com/baked-lighting-in-r3f", "published_at": "2021-01-18T00:00:00+00:00" }, { "id": "01a087e9-ea61-73ed-8297-8147dc0a6945", "title": "Making of: 3D Chess in React", "url": "https://tchayen.com/making-of-3d-chess-in-react", "published_at": "2021-01-06T00:00:00+00:00" }, { "id": "01a087e9-ea61-73ed-8297-8147dc1fd02f", "title": "TTF File Parsing", "url": "https://tchayen.com/ttf-file-parsing", "published_at": "2019-11-02T00:00:00+00:00" }, { "id": "01a087e9-ea61-73ed-8297-8147dc396f68", "title": "Making Our Own Tiny Google Maps", "url": "https://tchayen.com/making-our-own-tiny-google-maps", "published_at": "2019-09-07T00:00:00+00:00" }, { "id": "01a087e9-ea61-73ed-8297-8147dc6bc761", "title": "Fetching Data from OpenStreetMap", "url": "https://tchayen.com/fetching-data-from-the-open-street-maps", "published_at": "2019-09-05T00:00:00+00:00" }, { "id": "01a087e9-ea61-73ed-8297-8147dcf5f819", "title": "Triangulation of Polygons", "url": "https://tchayen.com/triangulation-of-polygons", "published_at": "2019-01-13T00:00:00+00:00" }, { "id": "01a087e9-ea61-73ed-8297-8147dde9e5fb", "title": "Wireframes with Barycentric Coordinates", "url": "https://tchayen.com/wireframes-with-barycentric-coordinates", "published_at": "2019-01-05T00:00:00+00:00" }, { "id": "01a087e9-ea61-73ed-8297-8147dec520ce", "title": "Brief Explanation of WebGL", "url": "https://tchayen.com/brief-explanation-of-webgl", "published_at": "2018-12-26T00:00:00+00:00" }, { "id": "01a087e9-ea61-73ed-8297-8147df8b2b89", "title": "Web Mercator Projection", "url": "https://tchayen.com/web-mercator-projection", "published_at": "2018-12-23T00:00:00+00:00" } ] posts Claim your blog
Back to tchayen.com
Blog · corpus.blog/blogs/tchayen.com/posts

tchayen.com

tchayen.com

2025

2024

2023

2021

2019

2018