浏览代码

Fixed deleting edges

/main
damian 7 年前
当前提交
92315882
共有 2 个文件被更改,包括 92 次插入1 次删除
  1. 8
      MaterialGraphProject/Assets/UnityShaderEditor/Editor/Drawing/Presenters/MaterialGraphPresenter.cs
  2. 85
      MaterialGraphProject/GeneratedShader.shader

8
MaterialGraphProject/Assets/UnityShaderEditor/Editor/Drawing/Presenters/MaterialGraphPresenter.cs


edgePresenter.input.Disconnect(edgePresenter);
m_Elements.Remove(edgePresenter);
}
var edgeView = m_GraphView.graphElements.ToList().OfType<Edge>().FirstOrDefault(p => p.userData is IEdge && (IEdge)p.userData == change.edge);
if (edgeView != null)
{
edgeView.output.Disconnect(edgeView);
edgeView.input.Disconnect(edgeView);
m_GraphView.RemoveElement(edgeView);
}
}
public void AddNode(INode node)

85
MaterialGraphProject/GeneratedShader.shader


null
Shader "hidden/preview/Fractal_2C974170"
{
Properties
{
}
CGINCLUDE
#include "UnityCG.cginc"
void Unity_Fractal_float(float2 uv, float2 pan, float zoom, float aspect, out float result)
{
const int Iterations = 128;
float2 c = (uv - 0.5) * zoom * float2(1, aspect) - pan;
float2 v = 0;
for (int n = 0; n < Iterations && dot(v,v) < 4; n++)
{
v = float2(v.x * v.x - v.y * v.y, v.x * v.y * 2) + c;
}
result = (dot(v, v) > 4) ? (float)n / (float)Iterations : 0;
}
struct GraphVertexInput
{
float4 vertex : POSITION;
float3 normal : NORMAL;
float4 tangent : TANGENT;
float4 texcoord0 : TEXCOORD0;
float4 lightmapUV : TEXCOORD1;
UNITY_VERTEX_INPUT_INSTANCE_ID
};
struct SurfaceInputs{
half4 uv0;
};
struct SurfaceDescription{
float Fractal_2C974170_result;
};
float4 Fractal_2C974170_uv;
float4 Fractal_2C974170_pan;
float Fractal_2C974170_zoom;
float Fractal_2C974170_aspect;
GraphVertexInput PopulateVertexData(GraphVertexInput v){
return v;
}
SurfaceDescription PopulateSurfaceData(SurfaceInputs IN) {
half4 uv0 = IN.uv0;
float Fractal_2C974170_result;
Unity_Fractal_float(uv0, Fractal_2C974170_pan, Fractal_2C974170_zoom, Fractal_2C974170_aspect, Fractal_2C974170_result);
SurfaceDescription surface = (SurfaceDescription)0;
surface.Fractal_2C974170_result = Fractal_2C974170_result;
return surface;
}
ENDCG
SubShader
{
Tags { "RenderType"="Opaque" }
LOD 100
Pass
{
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
struct GraphVertexOutput
{
float4 position : POSITION;
half4 uv0 : TEXCOORD;
};
GraphVertexOutput vert (GraphVertexInput v)
{
v = PopulateVertexData(v);
GraphVertexOutput o;
o.position = UnityObjectToClipPos(v.vertex);
o.uv0 = v.texcoord0;
return o;
}
fixed4 frag (GraphVertexOutput IN) : SV_Target
{
float4 uv0 = IN.uv0;
SurfaceInputs surfaceInput = (SurfaceInputs)0;;
surfaceInput.uv0 =uv0;
SurfaceDescription surf = PopulateSurfaceData(surfaceInput);
return half4(surf.Fractal_2C974170_result, surf.Fractal_2C974170_result, surf.Fractal_2C974170_result, 1.0);
}
ENDCG
}
}
}
正在加载...
取消
保存