Welcome!

Here is the place for:

• General discussion

• Request features

• Ask questions

• Report bugs

• Showcase

Give feedbacks, share you made with Shader Weaver and help Shader Weaver be better!

0
Not a bug

Rendering issue over UI elements

Mark Tangelo 6 years ago updated by jackielo 6 years ago 2

The big red button had a ShaderWeaver effect on it. As you can see, unfortunately the button's UI object is rendered above EVERYTHING, even 3D objects that are rendered in a different camera.

How can I fix this?

It looks like a bug in the shader. Is there a possible patch for that?


Thank you very much.


Image 11

0
Fixed

Errors on version 1.3.0

Mark Gemmell 6 years ago updated by jackielo 6 years ago 3

When I open the ShaderWeaver window (v 1.3.0), having updated from the previous version, in Unity 2017.1.0f3, I get an error.


This is after deleting the temp and library folders in my project and all assets being re-imported.


The error is 
KeyNotFoundException: The given key was not present in the dictionary.
System.Collections.Generic.Dictionary`2[System.String,UnityEngine.Shader].get_Item (System.String key) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Collections.Generic/Dictionary.cs:150)
ShaderWeaver.SWEditorUI.GetShader (System.String name) (at Assets/Tools/ShaderWeaver/Plugin/Scripts/Editor/EditorCommon/SWEditorUI.cs:112)
ShaderWeaver.SWWindowLayoutV.OnGUI () (at Assets/Tools/ShaderWeaver/Plugin/Scripts/Editor/Window/SWWindowLayoutV.cs:238)
ShaderWeaver.SWWindowMain.OnGUI () (at Assets/Tools/ShaderWeaver/Plugin/Scripts/Editor/Window/SWWindowMain.cs:283)
System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:222)
Rethrow as TargetInvocationException: Exception has been thrown by the target of an invocation.
System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:232)
System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Reflection/MethodBase.cs:115)
UnityEditor.HostView.Invoke (System.String methodName, System.Object obj) (at C:/buildslave/unity/build/Editor/Mono/HostView.cs:272)
UnityEditor.HostView.Invoke (System.String methodName) (at C:/buildslave/unity/build/Editor/Mono/HostView.cs:265)
UnityEditor.HostView.InvokeOnGUI (Rect onGUIPosition) (at C:/buildslave/unity/build/Editor/Mono/HostView.cs:232)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)


0
Answered

UI Version of example shaders

Havoc 7 years ago updated 7 years ago 5

Hello Jackie, 


I am trying to make a UI version of one the example shader (the Dissolve one). I saw in one of the previous posts in this forum that the only thing that we had to do was switch Shader Type to UI, however that has not worked for me.


How can I achieve this?


Thank you

0
Completed

Android 5.1 device - performance?

o greil 7 years ago updated by jackielo 6 years ago 9

Hey there - I just created a energy glow effect shader and when testing it on an older Android 5.1 mobile phone - the effect - which is put on several cards with the same material - first seems to work fine, but after a every minute the effect gets more and more choppy - till I have a total slide show and also more and more less detailed? I am using a normal lightning effect - as in your example. Any ideas what can cause this behavior?


Thanks,

Oliver

0
Answered

Mobile graphic target

Star 7 years ago updated 7 years ago 4

Hello.

Which graphic target is good / tested for mobile?


- iOS : OpenGL ES 2.0 vs Metal

- Android : OpenGL ES 2.0 vs 3.0

- Common : Gamma vs Linear

0
Answered

How to enhance effect quality?

o greil 7 years ago updated by jackielo 7 years ago 2

Hey there...


is there a possiblity to make the effect with higher quality? e.g. if I look at the sword electric effect. When using it on a card e.g. 600x900 pixels - I can see that the effect has "stairs" or it looks a bit blocky (not sure how to explain - but I think you know what I mean). How could I make it of higher resplution so that the effect looks more smooth? Would I need a more detailed Flame texture or what are my options?

0
Answered

Dynamic Effect

o greil 7 years ago updated by jackielo 7 years ago 6

Hey there,


I am trying out Shader Weaver and see if I can use it for my project - now from the tutorials the stuff is clear, however I don't need an effect for a specific card, rather I want global effects for cards.


E.g. enchanting  a card would give a electric glow around etc. Since in your tutorials you are always using a base texture (the card itself) - I wonder if i could only make an effect based on the size of the card but without any base image, which I could then apply to all cards and enable in case of enchantment?


Do you have any guidance on how to do this or what would be the most performant way to do this?


Thanks a lot,

Oliver

0
Declined

Can Interact and work with TextMeshPro Shaders (SDF Sprite & Shapes)

keyone 7 years ago updated by jackielo 7 years ago 1
Youtube video
0
Answered

RunTime

gianluca 7 years ago updated by jackielo 7 years ago 3

Hi, I would be interested in
his plugin for a project. But I need the plugin to run at runtime. I
already have a visual node system I ask if it would be possible to make
changes (on our part) to make it run at runtime and, if you, if the work
would be long but mostly complex

Answer
jackielo 7 years ago

Sorry, as far as I know. It is almost impossible to do this completely on device at runtime.

Shader Weaver creates materials, textures,shaders.

For materials and textures , you can create and manage them at runtime.

For shader, Unity used to have ways to create shader from text at runtime,but they are obsoleted.You need a cloud running Unity editor to do Shader compilation and deliver it in  assetbundle.


The whole work will take several month and need a cloud/server.

0
Completed

Several Feedback (RenderType/ShaderPath/Root Image)

pthongsari 7 years ago updated by jackielo 7 years ago 2

Hello,


Thank you for developing the tools, It greatly help reducing the time we need to develop the same result without ShaderWeaver. :)
After using ShaderWeaver in a card game production for around two months, we came up with several suggestions and feedbacks that should help actual production.


Here are suggestions based on ShaderWeaver version 1.2.1c (I see that we now have 1.2.1d so I believe the bug that I encounter should be addressed and fixed, I will create additional ticket if I found any bug in newer version.)


1. Add "Opaque" as optional RenderType. The game has planned for Mobile development and currently use 3D Card model to create round edge in PC version. Thus, there is no need to use Transparent type shader in our project.
Having option such as Opaque alongside TransparentCutOut and Transparent should also help with performance on both PC and Mobile.


2. Add subfolder for ShaderWeaver. We are currently creating more than hundreds of unique shaders with ShaderWeaver. The ShaderWeaver will always have shader path as "ShaderWeaver/Example01”. However, when the number exceed 50. It became harder to navigate. I believe that by adding a tag that create subfolder inside shader path. It will help organize those shader easier. In my Opinion, one subfolder layer should be more than enough but more layer won't hurt.
For example, I have 2 Deck of Card the use Shader Weaver to create special effect, each deck has 100 cards. I can add tag "Deck01A" to first 50 shader and the shader path should become "ShaderWeaver/Deck01/Example01” and the next batch as "Deck01B" for another 50 and so on. I also believe it should help with ShaderWeaver example shader to be categorized as "Example". It should also help when we creating shader for UI or Sprite Character.
In addition, if the feature is implemented I believe having mass Shader Path editor should help convert existing shaders. I do not mind to put those shader in folder manually though.


3. Add option not to loop root image. In our production pipeline, we use card background as root directly with clamped texture setting. We then use UV node to distort background image in root. Unfortunately, it doesn't work well with Loop option on. We worked around by creating additional image node and use Exclude root. but at version 1.2.1c exclude root sometime broke the shader.
 option


4. Add option for Multiply blending mode not to multiply source's alpha channel. When we multiply using image that has alpha map, the final result also having source's alpha channel multiply into it. This happened in our production because we're sharing multiple textures across the multiple shaders.
For example, we use tileable leaves texture that has alpha channel to blend in image with default blend option, this has no issue. However, when we use the same texture to multiply (with either multiply or multiply intersect), it resulting in weird holes in final result.