A Google Summer of Code Proposal(Boost C++)
Respected Sir, I have been studying the Boost C++ libraries.I see that there isn't any library for game development in Boost C++. I propose a new library for game development for Boost C++ under which I propose to use the pygame library of python.Make a Boost C++ analogue for pygame library of python.. *I would like to know if this can be taken as a GSoC'15 project?* Thanking You Mudit Sharma (Student,Pursuing Electronics And Communication Engg. At Delhi Technological University,Delhi,INDIA)
Hi,
games development is always a good idea but with respect to Boost, I'm not
sure it fits with the overall goal of Boost as a collections of generic C++
libraries.
Unless .... you define your project a little bit more clearly.
Pygame is certainly a cool library but just redoing it is either too big a
project for one summer or just reinventing the wheel.
Can you give use more details about what you want to achieve with a time
line and intermediary steps ?
With clear goals and milestones in mind, it could be a "why not!"
Best,
David
On Fri, Dec 19, 2014 at 10:58 AM, Mudit Sharma
Respected Sir, I have been studying the Boost C++ libraries.I see that there isn't any library for game development in Boost C++. I propose a new library for game development for Boost C++ under which I propose to use the pygame library of python.Make a Boost C++ analogue for pygame library of python.. *I would like to know if this can be taken as a GSoC'15 project?* Thanking You Mudit Sharma (Student,Pursuing Electronics And Communication Engg. At Delhi Technological University,Delhi,INDIA)
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Game development is technically a big mix of a lot of different domains. I don't believe it would be a good idea to try to provide one specific mix. Libraries like SFML shows that it is better to provide simple constructs to developers so that they have more freedom on designing the specifics of their game (otherwise they can already use a full game engine for free) However, there are some specific domain constructs that are useful to game programming and soft-real-time simulations in general. Here are some library suggestions: - Tweening library (there was a Boost.Tween library in progress but I suspect that it is abandoned) (relying on Geometry concepts?) - (Meta/Concept-based) Component System library (I belive that it is possible to build a component system which can adapt to any kind of game at low cost, a bit like MSM for state machines) Here I mean components as "an entity is a composition of component, each component type exposing domain-specific properties values for the entity". I can think of at least 3 ways to implement this which would have different tradeoffs but would all be useful and generic enough to be used in a lot of cases. I also have several implementations but nothing that can be easily made stand-alone library. Yet. - Spatial search/sorting structures/algorithms (I think there is something like that in Boost.Geometry) - Interractive simulation state solver (I remember someone asking for interest for something like this in the mailing list but no idea Here by interractive I mean that the solution will ask a user what one or several specific agents should decide to do. (this is useful for anything turn-by-turn) - Behavior Tree library; - Event Board library (centralized event dispatching, both thread-safe and not thread-safe; something like this: - Steering Behaviors library (relying on Geometry concepts?)
On Sat, Dec 20, 2014 at 12:35 PM, Klaim - Joël Lamotte
- Event Board library (centralized event dispatching, both thread-safe and not thread-safe; something like this:
Missing link: http://pastebin.com/i8zLyYFZ It is basically a centralized event dispatcher (this one relies on Signal2, so it could be an extension).
On 19 Dec 2014 at 16:28, Mudit Sharma wrote:
Respected Sir, I have been studying the Boost C++ libraries.I see that there isn't any library for game development in Boost C++. I propose a new library for game development for Boost C++ under which I propose to use the pygame library of python.Make a Boost C++ analogue for pygame library of python.. *I would like to know if this can be taken as a GSoC'15 project?*
Be aware that in 2015 Boost rules for GSoC are slightly changing: candidates who demonstrate C++ programming aptitude are now preferentially chosen over those who do not. We are still finalising the rules, but if you have previously written a 5,000-10,000 line open source C++ library that would definitely count. If you don't have that, we will be setting programming competency exams this year, and your score on those will affect your ranking relative to other candidates. Niall --- Boost C++ Libraries Google Summer of Code 2014 admin https://svn.boost.org/trac/boost/wiki/SoC2014
Like others have said, I agree that a complete game engine as one boost library would be (1) too much of a mix of everything and (2) too domain-specific for the "general-purpose" vocation of Boost. Also, I don't think that the Boost community has any intention of starting to provide libraries with graphic displays (GUI or 2D/3D graphics), which is a domain that is huge and best left to other dedicated projects (IMHO), like Qt, SDL, Sfml, OpenGL, VTK, OpenCV, etc.... However, I have an idea of one related thing that you could consider as a GSoC project. You could write a generic resource managing library, which is the kind of thing that game engines have for files, models, sound tracks, textures, etc..., where the central resource manager takes care of avoiding re-loading the same resource twice, unloads resources that are no longer need (on a per-level or per-scene basis). This is general-purpose enough for Boost, and is one of the central component of any game engine, and is a more manageable project to do in one summer. However, writing a very nice generic resource manager could be a hard task that requires very good skill in C++ generic programming.
We are still finalising the rules, but if you have previously written a 5,000-10,000 line open source C++ library that would definitely count.
Make that 20k to 50k lines ;) I'm happy to see some kind of minimum bar because GSoC has been abused a lot by people who really lack the experience to write code of sufficient quality. Cheers, Mikael.
participants (5)
-
David Bellot
-
Klaim - Joël Lamotte
-
Mikael Persson
-
Mudit Sharma
-
Niall Douglas