Omar ShehataWebGL / WebGPU Jan 2023 meetup highlightsThe Khronos WebGL/WebGPU meetup is a recurring online event where the folks working on these web graphics API’s share updates followed by…6 min read·Feb 1, 2023--1--1
Omar ShehataBetter outline rendering using surface IDs with WebGLThis article builds on my previous “How to render outlines in WebGL” tutorial. I’ll explain an improved technique that eliminates most…8 min read·Oct 11, 2022--3--3
Omar ShehataHow to use WebGPU Timestamp QueryThis tutorial covers how to use WebGPU’s timestamp query to measure how much time your GPU commands take to execute.3 min read·Aug 29, 2022----
Omar ShehataWebGL / WebGPU April 2022 meetup highlightsThe Khronos WebGL/WebGPU meetup is a recurring event where the folks working on these web graphics API’s share updates followed by talks…4 min read·May 1, 2022----
Omar ShehataWebGPU January 2022 meetup — takeawaysHighlights & links to resources from the WebGPU/WebGL talks4 min read·Feb 1, 2022----
Omar ShehataMy Takeaways from WebGPU July 2021 MeetupThe last WebGL / WebGPU meetup was packed with a lot of really exciting content. You can find the full 90 minute recording here. I decided…7 min read·Aug 24, 2021----
Omar ShehatainJavaScript in Plain EnglishCreate a Complete Satellite Tracker from Scratch in JavaScriptLearn how to track satellites completely in JavaScript, directly from the source data rocket scientists use!5 min read·May 7, 2021----
Omar ShehatainJavaScript in Plain EnglishHow to Load Sketchfab Models Directly in a Three.js AppCode example for integrating with the Sketchfab API and loading 3D models in a zip file directly into Three.js.5 min read·Apr 27, 2021----
Omar ShehataHow to render outlines in WebGLHow to visualize outlines for a WebGL scene with example implementations for ThreeJS & PlayCanvas7 min read·Jan 18, 2021----
Omar ShehataHow to Fix Gimbal Lock in N-DimensionsHow do you generalize quaternions to higher dimensions? And why does gimbal lock sometimes occur anyway with quaternions?5 min read·Aug 23, 2020--2--2