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
Design a Voxel Rendering Engine for iOS - iOSCo...
Search
Shipeng Xu
October 20, 2017
Technology
1
310
Design a Voxel Rendering Engine for iOS - iOSConf.SG 2017
Design a Voxel Rendering Engine for iOS.
Shipeng Xu
October 20, 2017
Tweet
Share
Other Decks in Technology
See All in Technology
AWS Lambdaで実現するスケーラブルで低コストなWebサービス構築/YAPC::Hakodate2024
fujiwara3
7
3.3k
テストを楽に書きたい
tomorrowkey
0
110
【shownet.conf_】持続可能な次世代Wi-Fi運用に向けて
shownet
PRO
0
360
分析者起点の企画を成功させた連携面の工夫
lycorptech_jp
PRO
1
250
AWSの初級者向けAI・ML資格『AWS Certified AI Practitioner』の傾向と対策/So You Want To Pass AWS Certified AI Practitioner
quiver
0
420
小さな勉強会の始め方、広げ方、あるいは友達の作り方 / How to Start, Grow, and Build Connections with Small Study Groups
ar_tama
6
2.7k
トークナイザー入門
payanotty
2
970
受託開発でもアジャイル開発できました / Agile in Contract Development
takaking22
9
4.3k
【shownet.conf_】AI技術とUX監視の応用でShowNetの基盤を支えるモニタリングシステム
shownet
PRO
0
380
【shownet.conf_】クロージングセッション
shownet
PRO
0
310
業務ヒアリングと知識の呪い
tamai_63
0
290
CData Virtuality 日本ローンチイベントのKeynote
cdataj
0
220
Featured
See All Featured
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
105
48k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
92
16k
How to train your dragon (web standard)
notwaldorf
87
5.6k
Six Lessons from altMBA
skipperchong
26
3.4k
How GitHub Uses GitHub to Build GitHub
holman
473
290k
Web development in the modern age
philhawksworth
205
10k
How to Think Like a Performance Engineer
csswizardry
16
1k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
37
1.7k
The Pragmatic Product Professional
lauravandoore
31
6.2k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
4
120
A Modern Web Designer's Workflow
chriscoyier
692
190k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
355
29k
Transcript
Design a Voxel Rendering Engine for iOS Shipeng Xu 20
Oct 2017 @1991bill
What is Voxel? • Volume Pixel • Data Structure ◦
Integral X, Y, Z coordinates ◦ Color Pokemon Voxel, Playiku, 2016
None
Voxel Rendering Engine for iOS • Rendering ◦ Beautiful •
Performance ◦ Blocks can be added or removed at interactive speeds ◦ E.g. A 64x64x64 voxel world = 262,144 voxels! Add Delete Move Change Color
Rendering - 1 Voxel 12 Triangles
Rendering - 5,911 Voxels
Rendering - Meshing • Naive way... • Draw a 3D
cube for each voxel. ◦ 5,911 Voxels ◦ 5,911 x 12 = 70,932 triangles
Rendering - Meshing • Skip the unseen voxels ◦ Before:
5,911 Voxels ▪ 5,911 x 12 = 70,932 triangles ◦ After: 5,868 triangles ▪ 8.2% of original
Rendering - Meshing
• Combine small faces into bigger ones Rendering - Meshing
280 Triangles 22 Triangles(7.9%!)
Rendering - Lighting
Rendering - Ambient Occlusion
Rendering - Ambient Occlusion Occlusion level 3 2 1 0
Rendering - Ambient Occlusion
X Basic Lighting X Ambient Occlusion ✔ Basic Lighting X
Ambient Occlusion ✔ Basic Lighting ✔ Ambient Occlusion Rendering - Lighting
Links • Voxel Meshing - https://0fps.net/category/programming/voxels/ • Voxel Rendering Techniques
- https://medium.com/@fogleman/voxel-rendering-techniques-fa8d869457 ca • Volume Rendering - http://bytebash.com/2012/03/opengl-volume-rendering/ • http://shipeng.studio