Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
High Performance WebGL
Search
Luigi De Rosa
February 21, 2018
Programming
1
1.2k
High Performance WebGL
Slides from my talk about WebGL at FEVR meetup. 21 Feb 2018
Luigi De Rosa
February 21, 2018
Tweet
Share
Other Decks in Programming
See All in Programming
フロントエンド開発の勘所 -複数事業を経験して見えた判断軸の違い-
heimusu
7
2.8k
CSC307 Lecture 01
javiergs
PRO
0
690
QAフローを最適化し、品質水準を満たしながらリリースまでの期間を最短化する #RSGT2026
shibayu36
2
4.3k
LLM Observabilityによる 対話型音声AIアプリケーションの安定運用
gekko0114
2
420
AI巻き込み型コードレビューのススメ
nealle
1
150
MDN Web Docs に日本語翻訳でコントリビュート
ohmori_yusuke
0
640
Smart Handoff/Pickup ガイド - Claude Code セッション管理
yukiigarashi
0
130
Implementation Patterns
denyspoltorak
0
280
なるべく楽してバックエンドに型をつけたい!(楽とは言ってない)
hibiki_cube
0
140
CSC307 Lecture 02
javiergs
PRO
1
770
責任感のあるCloudWatchアラームを設計しよう
akihisaikeda
3
170
AI前提で考えるiOSアプリのモダナイズ設計
yuukiw00w
0
220
Featured
See All Featured
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
88
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
1.9k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
120
AI: The stuff that nobody shows you
jnunemaker
PRO
2
250
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.1k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
57
50k
A Modern Web Designer's Workflow
chriscoyier
698
190k
Thoughts on Productivity
jonyablonski
74
5k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
0
140
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.6k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
160
Transcript
HIGH PERFORMANCE WEBGL what I learned doing WebGL… FEBRUARY 21TH,
2018
@luruke
EPIC is a digital agency made of passion and
creativity. We dedicate ourselves to crafting awesome and eye-catching digital experiences that change the way your brand connects with your clients.
None
None
HTTPS://GITHUB.COM/LURUKE/DEV-EXCUSES-CHROME
None
WE ARE EPIC 1
WE ARE EPIC 1
JUST A RASTERIZATION ENGINE! UEBBGL?
WEBGL IS NOT 3D
HTTPS://NICKDESAULNIERS.GITHUB.IO/RAWWEBGL/
HTTPS://WWW.KHRONOS.ORG/API/OPENGLES/2_X
HTTPS://SIMONSCHREIBT.DE/GAT/RENDERHELL/
• Three.js (react-vr, a-frame…) • Babylon.js • PixiJS (2d only…
for now) • Nanogl • Regl • … • Vanilla WebGL (if you are brave enough) Most used WebGL framework
WHAT I LEARNED After many headaches.
None
None
None
None
None
IN THE DETAIL…
DELIVERY DAY - Promotional game - Mobile first - Easy
to play - “on the go” - Support 2-3y old phones - Multiplatform (+60 device tested)
None
None
CONCEPT 1.0 Make sure you know what you are doing!
None
WE ARE EPIC 1
WE ARE EPIC 1
WE ARE EPIC 1
WE ARE EPIC 1
WE ARE EPIC 1
WE ARE EPIC 1
None
BLENDER - Great for prototyping - Open Source - Three.js
exporter - All-in-one solution (modelling + texturing + sculpturing…) 1.1 Is not just for 3D artist!
WE ARE EPIC 1
WE ARE EPIC 1
WE ARE EPIC 1
WE ARE EPIC 1
WE ARE EPIC 1
WE ARE EPIC 1
WE ARE EPIC 1
WE ARE EPIC 1
None
LOGIC + RENDER 1.2 Divide et impera
• Just logic! • Expose the “info” (score, parcels, …)
• Event based • Unit tested (well…partially) • Rendering independent (css, terminal, canvas, webgl….) Game engine
• Passive - read info from game engine • Handles
interaction (touch, click, gyroscope…) • Can just send events • Full WebGL (but we also won CSSDesignAward…) • Three.js + PixiJS Rendering
16.6MS
>
WEBGL AND HTML? 1.3 Sometimes are not good friends
None
WE ARE EPIC 1
None
CPU & GPU 1.4 Less they talk each other, the
better
HTTPS://SIMONSCHREIBT.DE/GAT/RENDERHELL/
None
WE ARE EPIC 1
WE ARE EPIC 1
TEXTURES = DATA 1.5 Textures are more than an image
None
HTTPS://WWW.PATREON.COM/MINIONSART
HTTPS://WWW.PATREON.COM/MINIONSART
HTTPS://WWW.PATREON.COM/MINIONSART
HTTPS://WWW.PATREON.COM/MINIONSART
HTTPS://WWW.PATREON.COM/MINIONSART
WE ARE EPIC 1 HTTPS://GITHUB.COM/SPITE/THREE.FBOHELPER
WE ARE EPIC 1
WE ARE EPIC 1
None
None
1.6 “With Great Power Comes Great Responsibility” FORCE GPU UPLOAD
HTTP://GLUMPY.READTHEDOCS.IO/
WE ARE EPIC 1
None
None
None
OBJECT POOLING 1.7
None
None
None
MULTIPLATFORM WEBGL 1.8 Make WebGL run (almost) everywhere
None
None
None
None
None
WE ARE EPIC 1
WE ARE EPIC 1
WE ARE EPIC 1
WE ARE EPIC 1
WE ARE EPIC 1
I NEED MORE POWER! 1.9 Do you?
None
None
None
DEBUGGING IS HARD 2.0 But not impossible
None
None
None
WE ARE EPIC 1
None
None
HOW TO START? 2.1 The hard way
• How Computer Graphic works • How 3D works (math,
vectors, light, matrix…) • How WebGL/OpenGL works • Write tons of Shaders • Success Learn WebGL like a BOSS:
WE ARE EPIC 1
WE ARE EPIC 1
WE ARE EPIC 1
Thank you! YOU GOT QUESTIONS? @luruke
Thank you! YOU GOT QUESTIONS? @luruke HTTP://SOLVERSGB.UPS.COM/DELIVERY-DAY/