FernNPR is a library for non-photorealistic rendering (NPR) in Unity. It offers a variety of NPR techniques, Character Renderering, Environmental Renderering, and Stable Diffusion!
Please note that this open source project on Github is a free version that provides basic implementation. We are developing the Pro version and will release it soon.
Feature comparison between Free version and Pro version
Feature | Free Version | Pro Version |
---|---|---|
Standard Uber Shader | Yes | Yes |
Stable Diffusion Graph | Only basic feature | Continuous update and optimization, more advanced features |
Stable Diffusion Graph - prompt generator | No | Yes |
Stable Diffusion Graph - Lora Layer | No | Yes |
ControlNet | No | Yes |
NPR Shader Graph Templete | No | Yes |
Fern Post Processing | Yes | Continuous update and optimization, more post-processing effects |
Fern Post Processing - EdgeOutline | Yes | Yes |
... | ... | ... |
Pro Version is Comming Soon, Please follow the website
- 爱发电
- Patreon (Not yet registered)
ControlNet
Prompt Generator
New UI
Shader Graph Templete
For more features of the Pro version, please go to the Wiki to view
There are some showcase.
Model From: 模之屋, Background From: GameVision Studios
FernNPR can easy get various styles of materials, including NPR and PBR.
If you want to see more examples, please visit More Example on the Wiki
Fern SD Graph is a Graph tool integrated in Unity, which can obtain the scene information of Unity and generate images using Stable Diffusion.
- Text2Img
- Img2Img
- Inpaint
- Lora
- ...
To use this tool, you need to deploy stable diffusion webui locally, and add the --api command to the COMMANDLINE_ARGS in the webui-user.bat file.
- ControlNet
- Node Optimization, more fluent, more efficient
- Lora Weight
- Scene preprocessing for ControlNet
- Timeline for video
- ...
There are some useful tool.
This tool was developed by DumoeDss.
Smooth Normals is used to solve the problem of stroke breakage due to unsmooth model normals in runtime or editor. For more information, you can check here.
Texture Baker can bake textures onto a mesh.
- Open Window -> Package Manager
- Click + Button
- Add package by name
- Add: com.unity.jobs
- Add: com.unity.nuget.newtonsoft-json
- [ Shader Tool ] Used for smart generation of shaders, customization of shader functions, and optimization of shader keywords.
- [ Volume Render ] The Volumetric Rendering series will include effects such as volumetric light, volumetric clouds, and volumetric fog.
- [ Post Processing ] The post-processing series will expand the URP build-in post-processing as much as possible and add more effects.
- [ AI ] The AI series will include Stable Diffusion Graph and ChatGPT.
For more detailed development plans, please visit Roadmap