(I apologize if I posted this in an inappropriate board. I also apologize for creating two accounts - I have not received the confirmation e-mail and redefining the password did not work)
Hello, Mr. Mike and Rez,
I would like to thank you for your book: both the book and the source code are fantastic. The game forum is also a great resource it is not common to find authors who go out of their ways to help the readers. I browse the forums every now and then since I purchased the book in 2012; however, I had never registered before.
Since then, I have been playing around with your game engine implementation. I truly enjoy the flexibility architecture of the engine. In fact, I chose GCC4 to be the reference for my research project. Since last year, I have been working on flexible, customizable ways to implement accessible games considering different user disabilities. There some works regarding the design of accessible games, however I could not find extensive works regarding the implementation.
My goal was to provide different specializations to an IO-free base game logic in order to, at a later step, tailor the IO to suit different interaction (dis)abilities. GCC4s architecture suited my needs perfectly.
In the last two months, I have been documenting the most relevant features and approaches of the engine. Some weeks ago, I made my code repository public. The result is UGE, which is available at <github.com/francogarcia/uge>.
Some parts of UGE are organized or named slightly differently from GCC4. Some I have yet to implement and either are missing from my engine or use your source code. Some features needs refactoring and worsen the implementation with sloppy code*.
In general, UGE extends, improves and adds new features to GCC4, exploring both the data and event-driven architectures and components to provide customizable, profile-driven interaction personalization without modifying the game logic. For instance, some new features include:
- 3D audio support;
- Input mapping;
- Data-driven player profile tailoring;
- Data-driven event setup (for instance, using the profile to enable or disable game events to present the game interface for different interaction abilities);
- IO-free game logic;
- IO-free scene graph;
- IO device abstraction;
- Abstract scene graph for rendering and spatial audio;
- More cross-platform code (although some parts are still Windows only).
Currently, it only compiles in Visual Studio / C++ 2012. It does not compile in previous versions due to some C++11 functionalities. I found out today that what I though was a clever forward declared enum class does not work in Visual Studio 2013, although it did in 2012.
For a quick overview of the engine, I created a brief, illustrated guide. It is available at <github.com/francogarcia/uge/ra…%20in%20a%20Nutshell.pptx> (PowerPoint) or at <github.com/francogarcia/uge-ev…E%20in%20a%20Nutshell.pdf> (PDF). This guide also details my approach to develop accessible games with UGE.
The game prototypes are proof of concept so far. However, such as Teapot Wars, they offer a cohesive example that features all of the main approaches from UGE to create a Universally-Accessible game (more details about this in the last link). Hence this topics' tittle. Although, with UGE, you may disable the graphics and have an audio only gaming experience.
I am currently evaluating it and asking for developers feedback regarding the engine. As my work is derivative of yours, I assume you are best developers to whom I could ask for feedback. Should you wish to provide feedback, it would greatly help me to improve the engine. Suggestions and criticism is always welcome.
To avoid repeating myself, this is the link to the evaluation: <gamedev.net/topic/655200-looki…ine-for-accessible-games/>.
Once again, thanks!
Franco
* Edit: after re-reading this, this sound ambiguous. I am referring to my own implementation here.
Hello, Mr. Mike and Rez,
I would like to thank you for your book: both the book and the source code are fantastic. The game forum is also a great resource it is not common to find authors who go out of their ways to help the readers. I browse the forums every now and then since I purchased the book in 2012; however, I had never registered before.
Since then, I have been playing around with your game engine implementation. I truly enjoy the flexibility architecture of the engine. In fact, I chose GCC4 to be the reference for my research project. Since last year, I have been working on flexible, customizable ways to implement accessible games considering different user disabilities. There some works regarding the design of accessible games, however I could not find extensive works regarding the implementation.
My goal was to provide different specializations to an IO-free base game logic in order to, at a later step, tailor the IO to suit different interaction (dis)abilities. GCC4s architecture suited my needs perfectly.
In the last two months, I have been documenting the most relevant features and approaches of the engine. Some weeks ago, I made my code repository public. The result is UGE, which is available at <github.com/francogarcia/uge>.
Some parts of UGE are organized or named slightly differently from GCC4. Some I have yet to implement and either are missing from my engine or use your source code. Some features needs refactoring and worsen the implementation with sloppy code*.
In general, UGE extends, improves and adds new features to GCC4, exploring both the data and event-driven architectures and components to provide customizable, profile-driven interaction personalization without modifying the game logic. For instance, some new features include:
- 3D audio support;
- Input mapping;
- Data-driven player profile tailoring;
- Data-driven event setup (for instance, using the profile to enable or disable game events to present the game interface for different interaction abilities);
- IO-free game logic;
- IO-free scene graph;
- IO device abstraction;
- Abstract scene graph for rendering and spatial audio;
- More cross-platform code (although some parts are still Windows only).
Currently, it only compiles in Visual Studio / C++ 2012. It does not compile in previous versions due to some C++11 functionalities. I found out today that what I though was a clever forward declared enum class does not work in Visual Studio 2013, although it did in 2012.
For a quick overview of the engine, I created a brief, illustrated guide. It is available at <github.com/francogarcia/uge/ra…%20in%20a%20Nutshell.pptx> (PowerPoint) or at <github.com/francogarcia/uge-ev…E%20in%20a%20Nutshell.pdf> (PDF). This guide also details my approach to develop accessible games with UGE.
The game prototypes are proof of concept so far. However, such as Teapot Wars, they offer a cohesive example that features all of the main approaches from UGE to create a Universally-Accessible game (more details about this in the last link). Hence this topics' tittle. Although, with UGE, you may disable the graphics and have an audio only gaming experience.
I am currently evaluating it and asking for developers feedback regarding the engine. As my work is derivative of yours, I assume you are best developers to whom I could ask for feedback. Should you wish to provide feedback, it would greatly help me to improve the engine. Suggestions and criticism is always welcome.
To avoid repeating myself, this is the link to the evaluation: <gamedev.net/topic/655200-looki…ine-for-accessible-games/>.
Once again, thanks!
Franco
* Edit: after re-reading this, this sound ambiguous. I am referring to my own implementation here.
The post was edited 1 time, last by Franco Garcia ().