Mixture is a powerful node-based tool crafted in unity to generate all kinds of textures in realtime. Mixture is very flexible, easily customizable through ShaderGraph and a simple C# API, fast with it's GPU based workflow and compatible with all the render pipelines thanks to the new Custom Render Texture API.
Getting Started
Installation
The current version is compatible with Unity 2022.2, for older versions you can use previous releases.
Instructions
Mixture is available on the OpenUPM package registry, to install it in your project, follow the instructions below.
- Open the
Project Settings
and go to thePackage Manager
tab. - In the
Scoped Registry
section, click on the small+
icon to add a new scoped registry and fill the following information:
Name: Open UPM
URL: https://package.openupm.com
Scope(s): com.alelievr
- Then below the scoped registries, you need to enable
Preview Packages
(Mixture is still in preview). - Next, open the
Package Manager
window, selectMy Registries
in the top left corner and you should be able to see the Mixture package. - Click the
Install
button and you can start using Mixture :)
My Registries
in the dropdown for some reason, click on the +
icon in the top left corner of the package manager window and select Add package from Git URL
, then paste com.alelievr.mixture
and click Add
.
Note that sometimes, the package manager can be slow to update the list of available packages. In that case, you can force it by clicking the circular arrow button at the bottom of the package list.
Documentation
Here are some useful documentation links:
- Getting started guide: https://alelievr.github.io/Mixture/manual/GettingStarted.html
- Node library: https://alelievr.github.io/Mixture/manual/nodes/NodeLibraryIndex.html
- Mixture graph examples: https://alelievr.github.io/Mixture/manual/Examples.html
- Known issues: https://alelievr.github.io/Mixture/manual/KnownIssues.html
Roadmap
The roadmap is available on Trello: https://trello.com/b/2JiH2Vsp/mixture. If you have a Trello account, you can vote on cards to prioritize a feature.
Community
Discord
Join the Mixture Discord!
Feedback
To give feedback, ask a question or make a feature request, you can either use the Github Discussions or the Discord server.
Bugs are logged using the github issue system. To report a bug, simply open a new issue.
Contributions
All contributions are welcomed.
For new nodes, check out this documentation page on how to create a new shader-based node. Once you have it working, prepare a pull request against this repository.
In case you have any questions about a feature you want to develop of something you're not sure how to do, you can still create a draft pull request to discuss the implementation details.
Gallery / Cool things
You can open a Mixture graph just by double clicking any texture field in the inspector with a Mixture assigned to it.
Surface Gradient powered normal map operations.
Extract buffers (depth, normal, color or position) from the rendering of a prefab and use it directly in the graph (HDRP Only).
Mixture Variants:
Mixture.Variants-1.mp4
Earth Heightmap node:
Earthmap.node.mov
Fluid simulation: