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
480
1
Share
Hidden Gems of Everyday Game Development with C#
Hidden Gems of Everyday
Game Development with C#
Andrea Magnorsky
December 05, 2013
More Decks by Andrea Magnorsky
See All by Andrea Magnorsky
F#, this ain't a game
roundcrisis
0
810
Like a rabbit in headlights: Removing the OO googles with F#
roundcrisis
0
410
Coding play, crafting code
roundcrisis
0
1.6k
Monogame 3
roundcrisis
0
240
StateOfPlayPresentation.pdf
roundcrisis
0
65
Works on all machines
roundcrisis
0
74
Other Decks in Technology
See All in Technology
Percolatorを廃止し、マルチ検索サービスへ刷新した話 / Search Engineering Tech Talk 2026 Spring
visional_engineering_and_design
0
150
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
10
79k
国内外の生成AIセキュリティの最新動向 & AIガードレール製品「chakoshi」のご紹介 / Latest Trends in Generative AI Security (Domestic & International) & Introduction to AI Guardrail Product "chakoshi"
nttcom
4
1.4k
Expiration of Secure Boot Certificates for vSphere Virtual Machines
mirie_sd
0
110
弁護士ドットコム株式会社 エンジニア職向け 会社紹介資料
bengo4com
1
180
色を視る
yuzneri
0
110
運用システムにおけるデータ活用とPlatform
sansantech
PRO
0
130
独断と偏見で試してみる、 シングル or マルチエージェント どっちがいいの?
shichijoyuhi
1
160
AI時代 に増える データ活用先
takahal
0
320
生成AIが変える SaaS の競争原理と弁護士ドットコムのプロダクト戦略
bengo4com
1
2.3k
260422_Sansan_Tech_Talk__関西_vol.3_データ活用のリアル__矢田__.pdf
sansantech
PRO
0
120
需要創出(Chatwork)×供給(BPaaS) フライホイールとMoat 実行能力の最適配置とAI戦略
kubell_hr
0
900
Featured
See All Featured
The Limits of Empathy - UXLibs8
cassininazir
1
310
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
120
New Earth Scene 8
popppiees
3
2.1k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
440
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
720
Discover your Explorer Soul
emna__ayadi
2
1.1k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.1k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
200
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
120
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.2k
ラッコキーワード サービス紹介資料
rakko
1
3.1M
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