Replies: 1 comment 1 reply
-
@bmalumphy Hi! Thanks for this proposal! In the line of the exposed requirements, there are already some repositories that can be useful, despite not being that popular:
|
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Summary
Simplicity is beautiful, but as you build a game as close to the metal as possible, inevitably complexity emerges. Organizing complexity while staying as true to simplicity as possible is a difficult balance, and many self-taught devs or those exploring the possibilities of Raylib independently may not have experience in navigating that for any system, let alone a game system. This feature request is meant to elucidate the possibilities of full game development, beyond the scope of playgrounds and single idea builds.
Proposition
We propose three improvements to the example space in the Repository, to be fulfilled by my team, Studio Momentum:
main.c
file but will instead encompass multiple (possible several) project files that compartmentalize code productively and puts multiple features on display in harmony. Examples include tilemaps with advanced collisions, advanced lighting techniques, multiple sprite architectures, etc.CMakeList.txt
that make deployment simple as well, giving folks an impression on how to build their games easily with minimal additional configuration.Expected Delivery
Proposal 1 will be contributed to effective one week after acceptance for a few examples that we already have prepared. However the others will likely heavily depend on our time relative to our commitments and development time on our own project(s). Given that, we estimate the following:
We aren't strictly speaking operating in an Agile environment, but we are iterative waterfall at worst. We also don't plan to go dark during development and will keep stakeholders informed of progress on a weekly basis.
Risks/Doubts/Unknowns
The joy of programming, often, is figuring it out on your own. We recognize that keeping examples to a minimum viable solution forces developers and engineers to think for themselves, make mistakes, learn from said mistakes, and grow. Increasing complexity of examples in this way would inevitably
spoil
the solutions to some problems that it would be productive for some developers to figure out on their own, or introduce too much to learn for someone that's just starting. This is why we commit to discuss these propositions with current contributors and owners as much as possible to ensure we maintain the philosophical ethos of the project as both an educational tool, and a practical one.There may not be an audience immediately in front of us to appreciate these examples. Most users of Raylib are hobbyists or those who are educating themselves on game and software development. They also may not immediately show interest in these larger scale examples because they aren't interested in scaling their work (yet). We believe this is not entirely universal however, and would suggest that having these examples could bring more technical developers looking for broader examples before jumping in.
We recognize that these could also be encompassed in tutorial videos/our own repos just fine, and that it may not make sense to have these in the Raylib repository itself.
Beta Was this translation helpful? Give feedback.
All reactions