I like to present you my Shader-Set for 2D Sprites on which I have been working on lately and it is called NextGenSprites.
It comes with many Features and I went the extra mile to make this Shader modular, which means that you can toggle any Shader Feature to save performance.
But what are those Shader Features? At launch the Standard Shader will have:
These features have many properties and even abilities for masking!
The Standard Shader also comes in 3 Lighting Modes: Multi Lit, Single Lit and Unlit(limited features).
Furthermore you get 3 super cool FX Shaders for Sprites included:
Thanks, but I also have to mention that thanks to DoTweens superb Material support, all Shader Properties can be animated in very creative ways! I even have made a Video Tutorial on this:
I am glad that you like this! One thing I didn’t mention is, that you can also use the Shader for UI. You just need to set the Canvas Render Mode to World Space
And then on the Image Component you assign a Material with the NGS Shader.
Thanks for pointing that out. I’ll start using this package next week when I’m polishing the art for my game, it will definitely help up the ante on how appealing the art is.
A Tutorial for the popular Quixel Suite is also on the works! Furthermore I am currently working on some new Features for NGS 1.1 - I hope to show something soon
PS: The Intro you see on all NGS Videos where actually made with NGS and Unity
Late night update!
I have been experimenting with extra Sprite Layers for NGS upcoming 1.1 release:
Mixed
So far I have two additional Sprite “Layers” to the Main Sprite and as you can see on the right side, the masking can be controlled by a single image. Next step is adding scrolling to these extra Layers, this could yield some awesome effects
I am happy to announce that NextGenSprites is finally live on the AssetStore:
And with that, I am already working on NGS 1.1 new update: 1. Multi Layer Sprite with Scrolling:
This adds two additional Sprites that can also be scrolled.
No extra Draw Calls or Materials!
Multi Sprite Layer
2. Multi Channel Emission Masking with Pulse/Fade Animation
This allows you to tint your Sprite with 3 different channels individually. The 3rd channel also sports a Pulse Animation!
Multi Channel Tinting
NGS 1.1 will be submitted soon to the AssetStore.
There also new Video Tutorials coming, stay tuned!
When it comes to Sprite Animation with Normal mapping, you need indeed a Normal Map for each corresponding Animation Frame. This means that you need to make a separate Sprite-sheet for the Normal Maps.
But if you use a deformation/spline based animation like RageToolsPro, Anima2D or Puppet2D, then you can use a single Normal Map and happily pack (via Unitys sprite sheet maker) everything into a single Sprite sheet.
I am working on some Video Tutorials for this specify which should clarify everything.
First: I am working on a System for saving “Sprite and Property Collections” as Assets on your Project. This will be especially practical for Animations where you use separate Sprite Sheets for the main Sprite. I will talk about this at a later point.
Second and the most important: I have reworked and improved the Multi Sprite Layer feature! The alpha (ie transparency) channels are now supported natively which in turns mean that the Multi Layer Mask is not needed at all. With that, the Main Sprite can now also be scrolled! All this happens without any extra draw calls.
So please remember, with the next 1.1.2 release, the Multi Layer Mask will be removed from the Shader, Editor and Scripts.
1.1.2 probably won’t be live on the Asset Store before the end of next week (Submission review currently takes more than 5 business days :().
If you need these new features now - please contact me via PM with your Invoice No. and I will send you the new 1.1.2 Package when it’s finished.
I found the properties oh boy it is soooo easy now I am just swapping around my normal map all around, happily I am developing my game for pc but it is all needed for me right now.
A new question. How can I paint the same sprite’s cloths with different colors. Only tint will not save me. I think I need to add a mask layer and then tint it maybe?
Looks great! The pulse emission will help bring my sprites to life even further.
The scrolling sprites is a nice feature. Is there any kind of performance benefit to using the scrolling feature directly in the shader as opposed to scrolling the texture through script?
The MultiLayer also looks fantastic. I’m excited to try it out!
What is your estimate on 1.2’s release? (itch.io purchase here)
The Scrolling for the main Sprite is currently indeed just a convenience, but to me it seems important giving Artist such essential tools build into the shader. Regarding performance, Scrolling by the Shader is faster than by scripting but it is not really worth mentioning.
Yeah I am myself quite happy with it and it yields a lot of potential
So far I am kinda positive with a releases this Friday for itch.io customers
Added a Manager and Controller Class for Properties Collections
You can now import and export Propertie Collections directly from the Material Inspector
AssetStore release will follow ASAP!
Edit
Version 1.2 has now been submitted to the AssetStore. Now it’s a matter of waiting. In the meantime I will work on the Documentation, Tutorials and a new interactive Demo which will be included in the next release