SlideShare una empresa de Scribd logo
1 de 33
Descargar para leer sin conexión
© GameDuell 2013 | Confidential© GameDuell 2015
Code once, Play everywhere!
This is a presentation by Carsten Krebs
@cw_krebs1
© GameDuell 20152
Bringing people together to have a good time with games -
Wherever, whenever!
© GameDuell 20153
Table of contents
1. Importance of cross-platform development

2. Approaches

3. Constraints

4. GameDuell approach
© GameDuell 20154
Importance of Cross-Platform Development
© GameDuell 20155
Market Reach
•good product
•reach as many users as possible
Objectives
•earn more revenues
•grow your brand
•find your niche
How?
© GameDuell 20156
0%
60%
120%
180%
240%
2010 2011 2012 2013 2014
Smartphones
Desktop or laptop computers
Game consoles
Tablets
Device Ownership
© GameDuell 20157
Mobile Device Distribution
iOS Android Kindle Windows Phone
Symbian Java ME BlackBerry Other
© GameDuell 20158
Social Community
Bringing people together to have a good time with games -
Wherever, whenever!
© GameDuell 20159
But there are constraints ….
© GameDuell 201510
Costs
Photo credit: .jo.hardell. / Foter / CC BY
•Development costs
•Maintenance costs
•Marketing costs
© GameDuell 201511
Limited Resources
Photo credit: János Balázs / Foter / CC BY-SA
Developers
Know-HowTime
Photo credit: martinteschner / Foter / CC BY-ND
© GameDuell 201512
Cross-Platform Approaches
© GameDuell 201513
Native Approach (multiple code bases)
© GameDuell 201514
One code base
•Cross-Compilation
•Source-to-Source
•Virtual Machine
© GameDuell 201515
Cross-Compilation
C++/C
compile
Native
© GameDuell 201516
Virtual or Common Runtime Environment
Source Bytecode
compile
VM
VM
VM
© GameDuell 201517
Source-to-Source
Source
C++
Objective-C
ActionScript
transpile
Native
compile
© GameDuell 201518
Source-to-Source
Cross-Compile Common Runtime Environment (VM)
Engines & Frameworks
© GameDuell 201519
What else is important?
© GameDuell 201520 Photo credit: flickrfavorites / Foter / CC BY
Performance
Native vs Virtual Environment
© GameDuell 201521 Photo credit: Josep Ma. Rosell / Foter / CC BY
Tools
•Integrated Development Environment (IDE)
•Debugger
•Memory or Performance Profiler
•Code Analyzer
•Workflow Support
Native / VM vs Source-to-Source
© GameDuell 201522
Extendibility
Photo credit: Richard Jones / CC BY
• Integration of
• third party libs
• tools
• external or remote services
• adapt the framework to your needs
© GameDuell 201523 Photo credit: Yuri Yu. Samoilov / Foter / CC BY
Control
•Vendor Lock-In
•License-/Royalty- Costs
•Bugfixing vs Workarounds
© GameDuell 201524
The GameDuell approach
© GameDuell 201525
Requirements
at least good;
better native
Photo credit: JefferyTurner / Foter / CC BY
Photo credit: Yuri Yu. Samoilov / Foter / CC BY
Photo credit: flickrfavorites / Foter / CC BY
Photo credit: Richard Jones / CC BY
no vendor
lock-in
• extensible
• tightly fit to our needs
© GameDuell 201526
Source-to-Source
Possible Engines
© GameDuell 201527
Approach
•Own Engine
•Own Toolset & Workflow
•Source-to-Source Approach
© GameDuell 201528
Haxe
•modern programming language
•source-to-source compiler
•inspired by ActionScript & C#
•object-oriented
•statically typed
© GameDuell 201529
Obstacles
•Modularisation
•Vibrant Development
•Documentation
•Performance
#triangles at 40 fps
Photo credit: kev-shine / CC BY
© GameDuell 201530
Solutions
•improved modularisation
•performance improvements
•tweaked platform specific type implementations
•introduced pluggable platform abstractions
•dependency management
outperformed native Objective-C implementation
Photo credit: Matteo Paciotti / CC BY
© GameDuell 201531
Additional Benefit
One code base for client and game server logic
Platform Abstraction Layer
Game Engine
UI Game Logic
Driver DriverDriver
Game
Server /
Backend
Game Logic
Photo credit: GotCredit / Foter / CC BY
© GameDuell 2013 | Confidential© GameDuell 201532
www.techtalk-berlin.de
Stay in Touch:
carsten.krebs@gameduell.de
© GameDuell 201533

Más contenido relacionado

Similar a Code Once, Play Everywhere with Haxe Cross-Platform Game Development

A Data-Driven Approach for Mobile Testing and Automation
A Data-Driven Approach for Mobile Testing and AutomationA Data-Driven Approach for Mobile Testing and Automation
A Data-Driven Approach for Mobile Testing and AutomationTechWell
 
Go Faster - Remove Inhibitors to Rapid Innovation
Go Faster - Remove Inhibitors to Rapid InnovationGo Faster - Remove Inhibitors to Rapid Innovation
Go Faster - Remove Inhibitors to Rapid InnovationFred George
 
Atagg2015 Benefits of BDD in Digital Era
Atagg2015 Benefits of BDD in Digital EraAtagg2015 Benefits of BDD in Digital Era
Atagg2015 Benefits of BDD in Digital EraAgile Testing Alliance
 
Gcp intro-20160721
Gcp intro-20160721Gcp intro-20160721
Gcp intro-20160721Haeseung Lee
 
Being a game developer with the skills you have
Being a game developer with the skills you haveBeing a game developer with the skills you have
Being a game developer with the skills you haveJohan Lindfors
 
How Cloud Providers are Playing with Traditional Data Center
How Cloud Providers are Playing with Traditional Data CenterHow Cloud Providers are Playing with Traditional Data Center
How Cloud Providers are Playing with Traditional Data CenterHostway|HOSTING
 
Latest Trends in Mobile App Development
Latest Trends in Mobile App DevelopmentLatest Trends in Mobile App Development
Latest Trends in Mobile App DevelopmentDipesh Mukerji
 
GraphSummit Toronto: Keynote - Innovating with Graphs
GraphSummit Toronto: Keynote - Innovating with Graphs GraphSummit Toronto: Keynote - Innovating with Graphs
GraphSummit Toronto: Keynote - Innovating with Graphs Neo4j
 
Cutting Through the Disruption
Cutting Through the DisruptionCutting Through the Disruption
Cutting Through the DisruptionOSSCube
 
The LCG Digital Transformation Maturity Model
The LCG Digital Transformation Maturity ModelThe LCG Digital Transformation Maturity Model
The LCG Digital Transformation Maturity ModelLima Consulting Group
 
Untangling DevOps - A high-level overview and how we got here
Untangling DevOps -  A high-level overview and how we got hereUntangling DevOps -  A high-level overview and how we got here
Untangling DevOps - A high-level overview and how we got hereBarton George
 
Current state of mobile development february 2013
Current state of mobile development february 2013Current state of mobile development february 2013
Current state of mobile development february 201359offers
 
eFolder Partner Chat Webinar — ShadowProtect vs. Replibit: Factors to Consider
eFolder Partner Chat Webinar — ShadowProtect vs. Replibit: Factors to ConsidereFolder Partner Chat Webinar — ShadowProtect vs. Replibit: Factors to Consider
eFolder Partner Chat Webinar — ShadowProtect vs. Replibit: Factors to ConsidereFolder
 
Mike Siegler at INCOSE Minneapolis, 2014
Mike Siegler at INCOSE Minneapolis, 2014Mike Siegler at INCOSE Minneapolis, 2014
Mike Siegler at INCOSE Minneapolis, 2014Etherios
 
eFolder Partner Chat webinar — Breaking the Chain: Why One Partner Adopted a ...
eFolder Partner Chat webinar — Breaking the Chain: Why One Partner Adopted a ...eFolder Partner Chat webinar — Breaking the Chain: Why One Partner Adopted a ...
eFolder Partner Chat webinar — Breaking the Chain: Why One Partner Adopted a ...eFolder
 
ProtoTech Solutions Corporate Profile
ProtoTech Solutions Corporate ProfileProtoTech Solutions Corporate Profile
ProtoTech Solutions Corporate ProfileProtoTech Solutions
 
ForgeRock and the Graph: A Match Made for IRM
ForgeRock and the Graph: A Match Made for IRMForgeRock and the Graph: A Match Made for IRM
ForgeRock and the Graph: A Match Made for IRMForgeRock
 
Android Native App & Web Test Strategy
Android Native App & Web Test StrategyAndroid Native App & Web Test Strategy
Android Native App & Web Test Strategydroidcon Dubai
 
Modern Product Data Workflows: How King Crushes New Product Development using...
Modern Product Data Workflows: How King Crushes New Product Development using...Modern Product Data Workflows: How King Crushes New Product Development using...
Modern Product Data Workflows: How King Crushes New Product Development using...Hannah Flynn
 

Similar a Code Once, Play Everywhere with Haxe Cross-Platform Game Development (20)

A Data-Driven Approach for Mobile Testing and Automation
A Data-Driven Approach for Mobile Testing and AutomationA Data-Driven Approach for Mobile Testing and Automation
A Data-Driven Approach for Mobile Testing and Automation
 
Go Faster - Remove Inhibitors to Rapid Innovation
Go Faster - Remove Inhibitors to Rapid InnovationGo Faster - Remove Inhibitors to Rapid Innovation
Go Faster - Remove Inhibitors to Rapid Innovation
 
Atagg2015 Benefits of BDD in Digital Era
Atagg2015 Benefits of BDD in Digital EraAtagg2015 Benefits of BDD in Digital Era
Atagg2015 Benefits of BDD in Digital Era
 
Gcp intro-20160721
Gcp intro-20160721Gcp intro-20160721
Gcp intro-20160721
 
Being a game developer with the skills you have
Being a game developer with the skills you haveBeing a game developer with the skills you have
Being a game developer with the skills you have
 
How Cloud Providers are Playing with Traditional Data Center
How Cloud Providers are Playing with Traditional Data CenterHow Cloud Providers are Playing with Traditional Data Center
How Cloud Providers are Playing with Traditional Data Center
 
Latest Trends in Mobile App Development
Latest Trends in Mobile App DevelopmentLatest Trends in Mobile App Development
Latest Trends in Mobile App Development
 
GraphSummit Toronto: Keynote - Innovating with Graphs
GraphSummit Toronto: Keynote - Innovating with Graphs GraphSummit Toronto: Keynote - Innovating with Graphs
GraphSummit Toronto: Keynote - Innovating with Graphs
 
Cutting Through the Disruption
Cutting Through the DisruptionCutting Through the Disruption
Cutting Through the Disruption
 
The LCG Digital Transformation Maturity Model
The LCG Digital Transformation Maturity ModelThe LCG Digital Transformation Maturity Model
The LCG Digital Transformation Maturity Model
 
Untangling DevOps - A high-level overview and how we got here
Untangling DevOps -  A high-level overview and how we got hereUntangling DevOps -  A high-level overview and how we got here
Untangling DevOps - A high-level overview and how we got here
 
Current state of mobile development february 2013
Current state of mobile development february 2013Current state of mobile development february 2013
Current state of mobile development february 2013
 
Video Versioning
Video VersioningVideo Versioning
Video Versioning
 
eFolder Partner Chat Webinar — ShadowProtect vs. Replibit: Factors to Consider
eFolder Partner Chat Webinar — ShadowProtect vs. Replibit: Factors to ConsidereFolder Partner Chat Webinar — ShadowProtect vs. Replibit: Factors to Consider
eFolder Partner Chat Webinar — ShadowProtect vs. Replibit: Factors to Consider
 
Mike Siegler at INCOSE Minneapolis, 2014
Mike Siegler at INCOSE Minneapolis, 2014Mike Siegler at INCOSE Minneapolis, 2014
Mike Siegler at INCOSE Minneapolis, 2014
 
eFolder Partner Chat webinar — Breaking the Chain: Why One Partner Adopted a ...
eFolder Partner Chat webinar — Breaking the Chain: Why One Partner Adopted a ...eFolder Partner Chat webinar — Breaking the Chain: Why One Partner Adopted a ...
eFolder Partner Chat webinar — Breaking the Chain: Why One Partner Adopted a ...
 
ProtoTech Solutions Corporate Profile
ProtoTech Solutions Corporate ProfileProtoTech Solutions Corporate Profile
ProtoTech Solutions Corporate Profile
 
ForgeRock and the Graph: A Match Made for IRM
ForgeRock and the Graph: A Match Made for IRMForgeRock and the Graph: A Match Made for IRM
ForgeRock and the Graph: A Match Made for IRM
 
Android Native App & Web Test Strategy
Android Native App & Web Test StrategyAndroid Native App & Web Test Strategy
Android Native App & Web Test Strategy
 
Modern Product Data Workflows: How King Crushes New Product Development using...
Modern Product Data Workflows: How King Crushes New Product Development using...Modern Product Data Workflows: How King Crushes New Product Development using...
Modern Product Data Workflows: How King Crushes New Product Development using...
 

Último

Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 

Último (20)

Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 

Code Once, Play Everywhere with Haxe Cross-Platform Game Development