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
400
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
620
Like a rabbit in headlights: Removing the OO googles with F#
roundcrisis
0
340
Coding play, crafting code
roundcrisis
0
1.3k
Monogame 3
roundcrisis
0
180
StateOfPlayPresentation.pdf
roundcrisis
0
45
Works on all machines
roundcrisis
0
65
Other Decks in Technology
See All in Technology
KubeCon EU 2024 Recap “Kubernetes Policy Time Machine: Where to Next?”
ryysud
0
220
Google Cloud Next '24でブログを10本書いた方法と勉強会を沸かせた方法
yasumuusan
0
300
元インフラエンジニアに成る / Human Resources to Human Relations
bobtani
4
920
MLOpsの「壁」を乗り越える、LINEヤフーの Data Quality as Code
lycorptech_jp
PRO
5
520
VSCodeの拡張機能を作っている話
ebarakazuhiro
1
400
検証を通して見えてきたTiDBの性能特性
lycorptech_jp
PRO
6
3.8k
Delivering Millions of Messages within seconds @ Duolingo
pelelgrino
0
350
開発パフォーマンスを最大化するための開発体制
ham0215
2
410
長期間TiDBを使ってきた話 @ 私たちはなぜNewSQLを使うのかTiDB選定5社が語る選定理由と活用LT / Experiences with TiDB Over Time
chibiegg
2
900
Google Cloud Next '24 Recap(Cloud Run/k8s)
mokocm
0
210
SIEMを用いて、セキュリティログ分析の可視化と分析を実現し、PDCAサイクルを回してみた
coconala_engineer
0
320
リテール金融(キャッシュレス・ネット銀行・ネット証券)の競争環境と経済圏
8maki
0
1.1k
Featured
See All Featured
Building Your Own Lightsaber
phodgson
99
5.7k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
34
8.9k
Building a Modern Day E-commerce SEO Strategy
aleyda
17
6.4k
Designing the Hi-DPI Web
ddemaree
276
33k
Six Lessons from altMBA
skipperchong
21
3k
Facilitating Awesome Meetings
lara
42
5.6k
What's in a price? How to price your products and services
michaelherold
237
11k
Thoughts on Productivity
jonyablonski
58
3.8k
Infographics Made Easy
chrislema
238
18k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
187
16k
The Brand Is Dead. Long Live the Brand.
mthomps
49
29k
Typedesign – Prime Four
hannesfritz
36
2.1k
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