Open-source, cross-platform, C++ game engine for creating 2D/3D games.

Overview

GamePlay v3.0.0

GamePlay is an open-source, cross-platform, C++ game framework/engine for creating 2D/3D mobile and desktop games.

Supported Platforms

License

Open-source under Apache 2.0 license.

Bug Reporting

Please log bugs under Issues on github.

Disclaimer

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Comments
  • Added support for Texture Cubes

    Added support for Texture Cubes

    DDS and PVR loading supports texture cubes. FrameBuffer::createScreenshot lets you choose the format (RGB or RGBA)

    Unlike prior pull requests for this branch, the sample app now works.

    opened by rcmaniac25 25
  • Added support for Texture Cubes

    Added support for Texture Cubes

    DDS and PVR loading supports texture cubes. FrameBuffer::createScreenshot lets you choose the format (RGB or RGBA) Added Texture::setData so that it is possible to set change texture data after the texture has been created.

    opened by rcmaniac25 15
  • Encoder support for Tiled (*.tmx) to Gameplay Scene (*.scene) conversion

    Encoder support for Tiled (*.tmx) to Gameplay Scene (*.scene) conversion

    Support for "gutter" or "skirt" conversion of tileset to avoid gaps in tiles from using non-Nearest texture filtering. Added *.scene support for "enabled" property on Nodes.

    Last part of (initial) #1650 feature request.

    opened by rcmaniac25 14
  • Corrected some calls to old functions of the FBX API

    Corrected some calls to old functions of the FBX API

    These functions are not in the FBX API anymore (2014.2). It compiles thanks to these changes but I'm not sure this is correct since I don't know the FBX API. Please check and correct.

    opened by ymollard 11
  • Use glyph metrics for spacing.

    Use glyph metrics for spacing.

    Currently the characters are spaced using their bounding width and fixed size. That can look very bad with some fonts. Using appropriate metrics given by FreeType library looks much better.

    This changes the GBP file format by adding two fields to the TTFGlyph structure. Is such change acceptable? Is anything else required for it?

    Illustration of the change with Chopin Script: http://www.dafont.com/chopin-script.font font-spacing-comparison

    opened by michalsrb 10
  • Fixed Font reference usage in Text

    Fixed Font reference usage in Text

    Fixed issue where Text would reference internal members of Font, and try to release them. Release Font in SpriteSample. Converted tabs to spaces in SpriteSample.

    Fix for #1706

    opened by rcmaniac25 9
  • Fix encoder spot light angle conversion

    Fix encoder spot light angle conversion

    Light inner/outer angles are already in radians, no need to convert again when writing out. This fixes light nodes having bogus inner and outer angles when loading from a .gpb that was generated from a .fbx.

    This is only a step in the right direction though; when exporting a light from, say, blender, the inner and outer angles are written into the file, however gameplay-encoder only reads in the outer angle (called falloffAngle) and then computes an estimated inner angle. Should I submit a PR to read in the true inner and outer angles from the .fbx?

    An example .fbx with the inner and outer angles present is here. I am specifically referring to the spot node.

    opened by staticfloat 9
  • Fixed bug in Effect.cpp where glGetActiveUniform is called with a wrong parameter

    Fixed bug in Effect.cpp where glGetActiveUniform is called with a wrong parameter

    Fixed bug in Effect.cpp where the OpenGL function glGetActiveUniform is called with a wrong parameter, causing an assertion failure on some graphic cards.

    opened by olee 8
  • Added -g:auto and -g:off options to gameplay-encoder

    Added -g:auto and -g:off options to gameplay-encoder

    As the title says I was trying to automate my asset pipeline and was having trouble because of the prompt to group animations. I wanted to enable the option from the command line. To address this issue I have added two new command line options -g:auto and -g:off. If either option is set then the encoder does not prompt. If neither option is set then the encoder will prompt as normal.

    opened by noggs 8
  • Mac cmake support

    Mac cmake support

    I added support to build the library and the samples using CMake. Among other things, this allows to checkout the code with CLion and compile it directly out of the box. I have tried to make sure that my modifications result in no changes if not used under Mac OS X but have no way to test all cases.

    opened by FunMiles 7
  • Next

    Next

    I tweaked the Windows Visual Studio projects just a bit. Some files (*.conf) were not part of the VS project that IMO should be; also I added a build dependency (reference) on the gameplay project from the sample projects.

    opened by cx 7
Owner
gameplay3d
GamePlay is an free, open-source, cross-platform, 2D/3D game framework.
gameplay3d
Cocos2d-x is a suite of open-source, cross-platform, game-development tools used by millions of developers all over the world.

Cocos2d-x is a suite of open-source, cross-platform, game-development tools used by millions of developers all over the world.

cocos2d 16.7k Dec 26, 2022
Cross-platform 2D and 3D game engine.

Urho3D Urho3D is a free lightweight, cross-platform 2D and 3D game engine implemented in C++ and released under the MIT license. Greatly inspired by O

null 4.2k Jan 4, 2023
The open-source tool for creating of 3D models

The open-source tool for creating of 3D models

3D geoinformation research group at TU Delft 428 Dec 21, 2022
Dust3D is a cross-platform open-source 3D modeling software

Dust3D is a cross-platform open-source 3D modeling software. Auto UV unwrapping, auto rigging with PBR Material support, pose and motion authoring all in one.

Jeremy HU 2.5k Dec 30, 2022
A completely free, open-source, 2D game engine built on proven torque technology.

Torque2D 4.0 Early Access 1 MIT Licensed Open Source version of Torque2D from GarageGames. Maintained by the Torque Game Engines team and contribution

Torque Game Engines 692 Jan 9, 2023
Cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library.

bgfx - Cross-platform rendering library GitHub Discussions Discord Chat What is it? Cross-platform, graphics API agnostic, "Bring Your Own Engine/Fram

Бранимир Караџић 12.6k Jan 8, 2023
PainterEngine is a application/game engine with software renderer,PainterEngine can be transplanted to any platform that supports C

PainterEngine is a application/game engine with software renderer,PainterEngine can be transplanted to any platform that supports C

DBinary 1.6k Jan 4, 2023
Tesseract Open Source OCR Engine (main repository)

Tesseract OCR Table of Contents Tesseract OCR About Brief history Installing Tesseract Running Tesseract For developers Support License Dependencies L

null 48.2k Jan 2, 2023
appleseed is an open source, physically-based global illumination rendering engine primarily designed for animation and visual effects.

appleseed is an open source, physically-based global illumination rendering engine primarily designed for animation and visual effects.

appleseedhq 2k Jan 8, 2023
Metal-cpp is a low-overhead C++ interface for Metal that helps developers add Metal functionality to graphics apps, games, and game engines that are written in C++.

About metal-cpp is a low overhead and header only C++ interface for Metal that helps developers add Metal functionality to graphics applications that

Бранимир Караџић 164 Dec 31, 2022
A modern cross-platform low-level graphics library and rendering framework

Diligent Engine A Modern Cross-Platform Low-Level 3D Graphics Library Diligent Engine is a lightweight cross-platform graphics API abstraction library

Diligent Graphics 2.6k Dec 30, 2022
Cross-platform, sophisticated frontend for the libretro API. Licensed GPLv3.

RetroArch RetroArch is the reference frontend for the libretro API. Popular examples of implementations for this API includes video game system emulat

null 7.4k Dec 30, 2022
Gearcoleco is a cross-platform ColecoVision emulator written in C++.

This is an open source project with its ongoing development made possible thanks to the support by these awesome backers.

Ignacio Sanchez Gines 41 Nov 12, 2022
A small cross-platform graphics library made in C

minigfx Small graphics library made in C Intended to be: Simple to understand Intuitive Fun to use Features Cross platform: Windows and Linux. To see

Laurentino Luna 27 Jul 18, 2021
Ksnip is a Qt-based cross-platform screenshot tool that provides many annotation features for your screenshots.

Ksnip is a Qt-based cross-platform screenshot tool that provides many annotation features for your screenshots.

ksnip 1.5k Jan 4, 2023
Android studio native project template using cross platform raylib graphics library.

rayturbo Android studio native project template using cross platform raylib graphics library. https://www.raylib.com/ This project use Android Studio

Ciapas Linux 10 Mar 5, 2022
A low-level, cross-platform GPU library

vgpu is cross-platform low-level GPU library. Features Support for Windows, Linux, macOS. Modern rendering using Vulkan and Direct3D12. Dependencies U

Amer Koleci 9 Jul 28, 2022
Horde3D is a small 3D rendering and animation engine. It is written in an effort to create an engine being as lightweight and conceptually clean as possible.

Horde3D Horde3D is a 3D rendering engine written in C++ with an effort being as lightweight and conceptually clean as possible. Horde3D requires a ful

Volker Vogelhuber 1.3k Dec 31, 2022
Brand new engine with new and QoL features. Grafex is Psych engine with some additions and Better graphics

Friday Night Funkin' - Graphex Engine Credits: Grafex Mod aka Psych Graphic Rework: Xale - Lead Coding, Artist PurpleSnake - Second Coder Psych Engine

Xale 2 Jan 7, 2023