Multi-platform indie game development
Upcoming SlideShare
Loading in...5
×
 

Multi-platform indie game development

on

  • 3,816 views

presentation about indie game development using free and opensource tools I made for the Codemotion 2011. ...

presentation about indie game development using free and opensource tools I made for the Codemotion 2011.

The ODP file is available in English and Italian on our website: http://www.lowpoly-studios.com

Statistics

Views

Total Views
3,816
Views on SlideShare
3,511
Embed Views
305

Actions

Likes
2
Downloads
34
Comments
0

5 Embeds 305

http://www.codemotion.it 207
http://2011.codemotion.it 79
http://codemotion.it 14
http://www.slashdocs.com 3
http://codemotion.macaronilab.com 2

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Multi-platform indie game development Multi-platform indie game development Presentation Transcript

  • Davide Coppola Lowpoly Studios Multi-platform indie game developmentAll logos , images and trademarks are the property of the respective trademark owners Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • Intro: the speaker Graduated in Computer Science at Federico II (Naples, IT) - 2008 Master thesis was a GPGPU project about creation and erosion of heightmaps Coder for Curve Studios (London, UK) - 2008-2010 Started Lowpoly Studios working in his spare time (most of it) - 2009 Got crazy and decided to work full-time as Lowpoly Studios – 2010 Took part in Codemotion as speaker - 2011 Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • Intro: the company Started in London in 2009 Main project still under development: The Undergrounder Made some experiments using Flash Created Flash games portal www.AskFlashGames.com Developing a secret project for the mobile market Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios View slide
  • Intro: the talk Part 1 Part 2 Indie gamedev  Example: The Undergrounder Philosophical marketing  Working environment Commercial solutions  Libraries and Frameworks Free/Open Source solutions  Managing the code Custom solutions  Future Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios View slide
  • Indie Gamedev INDIE = UNSTABLE Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • Indie Gamedev INDIE = UNSTABLE Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • Why developing multi-platform? More distribution channels Pretty simple from a technical point of view Pretty cheap (working for the desktop market) Why not? Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • Why developing for Mac OS X?In the 2009 the Mac market was a niche market, then... Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • Why developing for Linux? Niche market Catalyst for different markets Full availability of tool/framework More dedicated website Supporting the rising of the platform Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • Commercial solutions Engines: Torque, Unigine, Unity, … Professional products Documentation not always perfect High costs not affordable for all Controlled by productors and licenses Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • free/Open Source solutions 2D engines: Allegro, Clanib, Love, ... 3D engines: Crystal Space, Irrlitch, Ogre 3D, Panda 3D, … Multi-platform (desktop) Mostly oriented to rendering Long development times No commercial support Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • Custom solutions Made with your project in mind, so flexible No needs to learn new (third-party) thechnologies No fixed costs Less dependent on third party technologies Give you more experience Developing proprietary technology Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • Proposed solution Follows the Custom model C++ code Multi-platform: Windows, Mac, Linux Based on free/Open Source frameworks and libraries Custom, but be flexible... Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • A real example http://www.the-undergrounder.com Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • Hardware Linux and Windows: PC Mac Os X: Mac mini Mac + Bootcamp? Virtualization: Virtual Box, Vmware, etc...? Optional: laptop and netbook Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • Multi-platform working environment Code::Blocks Eclipse CDT Qt Creatorhttp://www.codeblocks.org http://www.eclipse.org/cdt/ http://qt.nokia.com Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • Working environment on Linux Kdevelop SCONShttp://www.kdevelop.org http://www.scons.org Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • Working environment on Mac Xcode http://developer.apple.com/technologies/tools/xcode.html Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • Working environment on Windows MinGW Visual Studio Express http://www.mingw.orghttp://www.microsoft.com/express/Windows/ Cygwin http://www.cygwin.com Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • Managing multi-platform code Some low level code may depend on the specific platform Compile different files for each platform Use pre-processor directives void FrameTimer::Start() { m_fElapsed = 0.f; #ifdef WIN32 QueryPerformanceCounter(&m_T1); #else gettimeofday(&m_TV1, NULL); #endif } Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • Coding for Windows No changes needed when using MinGW + Cygwyn Some changes to low level system code when using VisualC++ Examples available on UNIX Application Migration Guide: http://msdn.microsoft.com/en-us/library/ms811903.aspx Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • Coding for Mac Os X Mac Os X follows the POSIX standard Only difference: path of the .h files used by the frameworks #ifdef MAC #include "OpenAL/al.h" #include "OpenAL/alc.h" #else #include "AL/al.h" #include "AL/alc.h" #endif Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • Base codehttp://www.libsdl.org http://www.sfml-dev.org Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • Graphics http://www.opengl.org Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • Audio http://connect.creativelabs.com/openal/ Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • Fisica Box2D http://www.box2d.org Chipmunk http://bulletphysics.orghttp://code.google.com/p/chipmunk-physics/ Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • Tools Gimp (2D bitmap graphics) - http://www.gimp.org/ Inkscape (2D vector graphics) - http://inkscape.org/ Blender (3D graphics) - http://www.blender.org/ Audacity (audio editing) - http://audacity.sourceforge.net/ Kdenlive (video editing, Linux e Mac)- http://www.kdenlive.org/ Virtualdub (video editing, Windows)- http://www.virtualdub.org/ Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • The futurehttp://www.w3.org/html/ http://www.khronos.org/webgl/ Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • Contacts http://www.lowpoly-studios.comhttp://www.facebook.com/LowpolyStudios http://twitter.com/LowpolyStudios http://www.facebook.com/m3xican http://twitter.com/vivaladav Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios
  • Questions? Davide Coppola – davide.coppola@lowpoly-studios.com – Lowpoly Studios