|
1 | | -## The DebugDraw library for the HexaEngine |
2 | | -This library is a simple 3D debug drawing library for the HexaEngine in Immediate-mode. It allows you to draw lines, rectangles, circles, and text on the screen. It is useful for debugging and prototyping. |
3 | | - |
4 | | -### Shapes: |
5 | | -- 3D Line |
6 | | -- Quad |
7 | | -- Ring |
8 | | -- Text (Coming soon) |
9 | | -- Images |
10 | | -- Boxes |
11 | | -- Spheres |
12 | | -- Planes |
13 | | -- Triangles |
14 | | -- Cylinders |
15 | | -- Cones |
16 | | -- Capsules |
17 | | -- Frustums |
18 | | -- Grids |
19 | | -- Rays |
20 | | -- Quad Billboard |
21 | | -- Custom Shapes (Any primitive topology type, including single texturing) |
22 | | - |
23 | | -Note: The library is still in development, and more shapes will be added in the future. The primitive topology types must be supported by the graphics API to be displayed correctly. |
24 | | - |
25 | | -### Supported Platforms: |
26 | | -- All platforms that support any major graphics API (OpenGL, Vulkan, DirectX, Metal, etc.) |
| 1 | +# DebugDraw Library for HexaEngine |
| 2 | + |
| 3 | +The DebugDraw library is a versatile and straightforward 3D debug drawing library designed for the HexaEngine in Immediate-mode. It provides the capability to draw various shapes and text on the screen, making it an essential tool for debugging and prototyping in 3D applications. Although it is a submodule of the HexaEngine, it can also be used as a standalone library. |
| 4 | + |
| 5 | +## Features |
| 6 | + |
| 7 | +### Shapes |
| 8 | +- **3D Line** |
| 9 | +- **Quad** |
| 10 | +- **Ring** |
| 11 | +- **Text** (Coming soon) |
| 12 | +- **Images** |
| 13 | +- **Boxes** |
| 14 | +- **Spheres** |
| 15 | +- **Planes** |
| 16 | +- **Triangles** |
| 17 | +- **Cylinders** |
| 18 | +- **Cones** |
| 19 | +- **Capsules** |
| 20 | +- **Frustums** |
| 21 | +- **Grids** |
| 22 | +- **Rays** |
| 23 | +- **Quad Billboard** |
| 24 | +- **Custom Shapes** (Supports any primitive topology type, including single texturing) |
| 25 | + |
| 26 | +> Note: The library is actively being developed, and additional shapes will be included in future updates. Ensure that the primitive topology types are supported by your graphics API for correct display. |
| 27 | +
|
| 28 | +## Supported Platforms |
| 29 | +The DebugDraw library is compatible with all major graphics APIs, including: |
| 30 | +- **OpenGL** |
| 31 | +- **Vulkan** |
| 32 | +- **DirectX** |
| 33 | +- **Metal** |
| 34 | + |
| 35 | +This wide range of support ensures that the library can be used across different platforms seamlessly. |
| 36 | + |
| 37 | +## Installation and Usage |
| 38 | +To integrate DebugDraw into your project, follow these steps: |
| 39 | + |
| 40 | +### Using NuGet Package |
| 41 | +The easiest way to add the DebugDraw library to your project is via the NuGet package. |
| 42 | + |
| 43 | +1. **Installation**: Use the NuGet Package Manager to install the `Hexa.NET.DebugDraw` package. |
| 44 | + ```sh |
| 45 | + dotnet add package Hexa.NET.DebugDraw |
| 46 | + ``` |
| 47 | +2. Initialization: Initialize the library in your application. |
| 48 | + See examples [Example](https://github.com/HexaEngine/Hexa.NET.DebugDraw/Example). |
| 49 | +4. Drawing: Use the provided functions to draw shapes and text for debugging purposes. |
| 50 | + See examples [Example](https://github.com/HexaEngine/Hexa.NET.DebugDraw/Example) |
| 51 | + |
| 52 | +## Contributing |
| 53 | + |
| 54 | +Contributions to the DebugDraw library are welcome. If you have any suggestions, bug reports, or feature requests, please submit them via the project's issue tracker or create a pull request. |
| 55 | + |
| 56 | +## License |
| 57 | + |
| 58 | +The DebugDraw library is released under the MIT License. See the [LICENSE](https://github.com/HexaEngine/Hexa.NET.DebugDraw/blob/master/LICENSE.txt) file for more details. |
0 commit comments