SlideShare uma empresa Scribd logo
1 de 113
Baixar para ler offline
Game Development Challenges 
Nick Prühs
About Me 
“BestBachelor“ComputerScience 
KielUniversity,2009 
MasterGames 
HamburgUniversityofAppliedSciences,2011 
LeadProgrammer 
DaedalicEntertainment,2011-2012 
Co-Founder 
slashgames,2013 
2 / 113
Diversity of Games 
3 / 113
Diversity of Games 
4 / 113
Diversity of Games 
5 / 113
Diversity of Games 
6 / 113
Diversity of Games 
7 / 113
Diversity of Games 
8 / 113
Diversity of Games 
9 / 113
Game Development Roles 
Programming 
10 / 113
Game Development Roles 
2D Art 
11 / 113
Game Development Roles 
3D Art 
12 / 113
Game Development Roles 
Game Design 
13 / 113
Game Development Roles 
Sound Design 
14 / 113
Game Development Roles 
Cinematic Art 
15 / 113
Game Development Roles 
Game Author 
16 / 113
Game Development Roles 
Level Designer 
17 / 113
Game Development Roles 
Technical Artist 
18 / 113
Game Development Roles 
Localization 
19 / 113
Game Development Roles 
Producer 
20 / 113
Game Development Roles 
QA & Support 
21 / 113
Game Development Roles 
Marketing 
22 / 113
Game Development Roles 
PR 
23 / 113
Game Development Roles 
Community Management 
24 / 113
Game Development Roles 
Analytics 
25 / 113
Art Pipelines 
26 / 113
Art Pipelines 
27 / 113
Art Pipelines 
28 / 113
Art Pipelines 
29 / 113
Game Engines 
30 / 113
Game Engines 
31 / 113
Game Engines 
32 / 113
Game Engines 
33 / 113
Game Engines 
34 / 113
Example: Physics 
35 / 113
Example: Physics 
36 / 113
Example: Physics 
37 / 113 
−휖푣퐴퐵푛 
= 
푣퐴퐵 ′푛 
definition 
coefficient of restitution 
= 
(푣퐴′ −푣퐵′ )푛 
definition 
relativevelocity 
= 
(푣퐴+ 푗 푀퐴 푛−푣퐵+ 푗 푀퐵 푛)푛 
definition 
collision impulse 
= 
푣퐴푛+ 푗 푀퐴 푛푛−푣퐵푛+ 푗 푀퐵 푛푛 
distribution 
= 
푣퐴푛−푣퐵푛+ 푗 푀퐴 푛푛+ 푗 푀퐵 푛푛 
commutativeproperty 
= 
푣퐴퐵푛+ 푗 푀퐴 푛푛+ 푗 푀퐵 푛푛 
definition 
relativevelocity
Lessons Learned 
38 / 113
Campus Buddies 
39 / 113
Campus Buddies 
40 / 113
Campus Buddies 
41 / 113
Campus Buddies 
42 / 113
Campus BuddiesFeatures 
•Sharing ads using multiple channels (Email, Facebook, Twitter, Google+) 
•Lead verification as specified by Yourfone 
•Authentication by different providers (username/password, Facebook) 
•Classical gamification mechanics (achievements, level ups, …) 
•Periodic competitions resolved by the server 
•Dynamic news stream 
•Full moderation backend 
•Responsive mobile version 
•Facebook OpenGraph integration 
•Friend referral program 
•Customized reportings 
•Secure reward shop 
•Stateless Scalable Web Application 
•SSL-Encryption 
43 / 113
Campus BuddiesFeatures 
44 / 113 
Development Scope 
10 Weeks
Lessons Learned 
45 / 113
Gotcha! 
LESSON 1: 
ExpectchangesofexternalAPIs! 
46 / 113
External APIs 
47 / 113 
•Integrated three of the major social platforms: Facebook, Twitter and Google+ 
•During the development process, both Facebook and Google+ changed their APIs… 
•… effectively turning some of our code into useless rubbish 
•Took about a day or two to get everything up and running again
External APIs 
48 / 113
External APIs 
49 / 113 
•Talking to other web developers, we learned that social platform providers tend to change their APIs regularly 
•They won’t notify you about that. 
•Neither before, nor after. 
•Never.
Hint 
LESSON 2: 
Avoiddoingeverythingyourself! 
50 / 113
Don’t Reinvent The Wheel 
51 / 113 
•Got a problem that is not exactly related to just your application? 
•Maybe someone else has already solved it. 
•There’s lots of smart people having spent tens of hundreds of hours on your problem. 
•Use that knowledge!
Don’t Reinvent The Wheel 
52 / 113
Hint 
LESSON 3: 
Maketestingaseasy aspossible! 
53 / 113
Make testing easy! 
54 / 113 
Atthebeginningoftheproject,Christianhadtheideaofcreatingadebugwebpagecontaininglinksforseveraldebugfunctions 
•creating and logging in a test user 
•adding points for the current user 
•unlocking achievements 
•and many, many more
Make testing easy! 
55 / 113
Make testing easy! 
56 / 113 
This was arguably the best idea we had throughout the project.
Make testing easy! 
57 / 113 
•Debugging can be a pain in the ass 
•especially when network communication is involved 
•Our debug page saved us lots of blood, sweat and tears 
•The earlier you set up your debugging tools, the more you’ll benefit from them
Hint 
LESSON 4: 
Makedeploymentaseasy aspossible! 
58 / 113
Deploy often! 
59 / 113 
Creating a new version can involve a step or two: 
•Accessing source control 
•Syncing working copy 
•Creating tags 
•Writing version numbers 
•Performing the actual build 
•Packaging the build result 
•Publishing the game on a build page 
•Running unit tests 
•Sending email notifications
Deploy often! 
60 / 113
Deploy often! 
You wouldn’t wanna do all that by hand. 
Every time. 
Do you? 
61 / 113
Campus BuddiesLessons Learned 
62 / 113
Hint 
LESSON 5: 
Mock networkinteractionfortesting! 
63 / 113
Mocking 
•Everything that involves network communication is annoying to test. 
•Wemockedparts of the remote interaction of our application 
•sending e-mails 
•verifying leads 
•Whenever a mail was sent, it was written to the console instead, for instance. 
64 / 113
Mocking 
2013-05-19 19:36:29,980 -[INFO] -from applicationMOCK MAILER: send email 
2013-05-19 19:36:29,982 -[INFO] -from applicationFROM:"yourfone.deCampus Buddies" <keineantwort@campus-buddies.de> 
2013-05-19 19:36:29,983 -[INFO] -from applicationTO:"Nick" <mail@npruehs.de> 
2013-05-19 19:36:29,985 -[INFO] -from applicationTEXT: 
<html> <head> <title> ... 
65 / 113
Mocking 
Thisallowedustocheckallpartsofourapplicationthatincludesendingmailswithouthavingtospamour(oreveryones…)inboxes. 
66 / 113
Campus BuddiesLessons Learned 
67 / 113
Gotcha! 
LESSON 6: 
Standardizeyourcodestyle! 
68 / 113
Consistent Code Style 
•If you aren’t alone (and I sincerely hope you’re not), you’ll want to standardize your code styles. 
•Be clear about tiny details such as tabs vs. spaces 
•greatly increases maintainability 
•reduces the number of merge conflicts 
69 / 113
Merge Conflict 
70 / 113
StyleCop 
71 / 113
StyleCop 
72 / 113
Eclipse 
73 / 113
Eclipse 
74 / 113
Lessons Learned 
75 / 113
FreudBot 
76 / 113
FreudBot 
77 / 113
FreudBot 
78 / 113
FreudBot 
79 / 113
FreudBot Features 
•46 levels, 17 animated characters, 10 screens, 137 cards, 4 comics, 10 000 words, 45 sounds 
•Dedicated website and social media channels 
•Multiple ad providers and in-app purchases 
•Fully localized to five different languages 
•Full analytics integration 
•Cloud savegames 
•Native mobile features (loading screen, snap mode, suspend, charms, toasts) 
•Marketing (fan art, card contest, trailer, contests) 
•Multi-platform release on iOS, Android, Windows Store, Windows Phone (Windows and Mac to come) 
80 / 113
Lessons Learned 
81 / 113
Hint 
LESSON 1: 
Usea feature-basedprojectstructure! 
82 / 113
Feature Folders 
•Project Root 
•FingerGestures 
•FreudBot 
•HOTween 
•NGUI 
•NData 
•Unity Test Tools 
83 / 113
Feature Folders 
•Project Root 
•FingerGestures 
•FreudBot 
•Animations 
•Atlases 
•Fonts 
•Localization 
•Prefabs 
•Scenes 
•Sounds 
•Sprites 
•Scripts 
•HOTween 
•NGUI 
•NData 
•Unity Test Tools 
84 / 113
Feature Folders 
•Project Root 
•FreudBot 
•Scripts 
•Ads 
•Analytics 
•Comics 
•Core 
•Debug 
•Dialogue 
•IAP 
•Mobile 
•Progression 
•Sound 
•UI 
85 / 113
Feature Folders 
•Project Root 
•FreudBot 
•Scripts 
•Ads 
•Components 
•Events 
•Systems 
86 / 113
Feature Folders 
This way, features and plugins can easily be updated or removed without having to scan the full project tree. 
87 / 113
Hint 
LESSON 2: 
Collaborationfirst! 
88 / 113
Collaborationfirst! 
89 / 113
Collaborationfirst! 
Excel 
CSV 
XML 
Game 
90 / 113
Collaborationfirst! 
Excel 
CSV 
XML 
Game 
91 / 113
FreudBotLessons Learned 
Let everyone work with the tools they’re most experienced with, and provide a tool chain for data conversion as soon as possible. 
92 / 113
Hint 
LESSON 3: 
Listen toyourplayers! 
93 / 113
Analytics 
94 / 113
Analytics 
95 / 113
Analytics 
96 / 113 
This is okay. (Endboss)
Analytics 
97 / 113 
This is not. (Intermediate level)
Gotcha! 
LESSON 4: 
Don‘tforgetthetutorial! 
98 / 113
Tutorials 
99 / 113
Tutorials 
•Have players test your game early on 
•Don’t talk, just watch and listen. 
•Don’t underestimate the time required for implementing your tutorial. It introduces many special cases, such as 
•Prohibiting player actions (e.g. use ability, end turn) 
•Triggering unusual events (e.g. let turn timers expire) 
•TweeningUI in step by step 
•Providing fixed outcomes (e.g. always same card hand) 
100 / 113
Hint 
LESSON 5: 
There‘s2D skeletalanimation! 
101 / 113
Spine 
102 / 113
Spine Atlas Image 
103 / 113
Spine Atlas File 
104 / 113
Spine Animation File 
105 / 113
FreudBotLessons Learned 
106 / 113
Gotcha! 
LESSON 6: 
Localizationisa bitch! 
107 / 113
Localization Sheet 
108 / 113
Localization Pipeline 
109 / 113 
Game 
XML 
CSV 
Excel 
CSV 
XML
Localization Best Practice 
•Use unique, immutable localization keys 
•Changing any localization keys will invalidate any sheets handed out to your localization team 
•Highlight new texts, changed texts 
•These additional texts will have to be localized later 
•Provide a playable version of your game, as well as rich background information (e.g. characters, places) 
•People need to know the game before they can localize it. 
•Allow instant integration of the localized texts, if possible 
•Localization team can check for encoding issues, overlapping labels, missing texts immediately 
110 / 113
And there is more… 
•Learn from others! 
•Stick to your plan! 
•Build prototypes! 
•Use automatic testing! 
•Setup proper version control workflows! 
111 / 113
And there is more… 
•Learn from others! 
•Stick to your plan! 
•Build prototypes! 
•Use automatic testing! 
•Setup proper version control workflows! 
See Game Programminghttp://www.npruehs.de/teaching/game-programming/ 
Monday, 8.30 am, E 45 
112 / 113
Thankyouforyourattention! 
Contact 
Mail 
dev@npruehs.de 
Blog 
http://www.npruehs.de 
Twitter 
@npruehs 
Github 
https://github.com/npruehs 
113 / 113

Mais conteúdo relacionado

Mais procurados

Style & Design Principles 03 - Component-Based Entity Systems
Style & Design Principles 03 - Component-Based Entity SystemsStyle & Design Principles 03 - Component-Based Entity Systems
Style & Design Principles 03 - Component-Based Entity SystemsNick Pruehs
 
Game Programming 08 - Tool Development
Game Programming 08 - Tool DevelopmentGame Programming 08 - Tool Development
Game Programming 08 - Tool DevelopmentNick Pruehs
 
Game Programming 07 - Procedural Content Generation
Game Programming 07 - Procedural Content GenerationGame Programming 07 - Procedural Content Generation
Game Programming 07 - Procedural Content GenerationNick Pruehs
 
Game Programming 12 - Shaders
Game Programming 12 - ShadersGame Programming 12 - Shaders
Game Programming 12 - ShadersNick Pruehs
 
Game Programming 01 - Introduction
Game Programming 01 - IntroductionGame Programming 01 - Introduction
Game Programming 01 - IntroductionNick Pruehs
 
Game Programming 06 - Automated Testing
Game Programming 06 - Automated TestingGame Programming 06 - Automated Testing
Game Programming 06 - Automated TestingNick Pruehs
 
Game Programming 04 - Style & Design Principles
Game Programming 04 - Style & Design PrinciplesGame Programming 04 - Style & Design Principles
Game Programming 04 - Style & Design PrinciplesNick Pruehs
 
GameDev 2017 - Анатолій Ландишев "AAA architecture in Unity3D"
GameDev 2017 - Анатолій Ландишев "AAA architecture in Unity3D"GameDev 2017 - Анатолій Ландишев "AAA architecture in Unity3D"
GameDev 2017 - Анатолій Ландишев "AAA architecture in Unity3D"Lviv Startup Club
 
Maximize Your Production Effort (English)
Maximize Your Production Effort (English)Maximize Your Production Effort (English)
Maximize Your Production Effort (English)slantsixgames
 
Under the Wire PowerShell workshop - BSides Augusta 2018
Under the Wire PowerShell workshop - BSides Augusta 2018Under the Wire PowerShell workshop - BSides Augusta 2018
Under the Wire PowerShell workshop - BSides Augusta 2018Fernando Tomlinson, CISSP, MBA
 
Owning windows 8 with human interface devices
Owning windows 8 with human interface devicesOwning windows 8 with human interface devices
Owning windows 8 with human interface devicesNikhil Mittal
 
More fun using Kautilya
More fun using KautilyaMore fun using Kautilya
More fun using KautilyaNikhil Mittal
 
Y1 gd engine_terminology ig2 game engines
Y1 gd engine_terminology ig2 game enginesY1 gd engine_terminology ig2 game engines
Y1 gd engine_terminology ig2 game enginesLewis Brierley
 
Y1 gd engine_terminology ig2 game engines
Y1 gd engine_terminology ig2 game enginesY1 gd engine_terminology ig2 game engines
Y1 gd engine_terminology ig2 game enginesLewis Brierley
 
Confrontation Pipeline and SCons
Confrontation Pipeline and SConsConfrontation Pipeline and SCons
Confrontation Pipeline and SConsslantsixgames
 
Supersize your production pipe enjmin 2013 v1.1 hd
Supersize your production pipe    enjmin 2013 v1.1 hdSupersize your production pipe    enjmin 2013 v1.1 hd
Supersize your production pipe enjmin 2013 v1.1 hdslantsixgames
 
Kautilya: Teensy beyond shell
Kautilya: Teensy beyond shellKautilya: Teensy beyond shell
Kautilya: Teensy beyond shellNikhil Mittal
 
Y1 gd engine_terminologY
Y1 gd engine_terminologYY1 gd engine_terminologY
Y1 gd engine_terminologYElliotBlack
 

Mais procurados (19)

Style & Design Principles 03 - Component-Based Entity Systems
Style & Design Principles 03 - Component-Based Entity SystemsStyle & Design Principles 03 - Component-Based Entity Systems
Style & Design Principles 03 - Component-Based Entity Systems
 
Game Programming 08 - Tool Development
Game Programming 08 - Tool DevelopmentGame Programming 08 - Tool Development
Game Programming 08 - Tool Development
 
Game Programming 07 - Procedural Content Generation
Game Programming 07 - Procedural Content GenerationGame Programming 07 - Procedural Content Generation
Game Programming 07 - Procedural Content Generation
 
Game Programming 12 - Shaders
Game Programming 12 - ShadersGame Programming 12 - Shaders
Game Programming 12 - Shaders
 
Game Programming 01 - Introduction
Game Programming 01 - IntroductionGame Programming 01 - Introduction
Game Programming 01 - Introduction
 
Game Programming 06 - Automated Testing
Game Programming 06 - Automated TestingGame Programming 06 - Automated Testing
Game Programming 06 - Automated Testing
 
Game Programming 04 - Style & Design Principles
Game Programming 04 - Style & Design PrinciplesGame Programming 04 - Style & Design Principles
Game Programming 04 - Style & Design Principles
 
GameDev 2017 - Анатолій Ландишев "AAA architecture in Unity3D"
GameDev 2017 - Анатолій Ландишев "AAA architecture in Unity3D"GameDev 2017 - Анатолій Ландишев "AAA architecture in Unity3D"
GameDev 2017 - Анатолій Ландишев "AAA architecture in Unity3D"
 
Maximize Your Production Effort (English)
Maximize Your Production Effort (English)Maximize Your Production Effort (English)
Maximize Your Production Effort (English)
 
Under the Wire PowerShell workshop - BSides Augusta 2018
Under the Wire PowerShell workshop - BSides Augusta 2018Under the Wire PowerShell workshop - BSides Augusta 2018
Under the Wire PowerShell workshop - BSides Augusta 2018
 
Owning windows 8 with human interface devices
Owning windows 8 with human interface devicesOwning windows 8 with human interface devices
Owning windows 8 with human interface devices
 
More fun using Kautilya
More fun using KautilyaMore fun using Kautilya
More fun using Kautilya
 
Y1 gd engine_terminology ig2 game engines
Y1 gd engine_terminology ig2 game enginesY1 gd engine_terminology ig2 game engines
Y1 gd engine_terminology ig2 game engines
 
Y1 gd engine_terminology ig2 game engines
Y1 gd engine_terminology ig2 game enginesY1 gd engine_terminology ig2 game engines
Y1 gd engine_terminology ig2 game engines
 
Confrontation Pipeline and SCons
Confrontation Pipeline and SConsConfrontation Pipeline and SCons
Confrontation Pipeline and SCons
 
Supersize your production pipe enjmin 2013 v1.1 hd
Supersize your production pipe    enjmin 2013 v1.1 hdSupersize your production pipe    enjmin 2013 v1.1 hd
Supersize your production pipe enjmin 2013 v1.1 hd
 
Deploying w7
Deploying w7Deploying w7
Deploying w7
 
Kautilya: Teensy beyond shell
Kautilya: Teensy beyond shellKautilya: Teensy beyond shell
Kautilya: Teensy beyond shell
 
Y1 gd engine_terminologY
Y1 gd engine_terminologYY1 gd engine_terminologY
Y1 gd engine_terminologY
 

Destaque

Game Programming 03 - Git Flow
Game Programming 03 - Git FlowGame Programming 03 - Git Flow
Game Programming 03 - Git FlowNick Pruehs
 
Game Programming 10 - Localization
Game Programming 10 - LocalizationGame Programming 10 - Localization
Game Programming 10 - LocalizationNick Pruehs
 
Tool Development A - Git
Tool Development A - GitTool Development A - Git
Tool Development A - GitNick Pruehs
 
Game Programming 02 - Component-Based Entity Systems
Game Programming 02 - Component-Based Entity SystemsGame Programming 02 - Component-Based Entity Systems
Game Programming 02 - Component-Based Entity SystemsNick Pruehs
 
Game Programming 11 - Game Physics
Game Programming 11 - Game PhysicsGame Programming 11 - Game Physics
Game Programming 11 - Game PhysicsNick Pruehs
 
Game Models - A Different Approach
Game Models - A Different ApproachGame Models - A Different Approach
Game Models - A Different ApproachNick Pruehs
 
Entity System Architecture with Unity - Unite Europe 2015
Entity System Architecture with Unity - Unite Europe 2015Entity System Architecture with Unity - Unite Europe 2015
Entity System Architecture with Unity - Unite Europe 2015Simon Schmid
 
Designing an actor model game architecture with Pony
Designing an actor model game architecture with PonyDesigning an actor model game architecture with Pony
Designing an actor model game architecture with PonyNick Pruehs
 
ECS architecture with Unity by example - Unite Europe 2016
ECS architecture with Unity by example - Unite Europe 2016ECS architecture with Unity by example - Unite Europe 2016
ECS architecture with Unity by example - Unite Europe 2016Simon Schmid
 
Clean, fast and simple with Entitas and Unity - Unite Melbourne 2016
Clean, fast and simple with Entitas and Unity - Unite Melbourne 2016Clean, fast and simple with Entitas and Unity - Unite Melbourne 2016
Clean, fast and simple with Entitas and Unity - Unite Melbourne 2016Simon Schmid
 
inlusio | game development process
inlusio | game development processinlusio | game development process
inlusio | game development processTj'ièn Twijnstra
 
LAFS SVI Level 6 - Game Development
LAFS SVI Level 6 - Game DevelopmentLAFS SVI Level 6 - Game Development
LAFS SVI Level 6 - Game DevelopmentDavid Mullich
 

Destaque (14)

Game Programming 03 - Git Flow
Game Programming 03 - Git FlowGame Programming 03 - Git Flow
Game Programming 03 - Git Flow
 
Game Programming 10 - Localization
Game Programming 10 - LocalizationGame Programming 10 - Localization
Game Programming 10 - Localization
 
Tool Development A - Git
Tool Development A - GitTool Development A - Git
Tool Development A - Git
 
Game Programming 02 - Component-Based Entity Systems
Game Programming 02 - Component-Based Entity SystemsGame Programming 02 - Component-Based Entity Systems
Game Programming 02 - Component-Based Entity Systems
 
Game Programming 11 - Game Physics
Game Programming 11 - Game PhysicsGame Programming 11 - Game Physics
Game Programming 11 - Game Physics
 
Game Business Development
Game Business DevelopmentGame Business Development
Game Business Development
 
Game Models - A Different Approach
Game Models - A Different ApproachGame Models - A Different Approach
Game Models - A Different Approach
 
Entity System Architecture with Unity - Unite Europe 2015
Entity System Architecture with Unity - Unite Europe 2015Entity System Architecture with Unity - Unite Europe 2015
Entity System Architecture with Unity - Unite Europe 2015
 
Designing an actor model game architecture with Pony
Designing an actor model game architecture with PonyDesigning an actor model game architecture with Pony
Designing an actor model game architecture with Pony
 
Learning Game Development
Learning Game DevelopmentLearning Game Development
Learning Game Development
 
ECS architecture with Unity by example - Unite Europe 2016
ECS architecture with Unity by example - Unite Europe 2016ECS architecture with Unity by example - Unite Europe 2016
ECS architecture with Unity by example - Unite Europe 2016
 
Clean, fast and simple with Entitas and Unity - Unite Melbourne 2016
Clean, fast and simple with Entitas and Unity - Unite Melbourne 2016Clean, fast and simple with Entitas and Unity - Unite Melbourne 2016
Clean, fast and simple with Entitas and Unity - Unite Melbourne 2016
 
inlusio | game development process
inlusio | game development processinlusio | game development process
inlusio | game development process
 
LAFS SVI Level 6 - Game Development
LAFS SVI Level 6 - Game DevelopmentLAFS SVI Level 6 - Game Development
LAFS SVI Level 6 - Game Development
 

Semelhante a Game Development Challenges

Testing Blockbuster Games: Lessons for All Testers
Testing Blockbuster Games: Lessons for All TestersTesting Blockbuster Games: Lessons for All Testers
Testing Blockbuster Games: Lessons for All TestersTechWell
 
2016 NDC - 모바일 게임 서버 엔진 개발 후기
2016 NDC - 모바일 게임 서버 엔진 개발 후기2016 NDC - 모바일 게임 서버 엔진 개발 후기
2016 NDC - 모바일 게임 서버 엔진 개발 후기iFunFactory Inc.
 
Bridging the Gap: Lessons in Adversarial Tradecraft
Bridging the Gap: Lessons in Adversarial TradecraftBridging the Gap: Lessons in Adversarial Tradecraft
Bridging the Gap: Lessons in Adversarial Tradecraftenigma0x3
 
From SLO to GOTY
From SLO to GOTYFrom SLO to GOTY
From SLO to GOTYScyllaDB
 
Sandbox detection: leak, abuse, test - Hacktivity 2015
Sandbox detection: leak, abuse, test - Hacktivity 2015Sandbox detection: leak, abuse, test - Hacktivity 2015
Sandbox detection: leak, abuse, test - Hacktivity 2015Zoltan Balazs
 
Software Security : From school to reality and back!
Software Security : From school to reality and back!Software Security : From school to reality and back!
Software Security : From school to reality and back!Peter Hlavaty
 
Beyond TDD: Enabling Your Team to Continuously Deliver Software
Beyond TDD: Enabling Your Team to Continuously Deliver SoftwareBeyond TDD: Enabling Your Team to Continuously Deliver Software
Beyond TDD: Enabling Your Team to Continuously Deliver SoftwareChris Weldon
 
OWASP AppSec Global 2019 Security & Chaos Engineering
OWASP AppSec Global 2019 Security & Chaos EngineeringOWASP AppSec Global 2019 Security & Chaos Engineering
OWASP AppSec Global 2019 Security & Chaos EngineeringAaron Rinehart
 
Deploying ML models to production (frequently and safely) - PYCON 2018
Deploying ML models to production (frequently and safely) - PYCON 2018Deploying ML models to production (frequently and safely) - PYCON 2018
Deploying ML models to production (frequently and safely) - PYCON 2018David Tan
 
RAD Studio XE5 in Action Tech Preview
RAD Studio XE5 in Action Tech PreviewRAD Studio XE5 in Action Tech Preview
RAD Studio XE5 in Action Tech PreviewSoftline
 
Owasp tds
Owasp tdsOwasp tds
Owasp tdssnyff
 
ProdSec: A Technical Approach
ProdSec: A Technical ApproachProdSec: A Technical Approach
ProdSec: A Technical ApproachJeremy Brown
 
OSDC 2016 - Continous Integration in Data Centers - Further 3 Years later by ...
OSDC 2016 - Continous Integration in Data Centers - Further 3 Years later by ...OSDC 2016 - Continous Integration in Data Centers - Further 3 Years later by ...
OSDC 2016 - Continous Integration in Data Centers - Further 3 Years later by ...NETWAYS
 
Quality Assurance 1: Why Quality Matters
Quality Assurance 1: Why Quality MattersQuality Assurance 1: Why Quality Matters
Quality Assurance 1: Why Quality MattersMarc Miquel
 
Game Development with TouchDevelop
Game Development with TouchDevelopGame Development with TouchDevelop
Game Development with TouchDevelopSage Franch
 
Groovy Domain Specific Languages - SpringOne2GX 2012
Groovy Domain Specific Languages - SpringOne2GX 2012Groovy Domain Specific Languages - SpringOne2GX 2012
Groovy Domain Specific Languages - SpringOne2GX 2012Guillaume Laforge
 
A Tale Of Ten SDKs: Cross-Platform Development Best Practices - Unite LA
A Tale Of Ten SDKs: Cross-Platform Development Best Practices - Unite LAA Tale Of Ten SDKs: Cross-Platform Development Best Practices - Unite LA
A Tale Of Ten SDKs: Cross-Platform Development Best Practices - Unite LAUnity Technologies
 

Semelhante a Game Development Challenges (20)

Augernaut js
Augernaut jsAugernaut js
Augernaut js
 
Testing Blockbuster Games: Lessons for All Testers
Testing Blockbuster Games: Lessons for All TestersTesting Blockbuster Games: Lessons for All Testers
Testing Blockbuster Games: Lessons for All Testers
 
2016 NDC - 모바일 게임 서버 엔진 개발 후기
2016 NDC - 모바일 게임 서버 엔진 개발 후기2016 NDC - 모바일 게임 서버 엔진 개발 후기
2016 NDC - 모바일 게임 서버 엔진 개발 후기
 
Bridging the Gap: Lessons in Adversarial Tradecraft
Bridging the Gap: Lessons in Adversarial TradecraftBridging the Gap: Lessons in Adversarial Tradecraft
Bridging the Gap: Lessons in Adversarial Tradecraft
 
From SLO to GOTY
From SLO to GOTYFrom SLO to GOTY
From SLO to GOTY
 
Bridging the Gap
Bridging the GapBridging the Gap
Bridging the Gap
 
Sandbox detection: leak, abuse, test - Hacktivity 2015
Sandbox detection: leak, abuse, test - Hacktivity 2015Sandbox detection: leak, abuse, test - Hacktivity 2015
Sandbox detection: leak, abuse, test - Hacktivity 2015
 
Software Security : From school to reality and back!
Software Security : From school to reality and back!Software Security : From school to reality and back!
Software Security : From school to reality and back!
 
Beyond TDD: Enabling Your Team to Continuously Deliver Software
Beyond TDD: Enabling Your Team to Continuously Deliver SoftwareBeyond TDD: Enabling Your Team to Continuously Deliver Software
Beyond TDD: Enabling Your Team to Continuously Deliver Software
 
OWASP AppSec Global 2019 Security & Chaos Engineering
OWASP AppSec Global 2019 Security & Chaos EngineeringOWASP AppSec Global 2019 Security & Chaos Engineering
OWASP AppSec Global 2019 Security & Chaos Engineering
 
Deploying ML models to production (frequently and safely) - PYCON 2018
Deploying ML models to production (frequently and safely) - PYCON 2018Deploying ML models to production (frequently and safely) - PYCON 2018
Deploying ML models to production (frequently and safely) - PYCON 2018
 
RAD Studio XE5 in Action Tech Preview
RAD Studio XE5 in Action Tech PreviewRAD Studio XE5 in Action Tech Preview
RAD Studio XE5 in Action Tech Preview
 
Owasp tds
Owasp tdsOwasp tds
Owasp tds
 
ProdSec: A Technical Approach
ProdSec: A Technical ApproachProdSec: A Technical Approach
ProdSec: A Technical Approach
 
OSDC 2016 - Continous Integration in Data Centers - Further 3 Years later by ...
OSDC 2016 - Continous Integration in Data Centers - Further 3 Years later by ...OSDC 2016 - Continous Integration in Data Centers - Further 3 Years later by ...
OSDC 2016 - Continous Integration in Data Centers - Further 3 Years later by ...
 
Quality Assurance 1: Why Quality Matters
Quality Assurance 1: Why Quality MattersQuality Assurance 1: Why Quality Matters
Quality Assurance 1: Why Quality Matters
 
Game Development with TouchDevelop
Game Development with TouchDevelopGame Development with TouchDevelop
Game Development with TouchDevelop
 
Truth and Consequences
Truth and ConsequencesTruth and Consequences
Truth and Consequences
 
Groovy Domain Specific Languages - SpringOne2GX 2012
Groovy Domain Specific Languages - SpringOne2GX 2012Groovy Domain Specific Languages - SpringOne2GX 2012
Groovy Domain Specific Languages - SpringOne2GX 2012
 
A Tale Of Ten SDKs: Cross-Platform Development Best Practices - Unite LA
A Tale Of Ten SDKs: Cross-Platform Development Best Practices - Unite LAA Tale Of Ten SDKs: Cross-Platform Development Best Practices - Unite LA
A Tale Of Ten SDKs: Cross-Platform Development Best Practices - Unite LA
 

Mais de Nick Pruehs

Unreal Engine Basics 06 - Animation, Audio, Visual Effects
Unreal Engine Basics 06 - Animation, Audio, Visual EffectsUnreal Engine Basics 06 - Animation, Audio, Visual Effects
Unreal Engine Basics 06 - Animation, Audio, Visual EffectsNick Pruehs
 
Unreal Engine Basics 05 - User Interface
Unreal Engine Basics 05 - User InterfaceUnreal Engine Basics 05 - User Interface
Unreal Engine Basics 05 - User InterfaceNick Pruehs
 
Unreal Engine Basics 04 - Behavior Trees
Unreal Engine Basics 04 - Behavior TreesUnreal Engine Basics 04 - Behavior Trees
Unreal Engine Basics 04 - Behavior TreesNick Pruehs
 
Unreal Engine Basics 03 - Gameplay
Unreal Engine Basics 03 - GameplayUnreal Engine Basics 03 - Gameplay
Unreal Engine Basics 03 - GameplayNick Pruehs
 
Unreal Engine Basics 02 - Unreal Editor
Unreal Engine Basics 02 - Unreal EditorUnreal Engine Basics 02 - Unreal Editor
Unreal Engine Basics 02 - Unreal EditorNick Pruehs
 
Unreal Engine Basics 01 - Game Framework
Unreal Engine Basics 01 - Game FrameworkUnreal Engine Basics 01 - Game Framework
Unreal Engine Basics 01 - Game FrameworkNick Pruehs
 
Game Programming - Cloud Development
Game Programming - Cloud DevelopmentGame Programming - Cloud Development
Game Programming - Cloud DevelopmentNick Pruehs
 
Game Programming - Git
Game Programming - GitGame Programming - Git
Game Programming - GitNick Pruehs
 
Game Programming 00 - Exams
Game Programming 00 - ExamsGame Programming 00 - Exams
Game Programming 00 - ExamsNick Pruehs
 
Tool Development 10 - MVVM, Tool Chains
Tool Development 10 - MVVM, Tool ChainsTool Development 10 - MVVM, Tool Chains
Tool Development 10 - MVVM, Tool ChainsNick Pruehs
 

Mais de Nick Pruehs (10)

Unreal Engine Basics 06 - Animation, Audio, Visual Effects
Unreal Engine Basics 06 - Animation, Audio, Visual EffectsUnreal Engine Basics 06 - Animation, Audio, Visual Effects
Unreal Engine Basics 06 - Animation, Audio, Visual Effects
 
Unreal Engine Basics 05 - User Interface
Unreal Engine Basics 05 - User InterfaceUnreal Engine Basics 05 - User Interface
Unreal Engine Basics 05 - User Interface
 
Unreal Engine Basics 04 - Behavior Trees
Unreal Engine Basics 04 - Behavior TreesUnreal Engine Basics 04 - Behavior Trees
Unreal Engine Basics 04 - Behavior Trees
 
Unreal Engine Basics 03 - Gameplay
Unreal Engine Basics 03 - GameplayUnreal Engine Basics 03 - Gameplay
Unreal Engine Basics 03 - Gameplay
 
Unreal Engine Basics 02 - Unreal Editor
Unreal Engine Basics 02 - Unreal EditorUnreal Engine Basics 02 - Unreal Editor
Unreal Engine Basics 02 - Unreal Editor
 
Unreal Engine Basics 01 - Game Framework
Unreal Engine Basics 01 - Game FrameworkUnreal Engine Basics 01 - Game Framework
Unreal Engine Basics 01 - Game Framework
 
Game Programming - Cloud Development
Game Programming - Cloud DevelopmentGame Programming - Cloud Development
Game Programming - Cloud Development
 
Game Programming - Git
Game Programming - GitGame Programming - Git
Game Programming - Git
 
Game Programming 00 - Exams
Game Programming 00 - ExamsGame Programming 00 - Exams
Game Programming 00 - Exams
 
Tool Development 10 - MVVM, Tool Chains
Tool Development 10 - MVVM, Tool ChainsTool Development 10 - MVVM, Tool Chains
Tool Development 10 - MVVM, Tool Chains
 

Último

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 

Último (20)

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 

Game Development Challenges