|
Project Information
Members
Featured
Wiki pages
Links
|
GALAXY ENGINE PROJECT IS CLOSING! READ FULL ARTICLE ON JAM Studios' blog Documentation You can find the documentation here. You might also want to read some of the pages on the wiki if you are looking at iPhone or iPad. If you get lost, you can email us at development@jamstudiosgames.com What is Galaxy Engine? Galaxy Engine is a complete game development package for Mac, iPhone, and iPad. It is programmed in Cocoa and uses the OpenGL, OpenGL ES, and OpenAL libraries to give you a powerful core with direct access to iPhone SDK features such as Game Center. Galaxy Engine is designed with indie developers in mind. Which means that it is designed to be as efficient and flexible as possible. It also is one of the only Open Source game engines to include critical tools for game development such as: Level Editor, Terrain Editor, Model Viewer, Particle Editor, and Shader IDE. It also includes features such as: vertex animation, multisampling, advanced lighting, dynamic shadows, vertex and pixel shaders, normal mapping, parallax mapping, and massive outdoor environments. Why use Galaxy engine? Intuitive complete object orientated Objective-C framework designed in the same style as Cocoa allows you to quickly write your game with a relatively small learning curve compared to other C++ based systems. Galaxy engine is extremely flexible and not based on a specific game type which allows you start on your game no matter what it is on day one. Comprehensive source code allows you to confidently configure, edit, and expand the engine right out of the box. Extensive documentation allows you to quickly understand how classes work and how you can use them. Proven stability used in several commercial products from iPhone games currently in development to space shuttle simulation software. Powerful and stable tools developed over several years with consistent and clean interfaces will save your company tons of time in programming and game content creation. Native cross platform support with graphics abstraction layer and automatic compilation of all resources to platform specific formats allowing you to develop for iPhone, iPad, and Mac all the time with minimal code and resource changes. JAM Studios and the open source community will continue to support the Galaxy engine by adding new features and updates to the base framework and all its tools so you can be sure it will remain competitive and continue to expand its feature set. Platform Support
Development System Requirements
Tools Galaxy Engine is one of the only Open Source game engines to include an entire game development suite with tools including:
GLSL vertex and shader program support with prebuilt shader effects including: Per-Pixel Lighting, Normal Mapping, Displacement Mapping, and advanced water rendering. Load textures from PNG, JPEG, TGA, TIFF, PVRTC, DDS, GIF, BMP, and PSD. Support for basic material effects like specular and ambient lighting. Models
Audio
Special Effects
Scene Management
FAQ’S Q: How should I get started? You don’t have to use most of the classes in Galaxy to make a game. Start off by getting confident using the common resource types (JGTexture, JGSound, JGModel, etc) and get familiar with the core (JGController, JGAssetManager, JGObject, etc). You can get the basic Idea for using these with the demo provided. We are also working on some video tutorials which will help you setup a project and use the basic tools. Q: I want to use Galaxy Engine for iPhone what do I need to know? Almost all of the classes work directly on the iPhone with OpenGL ES 1.x. All content created from tools and the classes that work with them are available on the iPhone. All classes that are not supported will automatically not be included in the build you can find a list of classes unsupported on the iPhone on the wiki. However Galaxy Engine does not currently have direct support for OpenGL ES 2.0. All of our base classes and core will work (JGTexture, JGModel, JGController, JGObject, etc) but most graphics functions will not. You can find a list of the classes currently supported on 2.0 on the wiki. Direct support for OpenGL ES 2.0 is currently at the top of our feature list! Q: What other software do I need? While Galaxy Engine covers most of the tools unique to game development, you still need the Apple Developer tools and some basic applications for creating content. We suggest: Blender (3D modeler), GIMP (Image editor), and Audacity (Sound editor). Q: Can I use this for commercial products? Yes, go right ahead! However, make sure you follow the BSD License. Q: I am stuck! Where can I find help? Make a post on the forums. On our forums you can get lots of help from other programmers and even our own development team. Also you can look at the documentation. Q: What platforms does Galaxy Engine support? iPhone, iPad, and Mac. Q: How do I setup DXT texture compression for Mac in Galaxy Forge? The NVIDIA texture tools are required for texture and lightmap compression in Galaxy Forge. A wiki page describing installation can be found here. Q: How do I make shadows? Shadows are available in thelightmap generator for static objects, but for dynamic objects you can use the makeShadowMatrix function. This returns a matrix which you can use to flatten the model into a "shaodw". Then you can fill it with black and you have dynamic shadows! You can also look at some techniques here to see some other methods you could implement. Q: Is there any physics simulation? No there is not right out of the box, and for good reason. There are already several Open Source projects devoted just to physics, so our own version would certainly not have the same support, testing, or features as others. We do recommend Chipmunk or Box2D for 2D simulation. For full 3D physics take a look at Bullet. Q: Why should I use functions like pushMatrix when they only call glPushMatrix? So that when we add support for new graphics APIs (such as direct OpenGL ES 2.0 support coming soon) you don’t have to go through and change all your code. The functions will automatically adapt to the current API. Q: How can I use more then the OpenGL limit of 8 lights? You can use the same OpenGL light index for an unlimited amount of lights in the scene but you can still only have 8 lights affect 1 object. Look at the documentation for JGLightTable and JGVirtualLight classes for information on doing this. You can also look at the demo provided to see an example. Q: Some of the defaults for things like texture flags are driving me crazy! Can I change these? Absolutely, you can configure the engine exactly how you want it by editing the JGDefaults.h file. Q: I have made some pretty sweet additions of my own to Galaxy. Can I add these to the main project for all to use? Yes, If you have some code you would like to add or you would like to become a regular contributor you can contact us here. Q: How can I master my skills with Galaxy Engine? Learn how the resource, and core classes work, even if that means looking at some source code. Become confident with all the tools especially Galaxy Forge. Q: Can we expect new features to be added? JAM Studios is going to continue to develop the project along with additions from the open source community. You can definitely expect constant updates that fix bugs and add new features to the engine. Q: How do I do networking/multiplayer? If you are just looking at the iPad or iPhone we recommend just using Apple’s Game Center. It is the easiest way to set up connections and communicate between devices. If you are looking at the Mac, or older iPhones we suggest using AsyncSocket |