Replies: 4 comments 2 replies
-
I gathered from the Lumberyard community that there was a discoverability issue with separate user and developer guides. Users transitioning to gem and component development overlooked the developer guide, as they were accustomed to the user guide as the engine's source of truth. This issue is somewhat mitigated in O3DE by the top level domain and the presence of header navigation. Personally, the left-side TOC is the only place I habitually look for navigation options, I forget about header links and splash page structure. I only bring this up here because it would move more content away from the user guide TOC, but I wonder if the guides should be collapsed, or site layout changed, so that more site content was visible from a given page's TOC. Browsing the welcome guide, I noticed that it jumped into engine details geared towards the developer crowd. I could see that content moving to the introductory sections of a developer guide. At the very least, it needs to be balanced with more content to get an artist or developer oriented to the engine. A primary focus of the welcome guide should be to orient all roles to the structure of the documentation and possibly provide a suggested learning approach. It should define what information will and will not be found in a particular guide. I agree that the engine programming content should be centralized compared to its current distribution, particularly away from topics within the user guide. A dilemma: some of the developer content is the only information available on functionality that artists and designers also use. Topics that might fit into this category: assets, component APIs, input, json serialization, file i/o, Ebus, datatype APIs, cvars. This could also be an opportunity to present these topics on a level appropriate for artists and designers.
I found a few items that might be considered in this discussion. I will edit this list as I can locate them.
|
Beta Was this translation helpful? Give feedback.
-
10/26/2021 - Meeting notesNew! Programming sectionWe will revamp the previous Engine core section of the User Guide and call it Programming. This section will inherit and reorganize the topics in the Engine Core section and adopt some new subsections. Example of what the Programming page's structure might look like:
Why did we decide to keep the Programming section in the User Guide?Better discoverability. It's common for some of the guides to not appear on the website when using different resolutions and window sizes. Also, there's already many guides listed in the header nav; adding another guide will cause the guides to move to the hamburger menu (three horizontal lines). Action items
There will be a bunch of other subtasks to clean up the subsections. It's a huge undertaking and should be dealt with in chunks. Split the Key Concepts pageThe purpose of the Key Concepts page is to provide a holistic view of O3DE for all audiences: artists, designers, developers, and everything in between or outside. We've identified sections in this page that need to be broadly expanded to encompass other features in O3DE or reduced and moved to an overview page in the Programming section. Action itemsIn the Key Concepts page, we'll restructure the following subsections:
Component and Gem developmentAction Item
Other action items
Summary
|
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
I'm adding my comments here. This was originally a registered issue #1092, but they want us to gather everything here :) After reading most of the parts under https://o3de.org/docs/api/ and https://o3de.org/docs/tools-ui/ there are some big gaps in lacking documentation that need some attention. If we were trying to strive for a certain level on documentation, I believe Unity has some good structure and great examples on how to reach out to different levels of information based on your day to day needs in coding, https://docs.unity3d.com/ScriptReference/index.html Sessions that should be highlighted:
The project structure in Visual Studio 2019, Thank you in advance, Sincerely, |
Beta Was this translation helpful? Give feedback.
-
This project originated from a SIG Docs and Community meeting: #15 (comment)
The goal is to discuss the proposal to restructure the O3DE Engine Programmer Guide that requires an action plan from the Documentation and Community Special Interest Group (docs-community-sig).
Users can't find information related to engine programming in the O3DE Docs. The O3DE Amazon Documentation team searched through many pages before we found engine programming docs that were supposedly missing, but were actually divided throughout the O3DE Docs. Also, the community's questions in discord are often responded with a link to existing docs.
We should begin realigning the documentation structure for engine developers because we expect more engine programming docs contributions soon. This will makes it easier for users to find docs and for contributors to author docs in a suitable place.
Considerations in the design of O3DE Docs
User roles
O3DE users' learning goals are the primary motivation for determining how to organize the O3DE Docs. There are three common user roles when using O3DE:
The artist and designer both use the O3DE Docs to learn how to use existing tools and functions in the engine to create a product. The developer uses O3DE Docs to learn how to develop those tools and functions. Documentation for a developer contains more technical detail than an artist or designer should be concerned about. To focus the learning experience for each role, the O3DE Docs should organize information for O3DE users or O3DE developers.
Design problems
Current docs structure
Engine programming information coexists with user information in different sections of the O3DE Docs.
Discussion
<to discuss>
For each of these topics:
Section name
The section dedicated to engine programming information is called "Engine Core".
Discussion
<to discuss>
Possible solution: A separate guide for engine programming topics
This solution centralizes engine programming information into a single place in the O3DE docs.
The "Engine Programmer Guide" is for developers who want to change or extend the engine's functionalities. All of the information in this guide teaches developers how to do that, specifically:
Arguments
<to discuss>
Additional possible solutions
<to discuss>
Action plan
<to discuss>
Beta Was this translation helpful? Give feedback.
All reactions