Skip to content

Commit ad15882

Browse files
committed
add Standard Assets
1 parent 74fd1db commit ad15882

File tree

243 files changed

+18279
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

243 files changed

+18279
-0
lines changed

Unity/SCANsat/Assets/Standard Assets/Effects.meta

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Unity/SCANsat/Assets/Standard Assets/Effects/ImageEffects.meta

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Unity/SCANsat/Assets/Standard Assets/Effects/ImageEffects/Scripts.meta

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 176 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,176 @@
1+
using UnityEngine;
2+
3+
namespace UnityStandardAssets.ImageEffects
4+
{
5+
public enum AAMode
6+
{
7+
FXAA2 = 0,
8+
FXAA3Console = 1,
9+
FXAA1PresetA = 2,
10+
FXAA1PresetB = 3,
11+
NFAA = 4,
12+
SSAA = 5,
13+
DLAA = 6,
14+
}
15+
16+
[ExecuteInEditMode]
17+
[RequireComponent(typeof (Camera))]
18+
[AddComponentMenu("Image Effects/Other/Antialiasing")]
19+
public class Antialiasing : PostEffectsBase
20+
{
21+
public AAMode mode = AAMode.FXAA3Console;
22+
23+
public bool showGeneratedNormals = false;
24+
public float offsetScale = 0.2f;
25+
public float blurRadius = 18.0f;
26+
27+
public float edgeThresholdMin = 0.05f;
28+
public float edgeThreshold = 0.2f;
29+
public float edgeSharpness = 4.0f;
30+
31+
public bool dlaaSharp = false;
32+
33+
public Shader ssaaShader;
34+
private Material ssaa;
35+
public Shader dlaaShader;
36+
private Material dlaa;
37+
public Shader nfaaShader;
38+
private Material nfaa;
39+
public Shader shaderFXAAPreset2;
40+
private Material materialFXAAPreset2;
41+
public Shader shaderFXAAPreset3;
42+
private Material materialFXAAPreset3;
43+
public Shader shaderFXAAII;
44+
private Material materialFXAAII;
45+
public Shader shaderFXAAIII;
46+
private Material materialFXAAIII;
47+
48+
49+
public Material CurrentAAMaterial()
50+
{
51+
Material returnValue = null;
52+
53+
switch (mode)
54+
{
55+
case AAMode.FXAA3Console:
56+
returnValue = materialFXAAIII;
57+
break;
58+
case AAMode.FXAA2:
59+
returnValue = materialFXAAII;
60+
break;
61+
case AAMode.FXAA1PresetA:
62+
returnValue = materialFXAAPreset2;
63+
break;
64+
case AAMode.FXAA1PresetB:
65+
returnValue = materialFXAAPreset3;
66+
break;
67+
case AAMode.NFAA:
68+
returnValue = nfaa;
69+
break;
70+
case AAMode.SSAA:
71+
returnValue = ssaa;
72+
break;
73+
case AAMode.DLAA:
74+
returnValue = dlaa;
75+
break;
76+
default:
77+
returnValue = null;
78+
break;
79+
}
80+
81+
return returnValue;
82+
}
83+
84+
85+
public override bool CheckResources()
86+
{
87+
CheckSupport(false);
88+
89+
materialFXAAPreset2 = CreateMaterial(shaderFXAAPreset2, materialFXAAPreset2);
90+
materialFXAAPreset3 = CreateMaterial(shaderFXAAPreset3, materialFXAAPreset3);
91+
materialFXAAII = CreateMaterial(shaderFXAAII, materialFXAAII);
92+
materialFXAAIII = CreateMaterial(shaderFXAAIII, materialFXAAIII);
93+
nfaa = CreateMaterial(nfaaShader, nfaa);
94+
ssaa = CreateMaterial(ssaaShader, ssaa);
95+
dlaa = CreateMaterial(dlaaShader, dlaa);
96+
97+
if (!ssaaShader.isSupported)
98+
{
99+
NotSupported();
100+
ReportAutoDisable();
101+
}
102+
103+
return isSupported;
104+
}
105+
106+
107+
public void OnRenderImage(RenderTexture source, RenderTexture destination)
108+
{
109+
if (CheckResources() == false)
110+
{
111+
Graphics.Blit(source, destination);
112+
return;
113+
}
114+
115+
// ----------------------------------------------------------------
116+
// FXAA antialiasing modes
117+
118+
if (mode == AAMode.FXAA3Console && (materialFXAAIII != null))
119+
{
120+
materialFXAAIII.SetFloat("_EdgeThresholdMin", edgeThresholdMin);
121+
materialFXAAIII.SetFloat("_EdgeThreshold", edgeThreshold);
122+
materialFXAAIII.SetFloat("_EdgeSharpness", edgeSharpness);
123+
124+
Graphics.Blit(source, destination, materialFXAAIII);
125+
}
126+
else if (mode == AAMode.FXAA1PresetB && (materialFXAAPreset3 != null))
127+
{
128+
Graphics.Blit(source, destination, materialFXAAPreset3);
129+
}
130+
else if (mode == AAMode.FXAA1PresetA && materialFXAAPreset2 != null)
131+
{
132+
source.anisoLevel = 4;
133+
Graphics.Blit(source, destination, materialFXAAPreset2);
134+
source.anisoLevel = 0;
135+
}
136+
else if (mode == AAMode.FXAA2 && materialFXAAII != null)
137+
{
138+
Graphics.Blit(source, destination, materialFXAAII);
139+
}
140+
else if (mode == AAMode.SSAA && ssaa != null)
141+
{
142+
// ----------------------------------------------------------------
143+
// SSAA antialiasing
144+
Graphics.Blit(source, destination, ssaa);
145+
}
146+
else if (mode == AAMode.DLAA && dlaa != null)
147+
{
148+
// ----------------------------------------------------------------
149+
// DLAA antialiasing
150+
151+
source.anisoLevel = 0;
152+
RenderTexture interim = RenderTexture.GetTemporary(source.width, source.height);
153+
Graphics.Blit(source, interim, dlaa, 0);
154+
Graphics.Blit(interim, destination, dlaa, dlaaSharp ? 2 : 1);
155+
RenderTexture.ReleaseTemporary(interim);
156+
}
157+
else if (mode == AAMode.NFAA && nfaa != null)
158+
{
159+
// ----------------------------------------------------------------
160+
// nfaa antialiasing
161+
162+
source.anisoLevel = 0;
163+
164+
nfaa.SetFloat("_OffsetScale", offsetScale);
165+
nfaa.SetFloat("_BlurRadius", blurRadius);
166+
167+
Graphics.Blit(source, destination, nfaa, showGeneratedNormals ? 1 : 0);
168+
}
169+
else
170+
{
171+
// none of the AA is supported, fallback to a simple blit
172+
Graphics.Blit(source, destination);
173+
}
174+
}
175+
}
176+
}

Unity/SCANsat/Assets/Standard Assets/Effects/ImageEffects/Scripts/Antialiasing.cs.meta

Lines changed: 16 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)