Update README.md

This commit is contained in:
Arnaud Jamin
2023-10-16 23:39:30 -04:00
committed by GitHub
parent 166f105684
commit ea8ff574b0
+55 -25
View File
@@ -31,23 +31,34 @@ Displays the gameplay abilities of the selected actor.
### Actions ### Actions
Displays the state of Input Action. Displays the state of Input Action.
![image](https://github.com/arnaud-jamin/Cog/assets/13844285/6323e78b-2ee4-43e2-bec6-19aa15716d2c) ![Actions](https://github.com/arnaud-jamin/Cog/assets/13844285/6323e78b-2ee4-43e2-bec6-19aa15716d2c)
- Can be used to inject inputs to help debugging. - Can be used to inject inputs to help debugging.
- The display input action are read from a Input Mapping Context defined in a Data Asset. - The display input action are read from a Input Mapping Context defined in a Data Asset.
### Attributes ### Attributes
Displays the gameplay attributes of the selected actor. Displays the gameplay attributes of the selected actor.
![image](https://github.com/arnaud-jamin/Cog/assets/13844285/a6329ef1-f775-4e6e-9581-6389f9f4b39c) ![Attributes](https://github.com/arnaud-jamin/Cog/assets/13844285/a6329ef1-f775-4e6e-9581-6389f9f4b39c)
- Attributes can be sorted by name, category or attribute set. - Attributes can be sorted by name, category or attribute set.
- Attributes with the Current value greater than the Base value are displayed in green. - Attributes with the Current value greater than the Base value are displayed in green.
- Attributes with the Current value lower than the Base value are displayed in red. - Attributes with the Current value lower than the Base value are displayed in red.
- Use the options 'Show Only Modified' to only show the attributes that have modifiers. - Use the options 'Show Only Modified' to only show the attributes that have modifiers.
### Behavior Tree
Displays the behavior tree of the selected actor.
![Behavior Tree](https://github.com/arnaud-jamin/Cog/assets/13844285/2e3ab30f-414a-497d-be08-605e1d299d23)
### Blackboard
Displays the blackboard of the selected actor.
![Blackboard](https://github.com/arnaud-jamin/Cog/assets/13844285/649d46d5-386c-4990-9f45-e4eb95a6b81a)
### Cheats ### Cheats
Used to apply cheats to the selected actor. Used to apply cheats to the selected actor.
![image](https://github.com/arnaud-jamin/Cog/assets/13844285/b7b89635-7924-49b7-98c0-311199947dfc) ![Cheats](https://github.com/arnaud-jamin/Cog/assets/13844285/b7b89635-7924-49b7-98c0-311199947dfc)
- The cheats are gameplay effects configured in a data asset. - The cheats are gameplay effects configured in a data asset.
- Key modifiers can be used to change which actor should be affected by the cheat: - Key modifiers can be used to change which actor should be affected by the cheat:
- [CTRL] apply the cheat to the controlled actor - [CTRL] apply the cheat to the controlled actor
@@ -57,7 +68,7 @@ Used to apply cheats to the selected actor.
### Collisions ### Collisions
Used to inspect collisions by performing a collision query with the selected channels. Used to inspect collisions by performing a collision query with the selected channels.
![image](https://github.com/arnaud-jamin/Cog/assets/13844285/ccee855b-b33b-4dfc-ba14-dff87e1150cf) ![Collisions](https://github.com/arnaud-jamin/Cog/assets/13844285/ccee855b-b33b-4dfc-ba14-dff87e1150cf)
- The query can be configured in the options. - The query can be configured in the options.
- The displayed collision channels can be configured in a Data Asset. - The displayed collision channels can be configured in a Data Asset.
- It can be used to better understand what object collisions are blocking a raycast. - It can be used to better understand what object collisions are blocking a raycast.
@@ -65,24 +76,25 @@ Used to inspect collisions by performing a collision query with the selected cha
### Debug Settings ### Debug Settings
Used to tweak how the debug display is drawn. Used to tweak how the debug display is drawn.
![image](https://github.com/arnaud-jamin/Cog/assets/13844285/e55c8d07-133e-48ab-a974-ed076f3d4a58) ![Debug Settings](https://github.com/arnaud-jamin/Cog/assets/13844285/e55c8d07-133e-48ab-a974-ed076f3d4a58)
### Effects ### Effects
Displays the gameplay effects of the selected actor. Displays the gameplay effects of the selected actor.
![image](https://github.com/arnaud-jamin/Cog/assets/13844285/4fffa8fe-bd93-44bc-8ca5-27ae81f5da0c) ![Effects](https://github.com/arnaud-jamin/Cog/assets/13844285/4fffa8fe-bd93-44bc-8ca5-27ae81f5da0c)
- Mouse over an effect to see its details such as its modifiers, the gameplay tags it grants, the remaining time, etc. - Mouse over an effect to see its details such as its modifiers, the gameplay tags it grants, the remaining time, etc.
### Gamepad ### Gamepad
Display the state of the gamepad Display the state of the gamepad
![image](https://github.com/arnaud-jamin/Cog/assets/13844285/734dd08a-5b9f-44cf-8d24-9bf257f08ec6) ![Gamepad](https://github.com/arnaud-jamin/Cog/assets/13844285/734dd08a-5b9f-44cf-8d24-9bf257f08ec6)
- Can be displayed as an overlay
- Can be used to inject inputs to help debugging, as loosing window focus when breaking in the code doesn't affect the state of injected inputs unlike real inputs. - Can be used to inject inputs to help debugging, as loosing window focus when breaking in the code doesn't affect the state of injected inputs unlike real inputs.
### Inspector ### Inspector
Used to inspect and modify an Object properties Used to inspect and modify an Object properties
![image](https://github.com/arnaud-jamin/Cog/assets/13844285/e6ed8841-40cc-4491-b46f-517e6cd7f296) ![Inspector](https://github.com/arnaud-jamin/Cog/assets/13844285/e6ed8841-40cc-4491-b46f-517e6cd7f296)
- Inspect the selected actor by default - Inspect the selected actor by default
- Favorites can be added with a custom function defining what happens when the user press the Apply button (typically this can be used to modify and apply the Game User Settings) - Favorites can be added with a custom function defining what happens when the user press the Apply button (typically this can be used to modify and apply the Game User Settings)
- Manage a history of inspected objects. - Manage a history of inspected objects.
@@ -90,7 +102,7 @@ Used to inspect and modify an Object properties
### Log Categories ### Log Categories
Can be used to activate and deactivate log categories Can be used to activate and deactivate log categories
![image](https://github.com/arnaud-jamin/Cog/assets/13844285/7ced2751-c3bc-43a3-9280-d11a34bf0482) ![Log Categories](https://github.com/arnaud-jamin/Cog/assets/13844285/7ced2751-c3bc-43a3-9280-d11a34bf0482)
- Activating a log category set its verbosity to VeryVerbose. - Activating a log category set its verbosity to VeryVerbose.
- Deactivating a log category set its verbosity to Warning. - Deactivating a log category set its verbosity to Warning.
- The detailed verbosity of each log category can be shown by using the Option menu. - The detailed verbosity of each log category can be shown by using the Option menu.
@@ -100,39 +112,57 @@ Can be used to activate and deactivate log categories
### Metric ### Metric
Gather various values sent by the selected actor and compte their rate per second. This is typically useful to compute the damage dealt or received per second. Gather various values sent by the selected actor and compte their rate per second. This is typically useful to compute the damage dealt or received per second.
![image](https://github.com/arnaud-jamin/Cog/assets/13844285/64d3cb7c-8731-4897-9ef9-b0868148ebe2) ![Metric](https://github.com/arnaud-jamin/Cog/assets/13844285/64d3cb7c-8731-4897-9ef9-b0868148ebe2)
### Net Emulation ### Net Emulation
Used to configure the network emulation Used to configure the network emulation
![image](https://github.com/arnaud-jamin/Cog/assets/13844285/97103f15-fae8-4fe9-8189-8fdbcab5cb20) ![Net Emulation](https://github.com/arnaud-jamin/Cog/assets/13844285/97103f15-fae8-4fe9-8189-8fdbcab5cb20)
### Output Log ### Output Log
Display the output log based on each log categories verbosity. Display the output log based on each log categories verbosity.
![image](https://github.com/arnaud-jamin/Cog/assets/13844285/71b1de06-a3d0-4e4d-83f3-c3f482c0d8f4) ![Output Log](https://github.com/arnaud-jamin/Cog/assets/13844285/71b1de06-a3d0-4e4d-83f3-c3f482c0d8f4)
- The verbosity of each log category can be configured in the 'Log Categories' window. - The verbosity of each log category can be configured in the 'Log Categories' window.
### Pools ### Pools
Displays attributes of the selected actor as pools. Displays attributes of the selected actor as pools.
![image](https://github.com/arnaud-jamin/Cog/assets/13844285/7bb1aadd-9c0b-439f-b263-5ed842d0cd69) ![Pools](https://github.com/arnaud-jamin/Cog/assets/13844285/7bb1aadd-9c0b-439f-b263-5ed842d0cd69)
- The pools can be configured in a data asset. - The pools can be configured in a data asset.
### Plots ### Plots
Plots values overtime. When applicable, only the values of the selected actor are displayed. Plots values overtime. When applicable, only the values of the selected actor are displayed.
![image](https://github.com/arnaud-jamin/Cog/assets/13844285/bc134e95-4887-4245-b34d-c030464f644a) ![Plots](https://github.com/arnaud-jamin/Cog/assets/13844285/bc134e95-4887-4245-b34d-c030464f644a)
- Handle both float values and discrete events.
- Here is an exemple to push a float values:
```cpp
#if ENABLE_COG
FCogDebugPlot::PlotValue(Character, "Speed", Velocity.Length());
#endif //ENABLE_COG
```
- Here is an exemple to push an event:
```cpp
#if ENABLE_COG
FCogDebugPlot::PlotEvent(this, "Effects", GameplayEffectSpec.Def->GetFName(), GameplayEffectSpec.GetDuration() == 0.0f)
.AddParam("Name", AbilitySystemComponent->CleanupName(GetNameSafe(GameplayEffectSpec.Def)))
.AddParam("Effect Instigator", GetNameSafe(GameplayEffectSpec.GetEffectContext().GetInstigator()))
.AddParam("Effect Level", GameplayEffectSpec.GetLevel())
.AddParam("Effect Duration", GameplayEffectSpec.GetDuration());
#endif //ENABLE_COG
```
### Scalability ### Scalability
Used to configure the rendering quality. Used to configure the rendering quality.
![image](https://github.com/arnaud-jamin/Cog/assets/13844285/4866b54c-5efa-4efa-a841-74ac8e1713c0) ![Scalability](https://github.com/arnaud-jamin/Cog/assets/13844285/4866b54c-5efa-4efa-a841-74ac8e1713c0)
### Skeleton ### Skeleton
Display the bone hierarchy and the skeleton debug draw of the selected actor if it has a Skeletal Mesh. Display the bone hierarchy and the skeleton debug draw of the selected actor if it has a Skeletal Mesh.
![image](https://github.com/arnaud-jamin/Cog/assets/13844285/19648e3d-70dc-45bc-940d-e53eb9a99871) ![Skeleton](https://github.com/arnaud-jamin/Cog/assets/13844285/19648e3d-70dc-45bc-940d-e53eb9a99871)
- Mouse over a bone to highlight it. - Mouse over a bone to highlight it.
- Right click a bone to access more debug display. - Right click a bone to access more debug display.
- Use the [Ctrl] key to toggle the bone debug draw recursively. - Use the [Ctrl] key to toggle the bone debug draw recursively.
@@ -140,42 +170,42 @@ Display the bone hierarchy and the skeleton debug draw of the selected actor if
### Selection ### Selection
Used to select an actor either by picking an actor in the world or by selecting an actor in the actor list. Used to select an actor either by picking an actor in the world or by selecting an actor in the actor list.
![image](https://github.com/arnaud-jamin/Cog/assets/13844285/67cf9019-85c0-449f-88bf-0fc4841f8795) ![Selection](https://github.com/arnaud-jamin/Cog/assets/13844285/67cf9019-85c0-449f-88bf-0fc4841f8795)
- The actor list can be filtered by actor type (Actor, Character, etc). - The actor list can be filtered by actor type (Actor, Character, etc).
- The current selection is used by various debug windows to filter out their content. - The current selection is used by various debug windows to filter out their content.
### Settings ### Settings
Configure the settings of Cog Windows. Configure the settings of Cog Windows.
![image](https://github.com/arnaud-jamin/Cog/assets/13844285/edd6a701-9a50-41fa-b7df-90fd11cc2937) ![Settings](https://github.com/arnaud-jamin/Cog/assets/13844285/edd6a701-9a50-41fa-b7df-90fd11cc2937)
- Can configure the input key to toggle the input focus between the game and imgui - Can configure the input key to toggle the input focus between the game and imgui
- Can change the DPI Scaling - Can change the DPI Scaling
### Spawn ### Spawn
Used to spawn new actors in the world. The spawn list can be configured in a Data Asset. Used to spawn new actors in the world. The spawn list can be configured in a Data Asset.
![image](https://github.com/arnaud-jamin/Cog/assets/13844285/b37f9307-5fd5-4ea5-9652-c265a8f63e32) ![Spawn](https://github.com/arnaud-jamin/Cog/assets/13844285/b37f9307-5fd5-4ea5-9652-c265a8f63e32)
### Stats ### Stats
Displays engine stats such as FPS, Ping, Packet Loss. Displays engine stats such as FPS, Ping, Packet Loss.
![image](https://github.com/arnaud-jamin/Cog/assets/13844285/e394ec7b-02fa-4b09-879b-90c82bd542ef) ![Stats](https://github.com/arnaud-jamin/Cog/assets/13844285/e394ec7b-02fa-4b09-879b-90c82bd542ef)
### Tags ### Tags
Displays the gameplay tags of the selected actor. Displays the gameplay tags of the selected actor.
![image](https://github.com/arnaud-jamin/Cog/assets/13844285/3f14be3f-77f2-4d59-887d-1245fc97ed6a) ![Tags](https://github.com/arnaud-jamin/Cog/assets/13844285/3f14be3f-77f2-4d59-887d-1245fc97ed6a)
### Time Scale ### Time Scale
Used to change the game global time scale. Used to change the game global time scale.
![image](https://github.com/arnaud-jamin/Cog/assets/13844285/d19198c5-37dd-400d-a09f-7a5077eb2511) ![Time Scale](https://github.com/arnaud-jamin/Cog/assets/13844285/d19198c5-37dd-400d-a09f-7a5077eb2511)
- If changed on a client the time scale is also modified on the game server, and replicated to the other clients. - If changed on a client the time scale is also modified on the game server, and replicated to the other clients.
### Tweaks ### Tweaks
Used to apply tweaks to all the spawned actors Used to apply tweaks to all the spawned actors
![image](https://github.com/arnaud-jamin/Cog/assets/13844285/e8a5cdd5-908d-4ae3-901a-48addd4ce353) ![Tweaks](https://github.com/arnaud-jamin/Cog/assets/13844285/e8a5cdd5-908d-4ae3-901a-48addd4ce353)
- The tweaks are used to test various gameplay settings by actor category - The tweaks are used to test various gameplay settings by actor category
- The tweaks can be configured in a data asset. - The tweaks can be configured in a data asset.
@@ -183,11 +213,11 @@ Used to apply tweaks to all the spawned actors
Cog provides C++ and Blueprint functions to log and debug draw within Log Categories. Cog provides C++ and Blueprint functions to log and debug draw within Log Categories.
![image](https://github.com/arnaud-jamin/Cog/assets/13844285/cc0ba4a5-7fa6-44a8-b737-f523bdf94321) ![Log Categories](https://github.com/arnaud-jamin/Cog/assets/13844285/cc0ba4a5-7fa6-44a8-b737-f523bdf94321)
Log and debug draw functions can be filtered by the selected actor. Log and debug draw functions can be filtered by the selected actor.
![image](https://github.com/arnaud-jamin/Cog/assets/13844285/a6f1329e-d49e-410f-8a70-4613aafabb5a) ![Log and debug draw functions](https://github.com/arnaud-jamin/Cog/assets/13844285/a6f1329e-d49e-410f-8a70-4613aafabb5a)
## Setup ## Setup