Open decryptedchaos opened 3 years ago
I think you'll find that those of us involved in creating docs and tutorials under the umbrella of the Open 3D Foundation agree with you in most respects.
The best suggestion I can make, is to file very concise, actionable issues for the types of documentation and tutorials you want to see. This project is driven by its users and contributors. The various SIGs and contributors all have priorities, and those priorities are shaped by what people ask for. If you file an issue for, say, a tutorial on an inventory system, the issue will be triaged and given a priority. The more people want that content, the higher the priority becomes. Regardless of the priority, though, there's an element of chance that some contributor will look at the issue and produce a tutorial because it is something they are interested in. The hope is, that other like minded contributors will join in and expand on those efforts.
If you'd like to propose larger initiatives, the best way to do that is to a participate in a SIG related to the topic of the initiative. If you join the O3DE Discord, scroll down the channels list, you will find a group of channels dedicated to various SIGs. You can make proposals to get agenda items on the docket for SIG meetings through those channels. Anyone is welcome to make suggestions and participate in any SIG.
I've said all the above because you put a lot of thought into this post, and unfortunately it's likely to be closed in triage because the scope is too large for a single issue. We can pick up the discussion on the ideas back in the discussion post on O3DE. To move things forward, though, filing issues for very specific documentation requests is the way to go.
Needs further discussion to be turned into a set of actionable issues across o3de.org (for docs) and o3de (for templates) and an external repo for a sample project or Gem. Please discuss with sig-docs to help coordinate.
Documentation
It must go without saying that all the features in the world (CryEngine) are only as good as their documentation and ease of implementation. I hope keeping with the open source and community driven aspect of this new project, the documentation and training is kept relatively available for the community and not pay walled behind udemy courses and the like.
I personally find that video documentation of individual systems, and while this isn't really possible for extremely in-depth topics, a full library of videos explaining the architecture of how the engine functions would be extremely helpful in getting adoption, for example, if i want to make a FPS a video that went through all the ways to accomplish the basics for O3DE, as it differs from the other engines, is going to be impressively valuable for indies
I really can't stress enough how adequate documentation is a absolute requirement.
To be more precise, ecosystem training is what is key, its how to setup the engine/project to be in-line with a goal, and this is often the hardest part to figure out with an engine.
For example, If i want to make a certain style game, and i need to accomplish this and this, knowing the ecosystem of a engine as clear and straightforward as possible is very important. as an indie, i don't want to have to digest the entire C++ API just to figure out how to do something simple like setup a score system. or setup teams.
Things that are framework type ideas for games:
For RPG
Someone Brought up the idea of using the built-in Template system for such skeletons, And this could be a very good approach, if done right, a lot of discussion needs to take place
I'm not technically requesting that all the work be done for us, what i am saying is there are concepts that are common to specific genre, having a clear vision for how these things "Should" be accomplished in a new engine from the start is incredibly valuable, like a best practice guide, for getting the ball rolling for a specific genre.
This is also why i would prefer, highly detailed walk throughs to get to a starting point over example projects, because example projects you have to reverse engineer, and hack and slash at things to get what you want out of them, it would be far more beneficial to learn how to build it from scratch in a very detailed walk through vs being handed a sample project.
Another way to think about it is, Even if I'm a average coder, it's not my logic that i need assistance with, i can muddle through my own code and debug it as needed, but were I and I'm sure most indie devs do/will get lost is implementation. It's the interchange between my logic, and the engine logic, and understanding the reasoning and design of the engine would go a long way to help one create their own logic in a way that's already in-line with the engine's
What does that mean? Well, an overview of the engine systems, what pieces of the engine typically interact to accomplish a task, Like, okay let's say I want to know how to create for example a Vehicle, But how I visualize a vehicle working and the way O3DE visualizes a vehicle working are most likely different, a blanket overview of how O3DE thinks vehicles should work is more important information than, Here's a template, article about setting up vehicles.
You could apply this ideology to almost anything. "The why? Being more important than the How?"
I'll try to update this as I think of more, my mind is on "Virtual Lunch" right now
As this is broad scale, i have proposed a ambitious targeted approach in another issue.