• Announcements

    • khawk

      Download the Game Design and Indie Game Marketing Freebook   07/19/17

      GameDev.net and CRC Press have teamed up to bring a free ebook of content curated from top titles published by CRC Press. The freebook, Practices of Game Design & Indie Game Marketing, includes chapters from The Art of Game Design: A Book of Lenses, A Practical Guide to Indie Game Marketing, and An Architectural Approach to Level Design. The GameDev.net FreeBook is relevant to game designers, developers, and those interested in learning more about the challenges in game development. We know game development can be a tough discipline and business, so we picked several chapters from CRC Press titles that we thought would be of interest to you, the GameDev.net audience, in your journey to design, develop, and market your next game. The free ebook is available through CRC Press by clicking here. The Curated Books The Art of Game Design: A Book of Lenses, Second Edition, by Jesse Schell Presents 100+ sets of questions, or different lenses, for viewing a game’s design, encompassing diverse fields such as psychology, architecture, music, film, software engineering, theme park design, mathematics, anthropology, and more. Written by one of the world's top game designers, this book describes the deepest and most fundamental principles of game design, demonstrating how tactics used in board, card, and athletic games also work in video games. It provides practical instruction on creating world-class games that will be played again and again. View it here. A Practical Guide to Indie Game Marketing, by Joel Dreskin Marketing is an essential but too frequently overlooked or minimized component of the release plan for indie games. A Practical Guide to Indie Game Marketing provides you with the tools needed to build visibility and sell your indie games. With special focus on those developers with small budgets and limited staff and resources, this book is packed with tangible recommendations and techniques that you can put to use immediately. As a seasoned professional of the indie game arena, author Joel Dreskin gives you insight into practical, real-world experiences of marketing numerous successful games and also provides stories of the failures. View it here. An Architectural Approach to Level Design This is one of the first books to integrate architectural and spatial design theory with the field of level design. The book presents architectural techniques and theories for level designers to use in their own work. It connects architecture and level design in different ways that address the practical elements of how designers construct space and the experiential elements of how and why humans interact with this space. Throughout the text, readers learn skills for spatial layout, evoking emotion through gamespaces, and creating better levels through architectural theory. View it here. Learn more and download the ebook by clicking here. Did you know? GameDev.net and CRC Press also recently teamed up to bring GDNet+ Members up to a 20% discount on all CRC Press books. Learn more about this and other benefits here.
Sign in to follow this  
Followers 0
  • entries
    17
  • comments
    35
  • views
    15708

Targeting multiple platforms

Sign in to follow this  
Followers 0
a_insomniac

552 views

Well sort of...I've really been thinking about not limiting myself to just Windows and keeping my options open for developing towards multiple platforms such a Linux and Mac OS. Tonight I spent sometime actually trying to setup a development environment using Cygwin & TextPad Pro. It is just amazing how much your realize what Visual Studios does for when you are not using it.

What I really want to do is just compile and run a simple DirectX app and a OpenGL app using this pipeline to qualify it (need to figure out how to point to the lib & include directories for 3rd party SDK's). I figure building and compiling an OpenGL sample app should be pretty straight forward since the gcc build is supposed to come with the OpenGl libs.

Anyway, I'm open to any tips, caveats or even a better approach to develop outside of Visual Studio with the main goal of targeting multiple systems. Thanks in advance!

Thinking ahead, it looks like I'll need to at least become some what proficient with GDB as well...huh.gif

I look at this way, my programming skills should increase a bit considering there will be no intellisense unsure.gif and I will "seriously" have to pay attention to the compiler messages.

0
Sign in to follow this  
Followers 0


9 Comments


Look into eclipse, that is a good IDE which is in some areas quite close to VS. Debugging is better on VS, though...
0

Share this comment


Link to comment
I'm using Code::blocks and I think it works great. It is multi-platform, has a nice integrated GDB and is being actively developed. Swap between header and source files (one key), code completion etc. I would recommend downloading the mingW setup.

http://www.codeblocks.org/

1

Share this comment


Link to comment
@[b]Tobing[/b] - I totally forgot about Eclipse. I've used it alot but only for Java. Althought I remember setting up eclipse with MinGW to try and compile OBJ-C on windows and saw the C++ port. Thanks.


@[b]O-san[/b] - Code::blocks I have always heard of it but never looked into, checking out the features and avaialble plugins the suite looks complete, thanks for the tip.
0

Share this comment


Link to comment
Thanks for the post! Keep us updated with what you find out. I'm very interested in knowing some tips and caveats you find while developing for multiple platforms simultaneously. In my future projects I would like to target Win/Mac/Linux and code as generally as possible to make any specific porting I have to do minimal.

I second O-san's recommendation of Code::blocks. I've been using it for a while on my work computer and I enjoy how robust and powerful it is.

Keep on keeping on!
0

Share this comment


Link to comment
Was this for a income producing game or a free release? Was this project for fun or not? I'd seriously consider what the goal is of the said project, and how you see it ending when you're done with it. For a income producing game, I'd really target mobile or windows if I wasn't proficient in programming. Since I use major AAA game engines myself, 2 of which I have the hard code C++ to, I generically do not need to do much backdoor coding. Instead I look to their scripting languages. When it comes down to it all, you will need more focus on artwork, sound, and combat / game mechanics (including story and how your game / ideas are perceived by the players) than coding. Coding is next important. You will need to be able to have a vision of the game before you begin, unless again its for practice. For me, what defines a indie game also is advertising and marketing campaigns. How well is public relations working for you? These things added into a indie game will boost sales and publicity. Any additional income should be going into pax, e3, ect. You want as much publicity as you can get. But this doesn't apply if you want to do it for fun. Personally, I have nothing against doing games for fun, as one of my future Steam releases will be Free, supported by buy able DLC. Finally, to top off the cake you should not worry about your coding as much. Decide 1 thing at a time, do that, then see if you want to expand or not into another area. Trying to preset for ALL = Disaster. Gl, and hope the game turns out decent.
0

Share this comment


Link to comment
@RedPin -- huh? [img]http://public.gamedev.net/public/style_emoticons/default/wacko.gif[/img]
0

Share this comment


Link to comment
Choice of IDE ought to be orthogonal to the desire to support multiple platforms -- Furthermore, people are most productive when they are using the tools they are most comfortable with, whether that's Visual Studio on Windows, XCode on Mac OSX, KDE on Linux, Vim on... well, on anything capable of running code... And everyone has a different preference.

What you really are after is a cross-platform build system -- I use CMake, which is free, open source and available on all platforms. Essentially what it does is has its own language for defining different builds and the dependencies amongst them. You modify these files when you add a new file, change the dependency structure, or change build settings such as optimizations. CMake parses these files and generates the native build files for just about any platform you can think of -- It'll make solution/project files for Visual Studio or Xcode, GNU Make files, etc. In the case of project files, you can then load these into the IDE of your choice and see the entire project just as you would for a project created exclusively in those IDEs.

The biggest difficulty is getting everyone to *not* try to effect build changes by modifying the platform-dependent build files -- you've got to always make those changes to the cmake files themselves, otherwise they get over-written the next time cmake is run. This isn't difficult, its just something you have to change your way of thinking about to break the habit. A good way to do this is the have your source control configuration ignore the platform-defendant build files, and they can never be checked into the source tree (of course, its nice to be able to fiddle with those platform dependent files locally when you're trying to figure out what changes are desirable to make to the cmake files).
0

Share this comment


Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now