diff --git a/.github/workflows/generate-offline-docs.yml b/.github/workflows/generate-offline-docs.yml index bf77eac..6ebd8ac 100644 --- a/.github/workflows/generate-offline-docs.yml +++ b/.github/workflows/generate-offline-docs.yml @@ -44,7 +44,7 @@ jobs: - name: Build PDF Offline Docu DebugDraw run: | cd Custom-docusaurus-prince-pdf - npx custom-docusaurus-prince-pdf -u https://docs.finalfactory.de/docs/category/final-debugdraw --output FinalDebugDraw-Offline-Documentation.pdf --category-stop --append https://docs.finalfactory.de/docs/support + npx custom-docusaurus-prince-pdf -u https://docs.finalfactory.de/docs/category/final-debug-draw --output FinalDebugDraw-Offline-Documentation.pdf --category-stop --append https://docs.finalfactory.de/docs/support - name: Upload results Tagger uses: actions/upload-artifact@v4 with: diff --git a/.obsidian/workspace.json b/.obsidian/workspace.json index 846093a..e756a95 100644 --- a/.obsidian/workspace.json +++ b/.obsidian/workspace.json @@ -16,7 +16,9 @@ "file": "docs/tagger/getting started.md", "mode": "source", "source": false - } + }, + "icon": "lucide-file", + "title": "getting started" } }, { @@ -26,11 +28,25 @@ "type": "release-notes", "state": { "currentVersion": "1.6.7" - } + }, + "icon": "lucide-file", + "title": "Release Notes 1.6.7" + } + }, + { + "id": "a1304982bfa541e3", + "type": "leaf", + "state": { + "type": "release-notes", + "state": { + "currentVersion": "1.7.4" + }, + "icon": "lucide-file", + "title": "Release Notes 1.7.4" } } ], - "currentTab": 1 + "currentTab": 2 } ], "direction": "vertical" @@ -50,7 +66,9 @@ "type": "file-explorer", "state": { "sortOrder": "alphabetical" - } + }, + "icon": "lucide-folder-closed", + "title": "Files" } }, { @@ -65,7 +83,9 @@ "collapseAll": false, "extraContext": false, "sortOrder": "alphabetical" - } + }, + "icon": "lucide-search", + "title": "Search" } }, { @@ -73,7 +93,9 @@ "type": "leaf", "state": { "type": "bookmarks", - "state": {} + "state": {}, + "icon": "lucide-bookmark", + "title": "Bookmarks" } } ] @@ -104,7 +126,9 @@ "searchQuery": "", "backlinkCollapsed": false, "unlinkedCollapsed": true - } + }, + "icon": "links-coming-in", + "title": "Backlinks for getting started" } }, { @@ -116,7 +140,9 @@ "file": "docs/tagger/getting started.md", "linksCollapsed": false, "unlinkedCollapsed": true - } + }, + "icon": "links-going-out", + "title": "Outgoing links from getting started" } }, { @@ -127,7 +153,9 @@ "state": { "sortOrder": "frequency", "useHierarchy": true - } + }, + "icon": "lucide-tags", + "title": "Tags" } }, { @@ -137,15 +165,16 @@ "type": "outline", "state": { "file": "docs/tagger/getting started.md" - } + }, + "icon": "lucide-list", + "title": "Outline of getting started" } } ] } ], "direction": "horizontal", - "width": 300, - "collapsed": true + "width": 300 }, "left-ribbon": { "hiddenItems": { @@ -157,7 +186,7 @@ "command-palette:Open command palette": false } }, - "active": "1fbf210ff32664bb", + "active": "a1304982bfa541e3", "lastOpenFiles": [ "static/img/tagger/Example2.png", "docs/tagger/examples.md", diff --git a/docs/debugdraw/colorindex.md b/docs/debugdraw/colorindex.md index 1ee1c8f..063fac7 100644 --- a/docs/debugdraw/colorindex.md +++ b/docs/debugdraw/colorindex.md @@ -1,5 +1,5 @@ --- -sidebar_position: 8 +sidebar_position: 7 sidebar_label: Color Index --- diff --git a/docs/debugdraw/debugfont.md b/docs/debugdraw/debugfont.md index b749c62..cd9d7fe 100644 --- a/docs/debugdraw/debugfont.md +++ b/docs/debugdraw/debugfont.md @@ -1,12 +1,17 @@ --- -sidebar_position: 6 +sidebar_position: 8 sidebar_label: Debug Font --- + # Debug Font Settings Final Debug Draw allows you to customize the font used for debug text through a settings file located in the Resources folder. The system uses TextMeshPro (TMP) for text rendering, requiring specific material configurations. +:::warning HDRP and TMP Overlay Font Limitation +Text elements using overlay font will not be visible in HDRP. This is a fundamental limitation of TMP in HDRP. See [Limitations](limitations.md) for more details. +::: + ## Location The debug font settings file is located at: @@ -30,13 +35,13 @@ The debug text system requires specific TMP materials for different text types: ### Billboard Text For fields labeled as "billboard", use these shaders from the package: -- `TextMeshPro/Mobile/Distance Field Billboard` -- `TextMeshPro/Mobile/Distance Field Billboard Overlay` +- `TextMeshPro/Mobile/Final Debug Draw/Distance Field Billboard` +- `TextMeshPro/Mobile/Final Debug Draw/Distance Field Billboard Overlay` ### Regular Text -For standard text fields, use these shaders from TMP: -- `TextMeshPro/Mobile/Distance Field` -- `TextMeshPro/Mobile/Distance Field Overlay` +For standard text fields, use these shaders from the package: +- `TextMeshPro/Mobile/Final Debug Draw/Distance Field` +- `TextMeshPro/Mobile/Final Debug Draw/Distance Field Overlay` ## Configuration diff --git a/docs/debugdraw/faq.md b/docs/debugdraw/faq.md index 9ffff1f..91cebf5 100644 --- a/docs/debugdraw/faq.md +++ b/docs/debugdraw/faq.md @@ -1,5 +1,5 @@ --- -sidebar_position: 20 +sidebar_position: 80 sidebar_label: FAQ --- @@ -10,3 +10,7 @@ sidebar_label: FAQ **A:** If you use batch drawing via the struct, that the struct must be created in the same frame as the drawing command. For testing you can change to the easy method and execute single draw commands. +## Why is my debug text not visible in HDRP? + +If you're using HDRP and your debug text is not visible, it's likely because you're using an overlay font material. TextMeshPro (TMP) does not support overlay font rendering in HDRP. This is a fundamental limitation of TMP, not specific to Final DebugDraw. See [Limitations](limitations.md) for more details. + diff --git a/docs/debugdraw/intro.md b/docs/debugdraw/intro.md index b983293..07e3097 100644 --- a/docs/debugdraw/intro.md +++ b/docs/debugdraw/intro.md @@ -3,6 +3,10 @@ sidebar_position: 1 sidebar_label: Intro --- +:::info +The release of Final Debug Draw may be delayed as we finalize additional features and documentation. Thank you for your patience! +::: + # Final Debug Draw Documentation ![Final Factory Logo](https://static.wixstatic.com/media/880a29_adf69d1f5217420c946012af55973e12~mv2.png) ![Final Debug Draw Logo](https://static.wixstatic.com/media/880a29_ee0e6fa7ef224dd992859e22a3fc22ae~mv2.png) diff --git a/docs/debugdraw/limitations.md b/docs/debugdraw/limitations.md index b37387d..f59ba88 100644 --- a/docs/debugdraw/limitations.md +++ b/docs/debugdraw/limitations.md @@ -2,6 +2,7 @@ id: debugdraw-limitations title: Debug Draw Limitations sidebar_label: Limitations +sidebar_position: 90 --- This page highlights key limitations and differences between Unity's built-in Debug Draw functionality and the custom Final DebugDraw asset. @@ -47,6 +48,11 @@ Final DebugDraw significantly extends these limitations: - Up to **2 million lines per frame** when using optimized job systems. - Supports debug drawing of text, with a maximum of **2,000 text elements per frame**. +## HDRP and TMP Overlay Font + +Final DebugDraw inherits the limitation from TextMeshPro (TMP) where overlay font rendering is not supported in HDRP. This means: +- Text elements using overlay font will not be visible in HDRP +- This is a fundamental limitation of TMP in HDRP, not specific to Final DebugDraw ## Recommendation diff --git a/docs/debugdraw/performance.md b/docs/debugdraw/performance.md index 2975723..93762b8 100644 --- a/docs/debugdraw/performance.md +++ b/docs/debugdraw/performance.md @@ -44,7 +44,7 @@ The test runs inside the editor in debug mode. Only Scene View window is open an | Lines (500k) | 9fps | 58fps | | Lines (1M) | --fps | 40fps | -::: info +:::info Final DebugDraw was performed via a job. diff --git a/docs/debugdraw/scripting.md b/docs/debugdraw/scripting.md index f0a1ffd..fc95efd 100644 --- a/docs/debugdraw/scripting.md +++ b/docs/debugdraw/scripting.md @@ -1,3 +1,8 @@ +--- +sidebar_position: 6 +sidebar_label: Scripting +--- + # Scripting for DebugDraw ## Introduction @@ -135,6 +140,21 @@ DebugDraw.Line(new Vector3(-1, 0, 0), new Vector3(1, 0, 0), Color.white); - Use different colors to distinguish between various debugging elements clearly. - Employ directional methods (arrows, cones, rays) to visualize vectors and directions effectively. +## Text Rendering + +DebugDraw recommends using the `com.unity.collections` package for text rendering. Due to Burst compiler and memory optimization, regular strings cannot be used. Instead, use `FixedString64Bytes`: + +```csharp +// Simple usage with string (implicit conversion) +DebugDraw.Text("Hello World", position, ColorIndex.White); + +// Performance critical usage (cached) +private FixedString64Bytes _cachedText = "Hello World"; +DebugDraw.Text(_cachedText, position, ColorIndex.White); +``` + +If you prefer not to use the Unity package, you can safely remove it. The `FixedString64Bytes` type will be available under the `FinalFactory.Utilities` namespace instead. + With DebugDraw, you can efficiently visualize your game's logic, enhancing debugging clarity and development speed. ## Draw Multiple Shapes at once. diff --git a/docs/pool/changelog.md b/docs/pool/changelog.md index 02642fa..4f53b25 100644 --- a/docs/pool/changelog.md +++ b/docs/pool/changelog.md @@ -5,6 +5,12 @@ sidebar_label: Changelog # Changelog +## 1.4 +- Library 'nucleus' update + +## 1.3 +- Library 'nucleus' update + ## 1.2 - Library 'nucleus' update diff --git a/docs/preferences/changelog.md b/docs/preferences/changelog.md index e4fd34b..199978d 100644 --- a/docs/preferences/changelog.md +++ b/docs/preferences/changelog.md @@ -5,6 +5,13 @@ sidebar_label: Changelog # Changelog + +## 1.6 +- Library 'nucleus' update + +## 1.5 +- Library 'nucleus' update + ## 1.4 - Library 'nucleus' update diff --git a/docs/tagger/changelog.md b/docs/tagger/changelog.md index 33b4e85..7e932c4 100644 --- a/docs/tagger/changelog.md +++ b/docs/tagger/changelog.md @@ -5,6 +5,12 @@ sidebar_label: Changelog # Changelog +## 3.2 +- Library 'nucleus' update +- +## 3.1 +- Library 'nucleus' update + ## 3.0 :::warning @@ -23,6 +29,9 @@ sidebar_label: Changelog - Added `FindGameObjectWithExactId` and `FindGameObjectsWithExactId` to the `TaggerSystem` class. - Added `FindGameObjectWithId` and `FindGameObjectsWithId` to the `TaggerSystem` class. +## 2.5 +- Library 'nucleus' update + ## 2.4 - Library 'nucleus' update diff --git a/docs/versioning.md b/docs/versioning.md index 5e76992..99b0ef5 100644 --- a/docs/versioning.md +++ b/docs/versioning.md @@ -1,5 +1,5 @@ --- -sidebar_position: 10 +sidebar_position: 98 sidebar_label: Asset Versioning --- diff --git a/docusaurus.config.js b/docusaurus.config.js index 5dcad47..404e831 100644 --- a/docusaurus.config.js +++ b/docusaurus.config.js @@ -150,7 +150,7 @@ const config = { }, { label: 'Final Debug Draw', - href: 'https://finalfactory.de/unity-asset-debug-draw', + href: 'https://finalfactory.de/unity-asset-debugdraw', }, ], }, diff --git a/src/components/HomepageFeatures/index.js b/src/components/HomepageFeatures/index.js index 9fd7623..cbcffd9 100644 --- a/src/components/HomepageFeatures/index.js +++ b/src/components/HomepageFeatures/index.js @@ -32,6 +32,16 @@ const FeatureList = [ Final Pool optimizes GameObject reuse in Unity, boosting performance with customizable settings and advanced profiling tools for fine-tuned control. ), + }, + { + title: 'Final Debug Draw', + Img: require('@site/static/img/Final DebugDraw.png').default, + Link: '/docs/debugdraw/intro', + description: ( + <> + Final Debug Draw provides powerful visualization tools for Unity developers, enabling clear debugging with customizable shapes and texts for enhanced development workflow with jobs, burst jobs, multithreaded support. + + ), } ]; diff --git a/static/img/Final DebugDraw.png b/static/img/Final DebugDraw.png new file mode 100644 index 0000000..bced09a Binary files /dev/null and b/static/img/Final DebugDraw.png differ