去掉obi,使用自写绳索
This commit is contained in:
@@ -1,8 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 63dbef444f58449a5b4786567ee38655
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -1,51 +0,0 @@
|
||||
// Upgrade NOTE: upgraded instancing buffer 'Props' to new syntax.
|
||||
|
||||
Shader "Standard (Vertex Colors)" {
|
||||
Properties {
|
||||
_Color ("Color", Color) = (1,1,1,1)
|
||||
_MainTex ("Albedo (RGB)", 2D) = "white" {}
|
||||
_Glossiness ("Smoothness", Range(0,1)) = 0.5
|
||||
_Metallic ("Metallic", Range(0,1)) = 0.0
|
||||
}
|
||||
SubShader {
|
||||
Tags { "RenderType"="Opaque" }
|
||||
LOD 200
|
||||
|
||||
CGPROGRAM
|
||||
// Physically based Standard lighting model, and enable shadows on all light types
|
||||
#pragma surface surf Standard fullforwardshadows
|
||||
|
||||
// Use shader model 3.0 target, to get nicer looking lighting
|
||||
#pragma target 3.0
|
||||
|
||||
sampler2D _MainTex;
|
||||
|
||||
struct Input {
|
||||
float2 uv_MainTex;
|
||||
float4 vcolor : COLOR;
|
||||
};
|
||||
|
||||
half _Glossiness;
|
||||
half _Metallic;
|
||||
fixed4 _Color;
|
||||
|
||||
// Add instancing support for this shader. You need to check 'Enable Instancing' on materials that use the shader.
|
||||
// See https://docs.unity3d.com/Manual/GPUInstancing.html for more information about instancing.
|
||||
// #pragma instancing_options assumeuniformscaling
|
||||
UNITY_INSTANCING_BUFFER_START(Props)
|
||||
// put more per-instance properties here
|
||||
UNITY_INSTANCING_BUFFER_END(Props)
|
||||
|
||||
void surf (Input IN, inout SurfaceOutputStandard o) {
|
||||
// Albedo comes from a texture tinted by color
|
||||
fixed4 c = tex2D (_MainTex, IN.uv_MainTex) * _Color * IN.vcolor;
|
||||
o.Albedo = c.rgb;
|
||||
// Metallic and smoothness come from slider variables
|
||||
o.Metallic = _Metallic;
|
||||
o.Smoothness = _Glossiness;
|
||||
o.Alpha = c.a;
|
||||
}
|
||||
ENDCG
|
||||
}
|
||||
FallBack "Diffuse"
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 96c602bba0bc94471862812f91285c9a
|
||||
timeCreated: 1505116095
|
||||
licenseType: Store
|
||||
ShaderImporter:
|
||||
defaultTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -1,8 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f31685c4cf95048ceb543a69d4f84ff4
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -1,8 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b8d28b0e0918140d8b8ee3388bff5ec2
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -1,8 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1a08e3a8d3c4f4d3b90eb00e408b5f5d
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Binary file not shown.
@@ -1,8 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6380c47a989d54146bef5f3bac933a56
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 2100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -1,8 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5741e12d1b7644a1ea6e9239027b476b
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Binary file not shown.
@@ -1,8 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 2b7dfa8ebb76247318ce5b7df4b97484
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 2100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,10 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4df17ed533d3349a194f3bb8c89dcf5d
|
||||
ScriptedImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
script: {fileID: 11500000, guid: 625f186215c104763be7675aa2d941aa, type: 3}
|
||||
@@ -1,33 +0,0 @@
|
||||
#ifndef PROCEDURAL_INCLUDED
|
||||
#define PROCEDURAL_INCLUDED
|
||||
|
||||
#define UNITY_INDIRECT_DRAW_ARGS IndirectDrawIndexedArgs
|
||||
#include "UnityIndirect.cginc"
|
||||
|
||||
StructuredBuffer<float4x4> _InstanceTransforms;
|
||||
StructuredBuffer<float4x4> _InvInstanceTransforms;
|
||||
StructuredBuffer<float4> _Colors;
|
||||
|
||||
#if UNITY_ANY_INSTANCING_ENABLED
|
||||
// Based on :
|
||||
// https://github.com/Unity-Technologies/Graphics/blob/master/com.unity.shadergraph/Editor/Generation/Targets/BuiltIn/ShaderLibrary/ParticlesInstancing.hlsl
|
||||
// and/or
|
||||
// https://github.com/TwoTailsGames/Unity-Built-in-Shaders/blob/master/CGIncludes/UnityStandardParticleInstancing.cginc
|
||||
|
||||
void vertInstancingSetup() {
|
||||
}
|
||||
#endif
|
||||
|
||||
void GetInstanceData_float(uint svInstanceID, float3 pos, out float3 outPos, out float4 color)
|
||||
{
|
||||
InitIndirectDrawArgs(0);
|
||||
uint instanceID = GetIndirectInstanceID_Base(svInstanceID);
|
||||
|
||||
unity_ObjectToWorld = _InstanceTransforms[instanceID];
|
||||
unity_WorldToObject = _InvInstanceTransforms[instanceID];
|
||||
color = _Colors[instanceID];
|
||||
|
||||
outPos = pos;
|
||||
}
|
||||
|
||||
#endif
|
||||
@@ -1,7 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9d77a2f1bd0624d4aa045916cb0955c9
|
||||
ShaderIncludeImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -1,103 +0,0 @@
|
||||
#ifndef OBIELLIPSOIDS_INCLUDED
|
||||
#define OBIELLIPSOIDS_INCLUDED
|
||||
|
||||
// Eye ray origin in world space.
|
||||
// Works both for orthographic and perspective cameras.
|
||||
float3 WorldEye(float3 worldPos){
|
||||
if ((UNITY_MATRIX_P[3].x == 0.0) && (UNITY_MATRIX_P[3].y == 0.0) && (UNITY_MATRIX_P[3].z == 0.0)){
|
||||
return mul(UNITY_MATRIX_I_V,float4(mul(UNITY_MATRIX_V, float4(worldPos,1)).xy,0,1)).xyz;
|
||||
}else
|
||||
return _WorldSpaceCameraPos;
|
||||
}
|
||||
|
||||
// Returns visible ellipsoid radius and offset from center, given the eye position in parameter space.
|
||||
// Works both for orthographic and perspective cameras.
|
||||
float VisibleEllipsoidCircleRadius(float3 eye, out float3 m){
|
||||
if ((UNITY_MATRIX_P[3].x == 0.0) && (UNITY_MATRIX_P[3].y == 0.0) && (UNITY_MATRIX_P[3].z == 0.0)){
|
||||
m = float3(0,0,0);
|
||||
return 1;
|
||||
}else{
|
||||
float t = 1/dot(eye,eye);
|
||||
m = t * eye;
|
||||
return sqrt(1-t);
|
||||
}
|
||||
}
|
||||
|
||||
// Performs accurate raycasting of a spherical impostor.
|
||||
// Works both for orthographic and perspective cameras.
|
||||
float IntersectEllipsoid(float3 v, float4 mapping, float3 a2, float3 a3, out float3 eyePos, out float3 eyeNormal)
|
||||
{
|
||||
float r2 = dot(mapping.xy, mapping.xy);
|
||||
float iq = 1 - r2/mapping.w;
|
||||
clip(iq); // the ray does not intersect the sphere.
|
||||
|
||||
float sqrtiq = sqrt(iq);
|
||||
float lambda = 1/(1 + mapping.z * sqrtiq);
|
||||
|
||||
eyePos = lambda * v;
|
||||
eyeNormal = normalize(a2 + lambda * a3);
|
||||
|
||||
// return gaussian-falloff thickness.
|
||||
return 2 * sqrtiq * exp(-r2*2.0f);
|
||||
}
|
||||
|
||||
void BuildVelocityStretchedBasis(float3 velocity, float stretchIntensity, float radius, out float4 t0, out float4 t1, out float4 t2)
|
||||
{
|
||||
t0 = float4(UNITY_MATRIX_V[0].xyz, radius); // camera right vector
|
||||
t2 = float4(UNITY_MATRIX_V[2].xyz, radius); // camera forward vector
|
||||
|
||||
float3 eyeVel = velocity - dot(velocity, t2.xyz) * t2.xyz;
|
||||
float velNorm = length(eyeVel);
|
||||
float stretchAmount = velNorm * stretchIntensity;
|
||||
|
||||
// use it to lerp between velocity vector and camera right:
|
||||
t0 = float4(velNorm > 0.00001 ? eyeVel / velNorm : t0, radius * (1 + stretchAmount));
|
||||
t1 = float4(normalize(cross(t0.xyz,t2.xyz)), radius);
|
||||
}
|
||||
|
||||
void BuildParameterSpaceMatrices(float4 t0, float4 t1, float4 t2, out float3x3 P, out float3x3 IP)
|
||||
{
|
||||
// build 3x3 orientation matrix and its inverse;
|
||||
float3x3 IO = float3x3(t0.xyz,t1.xyz,t2.xyz);
|
||||
float3x3 O = transpose(IO);
|
||||
|
||||
// build 3x3 scaling matrix and its inverse:
|
||||
float3x3 S = float3x3(t0.w,0,0,0,t1.w,0,0,0,t2.w);
|
||||
float3x3 IS = float3x3(1/t0.w,0,0,0,1/t1.w,0,0,0,1/t2.w);
|
||||
|
||||
// build 3x3 transformation matrix and its inverse:
|
||||
P = mul((float3x3)unity_ObjectToWorld, mul(O,mul(S,IO)) );
|
||||
IP = mul(mul(mul(O,IS),IO), (float3x3)unity_WorldToObject);
|
||||
}
|
||||
|
||||
float BuildEllipsoidBillboard(float3 center, float3 corner, float3x3 P, float3x3 IP, out float3 worldPos, out float3 view, out float3 eye)
|
||||
{
|
||||
// eye position and quad vectors in parameter space:
|
||||
eye = mul(IP, WorldEye(center) - center);
|
||||
float3 u = normalize(cross(-eye,UNITY_MATRIX_V[1].xyz));
|
||||
float3 k = normalize(cross(-eye,u));
|
||||
|
||||
// visible circle radius and offset from center in the direction of the view ray:
|
||||
float3 m;
|
||||
float radius = VisibleEllipsoidCircleRadius(eye,m);
|
||||
|
||||
// world position of the billboard corner, and view vector to it:
|
||||
worldPos = center + mul(P, m) + radius * (mul(P,u)* corner.x + mul(P,k)* corner.y);
|
||||
view = worldPos - WorldEye(worldPos);
|
||||
|
||||
return radius;
|
||||
}
|
||||
|
||||
void BuildAuxiliaryNormalVectors(float3 center, float3 worldPos, float3 view, float3x3 P, float3x3 IP, out float3 a2, out float3 a3)
|
||||
{
|
||||
// calculate T^-2 in object space, then multiply by
|
||||
// inverse transpose of modelview to rotate normal from object to eye.
|
||||
// This way the normal calculated in IntersectEllipsoid() is already in view space.
|
||||
IP = mul((float3x3)unity_ObjectToWorld,IP);
|
||||
float3x3 IP2 = mul((float3x3)UNITY_MATRIX_IT_MV, mul((float3x3)unity_WorldToObject,mul (IP, IP)));
|
||||
|
||||
a2 = mul(IP2,WorldEye(worldPos) - center); //T^-2 * (eye - center)
|
||||
a3 = mul(IP2,view); //T^-2 * A[0]
|
||||
}
|
||||
|
||||
#endif
|
||||
@@ -1,9 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 083c49fc96643477889bfd68e70cf998
|
||||
timeCreated: 1445285630
|
||||
licenseType: Store
|
||||
ShaderImporter:
|
||||
defaultTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -1,106 +0,0 @@
|
||||
#ifndef OBIELLIPSOIDS_INCLUDED
|
||||
#define OBIELLIPSOIDS_INCLUDED
|
||||
|
||||
// Eye ray origin in world space.
|
||||
// Works both for orthographic and perspective cameras.
|
||||
float3 WorldEye(float3 worldPos){
|
||||
if ((UNITY_MATRIX_P[3].x == 0.0) && (UNITY_MATRIX_P[3].y == 0.0) && (UNITY_MATRIX_P[3].z == 0.0)){
|
||||
return mul(UNITY_MATRIX_I_V,float4(mul(UNITY_MATRIX_V, float4(worldPos,1)).xy,0,1)).xyz;
|
||||
}else
|
||||
return _WorldSpaceCameraPos;
|
||||
}
|
||||
|
||||
// Returns visible ellipsoid radius and offset from center, given the eye position in parameter space.
|
||||
// Works both for orthographic and perspective cameras.
|
||||
float VisibleEllipsoidCircleRadius(float3 eye, out float3 m){
|
||||
if ((UNITY_MATRIX_P[3].x == 0.0) && (UNITY_MATRIX_P[3].y == 0.0) && (UNITY_MATRIX_P[3].z == 0.0)){
|
||||
m = float3(0,0,0);
|
||||
return 1;
|
||||
}else{
|
||||
float t = 1/dot(eye,eye);
|
||||
m = t * eye;
|
||||
return sqrt(1-t);
|
||||
}
|
||||
}
|
||||
|
||||
// Performs accurate raycasting of a spherical impostor.
|
||||
// Works both for orthographic and perspective cameras.
|
||||
void IntersectEllipsoid_float(float3 v, float4 mapping, float3 a2, float3 a3, out float3 eyePos, out float3 eyeNormal, out float thickness, out float clipThreshold)
|
||||
{
|
||||
float r2 = dot(mapping.xy, mapping.xy);
|
||||
|
||||
// clip if the ray does not intersect the sphere.
|
||||
clipThreshold = r2/mapping.w;
|
||||
float iq = 1 - clipThreshold;
|
||||
|
||||
float sqrtiq = sqrt(iq);
|
||||
float lambda = 1/(1 + mapping.z * sqrtiq);
|
||||
|
||||
eyePos = lambda * v;
|
||||
eyeNormal = normalize(a2 + lambda * a3);
|
||||
|
||||
// return gaussian-falloff thickness.
|
||||
thickness = 2 * sqrtiq * exp(-r2*2.0f);
|
||||
|
||||
clipThreshold = (1 - clipThreshold > 0) ? 0 : 1.01;
|
||||
}
|
||||
|
||||
void BuildVelocityStretchedBasis_float(float3 velocity, float stretchIntensity, float radius, out float4 t0, out float4 t1, out float4 t2)
|
||||
{
|
||||
t0 = float4(UNITY_MATRIX_V[0].xyz, radius); // camera right vector
|
||||
t2 = float4(UNITY_MATRIX_V[2].xyz, radius); // camera forward vector
|
||||
|
||||
float3 eyeVel = velocity - dot(velocity, t2.xyz) * t2.xyz;
|
||||
float velNorm = length(eyeVel);
|
||||
float stretchAmount = velNorm * stretchIntensity;
|
||||
|
||||
// use it to lerp between velocity vector and camera right:
|
||||
t0 = float4(velNorm > 0.00001 ? eyeVel / velNorm : t0.xyz, radius * (1 + stretchAmount));
|
||||
t1 = float4(normalize(cross(t0.xyz,t2.xyz)), radius);
|
||||
}
|
||||
|
||||
void BuildParameterSpaceMatrices_float(float4 t0, float4 t1, float4 t2, float radiusScale, out float3x3 P, out float3x3 IP)
|
||||
{
|
||||
// build 3x3 orientation matrix and its inverse;
|
||||
float3x3 IO = float3x3(t0.xyz,t1.xyz,t2.xyz);
|
||||
float3x3 O = transpose(IO);
|
||||
|
||||
// build 3x3 scaling matrix and its inverse:
|
||||
float3x3 S = float3x3(radiusScale*t0.w,0,0,0,radiusScale*t1.w,0,0,0,radiusScale*t2.w);
|
||||
float3x3 IS = float3x3(1/(radiusScale*t0.w),0,0,0,1/(radiusScale*t1.w),0,0,0,1/(radiusScale*t2.w));
|
||||
|
||||
// build 3x3 transformation matrix and its inverse:
|
||||
P = mul((float3x3)UNITY_MATRIX_M, mul(O,mul(S,IO)) );
|
||||
IP = mul(mul(mul(O,IS),IO), (float3x3)UNITY_MATRIX_I_M);
|
||||
}
|
||||
|
||||
void BuildEllipsoidBillboard_float(float3 center, float3 corner, float3x3 P, float3x3 IP, out float3 worldPos, out float3 view, out float3 eye, out float radius)
|
||||
{
|
||||
// eye position and quad vectors in parameter space:
|
||||
eye = mul(IP,WorldEye(center) - center);
|
||||
float3 u = normalize(cross(-eye,UNITY_MATRIX_V[1].xyz));
|
||||
float3 k = normalize(cross(-eye,u));
|
||||
|
||||
// visible circle radius and offset from center in the direction of the view ray:
|
||||
float3 m;
|
||||
radius = VisibleEllipsoidCircleRadius(eye,m);
|
||||
|
||||
// world position of the billboard corner, and view vector to it:
|
||||
worldPos = center + mul(P, m) + radius * (mul(P,u)* corner.x + mul(P,k)* corner.y);
|
||||
view = worldPos - WorldEye(worldPos);
|
||||
}
|
||||
|
||||
void BuildAuxiliaryNormalVectors_float(float3 center, float3 worldPos, float3 view, float3x3 P, float3x3 IP, out float3 a2, out float3 a3)
|
||||
{
|
||||
// calculate T^-2 in object space, then multiply by
|
||||
// inverse transpose of modelview to rotate normal from object to eye.
|
||||
// This way the normal calculated in IntersectEllipsoid() is already in view space.
|
||||
IP = mul((float3x3)UNITY_MATRIX_M,IP);
|
||||
float3x3 IT_MV = transpose(mul((float3x3)UNITY_MATRIX_I_V, (float3x3)UNITY_MATRIX_I_M));
|
||||
float3x3 IP2 = mul(IT_MV, mul((float3x3)UNITY_MATRIX_I_M,mul (IP, IP))); // UNITY_MATRIX_IT_MV
|
||||
|
||||
a2 = mul(IP2,WorldEye(worldPos) - center); //T^-2 * (eye - center)
|
||||
a3 = mul(IP2,view); //T^-2 * A[0]
|
||||
}
|
||||
|
||||
#endif
|
||||
@@ -1,7 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: bc807595df1f54350ac0027aaf7cb91b
|
||||
ShaderIncludeImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -1,28 +0,0 @@
|
||||
#ifndef OBIUTILS_INCLUDED
|
||||
#define OBIUTILS_INCLUDED
|
||||
|
||||
float4x4 _Camera_to_World;
|
||||
|
||||
// abstract texture declaration/sampling over built-in and SRPs:
|
||||
#ifndef TEXTURE2D
|
||||
#define TEXTURE2D(name) sampler2D name
|
||||
#endif
|
||||
|
||||
#ifndef TEXTURE2D_HALF
|
||||
#define TEXTURE2D_HALF(name) sampler2D_half name
|
||||
#endif
|
||||
|
||||
#ifndef TEXTURE2D_FLOAT
|
||||
#define TEXTURE2D_FLOAT(name) sampler2D_float name
|
||||
#endif
|
||||
|
||||
#ifndef SAMPLE_TEXTURE2D
|
||||
#define SAMPLE_TEXTURE2D(textureName, samplerName, coord2) tex2D(textureName,coord2)
|
||||
#endif
|
||||
|
||||
#ifndef SAMPLER
|
||||
#define SAMPLER(samplerName)
|
||||
#endif
|
||||
|
||||
|
||||
#endif
|
||||
@@ -1,9 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: fe1b10a99f88a45a09abf1a13d62b63f
|
||||
timeCreated: 1445285630
|
||||
licenseType: Store
|
||||
ShaderImporter:
|
||||
defaultTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,10 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 99a2f8857960c44ca980d85023572447
|
||||
ScriptedImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
script: {fileID: 11500000, guid: 625f186215c104763be7675aa2d941aa, type: 3}
|
||||
@@ -1,204 +0,0 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &-5466045192948715276
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 11
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 639247ca83abc874e893eb93af2b5e44, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
version: 0
|
||||
--- !u!114 &-4382110247035737841
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 11
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
version: 10
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 8
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: Particles
|
||||
m_Shader: {fileID: -6465566751694194690, guid: 99a2f8857960c44ca980d85023572447, type: 3}
|
||||
m_Parent: {fileID: 0}
|
||||
m_ModifiedSerializedProperties: 0
|
||||
m_ValidKeywords:
|
||||
- _DEPTHOFFSET_ON
|
||||
- _DISABLE_DECALS
|
||||
- _DISABLE_SSR_TRANSPARENT
|
||||
m_InvalidKeywords:
|
||||
- _EMISSION
|
||||
m_LightmapFlags: 3
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: 2000
|
||||
stringTagMap:
|
||||
MotionVector: User
|
||||
disabledShaderPasses:
|
||||
- MOTIONVECTORS
|
||||
- TransparentDepthPrepass
|
||||
- TransparentDepthPostpass
|
||||
- TransparentBackface
|
||||
- RayTracingPrepass
|
||||
m_LockedProperties:
|
||||
m_SavedProperties:
|
||||
serializedVersion: 3
|
||||
m_TexEnvs:
|
||||
- _BumpMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _DetailAlbedoMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _DetailMask:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _DetailNormalMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _EmissionMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _MainTex:
|
||||
m_Texture: {fileID: 10300, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _MetallicGlossMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _OcclusionMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _ParallaxMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- unity_Lightmaps:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- unity_LightmapsInd:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- unity_ShadowMasks:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Ints: []
|
||||
m_Floats:
|
||||
- _AddPrecomputedVelocity: 0
|
||||
- _AlphaCutoffEnable: 0
|
||||
- _AlphaDstBlend: 0
|
||||
- _AlphaSrcBlend: 1
|
||||
- _BUILTIN_QueueControl: 0
|
||||
- _BUILTIN_QueueOffset: 0
|
||||
- _BlendMode: 0
|
||||
- _BumpScale: 1
|
||||
- _ConservativeDepthOffsetEnable: 0
|
||||
- _CullMode: 2
|
||||
- _CullModeForward: 2
|
||||
- _Cutoff: 0.5
|
||||
- _DepthOffsetEnable: 1
|
||||
- _DetailNormalMapScale: 1
|
||||
- _DoubleSidedEnable: 0
|
||||
- _DoubleSidedGIMode: 0
|
||||
- _DoubleSidedNormalMode: 2
|
||||
- _DstBlend: 0
|
||||
- _DstBlend2: 0
|
||||
- _EnableBlendModePreserveSpecularLighting: 1
|
||||
- _EnableFogOnTransparent: 1
|
||||
- _ExcludeFromTUAndAA: 0
|
||||
- _Glossiness: 0.5
|
||||
- _InvFade: 1
|
||||
- _MaterialID: 1
|
||||
- _MaterialTypeMask: 2
|
||||
- _Metallic: 0
|
||||
- _Mode: 0
|
||||
- _OcclusionStrength: 1
|
||||
- _OpaqueCullMode: 2
|
||||
- _Parallax: 0.02
|
||||
- _PerPixelSorting: 0
|
||||
- _QueueControl: 0
|
||||
- _QueueOffset: 0
|
||||
- _RadiusScale: 1
|
||||
- _RayTracing: 0
|
||||
- _ReceivesSSR: 1
|
||||
- _ReceivesSSRTransparent: 0
|
||||
- _RefractionModel: 0
|
||||
- _RenderQueueType: 1
|
||||
- _RequireSplitLighting: 0
|
||||
- _Smoothness: 0.6
|
||||
- _SrcBlend: 1
|
||||
- _StencilRef: 0
|
||||
- _StencilRefDepth: 8
|
||||
- _StencilRefDistortionVec: 4
|
||||
- _StencilRefGBuffer: 10
|
||||
- _StencilRefMV: 40
|
||||
- _StencilWriteMask: 6
|
||||
- _StencilWriteMaskDepth: 9
|
||||
- _StencilWriteMaskDistortionVec: 4
|
||||
- _StencilWriteMaskGBuffer: 15
|
||||
- _StencilWriteMaskMV: 41
|
||||
- _SupportDecals: 0
|
||||
- _SurfaceType: 0
|
||||
- _TransmissionEnable: 1
|
||||
- _TransparentBackfaceEnable: 0
|
||||
- _TransparentCullMode: 2
|
||||
- _TransparentDepthPostpassEnable: 0
|
||||
- _TransparentDepthPrepassEnable: 0
|
||||
- _TransparentSortPriority: 0
|
||||
- _TransparentWritingMotionVec: 0
|
||||
- _TransparentZWrite: 0
|
||||
- _UVSec: 0
|
||||
- _UseShadowThreshold: 0
|
||||
- _ZTestDepthEqualForOpaque: 3
|
||||
- _ZTestGBuffer: 4
|
||||
- _ZTestTransparent: 4
|
||||
- _ZWrite: 1
|
||||
m_Colors:
|
||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _DoubleSidedConstants: {r: 1, g: 1, b: -1, a: 0}
|
||||
- _EmissionColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _ParticleColor: {r: 1, g: 1, b: 1, a: 0}
|
||||
- _TintColor: {r: 0.5, g: 0.5, b: 0.5, a: 0.5}
|
||||
m_BuildTextureStacks: []
|
||||
m_AllowLocking: 1
|
||||
--- !u!114 &6540803106207709527
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 11
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier: Unity.RenderPipelines.HighDefinition.Editor::UnityEditor.Rendering.HighDefinition.AssetVersion
|
||||
version: 13
|
||||
hdPluginSubTargetMaterialVersions:
|
||||
m_Keys: []
|
||||
m_Values:
|
||||
@@ -1,8 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: fb88690dea2394644849cde5abd037f9
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 2100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 4.7 KiB |
@@ -1,59 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 568ceb11f52ec4d36abc82bcf61af795
|
||||
timeCreated: 1461823723
|
||||
licenseType: Store
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
serializedVersion: 2
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 1
|
||||
linearTexture: 0
|
||||
correctGamma: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 0
|
||||
cubemapConvolution: 0
|
||||
cubemapConvolutionSteps: 7
|
||||
cubemapConvolutionExponent: 1.5
|
||||
seamlessCubemap: 0
|
||||
textureFormat: -1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
filterMode: -1
|
||||
aniso: -1
|
||||
mipBias: -1
|
||||
wrapMode: -1
|
||||
nPOTScale: 1
|
||||
lightmap: 0
|
||||
rGBM: 0
|
||||
compressionQuality: 50
|
||||
allowsAlphaSplitting: 0
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spritePixelsToUnits: 100
|
||||
alphaIsTransparency: 0
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 0
|
||||
buildTargetSettings: []
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
spritePackingTag:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -1,8 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: aacd9fe47bf4d416d883fd99066cf37e
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Binary file not shown.
@@ -1,9 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f6bf1245292ed43c78875db43ca1aad3
|
||||
timeCreated: 1515780549
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
mainObjectFileID: 2100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -1,66 +0,0 @@
|
||||
Shader "Obi/DistanceFieldSlice"
|
||||
{
|
||||
Properties
|
||||
{
|
||||
_MainTex ("Texture", 2D) = "white" {}
|
||||
}
|
||||
SubShader
|
||||
{
|
||||
Tags { "RenderType"="Opaque" }
|
||||
LOD 100
|
||||
|
||||
Cull Off
|
||||
|
||||
Pass
|
||||
{
|
||||
CGPROGRAM
|
||||
#pragma vertex vert
|
||||
#pragma fragment frag
|
||||
|
||||
#include "UnityCG.cginc"
|
||||
|
||||
struct appdata
|
||||
{
|
||||
float4 vertex : POSITION;
|
||||
float2 uv : TEXCOORD0;
|
||||
};
|
||||
|
||||
struct v2f
|
||||
{
|
||||
float2 uv : TEXCOORD0;
|
||||
float4 vertex : SV_POSITION;
|
||||
};
|
||||
|
||||
sampler2D _MainTex;
|
||||
float4 _MainTex_ST;
|
||||
|
||||
v2f vert (appdata v)
|
||||
{
|
||||
v2f o;
|
||||
o.vertex = UnityObjectToClipPos(v.vertex);
|
||||
o.uv = TRANSFORM_TEX(v.uv, _MainTex);
|
||||
return o;
|
||||
}
|
||||
|
||||
half4 frag (v2f i) : SV_Target
|
||||
{
|
||||
half dist = tex2D(_MainTex, i.uv).x-0.5; // signed distance
|
||||
half adist = abs(dist); // absolute distance
|
||||
half isofunc = sin(adist*40); // isolines function
|
||||
|
||||
// antialiased isolines:
|
||||
half change = fwidth(isofunc);
|
||||
half isolines = smoothstep(-change,change,isofunc);
|
||||
|
||||
// antialiazed sign:
|
||||
change = fwidth(dist);
|
||||
half sign = smoothstep(-change,change,dist);
|
||||
|
||||
half final = (1-adist) * (0.85+isolines*0.15);
|
||||
|
||||
return half4(final,final*sign,final*sign,1);
|
||||
}
|
||||
ENDCG
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8447096d1e8064b37939be221dd9afb5
|
||||
timeCreated: 1515783007
|
||||
licenseType: Store
|
||||
ShaderImporter:
|
||||
defaultTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Reference in New Issue
Block a user