Skip to content

Commit 44ac5e5

Browse files
committed
Polish on some Editor docs; new diagrams with mermaid
1 parent 7123418 commit 44ac5e5

24 files changed

Lines changed: 182 additions & 108 deletions

mkdocs/docs/editor/asset-manager.md

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -54,9 +54,9 @@ title: "Asset Manager"
5454
The assets and filters are shown in the main tree view:
5555

5656
- You can multi-select and drag 'n drop them to new locations.
57-
- Double ++left-button++ an asset will preview it in the **Asset Inspector**, located in the Auxiliary window.
58-
- ++right-button++ an asset will open a context menu with additional options, such as renaming, moving to a different bank, or setting Asset Properties.
59-
- ++right-button++ an asset and selecting **Asset Properties** will open the **Asset Properties** dialog.
57+
- Double :material-mouse-left-click:++left-button++ an asset will preview it in the **Asset Inspector**, located in the Auxiliary window.
58+
- :material-mouse-right-click:++right-button++ an asset will open a context menu with additional options, such as renaming, moving to a different bank, or setting Asset Properties.
59+
- :material-mouse-right-click:++right-button++ an asset and selecting **Asset Properties** will open the **Asset Properties** dialog.
6060

6161

6262
## Banks
@@ -105,7 +105,12 @@ The library dependency must be a CMake compatible package. You must specify the
105105

106106
With your **Build Settings** determined, you can create a new build of your game by clicking the ![New Build Button](../img/editor/Build-New.png) **New Build** button.
107107

108-
![New Build Dialog](../img/editor/dlg_new_build.png)
108+
<figure>
109+
<img src="../img/editor/dlg_new_build.png" alt="Create Build Dialog">
110+
<figcaption></figcaption>
111+
</figure>
112+
113+
**Build Name**
109114

110115
Once you created a new build, it will appear in the combo box along in the "Builds" group box.
111116

mkdocs/docs/editor/index.md

Lines changed: 28 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -7,42 +7,35 @@ title: "Editor Manual"
77
<figcaption>HyEditor's default window layout.</figcaption>
88
</figure>
99

10-
<table style="border-collapse: collapse; border: none;">
11-
<tr style="border: none;">
12-
<td style="border: none; padding-right: 20px;"><strong>1️⃣. Project Explorer</strong><br>
13-
Open <em>Project</em>'s will show up here. You may have multiple <em>Project</em>'s open and browsable at once, but only one <em>Project</em> may be 'active' at a given time. All the details are provided in the <a href="projects.html">Projects</a> section.
14-
</td>
15-
<td style="border: none; padding-right: 20px;"><strong>2️⃣. Asset Manager</strong><br>
16-
The currently active <em>Project</em>'s <em>Asset Manager</em>. Each tab along the top are the major asset types handled independantly from each other. All the details are provided in the <a href="asset-manager.html">Asset Manager</a> section.
17-
</td>
18-
</tr>
19-
<tr style="border: none;">
20-
<td style="border: none; padding-right: 20px;"><strong>3️⃣. Project Tab Bar</strong><br>
21-
All currently open <em>Project Item</em>'s from the active <em>Project</em> are shown here. You can cycle between them with <code>Ctrl+Tab</code> and each item has its own Undo/Redo stack.
22-
</td>
23-
<td style="border: none; padding-right: 20px;"><strong>4️⃣. Project Item Properties</strong><br>
24-
Shows all the properties of the currently selected <em>Project Item</em> in the <em>Project Tab Bar</em>. The properties set here set are reflected in the <em>middle render window</em>.
25-
</td>
26-
</tr>
27-
<tr style="border: none;">
28-
<td style="border: none; padding-right: 20px;"><strong>5️⃣. Middle Render Window</strong><br>
29-
The currently selected <em>Project Item</em> is previewed here. The renderer used here is the same renderer (<em>HyEngine</em>) used in your game. Previews are created by simulating the same load process as well, so it's a WYSIWYG work-flow. Pan the view with <code>WASD</code> or <code>Middle Mouse</code>, and zoom with the <code>Mouse Wheel</code>.
30-
</td>
31-
<td style="border: none; padding-right: 20px;"><strong>6️⃣. Auxiliary Window</strong><br>
32-
The Auxiliary window is contextually used when needed. By default it'll display logs, but when an additional window is needed by the <em>Asset Manager</em> or the <em>Project Item Properties</em>, a new tab along the bottom will appear and be shown. Its visibility can be toggled with <code>Ctrl+Space</code>.
33-
</td>
34-
</tr>
35-
</table>
10+
<div class="grid cards" markdown>
11+
12+
- :material-numeric-1-circle:{.hyindicator}ㅤ**Project Explorer**
13+
Open Projects will show up here. You may have multiple Projects open and browsable at once, but only one Project may be 'active' at a given time. All the details are provided in the [Projects](projects.md) section.
14+
- :material-numeric-2-circle:{.hyindicator}ㅤ**Asset Manager**
15+
The currently active Project's Asset Manager. Each tab along the top are the major asset types handled independently from each other. All the details are provided in the [Asset Manager](asset-manager.md) section.
16+
- :material-numeric-3-circle:{.hyindicator}ㅤ**Project Tab Bar**
17+
All currently open [Project Items](items/index.md) from the active Project are shown here. You can cycle between them with ++ctrl+tab++ and each item has its own Undo/Redo stack.
18+
- :material-numeric-4-circle:{.hyindicator}ㅤ**Project Item Properties**
19+
Shows all the properties of the currently selected [Project Item](items/index.md) in the Project Tab Bar. The properties set here set are reflected in the middle render window.
20+
- :material-numeric-5-circle:{.hyindicator}ㅤ**Middle Render Window**
21+
The currently selected [Project Item](items/index.md) is previewed here. The renderer used here is the same renderer (HyEngine) used in your game. Previews are created by simulating the same load process as well, so it's a WYSIWYG work-flow. Pan the view with ++w++ ++a++ ++s++ ++d++ or ++middle-button++, and zoom with the Mouse Wheel :material-mouse-scroll-wheel:.
22+
- :material-numeric-6-circle:{.hyindicator}ㅤ**Auxiliary Window**
23+
The Auxiliary window is contextually used when needed. By default it'll display logs, but when an additional window is needed (like when creating [TileSets](tilesets.md)), a new tab along the bottom will appear and be shown. Its visibility can be toggled with ++ctrl+space++.
24+
25+
</div>
3626

3727
## Editor Flow
3828

39-
<figure>
40-
<img src="../img/editor_flow.png" alt="HyEditor work flow">
41-
<figcaption>Shows how each section of HyEditor works together.</figcaption>
42-
</figure>
29+
Shows how each section of HyEditor works together.
30+
31+
<div class="grid" markdown>
32+
33+
![HyEditor work flow](../img/editor_flow.png)
34+
35+
:material-numeric-1-circle:{.hyorange}Open a **Project Item** from **Project Explorer**...
36+
:material-numeric-2-circle:{.hyorange}Shows up in **Project Tab Bar**, and when selected...
37+
:material-numeric-3-circle:{.hyorange}It will be displayed in the **Project Item Properties** which...
38+
:material-numeric-4-circle:{.hyorange}May reference assets in **Asset Manager** to...
39+
:material-numeric-5-circle:{.hyorange}Show a preview in the **Middle Render Window**
4340

44-
1️⃣. Open a **Project Item** from **Project Explorer**...
45-
2️⃣. Shows up in **Project Tab Bar**, and when selected...
46-
3️⃣. It will be displayed in the **Project Item Properties** which...
47-
4️⃣. May reference assets in **Asset Manager** to...
48-
5️⃣. Show a preview in the **Middle Render Window**
41+
</div>

mkdocs/docs/editor/projects.md

Lines changed: 52 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -10,22 +10,22 @@ To create a new Project in the Project Explorer you can:
1010
- `File > New Project` from the menu
1111
- Press ++ctrl+shift+n++
1212

13+
<div class="grid" markdown>
14+
1315
<figure>
1416
<img src="../img/editor/dlg_new_project.png" alt="Create New Project Dialog">
1517
<figcaption></figcaption>
1618
</figure>
1719

18-
**Game Title** is the human readable name of your game, used on labels and titles.
19-
20-
**Code Name** will be used to create the main C++ class, and must be compliant with standard naming conventions.
21-
22-
The final **Project Location** (where all the project files will be dumped) is assembled by what's specified in the text field PLUS whether **Create game directory at location** is checked.
20+
- **Game Title** is the human readable name of your game, used on labels and titles.
21+
- **Code Name** will be used to create the main C++ class, and must be compliant with standard naming conventions.
22+
- The final **Project Location** (where all the project files will be dumped) is assembled by what's specified in the text field PLUS whether **Create game directory at location** is checked.
23+
- Within **Advanced** you can customize how the project folders (like the assets or source code) reside and what they're named. You can even specify locations outside the **Project Location**. For each entry, press **Browse...** and choose the desired *parent* location, and the relative path from the **Project Location** will be filled in. Finally enter the name of the directory itself.
24+
</div>
2325

2426
!!! note "Example Setup"
2527
If you want a common location for multiple game projects, specify that root location the text field and keep **Create game directory at location** checked.
2628

27-
Within **Advanced** you can customize how the project folders (like the assets or source code) reside and what they're named. You can even specify locations outside the **Project Location**. For each entry, press **Browse...** and choose the desired *parent* location, and the relative path from the **Project Location** will be filled in. Finally enter the name of the directory itself.
28-
2929
## Project Explorer
3030

3131
<figure>
@@ -35,17 +35,57 @@ Within **Advanced** you can customize how the project folders (like the assets o
3535

3636
<div class="grid cards" markdown>
3737

38-
- :material-numeric-1-circle:{.hyorange}ㅤAll currently open **Project**s ![Project Icon](../img/editor/Project.png) are shown in the tree view here. Nested beneath each **Project** are the prefix folders containing the **Project Items**. The currently active project is shown with the ![Project Active Icon](../img/editor/Project-Pending.png) sub-icon.
39-
- :material-numeric-2-circle:{.hyorange}ㅤYou can drag **Project Items** between entirely different game **Projects** to copy them. This will include importing any required assets into the target project.
40-
- :material-numeric-3-circle:{.hyorange}ㅤThe search box allows you to filter the visible **Project Items** in the tree view. You can also filter by item type by selecting the corresponding icon.
38+
- :material-numeric-1-circle:{.hyindicator}ㅤAll currently open **Project**s ![Project Icon](../img/editor/Project.png) are shown in the tree view here. Nested beneath each **Project** are the prefix folders containing the **Project Items**. The currently active project is shown with the ![Project Active Icon](../img/editor/Project-Pending.png) sub-icon.
39+
- :material-numeric-2-circle:{.hyindicator}ㅤYou can drag **Project Items** between entirely different game **Projects** to copy them. This will include importing any required assets into the target project.
40+
- :material-numeric-3-circle:{.hyindicator}ㅤThe search box allows you to filter the visible **Project Items** in the tree view. You can also filter by item type by selecting the corresponding icon.
4141

4242
</div>
4343

4444
## Project Settings
4545

46-
Under Development - Dialog tool meant to edit the game's .hyproj file
46+
Click the ![Project Settings Button](../img/editor/Project-Settings.png) button along the top tool bar, or :material-mouse-right-click:++right-button++ on a Project within [Project Explorer](#project-explorer) and select "![Project Settings Button](../img/editor/Project-Settings.png) Project Settings" to open the Project Settings dialog.
4747

48-
## Creating new Project Items
4948

5049

50+
<div class="grid cards" markdown>
51+
52+
<figure>
53+
<img src="../img/editor/dlg-project-settings.png" alt="Project Settings Dialog">
54+
<figcaption>Dialog tool meant to edit the game's .hyproj file</figcaption>
55+
</figure>
56+
57+
<div class="grid cards" markdown>
58+
- **Render Windows**
59+
Most games will only need one window, but if your program requires multiple windows, you can add them here. Each window can have its own Title, Resolution, resize-ability, and starting location. When accessing these windows in code, they are referenced by their order from top to bottom (0-indexed).
60+
- **Updates Per Second**
61+
Sets a fixed update rate for the game loop. Rendering may occur more frequently, but the game logic will only update at this rate. A value of 0 means it will use non-throttled, variable updating, and will match the rendering frame rate.
62+
- **Show Mouse Cursor**
63+
When the mouse cursor is over the game window, it will show the operating system's version of the mouse if this option is checked. Otherwise, the OS's mouse cursor will be hidden while over the game window.
64+
- **Number of Input Maps**
65+
Input Maps take all the actions the player can perform and assigns inputs to them. You generally set the number of input maps equal to the number of local players your game supports. Each player will have their own input map.
66+
</div>
67+
</div>
68+
69+
<div class="grid cards" markdown>
70+
- **Pixels Per Meter**
71+
Sets the scale of the physics simulation. This value defines how many pixels in the game world correspond to one meter in the physics engine. Adjusting this value can affect the feel of movement and collisions in your game.
72+
- **Gravity**
73+
Direction of the world's gravity vector, measured in meters per second squared (m/s²). Harmony's world up is positive Y.
74+
- **Use Console Window**
75+
When checked, a separate console window will open alongside your game. This is useful for debugging, as it can display log messages, errors, and other output from your game. The Size is not the resolution of the console window, but rather the number of text columns and rows it can display at once. Location is desktop coordinates like how Render Windows are positioned.
76+
</div>
77+
78+
## Creating new Project Items
79+
80+
To create a new Item you can :material-mouse-right-click:++right-button++ in the [Project Explorer](#project-explorer) on a ![Prefix Folder](../img/editor/Prefix.png) prefix folder and select `New Item > [select item]` to create an item at that location, or use one of the following methods:
81+
82+
- `File > New Item > [select item]` from the top menu
83+
- Press ++ctrl+n++, ++s++ to create a new ![New Sprite](../img/editor/Sprite-New.png) Sprite
84+
- Press ++ctrl+n++, ++m++ to create a new ![New TileMap](../img/editor/TileMap-New.png) Tile Map
85+
- Press ++ctrl+n++, ++t++ to create a new ![New Text](../img/editor/Text-New.png) Text
86+
- Press ++ctrl+n++, ++f++ to create a new ![New Particle FX](../img/editor/Particles-New.png) Particle FX
87+
- Press ++ctrl+n++, ++i++ to create a new ![New Spine](../img/editor/Spine-New.png) Spine
88+
- Press ++ctrl+n++, ++p++ to create a new ![New Prefab](../img/editor/Prefab-New.png) Prefab
89+
- Press ++ctrl+n++, ++a++ to create a new ![New Audio](../img/editor/Audio-New.png) Audio
90+
- Press ++ctrl+n++, ++e++ to create a new ![New Entity](../img/editor/Entity-New.png) Entity
5191

703 Bytes
Loading
795 Bytes
Loading
806 Bytes
Loading
1.18 KB
Loading
724 Bytes
Loading

mkdocs/docs/img/editor/Prefix.png

517 Bytes
Loading
737 Bytes
Loading

0 commit comments

Comments
 (0)