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
Hidden Gems of Everyday Game Development with C#
Search
Andrea Magnorsky
December 05, 2013
Technology
1
450
Hidden Gems of Everyday Game Development with C#
Hidden Gems of Everyday
Game Development with C#
Andrea Magnorsky
December 05, 2013
Tweet
Share
More Decks by Andrea Magnorsky
See All by Andrea Magnorsky
F#, this ain't a game
roundcrisis
0
780
Like a rabbit in headlights: Removing the OO googles with F#
roundcrisis
0
390
Coding play, crafting code
roundcrisis
0
1.5k
Monogame 3
roundcrisis
0
230
StateOfPlayPresentation.pdf
roundcrisis
0
64
Works on all machines
roundcrisis
0
70
Other Decks in Technology
See All in Technology
生成AIでセキュリティ運用を効率化する話
sakaitakeshi
0
540
Skrub: machine-learning with dataframes
gaelvaroquaux
0
120
LLMを搭載したプロダクトの品質保証の模索と学び
qa
0
1k
MCPで変わる Amebaデザインシステム「Spindle」の開発
spindle
PRO
3
3.2k
RSCの時代にReactとフレームワークの境界を探る
uhyo
10
3.3k
生成AI時代のデータ基盤設計〜ペースレイヤリングで実現する高速開発と持続性〜 / Levtech Meetup_Session_2
sansan_randd
1
150
Platform開発が先行する Platform Engineeringの違和感
kintotechdev
4
540
Webブラウザ向け動画配信プレイヤーの 大規模リプレイスから得た知見と学び
yud0uhu
0
230
20250910_障害注入から効率的復旧へ_カオスエンジニアリング_生成AIで考えるAWS障害対応.pdf
sh_fk2
3
220
DevIO2025_継続的なサービス開発のための技術的意思決定のポイント / how-to-tech-decision-makaing-devio2025
nologyance
1
370
Agile PBL at New Grads Trainings
kawaguti
PRO
1
400
人工衛星のファームウェアをRustで書く理由
koba789
13
7.2k
Featured
See All Featured
Embracing the Ebb and Flow
colly
87
4.8k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.1k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
580
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
920
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Why Our Code Smells
bkeepers
PRO
339
57k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
Become a Pro
speakerdeck
PRO
29
5.5k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Transcript
Hidden Gems of Everyday Game Development with C# Andrea Magnorsky
@silverspoon roundcrisis.com
None
The humble Game Loop
Hello Dovahkiin
None
Delegates, func, etc
Don’t use linq
Coroutines “Coroutines are computer program components that generalize subroutines to
allow multiple entry points for suspending and resuming execution at certain locations”
Why?
_changePositionCoroutine.MoveNext()
Iterator
Multi threaded rendering • Double buffer • Triple buffer •
Concurrent Collections • Jobs and workers
Renderer waiting for render commands Update Frame 1 Wait for
renderer to switch buffers Swap buffers Double Buffer
Renderer waiting for render commands Update Frame 1 Draw Frame
1 Update Frame 2 Wait for renderer to switch buffers Draw Frame 2 Wait for renderer to switch buffers Renderer waiting for render commands Swap buffers Swap buffers
Renderer waiting for render commands Update Frame 1 Draw Frame
1 Update Frame 2 Wait for renderer to switch buffers Draw Frame 2 Wait for renderer to switch buffers Update Frame 3 Blocked until rendering finished Draw Frame 3 Renderer waiting for render commands Swap buffers Swap buffers Swap buffers Wait for renderer to switch buffers
None
None
Why
Using concurrent Queue instead and Blocking Collection
Analysis
Comparision Double buffer Concurrent Queue
None
Thanks More to read http://bitly.com/bundles/roundcrisis/3 Andrea Magnorsky @silverspoon roundcrisis.com
batcatgames.com