https://github.com/styropyr0/unity-mask-map-generator
A tool to generate Mask Maps from Metallic, AO and Smoothness maps for Unity HDRP Materials.
https://github.com/styropyr0/unity-mask-map-generator
csharp csharp-app dotnet dotnet-core image-processing mask-map unity-package unity3d
Last synced: 4 months ago
JSON representation
A tool to generate Mask Maps from Metallic, AO and Smoothness maps for Unity HDRP Materials.
- Host: GitHub
- URL: https://github.com/styropyr0/unity-mask-map-generator
- Owner: styropyr0
- License: agpl-3.0
- Created: 2025-01-11T15:56:57.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2025-01-25T09:37:34.000Z (about 1 year ago)
- Last Synced: 2025-04-12T04:54:08.923Z (11 months ago)
- Topics: csharp, csharp-app, dotnet, dotnet-core, image-processing, mask-map, unity-package, unity3d
- Language: C#
- Homepage:
- Size: 4.28 MB
- Stars: 6
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Unity Mask Map Generator
## Overview
The Unity Mask Map Generator is a C# desktop application designed to streamline the process of creating mask maps for Unity HDRP projects. This tool allows developers to easily combine different texture maps into a single mask map, optimizing their materials and improving rendering performance.
[Get it here](https://maskgen.up.railway.app)
## Features
- Import and combine texture maps: Metallic, Ambient Occlusion, Detail, and Smoothness.
- User-friendly interface with clear options and an intuitive workflow.
- "Invert" checkboxes for each texture map to provide additional control over the output.
- Efficient generation of mask maps with a single click using a highly parallel engine built on [Coroutines](https://github.com/styropyr0/Coroutines).
## Installation
The installation files are inside the Installer directory. Run the Setup.exe to install the software. You need .NET v8.0 or later to run the app.
## Usage
1. Open the Unity Mask Map Generator.
2. Import the texture maps by clicking the corresponding "Browse" buttons for Roughness, Ambient Occlusion, Detail, and Smoothness maps.
3. Use the "Invert" checkboxes if needed to invert any of the texture maps.
4. Click the "Generate" button to create the mask map.
5. The generated mask map will be saved in the specified output directory.
## Coroutines Library
This project leverages the [Coroutines for C#](https://github.com/styropyr0/Coroutines) library to accelerate image processing. Inspired by Kotlin's coroutine model, this library provides:
- Dispatcher abstraction for flexible threading (IO, Main, Default, Unconfined).
- Coroutine scopes with cancellation and timeout support.
- Parallel execution via `CoroutineBuilder` and `GlobalScope`.
- Suspension utilities for timed or conditional delays.
By integrating Coroutines, the mask generation process achieves high concurrency and responsiveness, even when processing large batches of textures.
## Screenshots


## Contribution
If you'd like to contribute to the project, please fork the repository and use a feature branch. Pull requests are warmly welcome.
## License
This project is licensed under the AGPL-3.0 License - see the [LICENSE](#) file for details.