feat: added earth asset

This commit is contained in:
LordDemonix 2025-09-15 22:28:04 +02:00
parent 6419138704
commit 7a1a0465a0
58 changed files with 3898 additions and 199 deletions

8
Assets/Earth.meta Normal file
View file

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: e2b21f30dbdb0aa4aacd11683a2e7e8d
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View file

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: e55666cae43f3bc4c9cb655f009ca0cc
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,15 @@
fileFormatVersion: 2
guid: e3523ca6db1f20c458e410e2aba84ee8
timeCreated: 1456247099
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 56841
packageName: Free Earth Planet - The Best Planet Shader in the Asset Store
packageVersion: 1.1.2
assetPath: Assets/Earth/EarthScene.unity
uploadId: 328562

Binary file not shown.

View file

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: b930eeea8925a86488371b931a7b2c17
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 112000000
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

View file

@ -0,0 +1,130 @@
fileFormatVersion: 2
guid: 3a5d3f7533711964d8e2805541326c26
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 1
seamlessCubemap: 1
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 2
aniso: 0
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 2
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 4
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 100
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

View file

@ -0,0 +1,63 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!850595691 &4890085278179872738
LightingSettings:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: EarthSceneSettings
serializedVersion: 9
m_EnableBakedLightmaps: 1
m_EnableRealtimeLightmaps: 1
m_RealtimeEnvironmentLighting: 1
m_BounceScale: 1
m_AlbedoBoost: 1
m_IndirectOutputScale: 1
m_UsingShadowmask: 0
m_BakeBackend: 1
m_LightmapMaxSize: 1024
m_LightmapSizeFixed: 0
m_UseMipmapLimits: 1
m_BakeResolution: 40
m_Padding: 2
m_LightmapCompression: 3
m_AO: 0
m_AOMaxDistance: 1
m_CompAOExponent: 0
m_CompAOExponentDirect: 0
m_ExtractAO: 0
m_MixedBakeMode: 1
m_LightmapsBakeMode: 1
m_FilterMode: 1
m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0}
m_ExportTrainingData: 0
m_EnableWorkerProcessBaking: 1
m_TrainingDataDestination: TrainingData
m_RealtimeResolution: 2
m_ForceWhiteAlbedo: 0
m_ForceUpdates: 0
m_PVRCulling: 1
m_PVRSampling: 1
m_PVRDirectSampleCount: 32
m_PVRSampleCount: 512
m_PVREnvironmentSampleCount: 512
m_PVREnvironmentReferencePointCount: 2048
m_LightProbeSampleCountMultiplier: 4
m_PVRBounces: 2
m_PVRMinBounces: 2
m_PVREnvironmentImportanceSampling: 0
m_PVRFilteringMode: 0
m_PVRDenoiserTypeDirect: 0
m_PVRDenoiserTypeIndirect: 0
m_PVRDenoiserTypeAO: 0
m_PVRFilterTypeDirect: 0
m_PVRFilterTypeIndirect: 0
m_PVRFilterTypeAO: 0
m_PVRFilteringGaussRadiusDirect: 1
m_PVRFilteringGaussRadiusIndirect: 5
m_PVRFilteringGaussRadiusAO: 2
m_PVRFilteringAtrousPositionSigmaDirect: 0.5
m_PVRFilteringAtrousPositionSigmaIndirect: 2
m_PVRFilteringAtrousPositionSigmaAO: 1
m_RespectSceneVisibilityWhenBakingGI: 0

View file

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 7aeb177df6002b647af9c40e7dd840fe
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 4890085278179872738
userData:
assetBundleName:
assetBundleVariant:

9
Assets/Earth/Editor.meta Normal file
View file

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 399032bd9f7c88f46890d3b536a27294
folderAsset: yes
timeCreated: 1487177568
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View file

@ -0,0 +1,56 @@
using System;
using UnityEngine;
using UnityEditor;
namespace DigitalRuby.Earth
{
[CustomEditor(typeof(EarthScript))]
public class EarthEditor : Editor
{
private Texture2D logo;
public override void OnInspectorGUI()
{
if (logo == null)
{
string[] guids = AssetDatabase.FindAssets("EarthLogo");
foreach (string guid in guids)
{
string path = AssetDatabase.GUIDToAssetPath(guid);
logo = AssetDatabase.LoadMainAssetAtPath(path) as Texture2D;
if (logo != null)
{
break;
}
}
}
if (logo != null)
{
const float maxLogoWidth = 430.0f;
EditorGUILayout.Separator();
float w = EditorGUIUtility.currentViewWidth;
Rect r = new Rect();
r.width = Math.Min(w - 40.0f, maxLogoWidth);
r.height = r.width / 2.7f;
Rect r2 = GUILayoutUtility.GetRect(r.width, r.height);
r.x = ((EditorGUIUtility.currentViewWidth - r.width) * 0.5f) - 4.0f;
r.y = r2.y;
GUI.DrawTexture(r, logo, ScaleMode.StretchToFill);
if (GUI.Button(r, "", new GUIStyle()))
{
Application.OpenURL("https://www.assetstore.unity3d.com/en/#!/content/60955?aid=1011lGnL");
}
EditorGUILayout.Separator();
}
DrawDefaultInspector();
}
}
[CustomEditor(typeof(EarthRootScript))]
public class EarthEditor2 : EarthEditor
{
}
}

View file

@ -0,0 +1,19 @@
fileFormatVersion: 2
guid: cfd95605c4548f948b02afaf3e2d6cec
timeCreated: 1487177571
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 56841
packageName: Free Earth Planet - The Best Planet Shader in the Asset Store
packageVersion: 1.1.2
assetPath: Assets/Earth/Editor/EarthEditor.cs
uploadId: 328562

View file

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 08b31b4dc8be1ae4787b4d90fe1a1764
folderAsset: yes
timeCreated: 1433269041
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View file

@ -0,0 +1,156 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: EarthMaterial
m_Shader: {fileID: 4800000, guid: 32a0ef2a7ef59ad47846655a3c02fa8d, type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: []
m_InvalidKeywords:
- _EMISSION
- _METALLICGLOSSMAP
- _NORMALMAP
- _SPECGLOSSMAP
m_LightmapFlags: 0
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 2800000, guid: c2fa05cb71836f246b5eabf3f3c6151c, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMapTex:
m_Texture: {fileID: 2800000, guid: c2fa05cb71836f246b5eabf3f3c6151c, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _CloudsTex:
m_Texture: {fileID: 2800000, guid: 961fa74443856d247867fce623b3d325, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _Cube:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _Detail:
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}
- _DetailTex:
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}
- _LightMap:
m_Texture: {fileID: 2800000, guid: 549430f80d893f84fbd76250621f1fda, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _Lights:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: 7dfcb90673cf9a44281e7da0b32902b2, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 2800000, guid: 549430f80d893f84fbd76250621f1fda, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _NightTex:
m_Texture: {fileID: 2800000, guid: 8d73a1f30b7717d4f8f40e2a2128ae7e, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _NormalMapTex:
m_Texture: {fileID: 2800000, guid: c2fa05cb71836f246b5eabf3f3c6151c, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _Normals:
m_Texture: {fileID: 2800000, guid: d549fd55798743b45bc62313ecb44047, type: 3}
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}
- _SpecGlossMap:
m_Texture: {fileID: 2800000, guid: 549430f80d893f84fbd76250621f1fda, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecularTex:
m_Texture: {fileID: 2800000, guid: 5ca5bf05f3cb3b046be353275c0ef45c, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _AtmosFalloff: 14
- _BumpScale: 1
- _CloudIntensityMin: 0.01
- _Cutoff: 0.5
- _DetailIntensity: 0
- _DetailIntensityMin: 0.01
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _Glossiness: 0.5
- _InvFade: 1
- _LightScale: 1
- _Metallic: 0
- _Mode: 0
- _NightIntensity: 0.6
- _NightTransitionVariable: 4
- _NormalMapIntensity: 0.5
- _OcclusionStrength: 1
- _Parallax: 0.02
- _RimIntensity: 10
- _RimPower: 12
- _Shininess: 0.03
- _Smoothness: 0.4
- _SpecularIntensity: 2
- _SpecularPower: 64
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _AtmosFar: {r: 0.4557808, g: 0.5187039, b: 0.9850746, a: 1}
- _AtmosNear: {r: 0.1686275, g: 0.7372549, b: 1, a: 1}
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _DayTintColor: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0.04, g: 0.04, b: 0.04, a: 1}
- _ReflectColor: {r: 1, g: 1, b: 1, a: 0.5}
- _RimColor: {r: 0, g: 0.27520287, b: 0.5955882, a: 0}
- _SpecColor: {r: 0.08823532, g: 0.08823532, b: 0.08823532, a: 1}
- _SunColor: {r: 1, g: 1, b: 1, a: 1}
- _SunDir: {r: 0.93030155, g: 0.021202952, b: -0.36618242, a: 0}
- _TintColor: {r: 0.5, g: 0.5, b: 0.5, a: 0.5}
m_BuildTextureStacks: []
m_AllowLocking: 1

View file

@ -0,0 +1,15 @@
fileFormatVersion: 2
guid: f7984698def12c74fa2b3aac0d0ac5b0
timeCreated: 1456335122
licenseType: Store
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 56841
packageName: Free Earth Planet - The Best Planet Shader in the Asset Store
packageVersion: 1.1.2
assetPath: Assets/Earth/Materials/EarthMaterial.mat
uploadId: 328562

View file

@ -0,0 +1,167 @@
Shader "Planet/PlanetShader"
{
Properties
{
[NoScaleOffset] _MainTex("Day Texture", 2D) = "white" {}
[NoScaleOffset] _NormalMapTex("Day/Night Normal Map", 2D) = "bump" {}
[NoScaleOffset] _CloudsTex("Clouds Texture", 2D) = "clear" {}
[NoScaleOffset] _DetailTex("Detail Texture", 2D) = "black" {}
[NoScaleOffset] _SpecularTex("Specular Texture", 2D) = "black" {}
[NoScaleOffset] _NightTex("Night Texture", 2D) = "black" {}
_DayTintColor("Day Tint Color", Color) = (1,1,1,1)
_DetailIntensity("Detail Intensity", Range(0, 3)) = 0.0
_DetailIntensityMin("Detail Intensity Minimum", Range(0, 1)) = 0.01
_NormalMapIntensity("Normal Map Intensity", Range(0, 1)) = 0.5
_SpecularPower("Specular Power", Range(0, 1024.0)) = 0.0
_SpecularIntensity("Specular Intensity", Range(0.0, 10.0)) = 2.0
_CloudIntensityMin("Cloud Intensity Mininmum", Range(0.0, 1.0)) = 0.01
_NightIntensity("Night Detail Intensity", Range(0, 1)) = 0.0
_NightTransitionVariable("Night Transition Variable", Range(1, 64)) = 4
_Smoothness("Smoothness", Range(0,1)) = 0.5
_RimColor("Rim Color", Color) = (0.26,0.19,0.16,0.0)
_RimPower("Rim Power", Range(0.5, 64.0)) = 3.0
_RimIntensity("Rim Intensity", Range(0.0, 100.0)) = 2.0
_AtmosNear("Atmosphere Near Color", Color) = (0.1686275,0.7372549,1,1)
_AtmosFar("Atmosphere Far Color", Color) = (0.4557808,0.5187039,0.9850746,1)
_AtmosFalloff("Atmosphere Falloff", Range(0.1, 64)) = 12
_SunDir("Sun Dir", Vector) = (0.2, 0.3, 0.4, 0.0)
_SunColor("Sun Color", Color) = (1.0, 1.0, 1.0, 1.0)
}
SubShader
{
Tags { "Queue"="Geometry" }
Pass
{
CGPROGRAM
#pragma target 3.5
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
#define DO_ALPHA_BLEND(f, b) ((f.rgb * f.a) + (b.rgb * (1.0 - f.a)))
struct appdata
{
float4 vertex : POSITION;
float2 uv : TEXCOORD0;
float3 normal : NORMAL;
};
struct v2f
{
float4 vertex : SV_POSITION;
float3 normal : NORMAL;
float2 uv : TEXCOORD0;
float3 rayDir : TEXCOORD1;
};
uniform sampler2D _MainTex;
uniform sampler2D _NormalMapTex;
uniform sampler2D _CloudsTex;
uniform sampler2D _DetailTex;
uniform sampler2D _SpecularTex;
uniform sampler2D _NightTex;
uniform fixed4 _DayTintColor;
uniform fixed _Smoothness;
uniform fixed _DetailIntensity;
uniform fixed _SpecularPower;
uniform fixed _SpecularIntensity;
uniform fixed _NightIntensity;
uniform fixed _NightTransitionVariable;
uniform fixed4 _RimColor;
uniform fixed _RimPower;
uniform fixed _RimIntensity;
uniform fixed4 _AtmosNear;
uniform fixed4 _AtmosFar;
uniform fixed _AtmosFalloff;
uniform fixed _CloudIntensityMin;
uniform fixed _DetailIntensityMin;
uniform fixed _NormalMapIntensity;
uniform fixed3 _SunDir;
uniform fixed4 _SunColor;
static const float3 forwardVector = mul((float3x3)unity_CameraToWorld, float3(0, 0, 1));
static const float3 sunColor = _SunColor.rgb * _SunColor.a;
static const float3 sunDir = normalize(_SunDir);
inline float3 WorldSpaceVertexPos(float4 vertex)
{
return mul(unity_ObjectToWorld, vertex).xyz;
}
inline float3 WorldSpaceNormal(float3 normal)
{
return mul((float3x3)unity_ObjectToWorld, normal);
}
inline fixed3 AtmosphereColor(float3 worldSpaceDir)
{
fixed3 Fresnel1 = forwardVector;
fixed3 Fresnel2 = (1.0 - dot(normalize(worldSpaceDir), normalize(Fresnel1))).xxx;
fixed3 Pow0 = pow(Fresnel2, _AtmosFalloff);
fixed3 Saturate0 = saturate(Pow0);
fixed3 Lerp0 = lerp(_AtmosNear, _AtmosFar, Saturate0);
fixed3 color = Lerp0 * Saturate0;
return color;
}
v2f vert (appdata v)
{
v2f o;
o.vertex = UnityObjectToClipPos(v.vertex);
o.uv = v.uv;// TRANSFORM_TEX(v.uv, _MainTex);
o.normal = WorldSpaceNormal(v.normal);
o.rayDir = _WorldSpaceCameraPos - WorldSpaceVertexPos(v.vertex);
return o;
}
fixed4 frag (v2f i) : SV_Target
{
float3 rayDir = normalize(i.rayDir);
fixed4 dayColor = tex2D(_MainTex, i.uv) * _DayTintColor;
fixed4 clouds = tex2D(_CloudsTex, i.uv);
fixed3 nightColor = tex2D(_NightTex, i.uv).rgb;
fixed maxNight = min(1, nightColor.g + 0.8);
nightColor *= pow(maxNight, 4.0);
fixed4 detailColor = tex2D(_DetailTex, i.uv);
detailColor.rgb *= _DetailIntensity;
float3 worldNormal = normalize(i.normal);
float3 normalMapNormal = (float4(UnpackNormal(tex2D(_NormalMapTex, i.uv)), 1.0)).xyz;
float3 worldNormalMapped = normalize(worldNormal + (normalMapNormal.xxy * _NormalMapIntensity * float3(-1.0, 1.0, -1.0)));
fixed specular = tex2D(_SpecularTex, i.uv).a;
float smooth = _Smoothness;
fixed rim = 1.0 - max(0.0, dot(rayDir, worldNormal));
fixed3 emission = (_RimColor.rgb * pow(rim, _RimPower) + AtmosphereColor(-rayDir));
fixed3 h = normalize(_SunDir + rayDir);
fixed d = max(0.0, dot(worldNormal, _SunDir));
fixed e = max(0.0, dot(worldNormalMapped, _SunDir));
fixed nh = max(0.0, dot(worldNormalMapped, h));
fixed specTerm = pow(nh, _SpecularPower) * _Smoothness;
fixed4 result;
fixed3 sunIntensity = sunColor * d;
fixed3 dayColorSpec = (dayColor * sunIntensity * e) + (sunColor * specular * specTerm * _SpecularIntensity * e);
fixed4 cloudsLit = fixed4(clouds.rgb * max(_CloudIntensityMin, sunIntensity), clouds.a);
fixed4 detailLit = fixed4(detailColor * max(_DetailIntensityMin, sunIntensity), detailColor.a);
result.a = 1.0;
result.rgb = lerp(nightColor, dayColorSpec, saturate(_NightTransitionVariable * d));
result.rgb += (detailLit.rgb * detailLit.a);
result.rgb += (cloudsLit.rgb * cloudsLit.a);// DO_ALPHA_BLEND(cloudsLit, result);
result.rgb += (emission.rgb * _RimIntensity * nh);
return result;
}
ENDCG
}
}
Fallback "Diffuse"
}

View file

@ -0,0 +1,15 @@
fileFormatVersion: 2
guid: 32a0ef2a7ef59ad47846655a3c02fa8d
ShaderImporter:
externalObjects: {}
defaultTextures: []
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 56841
packageName: Free Earth Planet - The Best Planet Shader in the Asset Store
packageVersion: 1.1.2
assetPath: Assets/Earth/Materials/EarthShader.shader
uploadId: 328562

View file

@ -0,0 +1,108 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: StarfieldMaterial
m_Shader: {fileID: 104, guid: 0000000000000000f000000000000000, type: 0}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: []
m_InvalidKeywords: []
m_LightmapFlags: 5
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: 1000
stringTagMap: {}
disabledShaderPasses: []
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BackTex:
m_Texture: {fileID: 2800000, guid: 436c0fe13f07bf847a6626d843d8659c, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _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}
- _DownTex:
m_Texture: {fileID: 2800000, guid: 436c0fe13f07bf847a6626d843d8659c, type: 3}
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}
- _FrontTex:
m_Texture: {fileID: 2800000, guid: 436c0fe13f07bf847a6626d843d8659c, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _LeftTex:
m_Texture: {fileID: 2800000, guid: 436c0fe13f07bf847a6626d843d8659c, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: a9d6986e5d3efbe4684a404b9c29c1b0, type: 3}
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}
- _RightTex:
m_Texture: {fileID: 2800000, guid: 436c0fe13f07bf847a6626d843d8659c, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _UpTex:
m_Texture: {fileID: 2800000, guid: 436c0fe13f07bf847a6626d843d8659c, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- PixelSnap: 0
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _Exposure: 1
- _Glossiness: 0.5
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _Rotation: 180
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _Tint: {r: 0.41911763, g: 0.41911763, b: 0.41911763, a: 0.5}
m_BuildTextureStacks: []
m_AllowLocking: 1

View file

@ -0,0 +1,15 @@
fileFormatVersion: 2
guid: 20cdb01e1d91c6746aa1497afcabb355
timeCreated: 1456249286
licenseType: Store
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 56841
packageName: Free Earth Planet - The Best Planet Shader in the Asset Store
packageVersion: 1.1.2
assetPath: Assets/Earth/Materials/StarfieldMaterial.mat
uploadId: 328562

9
Assets/Earth/Prefab.meta Normal file
View file

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: fb5f3b17d638a324f8934d85df38a743
folderAsset: yes
timeCreated: 1456352858
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View file

@ -0,0 +1,237 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &117874
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 420960}
- component: {fileID: 114306062533275076}
- component: {fileID: 12270238}
m_Layer: 0
m_Name: EarthHalo
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 0
--- !u!4 &420960
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 117874}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 432644}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &114306062533275076
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 117874}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b6a3d7cf08b022543afc097128883b86, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!122 &12270238
Halo:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 117874}
m_Enabled: 1
m_Color:
serializedVersion: 2
rgba: 4294914610
m_Size: 21
--- !u!1 &157262
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 432644}
- component: {fileID: 114431905216721126}
m_Layer: 0
m_Name: Earth
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &432644
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 157262}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 420960}
- {fileID: 431172}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &114431905216721126
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 157262}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b6a3d7cf08b022543afc097128883b86, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1 &163060
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 431172}
- component: {fileID: 11401934}
- component: {fileID: 3361438}
- component: {fileID: 2353574}
- component: {fileID: 6439326}
m_Layer: 0
m_Name: EarthRendering
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &431172
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 163060}
serializedVersion: 2
m_LocalRotation: {x: -0.08007338, y: -0.6392664, z: -0.06718954, w: 0.76184803}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 432644}
m_LocalEulerAnglesHint: {x: -12, y: -80, z: 0}
--- !u!114 &11401934
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 163060}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 7a70c881415690c418f87514fe62ae5f, type: 3}
m_Name:
m_EditorClassIdentifier:
Radius: 20
Detail: 4
IcoSphere: 1
lastRadius: 20
lastDetail: 4
lastIcoSphere: 1
dirty: 0
RotationSpeed: 1
Axis: {x: 0.20475286, y: 0.9781476, z: -0.036103465}
Sun: {fileID: 0}
--- !u!33 &3361438
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 163060}
m_Mesh: {fileID: 0}
--- !u!23 &2353574
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 163060}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 0
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: f7984698def12c74fa2b3aac0d0ac5b0, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 0
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!64 &6439326
MeshCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 163060}
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 0
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 5
m_Convex: 0
m_CookingOptions: 30
m_Mesh: {fileID: 0}

View file

@ -0,0 +1,15 @@
fileFormatVersion: 2
guid: c2e22098ce7c8da4590cceb5113bd50e
timeCreated: 1456352876
licenseType: Store
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 56841
packageName: Free Earth Planet - The Best Planet Shader in the Asset Store
packageVersion: 1.1.2
assetPath: Assets/Earth/Prefab/Earth.prefab
uploadId: 328562

26
Assets/Earth/Readme.txt Normal file
View file

@ -0,0 +1,26 @@
Earth Model for Unity
(c) 2016 Digital Ruby, LLC
Created by Jeff Johnson
Licensed under the MIT license
Version: 1.1.2
Instructions:
- Set linear color space in player settings.
- Drag the Earth prefab into your scene.
- Setup the material properties on EarthMaterial, or clone to make your own planets by changing out the textures and tweaking the properties.
- Make sure you have at least one dir light in the scene, or set the Sun property on the earth script.
- Setup the earth script with an axis to rotate around, or leave as 0, 0, 0 to rotate around the initial up vector.
- Done!
Details:
I created this Earth asset in my spare time for use in prototyping space sims, and because I needed a dynamic sphere generator of better quality than Unity's default sphere. Plus I wanted an Earth with a separate cloud layer.
You should be able to make any planet you want simply by changing the materials for the earth main object and cloud layer object.
The sphere creation script defaults to IcoSphere which looks better, especially at the poles. For other non-planet cases you may have better luck with non-ico sphere. You don't have to do anything as these work automatically during design time and are stripped out in the final build.
I hope you enjoy this asset. Feel free to include it in your own assets, games and source code. Please just retain the MIT license in the script file and add a credit in your readme or asset description that links back to this asset. Thank you!
- Jeff

View file

@ -0,0 +1,15 @@
fileFormatVersion: 2
guid: 5abae9422d47689429d1c2e57cd4c1e7
timeCreated: 1456352815
licenseType: Store
TextScriptImporter:
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 56841
packageName: Free Earth Planet - The Best Planet Shader in the Asset Store
packageVersion: 1.1.2
assetPath: Assets/Earth/Readme.txt
uploadId: 328562

View file

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: cee9e94e3b05e54439e07e9c4ebc3d09
folderAsset: yes
timeCreated: 1433269078
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View file

@ -0,0 +1,10 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace DigitalRuby.Earth
{
public class EarthRootScript : MonoBehaviour
{
}
}

View file

@ -0,0 +1,19 @@
fileFormatVersion: 2
guid: b6a3d7cf08b022543afc097128883b86
timeCreated: 1487177921
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 56841
packageName: Free Earth Planet - The Best Planet Shader in the Asset Store
packageVersion: 1.1.2
assetPath: Assets/Earth/Scripts/EarthRootScript.cs
uploadId: 328562

View file

@ -0,0 +1,78 @@
/*
The MIT License(MIT)
Copyright(c) 2016 Digital Ruby, LLC
http://www.digitalruby.com
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using UnityEngine;
using System.Collections.Generic;
namespace DigitalRuby.Earth
{
[RequireComponent(typeof(MeshRenderer))]
public class EarthScript : SphereScript
{
[Range(-1000.0f, 1000.0f)]
[Tooltip("Rotation speed around axis")]
public float RotationSpeed = 1.0f;
[Tooltip("Planet axis in world vector, defaults to start up vector")]
public Vector3 Axis;
[Tooltip("The sun, defaults to first dir light")]
public Light Sun;
private MeshRenderer meshRenderer;
private MaterialPropertyBlock materialBlock;
private void OnEnable()
{
meshRenderer = GetComponent<MeshRenderer>();
materialBlock = new MaterialPropertyBlock();
Sun = (Sun == null ? Light.GetLights(LightType.Directional, -1)[0] : Sun);
if (Axis == Vector3.zero)
{
Axis = transform.up;
}
else
{
Axis = Axis.normalized;
}
}
protected override void Update()
{
base.Update();
if (materialBlock != null && Sun != null && meshRenderer != null)
{
meshRenderer.GetPropertyBlock(materialBlock);
materialBlock.SetVector("_SunDir", -Sun.transform.forward);
materialBlock.SetVector("_SunColor", new Vector4(Sun.color.r, Sun.color.g, Sun.color.b, Sun.intensity));
meshRenderer.SetPropertyBlock(materialBlock);
}
#if UNITY_EDITOR
if (Application.isPlaying)
{
#endif
transform.Rotate(Axis, RotationSpeed * Time.deltaTime);
#if UNITY_EDITOR
}
#endif
}
}
}

View file

@ -0,0 +1,19 @@
fileFormatVersion: 2
guid: 7a70c881415690c418f87514fe62ae5f
timeCreated: 1456247318
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 56841
packageName: Free Earth Planet - The Best Planet Shader in the Asset Store
packageVersion: 1.1.2
assetPath: Assets/Earth/Scripts/EarthScript.cs
uploadId: 328562

View file

@ -0,0 +1,44 @@
/*
The MIT License(MIT)
Copyright(c) 2016 Digital Ruby, LLC
http://www.digitalruby.com
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using UnityEngine;
using System.Collections;
namespace DigitalRuby.Earth
{
public class MoveScript : MonoBehaviour
{
public float Speed = 10.0f;
private void Start()
{
}
private void Update()
{
float move = Input.GetAxis("Vertical");
transform.position += (transform.forward * Speed * Time.deltaTime * move);
move = Input.GetAxis("Horizontal");
transform.position += (transform.right * Speed * Time.deltaTime * move);
var pitch = Input.GetAxis("Mouse Y") * -150.0f * Time.deltaTime;
var yaw = Input.GetAxis("Mouse X") * 150.0f * Time.deltaTime;
var roll = (Input.GetMouseButton(1) ? yaw : 0.0f);
if (roll != 0.0f)
{
yaw = 0.0f;
}
transform.Rotate(pitch, yaw, roll);
}
}
}

View file

@ -0,0 +1,19 @@
fileFormatVersion: 2
guid: 9278714cdaebb1a41a6cb538a04fc686
timeCreated: 1456369985
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 56841
packageName: Free Earth Planet - The Best Planet Shader in the Asset Store
packageVersion: 1.1.2
assetPath: Assets/Earth/Scripts/MoveScript.cs
uploadId: 328562

View file

@ -0,0 +1,440 @@
/*
The MIT License(MIT)
Copyright(c) 2016 Digital Ruby, LLC
http://www.digitalruby.com
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
using UnityEngine;
using System.Collections.Generic;
namespace DigitalRuby.Earth
{
[ExecuteInEditMode]
[RequireComponent(typeof(MeshFilter))]
public class SphereScript : MonoBehaviour
{
private struct MiddlePointCacheKey
{
public int Key1;
public int Key2;
public override bool Equals(object obj)
{
if (obj is MiddlePointCacheKey)
{
MiddlePointCacheKey k = (MiddlePointCacheKey)obj;
return (k.Key1 == Key1 && k.Key2 == Key2);
}
return false;
}
public override int GetHashCode()
{
return Key1.GetHashCode() + Key2.GetHashCode();
}
}
private struct TriangleIndices
{
public int v1;
public int v2;
public int v3;
public TriangleIndices(int v1, int v2, int v3)
{
this.v1 = v1;
this.v2 = v2;
this.v3 = v3;
}
}
[Range(0.1f, 100.0f)]
[Tooltip("Sphere Radius")]
public float Radius = 20.0f;
[Range(2, 6)]
[Tooltip("Detail level. The higher, the more triangles.")]
public int Detail = 4;
[Tooltip("Whether to use an IcoSphere or UV sphere. IcoSphere are better for planets. Both use UV coordinates properly.")]
public bool IcoSphere = true;
[HideInInspector]
[SerializeField]
private float lastRadius;
[HideInInspector]
[SerializeField]
private int lastDetail;
[HideInInspector]
[SerializeField]
private bool lastIcoSphere;
[HideInInspector]
[SerializeField]
private bool dirty = true;
#if UNITY_EDITOR
private void CheckDirty()
{
if (Radius != lastRadius)
{
lastRadius = Radius;
dirty = true;
}
if (Detail != lastDetail)
{
lastDetail = Detail;
dirty = true;
}
if (IcoSphere != lastIcoSphere)
{
lastIcoSphere = IcoSphere;
dirty = true;
}
if (GetComponent<MeshFilter>().sharedMesh == null)
{
dirty = true;
}
}
private void CreateUVSphere()
{
#region Setup
MeshFilter filter = GetComponent<MeshFilter>();
Mesh mesh = filter.sharedMesh;
if (mesh == null)
{
mesh = filter.sharedMesh = new Mesh();
mesh.name = gameObject.name + "_Mesh";
}
mesh.Clear();
int latitudeCount = 10 * Detail;
int longitudeCount = 15 * Detail;
#endregion Setup
#region Vertices
Vector3[] vertices = new Vector3[(longitudeCount + 1) * latitudeCount + 2];
float _pi = Mathf.PI;
float _2pi = _pi * 2f;
vertices[0] = Vector3.up * Radius;
for (int lat = 0; lat < latitudeCount; lat++)
{
float a1 = _pi * (float)(lat + 1) / (latitudeCount + 1);
float sin1 = Mathf.Sin(a1);
float cos1 = Mathf.Cos(a1);
for (int lon = 0; lon <= longitudeCount; lon++)
{
float a2 = _2pi * (float)(lon == longitudeCount ? 0 : lon) / longitudeCount;
float sin2 = Mathf.Sin(a2);
float cos2 = Mathf.Cos(a2);
vertices[lon + lat * (longitudeCount + 1) + 1] = new Vector3(sin1 * cos2, cos1, sin1 * sin2) * Radius;
}
}
vertices[vertices.Length - 1] = Vector3.up * -Radius;
#endregion
#region Normales
Vector3[] normales = new Vector3[vertices.Length];
for (int n = 0; n < vertices.Length; n++)
normales[n] = vertices[n].normalized;
#endregion
#region UVs
Vector2[] uvs = new Vector2[vertices.Length];
uvs[0] = Vector2.up;
uvs[uvs.Length - 1] = Vector2.zero;
for (int lat = 0; lat < latitudeCount; lat++)
for (int lon = 0; lon <= longitudeCount; lon++)
uvs[lon + lat * (longitudeCount + 1) + 1] = new Vector2((float)lon / longitudeCount, 1f - (float)(lat + 1) / (latitudeCount + 1));
#endregion
#region Triangles
int nbFaces = vertices.Length;
int nbTriangles = nbFaces * 2;
int nbIndexes = nbTriangles * 3;
int[] triangles = new int[nbIndexes];
//Top Cap
int i = 0;
for (int lon = 0; lon < longitudeCount; lon++)
{
triangles[i++] = lon + 2;
triangles[i++] = lon + 1;
triangles[i++] = 0;
}
//Middle
for (int lat = 0; lat < latitudeCount - 1; lat++)
{
for (int lon = 0; lon < longitudeCount; lon++)
{
int current = lon + lat * (longitudeCount + 1) + 1;
int next = current + longitudeCount + 1;
triangles[i++] = current;
triangles[i++] = current + 1;
triangles[i++] = next + 1;
triangles[i++] = current;
triangles[i++] = next + 1;
triangles[i++] = next;
}
}
//Bottom Cap
for (int lon = 0; lon < longitudeCount; lon++)
{
triangles[i++] = vertices.Length - 1;
triangles[i++] = vertices.Length - (lon + 2) - 1;
triangles[i++] = vertices.Length - (lon + 1) - 1;
}
#endregion
#region Finish Up
mesh.vertices = vertices;
mesh.normals = normales;
mesh.uv = uvs;
mesh.triangles = triangles;
mesh.RecalculateBounds();
;
#endregion Finish Up
}
// return index of point in the middle of p1 and p2
private int GetMiddlePoint(int p1, int p2, List<Vector3> vertices, Dictionary<MiddlePointCacheKey, int> middlePointIndexCache)
{
// first check if we have it already
int smallerIndex = Mathf.Min(p1, p2);
int greaterIndex = Mathf.Max(p1, p2);
MiddlePointCacheKey key = new MiddlePointCacheKey { Key1 = smallerIndex, Key2 = greaterIndex };
int ret;
if (middlePointIndexCache.TryGetValue(key, out ret))
{
return ret;
}
// not in cache, calculate it
Vector3 point1 = vertices[p1];
Vector3 point2 = vertices[p2];
Vector3 middle = new Vector3
(
(point1.x + point2.x) / 2f,
(point1.y + point2.y) / 2f,
(point1.z + point2.z) / 2f
);
// add vertex makes sure point is on unit sphere
int i = vertices.Count;
vertices.Add(middle.normalized * Radius);
// store it, return index
middlePointIndexCache.Add(key, i);
return i;
}
public void CreateIcoSphere()
{
MeshFilter filter = GetComponent<MeshFilter>();
Mesh mesh = filter.sharedMesh;
if (mesh == null)
{
mesh = filter.sharedMesh = new Mesh();
mesh.name = gameObject.name + "_Mesh";
}
mesh.Clear();
Dictionary<MiddlePointCacheKey, int> middlePointIndexCache = new Dictionary<MiddlePointCacheKey, int>();
List<Vector3> vertList = new List<Vector3>();
List<int> triList = new List<int>();
List<Vector3> normals = new List<Vector3>();
List<Vector2> uvs = new List<Vector2>();
// create 12 vertices of a icosahedron
float t = (1f + Mathf.Sqrt(5f)) / 2f;
vertList.Add(new Vector3(-1f, t, 0f).normalized * Radius);
vertList.Add(new Vector3(1f, t, 0f).normalized * Radius);
vertList.Add(new Vector3(-1f, -t, 0f).normalized * Radius);
vertList.Add(new Vector3(1f, -t, 0f).normalized * Radius);
vertList.Add(new Vector3(0f, -1f, t).normalized * Radius);
vertList.Add(new Vector3(0f, 1f, t).normalized * Radius);
vertList.Add(new Vector3(0f, -1f, -t).normalized * Radius);
vertList.Add(new Vector3(0f, 1f, -t).normalized * Radius);
vertList.Add(new Vector3(t, 0f, -1f).normalized * Radius);
vertList.Add(new Vector3(t, 0f, 1f).normalized * Radius);
vertList.Add(new Vector3(-t, 0f, -1f).normalized * Radius);
vertList.Add(new Vector3(-t, 0f, 1f).normalized * Radius);
// create 20 triangles of the icosahedron
List<TriangleIndices> faces = new List<TriangleIndices>();
// 5 faces around point 0
faces.Add(new TriangleIndices(0, 11, 5));
faces.Add(new TriangleIndices(0, 5, 1));
faces.Add(new TriangleIndices(0, 1, 7));
faces.Add(new TriangleIndices(0, 7, 10));
faces.Add(new TriangleIndices(0, 10, 11));
// 5 adjacent faces
faces.Add(new TriangleIndices(1, 5, 9));
faces.Add(new TriangleIndices(5, 11, 4));
faces.Add(new TriangleIndices(11, 10, 2));
faces.Add(new TriangleIndices(10, 7, 6));
faces.Add(new TriangleIndices(7, 1, 8));
// 5 faces around point 3
faces.Add(new TriangleIndices(3, 9, 4));
faces.Add(new TriangleIndices(3, 4, 2));
faces.Add(new TriangleIndices(3, 2, 6));
faces.Add(new TriangleIndices(3, 6, 8));
faces.Add(new TriangleIndices(3, 8, 9));
// 5 adjacent faces
faces.Add(new TriangleIndices(4, 9, 5));
faces.Add(new TriangleIndices(2, 4, 11));
faces.Add(new TriangleIndices(6, 2, 10));
faces.Add(new TriangleIndices(8, 6, 7));
faces.Add(new TriangleIndices(9, 8, 1));
// refine triangles
for (int i = 0; i < Detail; i++)
{
List<TriangleIndices> faces2 = new List<TriangleIndices>();
foreach (var tri in faces)
{
// replace triangle by 4 triangles
int a = GetMiddlePoint(tri.v1, tri.v2, vertList, middlePointIndexCache);
int b = GetMiddlePoint(tri.v2, tri.v3, vertList, middlePointIndexCache);
int c = GetMiddlePoint(tri.v3, tri.v1, vertList, middlePointIndexCache);
faces2.Add(new TriangleIndices(tri.v1, a, c));
faces2.Add(new TriangleIndices(tri.v2, b, a));
faces2.Add(new TriangleIndices(tri.v3, c, b));
faces2.Add(new TriangleIndices(a, b, c));
}
faces = faces2;
}
for (int i = 0; i < vertList.Count; i++)
{
Vector3 n = vertList[i].normalized;
normals.Add(n);
float u = 0.5f - (0.5f * Mathf.Atan2(n.x, n.z) / Mathf.PI);
float v = 1.0f - Mathf.Acos(n.y) / Mathf.PI;
uvs.Add(new Vector2(u, v));
}
for (int i = 0; i < faces.Count; i++)
{
triList.Add(faces[i].v1);
triList.Add(faces[i].v2);
triList.Add(faces[i].v3);
}
System.Action<int, Vector2> fixVertex = (int i, Vector2 uv) =>
{
int index = triList[i];
triList[i] = vertList.Count;
vertList.Add(vertList[index]);
normals.Add(normals[index]);
uvs.Add(uv);
};
// fix texture seams
for (int i = 0; i < triList.Count; i += 3)
{
Vector2 uv0 = uvs[triList[i]];
Vector2 uv1 = uvs[triList[i + 1]];
Vector2 uv2 = uvs[triList[i + 2]];
float d1 = uv1.x - uv0.x;
float d2 = uv2.x - uv0.x;
if (Mathf.Abs(d1) > 0.5f)
{
if (Mathf.Abs(d2) > 0.5f)
{
fixVertex(i, uv0 + new Vector2((d1 > 0.0f) ? 1.0f : -1.0f, 0.0f));
}
else
{
fixVertex(i + 1, uv1 + new Vector2((d1 < 0.0f) ? 1.0f : -1.0f, 0.0f));
}
}
else if (Mathf.Abs(d2) > 0.5f)
{
fixVertex(i + 2, uv2 + new Vector2((d2 < 0.0f) ? 1.0f : -1.0f, 0.0f));
}
}
mesh.SetVertices(vertList);
mesh.SetUVs(0, uvs);
mesh.SetNormals(normals);
mesh.SetTriangles(triList, 0);
mesh.RecalculateBounds();
;
middlePointIndexCache.Clear();
}
#endif
protected virtual void Start()
{
#if UNITY_EDITOR
if (Application.isPlaying)
{
CheckDirty();
dirty = false;
}
#endif
}
protected virtual void Update()
{
#if UNITY_EDITOR
CheckDirty();
if (dirty)
{
dirty = false;
if (IcoSphere)
{
CreateIcoSphere();
}
else
{
CreateUVSphere();
}
}
#endif
}
}
}

View file

@ -0,0 +1,19 @@
fileFormatVersion: 2
guid: a7503af7db833c840a891458c125d4e9
timeCreated: 1456416322
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 56841
packageName: Free Earth Planet - The Best Planet Shader in the Asset Store
packageVersion: 1.1.2
assetPath: Assets/Earth/Scripts/SphereScript.cs
uploadId: 328562

View file

@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: bbc50bf135147104eb9bef42d60722de
folderAsset: yes
timeCreated: 1456349073
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 MiB

View file

@ -0,0 +1,123 @@
fileFormatVersion: 2
guid: 961fa74443856d247867fce623b3d325
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 1
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: -3
maxTextureSize: 4096
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 2
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 4096
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- buildTarget: Standalone
maxTextureSize: 4096
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- buildTarget: Android
maxTextureSize: 4096
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- buildTarget: Windows Store Apps
maxTextureSize: 4096
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- buildTarget: WebGL
maxTextureSize: 4096
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 56841
packageName: Free Earth Planet - The Best Planet Shader in the Asset Store
packageVersion: 1.1.2
assetPath: Assets/Earth/Textures/EarthClouds.png
uploadId: 328562

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 MiB

View file

@ -0,0 +1,64 @@
fileFormatVersion: 2
guid: 7dfcb90673cf9a44281e7da0b32902b2
timeCreated: 1457125283
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: -3
maxTextureSize: 4096
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
textureType: -1
buildTargetSettings: []
spriteSheet:
sprites: []
outline: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 56841
packageName: Free Earth Planet - The Best Planet Shader in the Asset Store
packageVersion: 1.1.2
assetPath: Assets/Earth/Textures/EarthDiffuse.png
uploadId: 328562

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 MiB

View file

@ -0,0 +1,64 @@
fileFormatVersion: 2
guid: 8d73a1f30b7717d4f8f40e2a2128ae7e
timeCreated: 1457125284
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: -3
maxTextureSize: 4096
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
textureType: -1
buildTargetSettings: []
spriteSheet:
sprites: []
outline: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 56841
packageName: Free Earth Planet - The Best Planet Shader in the Asset Store
packageVersion: 1.1.2
assetPath: Assets/Earth/Textures/EarthLights.png
uploadId: 328562

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 MiB

View file

@ -0,0 +1,103 @@
fileFormatVersion: 2
guid: c2fa05cb71836f246b5eabf3f3c6151c
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 0
linearTexture: 1
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 1
externalNormalMap: 1
heightScale: 0.2
normalMapFilter: 1
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: -1
maxTextureSize: 4096
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 1
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 4096
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- buildTarget: Standalone
maxTextureSize: 4096
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- buildTarget: Android
maxTextureSize: 4096
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 56841
packageName: Free Earth Planet - The Best Planet Shader in the Asset Store
packageVersion: 1.1.2
assetPath: Assets/Earth/Textures/EarthNormalMap.png
uploadId: 328562

Binary file not shown.

After

Width:  |  Height:  |  Size: 1 MiB

View file

@ -0,0 +1,103 @@
fileFormatVersion: 2
guid: 5ca5bf05f3cb3b046be353275c0ef45c
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 0
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: -3
maxTextureSize: 4096
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -1
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 2
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 10
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 4096
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- buildTarget: Standalone
maxTextureSize: 4096
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- buildTarget: Android
maxTextureSize: 4096
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 56841
packageName: Free Earth Planet - The Best Planet Shader in the Asset Store
packageVersion: 1.1.2
assetPath: Assets/Earth/Textures/EarthSpecular.png
uploadId: 328562

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 MiB

View file

@ -0,0 +1,64 @@
fileFormatVersion: 2
guid: 436c0fe13f07bf847a6626d843d8659c
timeCreated: 1457125281
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: -3
maxTextureSize: 4096
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
textureType: -1
buildTargetSettings: []
spriteSheet:
sprites: []
outline: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 56841
packageName: Free Earth Planet - The Best Planet Shader in the Asset Store
packageVersion: 1.1.2
assetPath: Assets/Earth/Textures/EarthStarfield.png
uploadId: 328562

8
Assets/Prefabs.meta Normal file
View file

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 8e266213095071d41a7b854c75f01aa1
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View file

@ -0,0 +1,33 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &6039747573752144155
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7965170655419664431}
m_Layer: 0
m_Name: Point
m_TagString: Untagged
m_Icon: {fileID: 3443629218296621865, guid: 0000000000000000d000000000000000, type: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &7965170655419664431
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6039747573752144155}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}

View file

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 6fa1678ce2080e44ca5b11723d197651
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View file

@ -38,12 +38,12 @@ RenderSettings:
m_ReflectionIntensity: 1
m_CustomReflection: {fileID: 0}
m_Sun: {fileID: 0}
m_IndirectSpecularColor: {r: 0.18028378, g: 0.22571412, b: 0.30692285, a: 1}
m_UseRadianceAmbientProbe: 0
--- !u!157 &3
LightmapSettings:
m_ObjectHideFlags: 0
serializedVersion: 12
serializedVersion: 13
m_BakeOnSceneLoad: 0
m_GISettings:
serializedVersion: 2
m_BounceScale: 1
@ -85,8 +85,8 @@ LightmapSettings:
m_PVREnvironmentMIS: 1
m_PVRCulling: 1
m_PVRFilteringGaussRadiusDirect: 1
m_PVRFilteringGaussRadiusIndirect: 5
m_PVRFilteringGaussRadiusAO: 2
m_PVRFilteringGaussRadiusIndirect: 1
m_PVRFilteringGaussRadiusAO: 1
m_PVRFilteringAtrousPositionSigmaDirect: 0.5
m_PVRFilteringAtrousPositionSigmaIndirect: 2
m_PVRFilteringAtrousPositionSigmaAO: 1
@ -119,7 +119,7 @@ NavMeshSettings:
debug:
m_Flags: 0
m_NavMeshData: {fileID: 0}
--- !u!1 &330585543
--- !u!1 &216264795
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
@ -127,10 +127,239 @@ GameObject:
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 330585546}
- component: {fileID: 330585545}
- component: {fileID: 330585544}
- component: {fileID: 330585547}
- component: {fileID: 216264799}
- component: {fileID: 216264798}
- component: {fileID: 216264797}
- component: {fileID: 216264796}
m_Layer: 0
m_Name: Sphere
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!135 &216264796
SphereCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 216264795}
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 0
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 3
m_Radius: 0.5
m_Center: {x: 0, y: 0, z: 0}
--- !u!23 &216264797
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 216264795}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!33 &216264798
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 216264795}
m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0}
--- !u!4 &216264799
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 216264795}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 1.471, z: -10}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &744546493
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 744546495}
- component: {fileID: 744546494}
- component: {fileID: 744546496}
m_Layer: 0
m_Name: Directional Light
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!108 &744546494
Light:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 744546493}
m_Enabled: 1
serializedVersion: 11
m_Type: 1
m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1}
m_Intensity: 1
m_Range: 10
m_SpotAngle: 30
m_InnerSpotAngle: 21.80208
m_CookieSize: 10
m_Shadows:
m_Type: 2
m_Resolution: -1
m_CustomResolution: -1
m_Strength: 1
m_Bias: 0.05
m_NormalBias: 0.4
m_NearPlane: 0.2
m_CullingMatrixOverride:
e00: 1
e01: 0
e02: 0
e03: 0
e10: 0
e11: 1
e12: 0
e13: 0
e20: 0
e21: 0
e22: 1
e23: 0
e30: 0
e31: 0
e32: 0
e33: 1
m_UseCullingMatrixOverride: 0
m_Cookie: {fileID: 0}
m_DrawHalo: 0
m_Flare: {fileID: 0}
m_RenderMode: 0
m_CullingMask:
serializedVersion: 2
m_Bits: 4294967295
m_RenderingLayerMask: 1
m_Lightmapping: 4
m_LightShadowCasterMode: 0
m_AreaSize: {x: 1, y: 1}
m_BounceIntensity: 1
m_ColorTemperature: 6570
m_UseColorTemperature: 0
m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0}
m_UseBoundingSphereOverride: 0
m_UseViewFrustumForShadowCasterCull: 1
m_ForceVisible: 0
m_ShadowRadius: 0
m_ShadowAngle: 0
m_LightUnit: 1
m_LuxAtDistance: 1
m_EnableSpotReflector: 1
--- !u!4 &744546495
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 744546493}
serializedVersion: 2
m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261}
m_LocalPosition: {x: 0, y: 3, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0}
--- !u!114 &744546496
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 744546493}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Version: 3
m_UsePipelineSettings: 1
m_AdditionalLightsShadowResolutionTier: 2
m_LightLayerMask: 1
m_RenderingLayers: 1
m_CustomShadowLayers: 0
m_ShadowLayerMask: 1
m_ShadowRenderingLayers: 1
m_LightCookieSize: {x: 1, y: 1}
m_LightCookieOffset: {x: 0, y: 0}
m_SoftShadowQuality: 0
--- !u!1 &917590318
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 917590321}
- component: {fileID: 917590320}
- component: {fileID: 917590319}
- component: {fileID: 917590322}
m_Layer: 0
m_Name: Main Camera
m_TagString: MainCamera
@ -138,21 +367,21 @@ GameObject:
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!81 &330585544
--- !u!81 &917590319
AudioListener:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 330585543}
m_GameObject: {fileID: 917590318}
m_Enabled: 1
--- !u!20 &330585545
--- !u!20 &917590320
Camera:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 330585543}
m_GameObject: {fileID: 917590318}
m_Enabled: 1
serializedVersion: 2
m_ClearFlags: 1
@ -197,28 +426,28 @@ Camera:
m_OcclusionCulling: 1
m_StereoConvergence: 10
m_StereoSeparation: 0.022
--- !u!4 &330585546
--- !u!4 &917590321
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 330585543}
m_GameObject: {fileID: 917590318}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 1, z: -10}
m_LocalPosition: {x: 0, y: 1.45, z: -12.359}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &330585547
--- !u!114 &917590322
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 330585543}
m_GameObject: {fileID: 917590318}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3}
@ -235,7 +464,7 @@ MonoBehaviour:
m_Bits: 1
m_VolumeTrigger: {fileID: 0}
m_VolumeFrameworkUpdateModeOption: 2
m_RenderPostProcessing: 1
m_RenderPostProcessing: 0
m_Antialiasing: 0
m_AntialiasingQuality: 2
m_StopNaN: 0
@ -250,183 +479,16 @@ MonoBehaviour:
m_RequiresColorTexture: 0
m_Version: 2
m_TaaSettings:
quality: 3
frameInfluence: 0.1
jitterScale: 1
mipBias: 0
varianceClampScale: 0.9
contrastAdaptiveSharpening: 0
--- !u!1 &410087039
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 410087041}
- component: {fileID: 410087040}
- component: {fileID: 410087042}
m_Layer: 0
m_Name: Directional Light
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!108 &410087040
Light:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 410087039}
m_Enabled: 1
serializedVersion: 11
m_Type: 1
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_Intensity: 2
m_Range: 10
m_SpotAngle: 30
m_InnerSpotAngle: 21.80208
m_CookieSize: 10
m_Shadows:
m_Type: 2
m_Resolution: -1
m_CustomResolution: -1
m_Strength: 1
m_Bias: 0.05
m_NormalBias: 0.4
m_NearPlane: 0.2
m_CullingMatrixOverride:
e00: 1
e01: 0
e02: 0
e03: 0
e10: 0
e11: 1
e12: 0
e13: 0
e20: 0
e21: 0
e22: 1
e23: 0
e30: 0
e31: 0
e32: 0
e33: 1
m_UseCullingMatrixOverride: 0
m_Cookie: {fileID: 0}
m_DrawHalo: 0
m_Flare: {fileID: 0}
m_RenderMode: 0
m_CullingMask:
serializedVersion: 2
m_Bits: 4294967295
m_RenderingLayerMask: 1
m_Lightmapping: 4
m_LightShadowCasterMode: 0
m_AreaSize: {x: 1, y: 1}
m_BounceIntensity: 1
m_ColorTemperature: 5000
m_UseColorTemperature: 1
m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0}
m_UseBoundingSphereOverride: 0
m_UseViewFrustumForShadowCasterCull: 1
m_ForceVisible: 0
m_ShadowRadius: 0
m_ShadowAngle: 0
--- !u!4 &410087041
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 410087039}
serializedVersion: 2
m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261}
m_LocalPosition: {x: 0, y: 3, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0}
--- !u!114 &410087042
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 410087039}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Version: 3
m_UsePipelineSettings: 1
m_AdditionalLightsShadowResolutionTier: 2
m_LightLayerMask: 1
m_RenderingLayers: 1
m_CustomShadowLayers: 0
m_ShadowLayerMask: 1
m_ShadowRenderingLayers: 1
m_LightCookieSize: {x: 1, y: 1}
m_LightCookieOffset: {x: 0, y: 0}
m_SoftShadowQuality: 1
--- !u!1 &832575517
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 832575519}
- component: {fileID: 832575518}
m_Layer: 0
m_Name: Global Volume
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &832575518
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 832575517}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 172515602e62fb746b5d573b38a5fe58, type: 3}
m_Name:
m_EditorClassIdentifier:
m_IsGlobal: 1
priority: 0
blendDistance: 0
weight: 1
sharedProfile: {fileID: 11400000, guid: 10fc4df2da32a41aaa32d77bc913491c, type: 2}
--- !u!4 &832575519
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 832575517}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_Quality: 3
m_FrameInfluence: 0.1
m_JitterScale: 1
m_MipBias: 0
m_VarianceClampScale: 0.9
m_ContrastAdaptiveSharpening: 0
--- !u!1660057539 &9223372036854775807
SceneRoots:
m_ObjectHideFlags: 0
m_Roots:
- {fileID: 330585546}
- {fileID: 410087041}
- {fileID: 832575519}
- {fileID: 917590321}
- {fileID: 744546495}
- {fileID: 216264799}

View file

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 99c9720ab356a0642a771bea13969a05
guid: 4e3766efe1033c342929e052e67398e2
DefaultImporter:
externalObjects: {}
userData:

8
Assets/Scripts.meta Normal file
View file

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 64e21f8da75a4904686495e8e66a918d
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View file

@ -0,0 +1,16 @@
using UnityEngine;
public class AudioManager : MonoBehaviour
{
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
}
// Update is called once per frame
void Update()
{
}
}

View file

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 909abaa0a31e5094092ffc4561b4bc06

View file

@ -342,6 +342,9 @@ MonoBehaviour:
skyOcclusionIntensityMultiplier:
m_OverrideState: 1
m_Value: 1
worldOffset:
m_OverrideState: 1
m_Value: {x: 0, y: 0, z: 0}
--- !u!114 &-1216621516061285780
MonoBehaviour:
m_ObjectHideFlags: 3
@ -462,8 +465,6 @@ MonoBehaviour:
- {fileID: -6288072647309666549}
- {fileID: 7518938298396184218}
- {fileID: -1410297666881709256}
- {fileID: -7750755424749557576}
- {fileID: -5139089513906902183}
--- !u!114 &853819529557874667
MonoBehaviour:
m_ObjectHideFlags: 3

View file

@ -17,7 +17,7 @@ PlayerSettings:
defaultCursor: {fileID: 0}
cursorHotspot: {x: 0, y: 0}
m_SplashScreenBackgroundColor: {r: 0.13725491, g: 0.12156863, b: 0.1254902, a: 1}
m_ShowUnitySplashScreen: 1
m_ShowUnitySplashScreen: 0
m_ShowUnitySplashLogo: 1
m_SplashScreenOverlayOpacity: 1
m_SplashScreenAnimation: 1

View file

@ -0,0 +1,121 @@
{
"templatePinStates": [],
"dependencyTypeInfos": [
{
"userAdded": false,
"type": "UnityEngine.AnimationClip",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEditor.Animations.AnimatorController",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEngine.AnimatorOverrideController",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEditor.Audio.AudioMixerController",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEngine.ComputeShader",
"defaultInstantiationMode": 1
},
{
"userAdded": false,
"type": "UnityEngine.Cubemap",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEngine.GameObject",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEditor.LightingDataAsset",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEngine.LightingSettings",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEngine.Material",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEditor.MonoScript",
"defaultInstantiationMode": 1
},
{
"userAdded": false,
"type": "UnityEngine.PhysicsMaterial",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEngine.PhysicsMaterial2D",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEngine.Rendering.PostProcessing.PostProcessProfile",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEngine.Rendering.PostProcessing.PostProcessResources",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEngine.Rendering.VolumeProfile",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEditor.SceneAsset",
"defaultInstantiationMode": 1
},
{
"userAdded": false,
"type": "UnityEngine.Shader",
"defaultInstantiationMode": 1
},
{
"userAdded": false,
"type": "UnityEngine.ShaderVariantCollection",
"defaultInstantiationMode": 1
},
{
"userAdded": false,
"type": "UnityEngine.Texture",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEngine.Texture2D",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEngine.Timeline.TimelineAsset",
"defaultInstantiationMode": 0
}
],
"defaultDependencyTypeInfo": {
"userAdded": false,
"type": "<default_scene_template_dependencies>",
"defaultInstantiationMode": 1
},
"newSceneOverride": 0
}