Add image.shader
property.
This commit is contained in:
@@ -61,6 +61,7 @@ namespace Cryville.Crtr.Components {
|
||||
SubmitProperty("index", new PropOp.Integer(v => Index = v));
|
||||
SubmitProperty("fit", new PropOp.Enum<FitMode>(v => Fit = v, v => (FitMode)v));
|
||||
SubmitProperty("opacity", new PropOp.Float(v => Opacity = v));
|
||||
SubmitProperty("shader", new PropOp.String(v => Shader = v));
|
||||
}
|
||||
|
||||
static Vector2[] _origuv;
|
||||
@@ -123,10 +124,23 @@ namespace Cryville.Crtr.Components {
|
||||
}
|
||||
mesh.Renderer.enabled = true;
|
||||
mesh.Renderer.material.mainTexture = frame.Frame.Texture;
|
||||
UpdateShader();
|
||||
UpdateUV();
|
||||
UpdateScale();
|
||||
UpdateZIndex();
|
||||
}
|
||||
Shader m_shader;
|
||||
public string Shader {
|
||||
set {
|
||||
m_shader = GenericResources.Shaders[value];
|
||||
UpdateShader();
|
||||
}
|
||||
}
|
||||
void UpdateShader() {
|
||||
if (!mesh.Initialized) return;
|
||||
if (m_shader == null) m_shader = GenericResources.Shaders["default"];
|
||||
mesh.Renderer.sharedMaterial.shader = m_shader;
|
||||
}
|
||||
readonly Vector2[] _uvs = new Vector2[4];
|
||||
protected virtual void UpdateUV() {
|
||||
var frame = CurrentFrame;
|
||||
|
@@ -32,6 +32,8 @@ namespace Cryville.Crtr {
|
||||
|
||||
Materials.Add("-SpriteMat", Resources.Load<Material>("Materials/SpriteMat"));
|
||||
|
||||
Shaders.Add("default", Shader.Find("Sprites/Default"));
|
||||
|
||||
loaded = true;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user