neon-age / SmartTexture

Unity tool to pack texture assets via any custom material/shader.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

SmartTexture Asset for Unity

Modified by Neonage

  • Pack with any custom material/shader
  • Provide material properties per-texture
bandicam.2022-06-08.01-03-41-297.mp4

SmartTexture is a custom asset for Unity that allows you a channel packing workflow in the editortextures and use them in the Unity editor for a streamlined workflow. SmartTextures work as a regular 2D texture asset and you can assign it to material inspectors.

Dependency tracking is handled by SmartTexture, that means you can change input textures and the texture asset will be re-generated. The input textures are editor only dependencies, they will not be included in the build, unless they are referenced by another asset or scene.

inspector


NOTE

This package is still a Proof of Concept (POC) and it's still experimental. You can request features or submit bugs by creating new issues in the issue tab. For feature request please add "enhancement" label.


Installation

SmartTexture is a unity package and you can install it from Package Manager.

Option 1: Install package via Github.

Option 2: Clone or download this Github project and install it as a local package.

How to use

  1. Create a SmartTexture asset by clicking on Asset -> Create -> Smart Texture, or by right-clicking on the Project Window and then Create -> Smart Texture.

create

  1. An asset will be created in your project.

asset

  1. On the asset inspector you can configure input textures and texture settings for your smart texture.
  2. Hit Apply button to generate the texture with selected settings.

inspector

  1. Now you can use this texture as any regular 2D texture in your project.

assign

Acknowledgements

  • Thanks to pschraut for Texture2DArrayImporter project. I've used that project to learn a few things about ScriptedImporter and reused the code to create asset file.
  • Thanks to Aras P. for guidance and ideas on how to create this.

About

Unity tool to pack texture assets via any custom material/shader.

License:MIT License


Languages

Language:C# 85.0%Language:ShaderLab 15.0%