Initial commit

This commit is contained in:
gunnbr committed 2021-01-11 22:20:43 -08:00
1 parent ee9615239e
commit 16feac691f
4093 files changed
+1030491

No files matched your search

@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: 17605d28db81e484385c217a0249b29a
folderAsset: yes
timeCreated: 1449698724
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,82 @@
using UnityEngine;
using System.Collections;
namespace Gaia.GXC.Dogmatic
{
/// <summary>
/// Description for village exteriors kit
/// </summary>
public class AQUASWaterSet : MonoBehaviour
{
/// <summary>
/// Publisher name
/// </summary>
/// <returns>Publisher name</returns>
public static string GetPublisherName()
{
return "Dogmatic";
}
/// <summary>
/// Package name
/// </summary>
/// <returns>Package name</returns>
public static string GetPackageName()
{
return "AQUAS Water Set";
}
/// <summary>
/// Package image
/// </summary>
/// <returns>Package image</returns>
public static string GetPackageImage()
{
return "AQUASWaterSet";
}
/// <summary>
/// Package description
/// </summary>
/// <returns>Package description</returns>
public static string GetPackageDescription()
{
return @"AQUAS Water contains a set of 9 flat water shaders for all types of platforms, environments and games. It is highly customizable and feature rich to suit all needs.
AQUAS contains 4 mobile shaders for different performance levels and 5 high-quality shaders for web and desktop applications.
Features:
Rendering:
- Multi-Light-Support
- Distorted Realtime Reflections
- Realtime Refraction
- Depth Based Color Absorption
- Self-Sustaining Fog System, that works with any custom lighting
- Dual-layered Caustic effects
Underwater Effects
- Limited & Distorted Vision
- Bloom, Blur & Godrays
- 3D Morphing Bubbles
- Realistic Bubble Spawner
- Advanced Wet Lens Effect
Ease of use
- Works out of the box (Demo Scene included)
- Highly customizable
- Quick Setup
AQUAS works with Unity Free & Pro";
}
/// <summary>
/// Package URL
/// </summary>
/// <returns>Package URL</returns>
public static string GetPackageURL()
{
return "https://www.assetstore.unity3d.com/en/#!/content/52103";
}
}
}
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 021867472ebb00342a196a1a22c2935a
timeCreated: 1455908072
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,55 @@
fileFormatVersion: 2
guid: 1c211d76b34906346867334fbe56b3ce
timeCreated: 1455908080
licenseType: Store
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 2
mipmaps:
mipMapMode: 0
enableMipMap: 0
linearTexture: 1
correctGamma: 0
fadeOut: 0
borderMipMap: 0
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: .25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 0
cubemapConvolution: 0
cubemapConvolutionSteps: 8
cubemapConvolutionExponent: 1.5
seamlessCubemap: 0
textureFormat: -3
maxTextureSize: 2048
textureSettings:
filterMode: 1
aniso: 1
mipBias: -1
wrapMode: 1
nPOTScale: 0
lightmap: 0
rGBM: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: .5, y: .5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaIsTransparency: 1
textureType: 2
buildTargetSettings: []
spriteSheet:
sprites: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,60 @@
using UnityEngine;
using System.Collections;
namespace Gaia.GXC.PolyPixel
{
/// <summary>
/// Description for village exteriors kit
/// </summary>
public class CountrySidePack : MonoBehaviour
{
/// <summary>
/// Publisher name
/// </summary>
/// <returns>Publisher name</returns>
public static string GetPublisherName()
{
return "PolyPixel";
}
/// <summary>
/// Package name
/// </summary>
/// <returns>Package name</returns>
public static string GetPackageName()
{
return "CountrySide Pack";
}
/// <summary>
/// Package image
/// </summary>
/// <returns>Package image</returns>
public static string GetPackageImage()
{
return "CountrySidePack";
}
/// <summary>
/// Package description
/// </summary>
/// <returns>Package description</returns>
public static string GetPackageDescription()
{
return @"CountrySide V2.1 is a starter kit to create your own beautiful & lush nature environment.
Assets include: pre­built cabins, trees (chestnut, maple, beech, etc.), ground plants (flowers, weeds, grass), boulders, terrain textures, and modular fences.
All trees feature a high­fidelity and lower poly version to cater towards your platform.";
}
/// <summary>
/// Package URL
/// </summary>
/// <returns>Package URL</returns>
public static string GetPackageURL()
{
return "https://www.assetstore.unity3d.com/en/#!/content/34483";
}
}
}
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 1b1d75960acd894469a99e3337311950
timeCreated: 1448606398
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,55 @@
fileFormatVersion: 2
guid: 983d416ccf923c7458e29d2d5083a493
timeCreated: 1457510375
licenseType: Store
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 2
mipmaps:
mipMapMode: 0
enableMipMap: 0
linearTexture: 1
correctGamma: 0
fadeOut: 0
borderMipMap: 0
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: .25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 0
cubemapConvolution: 0
cubemapConvolutionSteps: 8
cubemapConvolutionExponent: 1.5
seamlessCubemap: 0
textureFormat: -3
maxTextureSize: 2048
textureSettings:
filterMode: -1
aniso: 1
mipBias: -1
wrapMode: 1
nPOTScale: 0
lightmap: 0
rGBM: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: .5, y: .5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaIsTransparency: 1
textureType: 2
buildTargetSettings: []
spriteSheet:
sprites: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,65 @@
using UnityEngine;
using System.Collections;
namespace Gaia.GXC.SpeedTree
{
/// <summary>
/// Description for village exteriors kit
/// </summary>
public class DesktopGroundCoverPackage : MonoBehaviour
{
/// <summary>
/// Publisher name
/// </summary>
/// <returns>Publisher name</returns>
public static string GetPublisherName()
{
return "SpeedTree";
}
/// <summary>
/// Package name
/// </summary>
/// <returns>Package name</returns>
public static string GetPackageName()
{
return "Desktop Ground Cover Package";
}
/// <summary>
/// Package image
/// </summary>
/// <returns>Package image</returns>
public static string GetPackageImage()
{
return "DesktopGroundCoverPackage1";
}
/// <summary>
/// Package description
/// </summary>
/// <returns>Package description</returns>
public static string GetPackageDescription()
{
return @"These SpeedTree models feature seamless LOD transitions and scalable wind effects that work in Unity out of the box. Package includes:
• An assortment of summer, autumn, winter, juvenile, and bare versions in desktop resolution.
• 190 high-res diffuse/normal/specular maps.
• 24 leaf map maker SPM files (details).
Create limitless variations of each model or design something completely new with a $19 USD/month subscription to the SpeedTree Modeler.
What makes SpeedTree models more than just a mesh? Click the link below.
";
}
/// <summary>
/// Package URL
/// </summary>
/// <returns>Package URL</returns>
public static string GetPackageURL()
{
return "https://www.assetstore.unity3d.com/en/#!/content/24359";
}
}
}
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 9c70dd78ceba6404495430aea8f2dc89
timeCreated: 1456020727
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,55 @@
fileFormatVersion: 2
guid: 2a779b4fa16486c43a6db61c2e2c2ea3
timeCreated: 1456892874
licenseType: Store
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 2
mipmaps:
mipMapMode: 0
enableMipMap: 0
linearTexture: 1
correctGamma: 0
fadeOut: 0
borderMipMap: 0
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: .25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 0
cubemapConvolution: 0
cubemapConvolutionSteps: 8
cubemapConvolutionExponent: 1.5
seamlessCubemap: 0
textureFormat: -3
maxTextureSize: 2048
textureSettings:
filterMode: -1
aniso: 1
mipBias: -1
wrapMode: 1
nPOTScale: 0
lightmap: 0
rGBM: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: .5, y: .5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaIsTransparency: 1
textureType: 2
buildTargetSettings: []
spriteSheet:
sprites: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,65 @@
using UnityEngine;
using System.Collections;
namespace Gaia.GXC.SpeedTree
{
/// <summary>
/// Description for village exteriors kit
/// </summary>
public class DesktopTreesPackage : MonoBehaviour
{
/// <summary>
/// Publisher name
/// </summary>
/// <returns>Publisher name</returns>
public static string GetPublisherName()
{
return "SpeedTree";
}
/// <summary>
/// Package name
/// </summary>
/// <returns>Package name</returns>
public static string GetPackageName()
{
return "Desktop Trees Package";
}
/// <summary>
/// Package image
/// </summary>
/// <returns>Package image</returns>
public static string GetPackageImage()
{
return "DesktopTreesPackage1";
}
/// <summary>
/// Package description
/// </summary>
/// <returns>Package description</returns>
public static string GetPackageDescription()
{
return @"These SpeedTree models feature seamless LOD transitions and scalable wind effects that work in Unity out of the box. Package includes:
• An assortment of summer, autumn, winter, juvenile, and bare versions in desktop resolution.
• 190 high-res diffuse/normal/specular maps.
• 24 leaf map maker SPM files (details).
Create limitless variations of each model or design something completely new with a $19 USD/month subscription to the SpeedTree Modeler.
What makes SpeedTree models more than just a mesh? Click the link below.
";
}
/// <summary>
/// Package URL
/// </summary>
/// <returns>Package URL</returns>
public static string GetPackageURL()
{
return "https://www.assetstore.unity3d.com/en/#!/content/24350";
}
}
}
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: c94420baf910e8347abf57c28a0fe52d
timeCreated: 1449029756
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,55 @@
fileFormatVersion: 2
guid: 5709c15ed07600b49a6c4c3ce02e8d4d
timeCreated: 1456892981
licenseType: Store
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 2
mipmaps:
mipMapMode: 0
enableMipMap: 0
linearTexture: 1
correctGamma: 0
fadeOut: 0
borderMipMap: 0
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: .25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 0
cubemapConvolution: 0
cubemapConvolutionSteps: 8
cubemapConvolutionExponent: 1.5
seamlessCubemap: 0
textureFormat: -3
maxTextureSize: 2048
textureSettings:
filterMode: -1
aniso: 1
mipBias: -1
wrapMode: 1
nPOTScale: 0
lightmap: 0
rGBM: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: .5, y: .5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaIsTransparency: 1
textureType: 2
buildTargetSettings: []
spriteSheet:
sprites: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,66 @@
using UnityEngine;
using System.Collections;
namespace Gaia.GXC.RandomchaosLtd
{
public class DistingoGaiaExtension : MonoBehaviour
{
#region Gaia Bits
/// <summary>
/// Publisher name
/// </summary>
/// <returns>Publisher name</returns>
public static string GetPublisherName()
{
return "Randomchaos Ltd";
}
/// <summary>
/// Package name
/// </summary>
/// <returns>Package name</returns>
public static string GetPackageName()
{
return "Distingo - Terrain in Detail";
}
/// <summary>
/// Package image
/// </summary>
/// <returns>Package image</returns>
public static string GetPackageImage()
{
return "DistingoGaiaImage";
}
/// <summary>
/// Package description
/// </summary>
/// <returns>Package description</returns>
public static string GetPackageDescription()
{
return @"Distingo – Bringing ever increasing detail to your teerrain.
Alter terrain splatting distance.
Regulate texture tialing based on distance from the camera.
Alter individual textures:-
Near and Far UV Multipliers
Normal map power
Smoothness
Metallic
";
}
/// <summary>
/// Package URL
/// </summary>
/// <returns>Package URL</returns>
public static string GetPackageURL()
{
return "https://www.assetstore.unity3d.com/#!/content/54737";
}
#endregion
}
}
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: bc129f7b8e60d2a4ab80c015b0787f88
timeCreated: 1454634145
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,55 @@
fileFormatVersion: 2
guid: 8f3ecd5477cec2141be5eb15b70e2c35
timeCreated: 1454280333
licenseType: Store
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 2
mipmaps:
mipMapMode: 0
enableMipMap: 0
linearTexture: 1
correctGamma: 0
fadeOut: 0
borderMipMap: 0
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: .25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 0
cubemapConvolution: 0
cubemapConvolutionSteps: 8
cubemapConvolutionExponent: 1.5
seamlessCubemap: 0
textureFormat: -1
maxTextureSize: 2048
textureSettings:
filterMode: -1
aniso: 1
mipBias: -1
wrapMode: 1
nPOTScale: 0
lightmap: 0
rGBM: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: .5, y: .5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaIsTransparency: 1
textureType: 2
buildTargetSettings: []
spriteSheet:
sprites: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,56 @@
using UnityEngine;
using System.Collections;
namespace Gaia.GXC.GameTexturesCom
{
/// <summary>
/// Description for village exteriors kit
/// </summary>
public class GameTexturesCom : MonoBehaviour
{
/// <summary>
/// Publisher name
/// </summary>
/// <returns>Publisher name</returns>
public static string GetPublisherName()
{
return "GameTextures.com";
}
/// <summary>
/// Package name
/// </summary>
/// <returns>Package name</returns>
public static string GetPackageName()
{
return "Game Textures";
}
/// <summary>
/// Package image
/// </summary>
/// <returns>Package image</returns>
public static string GetPackageImage()
{
return "GameTexturesCom";
}
/// <summary>
/// Package description
/// </summary>
/// <returns>Package description</returns>
public static string GetPackageDescription()
{
return @"GameTextures.com is the most beautiful library of game-ready PBR Materials on the Internet.";
}
/// <summary>
/// Package URL
/// </summary>
/// <returns>Package URL</returns>
public static string GetPackageURL()
{
return "http://www.gametextures.com/";
}
}
}
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: f04ff7336014e804ab8a135293739a52
timeCreated: 1454108625
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,55 @@
fileFormatVersion: 2
guid: c13db6047c39e4649a238ef6e14fd1c1
timeCreated: 1454370177
licenseType: Store
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 2
mipmaps:
mipMapMode: 0
enableMipMap: 0
linearTexture: 1
correctGamma: 0
fadeOut: 0
borderMipMap: 0
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: .25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 0
cubemapConvolution: 0
cubemapConvolutionSteps: 8
cubemapConvolutionExponent: 1.5
seamlessCubemap: 0
textureFormat: -3
maxTextureSize: 2048
textureSettings:
filterMode: -1
aniso: 1
mipBias: -1
wrapMode: 1
nPOTScale: 0
lightmap: 0
rGBM: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: .5, y: .5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaIsTransparency: 1
textureType: 2
buildTargetSettings: []
spriteSheet:
sprites: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,148 @@
#if UNITY_EDITOR
using System.Collections.Generic;
using System.IO;
#if MEWLIST_MASSIVE_CLOUDS
using Mewlist;
#endif
using UnityEditor;
using UnityEngine;
namespace Gaia.GX.ProceduralWorlds
{
public class MassiveCloudGX
{
#if MEWLIST_MASSIVE_CLOUDS
#region Generic informational methods
/// <summary>
/// Returns the publisher name if provided.
/// This will override the publisher name in the namespace ie Gaia.GX.PublisherName
/// </summary>
/// <returns>Publisher name</returns>
public static string GetPublisherName()
{
return "Mewlist";
}
/// <summary>
/// Returns the package name if provided
/// This will override the package name in the class name ie public class PackageName.
/// </summary>
/// <returns>Package name</returns>
public static string GetPackageName()
{
return "Massive Clouds - Screen Space Volumetric Clouds";
}
#endregion
#region Methods exposed by Gaia as buttons must be prefixed with GX_
/// <summary>
/// Adds water system to the scene
/// </summary>
public static void GX_AddClouds()
{
AddClouds();
}
/// <summary>
/// Removes water system from the scene
/// </summary>
public static void GX_RemoveClouds()
{
RemoveClouds();
}
#endregion
#region Utils
private static void AddClouds()
{
Camera mainCamera = GaiaUtils.GetCamera();
if (mainCamera != null)
{
MassiveClouds clouds = mainCamera.GetComponent<MassiveClouds>();
if (clouds == null)
{
clouds = mainCamera.gameObject.AddComponent<MassiveClouds>();
}
List<MassiveCloudsProfile> profiles = new List<MassiveCloudsProfile>();
MassiveCloudsProfile profile = AssetDatabase.LoadAssetAtPath<MassiveCloudsProfile>(GaiaUtils.GetAssetPath("Cloudy C.asset"));
List<MassiveCloudsParameter> parameters = new List<MassiveCloudsParameter>();
if (profile != null)
{
profiles.Add(profile);
parameters.Add(profile.Parameter);
clouds.SetProfiles(profiles);
clouds.SetParameters(parameters);
}
MassiveCloudsCameraEffect cloudsEffect = mainCamera.GetComponent<MassiveCloudsCameraEffect>();
if (cloudsEffect == null)
{
cloudsEffect = mainCamera.gameObject.AddComponent<MassiveCloudsCameraEffect>();
}
}
}
private static void RemoveClouds()
{
Camera mainCamera = GaiaUtils.GetCamera();
if (mainCamera != null)
{
MassiveCloudsCameraEffect cloudsEffect = mainCamera.GetComponent<MassiveCloudsCameraEffect>();
if (cloudsEffect != null)
{
GameObject.DestroyImmediate(cloudsEffect);
}
MassiveClouds clouds = mainCamera.GetComponent<MassiveClouds>();
if (clouds != null)
{
GameObject.DestroyImmediate(clouds);
}
}
}
#endregion
#endif
}
[InitializeOnLoad]
public static class MewlistMassiveClouds
{
static MewlistMassiveClouds()
{
string folderName = "MassiveClouds";
if (Directory.Exists(GaiaUtils.GetAssetPath(folderName)))
{
//Make sure we inject GAIA_2_PRESENT
bool updateScripting = false;
var symbols = PlayerSettings.GetScriptingDefineSymbolsForGroup(EditorUserBuildSettings.selectedBuildTargetGroup);
if (!symbols.Contains("MEWLIST_MASSIVE_CLOUDS"))
{
updateScripting = true;
if (symbols.Length < 1)
{
symbols += "MEWLIST_MASSIVE_CLOUDS";
}
else
{
symbols += ";MEWLIST_MASSIVE_CLOUDS";
}
}
if (updateScripting)
{
PlayerSettings.SetScriptingDefineSymbolsForGroup(EditorUserBuildSettings.selectedBuildTargetGroup, symbols);
}
}
}
}
}
#endif
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 8706b84aa3104fc4ca2ef99c1c35cedb
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,55 @@
fileFormatVersion: 2
guid: 81d3dc9087a71b840b54e0232249a21f
timeCreated: 1448656911
licenseType: Store
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 2
mipmaps:
mipMapMode: 0
enableMipMap: 0
linearTexture: 1
correctGamma: 0
fadeOut: 0
borderMipMap: 0
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: .25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 0
cubemapConvolution: 0
cubemapConvolutionSteps: 8
cubemapConvolutionExponent: 1.5
seamlessCubemap: 0
textureFormat: -3
maxTextureSize: 2048
textureSettings:
filterMode: -1
aniso: 1
mipBias: -1
wrapMode: 1
nPOTScale: 0
lightmap: 0
rGBM: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: .5, y: .5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaIsTransparency: 1
textureType: 2
buildTargetSettings: []
spriteSheet:
sprites: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,82 @@
using UnityEngine;
using System.Collections;
namespace Gaia.GXC.TanukiDigital
{
/// <summary>
/// Description for village exteriors kit
/// </summary>
public class TenkokuDynamicSky : MonoBehaviour
{
/// <summary>
/// Publisher name
/// </summary>
/// <returns>Publisher name</returns>
public static string GetPublisherName()
{
return "Tanuki Digital";
}
/// <summary>
/// Package name
/// </summary>
/// <returns>Package name</returns>
public static string GetPackageName()
{
return "TENKOKU Dynamic Sky";
}
/// <summary>
/// Package image
/// </summary>
/// <returns>Package image</returns>
public static string GetPackageImage()
{
return "Tenkoku";
}
/// <summary>
/// Package description
/// </summary>
/// <returns>Package description</returns>
public static string GetPackageDescription()
{
return @"Tenkoku – Dynamic Sky brings completely dynamic high-fidelity sky rendering to Unity developers. There are no sky boxes or static elements, everything from the clouds to each individual star is it's own individual element with appropriate movement and behavior.
Accuracy
- Complete 24hour day-night-year cycle
- True equinox & precession positioning
- Latitude and longitude adjustment
- Accurate sun, planet, and star positions
- Accurate lunar movement and phases
Lighting & Rendering
- Adjustable full scene lighting
- Volumetric lit atmosphere effects
- Multi-layer dynamic cloud formations
- Beautiful night sky rendering
Advanced Effects
- Ambient sound effects
- Advanced weather effects
- Aurora rendering based on latitude
- Partial, annular, and total solar eclipse
Useability
- Built for Unity 5
- Simple to setup and customize
- Easy-to-use custom interface
- For PC/Linux/Mac & Webplayer
";
}
/// <summary>
/// Package URL
/// </summary>
/// <returns>Package URL</returns>
public static string GetPackageURL()
{
return "https://www.assetstore.unity3d.com/en/#!/content/34435";
}
}
}
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 1e6400aedf11bb3458cc1b6c6c2b2175
timeCreated: 1449020615
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,55 @@
fileFormatVersion: 2
guid: 5a20c8b47462bae4a8828286a9916938
timeCreated: 1449025135
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: .25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 0
cubemapConvolution: 0
cubemapConvolutionSteps: 8
cubemapConvolutionExponent: 1.5
seamlessCubemap: 0
textureFormat: -3
maxTextureSize: 2048
textureSettings:
filterMode: -1
aniso: -1
mipBias: -1
wrapMode: -1
nPOTScale: 1
lightmap: 0
rGBM: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: .5, y: .5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaIsTransparency: 0
textureType: -1
buildTargetSettings: []
spriteSheet:
sprites: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,61 @@
using UnityEngine;
namespace Gaia.GXC.Opsive
{
/// <summary>
/// Description for Third Person Controller
/// </summary>
public class ThirdPersonController : MonoBehaviour
{
/// <summary>
/// Publisher name
/// </summary>
/// <returns>Publisher name</returns>
public static string GetPublisherName()
{
return "Opsive";
}
/// <summary>
/// Package name
/// </summary>
/// <returns>Package name</returns>
public static string GetPackageName()
{
return "Third Person Controller";
}
/// <summary>
/// Package image
/// </summary>
/// <returns>Package image</returns>
public static string GetPackageImage()
{
return "ThirdPersonController";
}
/// <summary>
/// Package description
/// </summary>
/// <returns>Package description</returns>
public static string GetPackageDescription()
{
return @"This is so much more than just a smooth and flexible character controller. The Third Person Controller is your ultimate framework for creating ANY 3rd person game.
Featuring a character and camera controller, combat system, inventory management, and much more! Thousands of hours have gone into developing this framework so you can focus on the unique aspects of your game.
Use the editor scripts to create your character and items in seconds. Easily add new animations with the unique ability system.
Designed to scale, the Third Person Controller comes with mocap animations, mobile and Unity 5 multiplayer support. Any model (humanoid or generic) can be used. It is also integrated with many assets, including Behavior Designer to add life to your AI characters. ";
}
/// <summary>
/// Package URL
/// </summary>
/// <returns>Package URL</returns>
public static string GetPackageURL()
{
return "https://www.assetstore.unity3d.com/en/#!/content/27438";
}
}
}
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: a844156ac87ccd54dbc2ed44a05e2e43
timeCreated: 1454463807
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,55 @@
fileFormatVersion: 2
guid: 78c3e1571bec09e45902b7dabbb01244
timeCreated: 1454464520
licenseType: Store
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 2
mipmaps:
mipMapMode: 0
enableMipMap: 0
linearTexture: 1
correctGamma: 0
fadeOut: 0
borderMipMap: 0
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: .25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 0
cubemapConvolution: 0
cubemapConvolutionSteps: 8
cubemapConvolutionExponent: 1.5
seamlessCubemap: 0
textureFormat: -3
maxTextureSize: 2048
textureSettings:
filterMode: -1
aniso: 1
mipBias: -1
wrapMode: 1
nPOTScale: 0
lightmap: 0
rGBM: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: .5, y: .5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaIsTransparency: 1
textureType: 2
buildTargetSettings: []
spriteSheet:
sprites: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,57 @@
using UnityEngine;
using System.Collections;
namespace Gaia.GXC.ThreeDForge
{
/// <summary>
/// Description for village exteriors kit
/// </summary>
public class VillageExteriorsKit : MonoBehaviour
{
/// <summary>
/// Publisher name
/// </summary>
/// <returns>Publisher name</returns>
public static string GetPublisherName()
{
return "3D Forge";
}
/// <summary>
/// Package name
/// </summary>
/// <returns>Package name</returns>
public static string GetPackageName()
{
return "Village Exteriors Kit";
}
/// <summary>
/// Package image
/// </summary>
/// <returns>Package image</returns>
public static string GetPackageImage()
{
return "VillageExteriorsKit";
}
/// <summary>
/// Package description
/// </summary>
/// <returns>Package description</returns>
public static string GetPackageDescription()
{
return @"This modular kit is what you have been looking for to construct all the Medieval Fantasy Village & Town buildings you would ever need.
Taverns & Inns, Magic Shops, Town Halls, Guild Halls, Blacksmith Forges, General Stores, Jeweler Shops, Potion Shops, Herbalist, Banks, Armorer, Fletcher, Stables, Keeps, Barns, Store Rooms and many more buildings for your game.";
}
/// <summary>
/// Package URL
/// </summary>
/// <returns>Package URL</returns>
public static string GetPackageURL()
{
return "https://www.assetstore.unity3d.com/en/#!/content/38045";
}
}
}
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 597e86d7c0550c849a00eef1c84dcb3e
timeCreated: 1448604128
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,55 @@
fileFormatVersion: 2
guid: 7b1a8a25b5a63644697e5b9dd9b6066a
timeCreated: 1453183848
licenseType: Store
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 2
mipmaps:
mipMapMode: 0
enableMipMap: 0
linearTexture: 1
correctGamma: 0
fadeOut: 0
borderMipMap: 0
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: .25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 0
cubemapConvolution: 0
cubemapConvolutionSteps: 8
cubemapConvolutionExponent: 1.5
seamlessCubemap: 0
textureFormat: -3
maxTextureSize: 2048
textureSettings:
filterMode: 1
aniso: 1
mipBias: -1
wrapMode: 1
nPOTScale: 0
lightmap: 0
rGBM: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: .5, y: .5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaIsTransparency: 1
textureType: 2
buildTargetSettings: []
spriteSheet:
sprites: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,77 @@
using UnityEngine;
using System.Collections;
namespace Gaia.GXC.Kronnect
{
/// <summary>
/// Description for village exteriors kit
/// </summary>
public class VolumetricFog : MonoBehaviour
{
/// <summary>
/// Publisher name
/// </summary>
/// <returns>Publisher name</returns>
public static string GetPublisherName()
{
return "Kronnect";
}
/// <summary>
/// Package name
/// </summary>
/// <returns>Package name</returns>
public static string GetPackageName()
{
return "Volumetric Fog & Mist";
}
/// <summary>
/// Package image
/// </summary>
/// <returns>Package image</returns>
public static string GetPackageImage()
{
return "VolumetricFog";
}
/// <summary>
/// Package description
/// </summary>
/// <returns>Package description</returns>
public static string GetPackageDescription()
{
return @"Volumetric Fog & Mist is a full-screen image effect that adds realistic, live, moving fog, mist, dust, clouds and sky haze to your scenes making them less dull and boring.
Simply add the main script to your camera and you're set.
Volumetric Fog & Mist has been designed to provide a better looking fog and cloud formations with support of lighting and glow effects.
Comes with 12 highliy customizable configuration presets for quick setup & run: mist, windy mist, low cloud formation, sea of clouds, ground fog, frosted ground, foggy lake, fog and heavy fog, smoke, toxic swamp and two sand storm variations.
**Advanced features**
- Fog Volumes, special areas where fog & sky haze alpha is automatically changed. This feature is useful to hide the fog under water, to make it appear automatically (with a smooth transition) when player enter certain areas, or for whatever reason you need to control its transparency automatically.
- Advanced support for the transparent and fade rendering mode of the Standard Shader. Not only it renders behind transparent objects, but also it allows you to enable a second render pass only over the transparent objects so the fog is really drawn both behind and in front of transparent objects improving significantly the effect over this type of objects.
- Elevated Fog & Clouds! allowing to render the fog along any vertical range. For instance, you can set the Base Height of the fog above Camera position to simulate floating smoke or clouds! And even you can fly-through these cloud formations!
- Void areas. This feature is useful to show a clear area around a world space position. For instance, in a 3rd Person View, you may want to show a clear area around the character. Spherical and boxed void areas are supported.
- Automatic Sun tracking, which allows you to simply assign (optionally) a light in your scene which represents the Sun to Volumetric script so it can automatically adjust the fog specular light direction, intensity and color. Just check the video called Volumetric Fog Dawn demo for an example.
- Fog of War: clear any number of areas in the fog! Check out the Fog of War Walking demo where you cut/clear the fog as you cross it! This is done calling just a function call passing the world position, radius and desired alpha for that area. Call this any number of times for any number of positions!
";
}
/// <summary>
/// Package URL
/// </summary>
/// <returns>Package URL</returns>
public static string GetPackageURL()
{
return "http://u3d.as/m5S";
}
}
}
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: befa047bab714db4b8aed24a80baa410
timeCreated: 1456892201
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,55 @@
fileFormatVersion: 2
guid: 805b01a411713094fae4ef00cfd320de
timeCreated: 1456892693
licenseType: Store
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 2
mipmaps:
mipMapMode: 0
enableMipMap: 0
linearTexture: 1
correctGamma: 0
fadeOut: 0
borderMipMap: 0
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: .25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 0
cubemapConvolution: 0
cubemapConvolutionSteps: 8
cubemapConvolutionExponent: 1.5
seamlessCubemap: 0
textureFormat: -3
maxTextureSize: 2048
textureSettings:
filterMode: -1
aniso: 1
mipBias: -1
wrapMode: 1
nPOTScale: 0
lightmap: 0
rGBM: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: .5, y: .5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaIsTransparency: 1
textureType: 2
buildTargetSettings: []
spriteSheet:
sprites: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,90 @@
using UnityEngine;
using System.Collections;
namespace Gaia.GXC.EEProductions
{
/// <summary>
/// Description for village exteriors kit
/// </summary>
public class uConstruct : MonoBehaviour
{
/// <summary>
/// Publisher name
/// </summary>
/// <returns>Publisher name</returns>
public static string GetPublisherName()
{
return "EE Productions";
}
/// <summary>
/// Package name
/// </summary>
/// <returns>Package name</returns>
public static string GetPackageName()
{
return "uConstruct - Runtime Building System";
}
/// <summary>
/// Package image
/// </summary>
/// <returns>Package image</returns>
public static string GetPackageImage()
{
return "uConstruct";
}
/// <summary>
/// Package description
/// </summary>
/// <returns>Package description</returns>
public static string GetPackageDescription()
{
return @"Do you want your game players to be able to construct their own buildings and structures?
uConstruct is an easy-to-implement, run-time, socket-based building system.
uConstruct can save any of the created structures for restoration.
This capability also allows developers to use uConstruct as part of their level design/creation toolkit.
FEATURES:
Socket based construction: Building components snap into position in snap sockets, or free placed on the socket bounds on free placed sockets, while allowing visual scaling and rotation.
Conditional placement: Ability to set the conditions for building placement within your worlds. Four very useful examples are included that you can extend for your requirements.
Draw call batching: uConstruct can reduce draw calls from thousands down to a few. The performance from batching eliminates the need for creating LOD views.
Area of interest influence: this multi-threaded subsystem of uConstruct allows you define the players influence on Unity physics, sockets and conditionals based on the player proximity to the area. Eliminating contention with the Unity main thread and optimizing your collider count.
Templates: Through the use of templates you can predefine sockets and conditions and apply them to any of the structures. With a template you can uniformly impact as many structures as you want instead of adjusting the same settings across multiple structures.
Prefab structure database: Each structure is assigned its own unique ID and enables the ability to access the structure's prefab at run-time. This is very useful for networking, pooling systems, etc.
Custom physics: uConstruct has a socket optimized physics sub-system that greatly improves performance. Utilizing this feature does not preclude you from using Unity’s default physics system.
Structure saving: Built-in structure saving system that is fully extendable for your own data needs.
Building types code generator: You can create your own building types within the editor without the requirement of having to adjust the source code.
Smart optimizations: uConstruct will detect and implement many optimizations at run-time. For example, it will disable used or overlapping sockets.
Fully Functional API: The API extends your flexibility to only be limited by your or your player’s creativity.
Complete documentation.
Video tutorials.
Full source code included.";
}
/// <summary>
/// Package URL
/// </summary>
/// <returns>Package URL</returns>
public static string GetPackageURL()
{
return "https://www.assetstore.unity3d.com/en/#!/content/51881";
}
}
}
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 6f4d04801261fcd4e9972fcbe80aeff7
timeCreated: 1453185939
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,55 @@
fileFormatVersion: 2
guid: 0f8271cec63ee874ba8edf42d39e44c1
timeCreated: 1456426790
licenseType: Store
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 2
mipmaps:
mipMapMode: 0
enableMipMap: 0
linearTexture: 1
correctGamma: 0
fadeOut: 0
borderMipMap: 0
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: .25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 0
cubemapConvolution: 0
cubemapConvolutionSteps: 8
cubemapConvolutionExponent: 1.5
seamlessCubemap: 0
textureFormat: -3
maxTextureSize: 2048
textureSettings:
filterMode: 1
aniso: 1
mipBias: -1
wrapMode: 1
nPOTScale: 0
lightmap: 0
rGBM: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: .5, y: .5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaIsTransparency: 1
textureType: 2
buildTargetSettings: []
spriteSheet:
sprites: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 306336604dfc78040be13fa223cd1900
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,258 @@
#if GAIA_2_PRESENT && UNITY_EDITOR
using Gaia.Pipeline;
using UnityEngine;
using UnityEditor;
#if OverCloud_Present
using OC;
#endif
using System.IO;
namespace Gaia.GX.FelixWestin
{
[InitializeOnLoad]
public static class OverCloudSetup
{
static OverCloudSetup()
{
string[] filePaths = Directory.GetDirectories(Application.dataPath);
if (filePaths.Length > 0)
{
foreach (var filePath in filePaths)
{
bool updateScripting = false;
var symbols = PlayerSettings.GetScriptingDefineSymbolsForGroup(EditorUserBuildSettings.selectedBuildTargetGroup);
if (filePath.Contains("OverCloud"))
{
if (!symbols.Contains("OverCloud_Present"))
{
updateScripting = true;
symbols += ";" + "OverCloud_Present";
}
}
if (updateScripting)
{
PlayerSettings.SetScriptingDefineSymbolsForGroup(EditorUserBuildSettings.selectedBuildTargetGroup, symbols);
}
}
}
}
}
//<summary>
//Overcloud setup for Gaia
//</summary>
#if OverCloud_Present
public class OverCloudExtension
{
private const string m_overCloudAbout = "OverCloud provides a complete, scalable solution for rendering a realistic, volumetric sky from any camera position and angle above the horizon. It is perfect for flight simulators, huge landscapes, or any developer looking for a simple-to-use, dynamic sky. ";
private enum OverCloudQuality { High, Medium, Low }
#region Generic Informational Methods
/// <summary>
/// Returns the publisher name if provided.
/// This will override the publisher name in the namespace ie Gaia.GX.PublisherName
/// </summary>
/// <returns>Publisher name</returns>
public static string GetPublisherName()
{
return "Felix Westin";
}
/// <summary>
/// Returns the package name if provided
/// This will override the package name in the class name ie public class PackageName.
/// </summary>
/// <returns>Package name</returns>
public static string GetPackageName()
{
return "OverCloud";
}
#endregion
#region GX Functions
//<summary>
//Gives some info on OverCloud
//</summary>
public static void GX_About()
{
EditorUtility.DisplayDialog("About OverCloud", m_overCloudAbout, "OK");
}
public static void GX_AddOverCloud()
{
AddOverCloud();
}
public static void GX_SetHighQuality()
{
SetOverCloudQuality(OverCloudQuality.High);
}
public static void GX_SetMediumQuality()
{
SetOverCloudQuality(OverCloudQuality.Medium);
}
public static void GX_SetLowQuality()
{
SetOverCloudQuality(OverCloudQuality.Low);
}
public static void GX_RemoveOverCloud()
{
RemoveOverCloud();
}
#endregion
#region Utils
private static void AddOverCloud()
{
GameObject overCloudPrefab = AssetDatabase.LoadAssetAtPath<GameObject>(GaiaUtils.GetAssetPath("OverCloud.prefab"));
if (overCloudPrefab != null)
{
Light sunLight = GaiaUtils.GetMainDirectionalLight();
if (sunLight != null)
{
GameObject.DestroyImmediate(sunLight.gameObject);
}
PrefabUtility.InstantiatePrefab(overCloudPrefab, GetOrCreateParentObject(GaiaConstants.gaiaLightingObject, true).transform);
Camera mainCamera = GaiaUtils.GetCamera();
if (mainCamera != null)
{
OverCloudCamera ocCamera = mainCamera.gameObject.GetComponent<OverCloudCamera>();
if (ocCamera == null)
{
ocCamera = mainCamera.gameObject.AddComponent<OverCloudCamera>();
}
}
GaiaUtils.SetCustomLightSystem(overCloudPrefab);
}
else
{
Debug.LogError("OverCloud Prefab was not found");
}
}
private static void SetOverCloudQuality(OverCloudQuality quality)
{
Camera mainCamera = GaiaUtils.GetCamera();
if (mainCamera != null)
{
OverCloudCamera ocCamera = mainCamera.GetComponent<OverCloudCamera>();
if (ocCamera != null)
{
switch (quality)
{
case OverCloudQuality.High:
ocCamera.downsample2DClouds = false;
ocCamera.downsampleFactor = DownSampleFactor.Full;
ocCamera.highQualityClouds = true;
ocCamera.renderAtmosphere = true;
ocCamera.renderScatteringMask = true;
ocCamera.renderVolumetricClouds = true;
ocCamera.scatteringMaskSamples = SampleCount.High;
ocCamera.lightSampleCount = SampleCount.High;
break;
case OverCloudQuality.Medium:
ocCamera.downsample2DClouds = true;
ocCamera.downsampleFactor = DownSampleFactor.Half;
ocCamera.highQualityClouds = true;
ocCamera.renderAtmosphere = true;
ocCamera.renderScatteringMask = true;
ocCamera.renderVolumetricClouds = true;
ocCamera.scatteringMaskSamples = SampleCount.Normal;
ocCamera.lightSampleCount = SampleCount.Normal;
break;
case OverCloudQuality.Low:
ocCamera.downsample2DClouds = true;
ocCamera.downsampleFactor = DownSampleFactor.Eight;
ocCamera.highQualityClouds = false;
ocCamera.renderAtmosphere = true;
ocCamera.renderScatteringMask = false;
ocCamera.renderVolumetricClouds = false;
ocCamera.scatteringMaskSamples = SampleCount.Low;
ocCamera.lightSampleCount = SampleCount.Low;
break;
}
}
}
}
private static void RemoveOverCloud()
{
GameObject overCloudPrefab = GameObject.Find("OverCloud");
if (overCloudPrefab != null)
{
GameObject.DestroyImmediate(overCloudPrefab);
}
Camera mainCamera = GaiaUtils.GetCamera();
if (mainCamera != null)
{
OverCloudCamera ocCamera = mainCamera.gameObject.GetComponent<OverCloudCamera>();
if (ocCamera != null)
{
GameObject.DestroyImmediate(ocCamera);
}
}
if (GaiaUtils.CheckIfSceneProfileExists())
{
GaiaGlobal.Instance.SceneProfile.m_waterSystemMode = GaiaConstants.GlobalSystemMode.Gaia;
GaiaSettings gaiaSettings = GaiaUtils.GetGaiaSettings();
if (gaiaSettings != null)
{
UnityPipelineProfile pipelineProfile = gaiaSettings.m_pipelineProfile;
if (pipelineProfile != null)
{
GaiaLighting.GetProfile(GaiaGlobal.Instance.SceneProfile, pipelineProfile, GaiaUtils.GetActivePipeline());
}
}
}
}
/// <summary>
/// Get or create a parent object
/// </summary>
/// <param name="parentGameObject"></param>
/// <param name="parentToGaia"></param>
/// <returns>Parent Object</returns>
public static GameObject GetOrCreateParentObject(string parentGameObject, bool parentToGaia)
{
//Get the parent object
GameObject theParentGo = GameObject.Find(parentGameObject);
if (theParentGo == null)
{
theParentGo = GameObject.Find(GaiaConstants.gaiaLightingObject);
if (theParentGo == null)
{
theParentGo = new GameObject(GaiaConstants.gaiaLightingObject);
}
}
if (theParentGo.GetComponent<GaiaSceneLighting>() == null)
{
theParentGo.AddComponent<GaiaSceneLighting>();
}
if (parentToGaia)
{
GameObject gaiaParent = GaiaUtils.GetRuntimeSceneObject();
if (gaiaParent != null)
{
theParentGo.transform.SetParent(gaiaParent.transform);
}
}
return theParentGo;
}
#endregion
}
#endif
}
#endif
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 177bb38c725d64548a73304dac9dab19
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,63 @@
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
using System.Reflection;
namespace Gaia
{
/// <summary>
/// Gaia compatible extension package
/// </summary>
public class GaiaCompatiblePackage
{
/// <summary>
/// Package name
/// </summary>
public string m_packageName;
/// <summary>
/// The description of this package
/// </summary>
public string m_packageDescription;
/// <summary>
/// The image for this package
/// </summary>
public string m_packageImageName;
/// <summary>
/// The URL for this package
/// </summary>
public string m_packageURL;
/// <summary>
/// Whether or not it has been installed
/// </summary>
public bool m_isCompatible;
/// <summary>
/// Whether or not it has been installed
/// </summary>
public bool m_isInstalled;
/// <summary>
/// Are we folded out in the intalled tab
/// </summary>
public bool m_installedFoldedOut;
/// <summary>
/// Are we folded out in the compatible tab
/// </summary>
public bool m_compatibleFoldedOut;
/// <summary>
/// Extension methods
/// </summary>
public List<MethodInfo> m_methods = new List<MethodInfo>();
/// <summary>
/// Extension method foldouts
/// </summary>
public Dictionary<string, bool> m_methodGroupFoldouts = new Dictionary<string, bool>();
}
}
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 9a9d84423eea2864cb1f639830030f69
timeCreated: 1449910342
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,101 @@
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
namespace Gaia
{
/// <summary>
/// Gaia compatible extension publisher
/// </summary>
public class GaiaCompatiblePublisher
{
/// <summary>
/// Publisher name
/// </summary>
public string m_publisherName;
/// <summary>
/// Are we folded out in the intalled tab
/// </summary>
public bool m_installedFoldedOut;
/// <summary>
/// Are we folded out in the compatible tab
/// </summary>
public bool m_compatibleFoldedOut;
/// <summary>
/// The packages that belong to this publisher
/// </summary>
private Dictionary<string, GaiaCompatiblePackage> m_packages = new Dictionary<string,GaiaCompatiblePackage>();
/// <summary>
/// Get an existing package, or null if its not there
/// </summary>
/// <param name="packageName">Package name to get</param>
/// <returns>Package if we have it, or null if we dont</returns>
public GaiaCompatiblePackage GetPackage(string packageName)
{
GaiaCompatiblePackage package;
if (m_packages.TryGetValue(packageName, out package))
{
return package;
}
return null;
}
/// <summary>
/// Get a list of the packages being managed for this publisher
/// </summary>
/// <returns></returns>
public List<GaiaCompatiblePackage> GetPackages()
{
List<GaiaCompatiblePackage> packages = new List<GaiaCompatiblePackage>(m_packages.Values);
packages.Sort((a, b) => a.m_packageName.CompareTo(b.m_packageName));
return packages;
}
/// <summary>
/// Return the number of installed packages
/// </summary>
/// <returns>The number of installed packages</returns>
public int InstalledPackages()
{
int installedExtensions = 0;
foreach (KeyValuePair<string, GaiaCompatiblePackage> kvp in m_packages)
{
if (kvp.Value.m_isInstalled)
{
installedExtensions++;
}
}
return installedExtensions;
}
/// <summary>
/// Return the number of compatible packages
/// </summary>
/// <returns>The number of compatible packages</returns>
public int CompatiblePackages()
{
int compatiblePackages = 0;
foreach (KeyValuePair<string, GaiaCompatiblePackage> kvp in m_packages)
{
if (kvp.Value.m_isCompatible)
{
compatiblePackages++;
}
}
return compatiblePackages;
}
/// <summary>
/// Add a package
/// </summary>
/// <param name="package"></param>
public void AddPackage(GaiaCompatiblePackage package)
{
m_packages.Add(package.m_packageName, package);
}
}
}
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: c3571003944f9af46a67c1c6ed37f9c8
timeCreated: 1449910318
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,231 @@
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
using System;
using System.Reflection;
using System.Text.RegularExpressions;
#if UNITY_EDITOR
using UnityEditor;
#endif
namespace Gaia
{
/// <summary>
/// Manages extensions
/// </summary>
public class GaiaExtensionManager
{
/// <summary>
/// The installed extensions
/// </summary>
private Dictionary<string, GaiaCompatiblePublisher> m_extensions = new Dictionary<string, GaiaCompatiblePublisher>();
/// <summary>
/// Scan for installed extensions
/// </summary>
public void ScanForExtensions()
{
#if UNITY_EDITOR
if (EditorApplication.isCompiling)
{
return;
}
#endif
m_extensions.Clear();
string[] parsedName;
string publisherName = "", packageName = "", packageImage = "", packageDescription = "", packageURL = "";
MethodInfo method;
MethodInfo[] methods;
List<MethodInfo> extensionMethods;
List<Type> types = GetTypesInNamespace("Gaia.GX.");
//Process installed extensions
for (int typeIdx = 0; typeIdx < types.Count; typeIdx++)
{
//Get publisher and package name
parsedName = types[typeIdx].FullName.Split('.');
publisherName = Regex.Replace(parsedName[2], "(\\B[A-Z])", " $1");
packageName = Regex.Replace(parsedName[3], "(\\B[A-Z])", " $1");
//Grab the extension methods, update publisher and package name if necessary
methods = types[typeIdx].GetMethods(BindingFlags.Public | BindingFlags.Static);
extensionMethods = new List<MethodInfo>();
for (int methodIdx = 0; methodIdx < methods.Length; methodIdx++)
{
method = methods[methodIdx];
if (method.Name.StartsWith("GX_"))
{
extensionMethods.Add(method);
}
else if (method.Name == "GetPublisherName")
{
publisherName = (string)method.Invoke(null, null);
}
else if (method.Name == "GetPackageName")
{
packageName = (string)method.Invoke(null, null);
}
}
//See if we can locate the publisher, if not then add them
GaiaCompatiblePublisher publisher = null;
if (!m_extensions.TryGetValue(publisherName, out publisher))
{
publisher = new GaiaCompatiblePublisher();
publisher.m_publisherName = publisherName;
publisher.m_compatibleFoldedOut = false;
publisher.m_installedFoldedOut = false;
m_extensions.Add(publisherName, publisher);
}
//See if we can locate the extension, if not then add it
GaiaCompatiblePackage package = publisher.GetPackage(packageName);
if (package == null)
{
package = new GaiaCompatiblePackage();
package.m_compatibleFoldedOut = false;
package.m_installedFoldedOut = false;
package.m_packageName = packageName;
publisher.AddPackage(package);
}
if (extensionMethods.Count > 0)
{
package.m_isInstalled = true;
}
else
{
package.m_isInstalled = false;
}
package.m_methods = new List<MethodInfo>(extensionMethods);
}
//Then process compatible extensions
types = GetTypesInNamespace("Gaia.GXC.");
for (int typeIdx = 0; typeIdx < types.Count; typeIdx++)
{
//Get publisher and package name
parsedName = types[typeIdx].FullName.Split('.');
publisherName = Regex.Replace(parsedName[2], "(\\B[A-Z])", " $1");
packageName = Regex.Replace(parsedName[3], "(\\B[A-Z])", " $1");
//Grab the extension methods, update publisher and package name if necessary
methods = types[typeIdx].GetMethods(BindingFlags.Public | BindingFlags.Static);
for (int methodIdx = 0; methodIdx < methods.Length; methodIdx++)
{
method = methods[methodIdx];
if (method.Name == "GetPublisherName")
{
publisherName = (string)method.Invoke(null, null);
}
else if (method.Name == "GetPackageName")
{
packageName = (string)method.Invoke(null, null);
}
else if (method.Name == "GetPackageImage")
{
packageImage = (string)method.Invoke(null, null);
}
else if (method.Name == "GetPackageDescription")
{
packageDescription = (string)method.Invoke(null, null);
}
else if (method.Name == "GetPackageURL")
{
packageURL = (string)method.Invoke(null, null);
}
}
//See if we can locate the publisher, if not then add them
GaiaCompatiblePublisher publisher = null;
if (!m_extensions.TryGetValue(publisherName, out publisher))
{
publisher = new GaiaCompatiblePublisher();
publisher.m_publisherName = publisherName;
publisher.m_compatibleFoldedOut = false;
publisher.m_installedFoldedOut = false;
m_extensions.Add(publisherName, publisher);
}
//See if we can locate the extension, if not then add it
GaiaCompatiblePackage package = publisher.GetPackage(packageName);
if (package == null)
{
package = new GaiaCompatiblePackage();
package.m_compatibleFoldedOut = false;
package.m_installedFoldedOut = false;
package.m_packageName = packageName;
publisher.AddPackage(package);
}
package.m_isCompatible = true;
package.m_packageDescription = packageDescription;
package.m_packageImageName = packageImage;
package.m_packageURL = packageURL;
}
}
/// <summary>
/// Ruturn the number of installed extensions
/// </summary>
/// <returns>Number of installed extensions</returns>
public int GetInstalledExtensionCount()
{
int iec = 0;
foreach (GaiaCompatiblePublisher publisher in m_extensions.Values)
{
iec += publisher.InstalledPackages();
}
return iec;
}
/// <summary>
/// Get a list of the current publishers
/// </summary>
/// <returns></returns>
public List<GaiaCompatiblePublisher> GetPublishers()
{
List<GaiaCompatiblePublisher> publishers = new List<GaiaCompatiblePublisher>(m_extensions.Values);
publishers.Sort((a, b) => a.m_publisherName.CompareTo(b.m_publisherName));
return publishers;
}
/// <summary>
/// Scan unity cimpled assemblies for all the types in the provided namespace
/// </summary>
/// <param name="nameSpace">Namespace to search</param>
/// <returns>Listr of types</returns>
public List<Type> GetTypesInNamespace(string nameSpace)
{
List<Type> matchingTypes = new List<Type>();
int assyIdx, typeIdx;
System.Type[] types;
System.Reflection.Assembly[] assemblies = System.AppDomain.CurrentDomain.GetAssemblies();
for (assyIdx = 0; assyIdx < assemblies.Length; assyIdx++)
{
if (assemblies[assyIdx].FullName.StartsWith("Assembly"))
{
types = assemblies[assyIdx].GetTypes();
for (typeIdx = 0; typeIdx < types.Length; typeIdx++)
{
if (!string.IsNullOrEmpty(types[typeIdx].Namespace))
{
if (types[typeIdx].Namespace.StartsWith(nameSpace))
{
matchingTypes.Add(types[typeIdx]);
}
}
}
}
}
return matchingTypes;
}
}
}
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: ab0c3c9fbffcb6349ae1fe675f33e164
timeCreated: 1449904884
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,78 @@
#region Utility methods
/// <summary>
/// Get a Texture2D from the path provided
/// </summary>
/// <param name="fileName">File name to check</param>
/// <returns>Texture if found or null</returns>
public static Texture2D GetTexture2D(string fileName)
{
Texture2D resource = null;
#if UNITY_EDITOR
resource = PWCommon.Utils.GetAsset(fileName, typeof(UnityEngine.Texture2D)) as Texture2D;
#endif
return resource;
}
/// <summary>
/// Get a Game Object from the path provided
/// </summary>
/// <param name="fileName">Path to check</param>
/// <returns>GameObject if found or null</returns>
public static GameObject GetGameObject(string fileName)
{
GameObject resource = null;
#if UNITY_EDITOR
resource = PWCommon.Utils.GetAsset(fileName, typeof(UnityEngine.GameObject)) as GameObject;
#endif
return resource;
}
/// <summary>
/// Get a spawn rule extension
/// </summary>
/// <param name="fileName">Path to check</param>
/// <returns>GameObject if found or null</returns>
public static Gaia.SpawnRuleExtension GetSpawnRuleExtension(string fileName)
{
Gaia.SpawnRuleExtension extension = null;
#if UNITY_EDITOR
GameObject resource = PWCommon.Utils.GetAsset(fileName, typeof(UnityEngine.GameObject)) as GameObject;
if (resource != null)
{
extension = resource.GetComponent<Gaia.SpawnRuleExtension>();
}
#endif
return extension;
}
/// <summary>
/// Get the resource from the ID provided
/// </summary>
/// <param name="fileName">Resource with the given ID to check</param>
/// <param name="id">Resource with the given ID to check</param>
/// <returns>Resource if found or null</returns>
public static Gaia.GaiaResource GetResource(string fileName, string id)
{
Gaia.GaiaResource resource = null;
#if UNITY_EDITOR
resource = PWCommon.Utils.GetAsset(fileName, typeof(Gaia.GaiaResource)) as Gaia.GaiaResource;
#endif
return resource;
}
#endregion
}
}
#endif
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 6ecc0818973aa234e9000f9603674cdc
timeCreated: 1452596738
licenseType: Store
TextScriptImporter:
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,43 @@
#if GAIA_PRESENT
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
using System;
using System.IO;
#if UNITY_EDITOR
using UnityEditor;
#endif
namespace Gaia.GX.{{ ExtensionPublisher }}
{
/// <summary>
/// Automatically exported GAIA extensions. This file contains support for Resources and Spawners.
/// Methods exposed by Gaia as buttons must be prefixed with GX_. General format is GX_SectionName_ButtonName.
/// Leaving section name out will place the button at the top level eg GX_ButtonName.
/// </summary>
public class {{ ExtensionPackage }} : MonoBehaviour {
#region Generic informational methods
/// <summary>
/// Returns the publisher name if provided.
/// This will override the publisher name in the namespace ie Gaia.GX.PublisherName
/// </summary>
/// <returns>Publisher name</returns>
public static string GetPublisherName()
{
return "{{ ExtensionPublisherFull }}";
}
/// <summary>
/// Returns the package name if provided
/// This will override the package name in the class name ie public class PackageName.
/// </summary>
/// <returns>Package name</returns>
public static string GetPackageName()
{
return "{{ ExtensionPackageFull }}";
}
#endregion
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 4af7cb292fd770146b0a80c40340e965
timeCreated: 1452595847
licenseType: Store
TextScriptImporter:
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,127 @@
using System;
using System.Collections.Generic;
using System.Text;
using System.Collections;
namespace Gaia
{
/// <summary>
/// This class implements a Django-like simple templating system for creating clean dynamic html or other text
/// without using asp.net server controls or string builders that require html and other text to be written
/// and escaped in .cs files.
///
/// The template is very high performance, since it indexes a template once (lazy loading the first time)
/// and uses a string builder insert after that to keep memory use and copy time to a minimum.
///
/// Example text file:
/// "Hey {{ Name }}, what's up?"
/// Example Template.ToString() output after calling Set("Name", "Craig"); :
/// "Hey Craig, what's up?"
/// </summary>
public class Template
{
public string FilePath;
public TemplateFrame Frame;
private Dictionary<string, TemplateValue> Variables;
/// <summary>
/// Passing debug = true in ensures template modifications are noticed.
/// </summary>
/// <param name="filePath"></param>
/// <param name="debug"></param>
public Template(string filePath, bool debug)
{
this.FilePath = filePath;
if (this.Frame == null && this.findPreviouslyBuiltFrame() == false)
{
Frame = new TemplateFrame(filePath, debug);
}
Variables = new Dictionary<string, TemplateValue>();
}
private bool findPreviouslyBuiltFrame()
{
foreach (TemplateFrame htf in TemplateFrames.List)
{
if (htf.FilePath == this.FilePath)
{
this.Frame = htf;
return true;
}
}
return false;
}
public void Set(string name, string value)
{
if (value == null)
{
value = "";
}
if (this.Variables.ContainsKey(name))
{
this.Variables[name].Value = value;
}
else
{
this.Variables.Add(name, new TemplateValue(value, this.Frame.Variables[name]));
}
}
private int[] CopyIndicies(TemplateFrameVariable tfv)
{
int[] indexArry = new int[tfv.Indicies.Count];
tfv.Indicies.CopyTo(indexArry);
return indexArry;
}
public override string ToString()
{
StringBuilder stringBuilder = new StringBuilder(this.Frame.Text);
foreach (TemplateValue tv in this.Variables.Values)
{
// Copy indicies so that the global TemplateFrame stays unchanged when values are inserted and indicies need to be shifted.
tv.Indicies = CopyIndicies(tv.FrameVar);
}
foreach (TemplateValue tv in this.Variables.Values)
{
for (int j = 0; j < tv.Indicies.Length; j++)
{
stringBuilder.Insert(tv.Indicies[j], tv.Value);
this.UpdateIndicies(tv.FrameVar.Positions[j], tv.Value.Length);
}
}
return stringBuilder.ToString();
}
private void UpdateIndicies(int position, int length)
{
foreach (TemplateValue tv in this.Variables.Values)
{
for (int i = 0; i < tv.FrameVar.Positions.Count; i++)
{
if (tv.FrameVar.Positions[i] > position)
{
tv.Indicies[i] = tv.Indicies[i] + length;
}
}
}
}
}
public class TemplateValue
{
public string Value;
public int[] Indicies;
public readonly TemplateFrameVariable FrameVar;
public TemplateValue(string value, TemplateFrameVariable fv)
{
this.Value = value;
this.FrameVar = fv;
}
}
}
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: c9570b4baf525dd46a98a3beb85d9f06
timeCreated: 1452594791
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,142 @@
using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
namespace Gaia
{
public static class TemplateFrames
{
public static List<TemplateFrame> List = new List<TemplateFrame>();
}
public class TemplateFrameVariable
{
public List<int> Indicies;
public List<int> Positions;
public TemplateFrameVariable(List<int> indicies, List<int> positions)
{
this.Indicies = indicies;
this.Positions = positions;
}
}
/// <summary>
/// This class deals with the static part of the Template, the template variable names, indicies, and positions.
/// The static part is separated so that the template can be parsed once and used multiple times by multiple
/// requests.
/// </summary>
public class TemplateFrame
{
public Dictionary<string, TemplateFrameVariable> Variables = new Dictionary<string, TemplateFrameVariable>();
public string FilePath;
public string Text;
private const char BeginChar = '{';
private const char EndChar = '}';
private int VariableCount = 0;
public TemplateFrame(string filePath, bool debug)
{
this.FilePath = filePath;
this.Text = this.Build(filePath);
if (!debug)
{
TemplateFrames.List.Add(this);
}
}
public string Build(string filePath)
{
// Parse the template into a StringBuilder and TemplateFrameVariable array
char[] text = PWCommon4.Utils.ReadAllText(filePath).ToCharArray();
string varName;
int startIndex;
for (int i = 0; i < text.Length; i++)
{
if (text[i] == BeginChar && text[i + 1] == BeginChar)
{
startIndex = i;
i = i + 2;
varName = getVarName(text, ref i);
if (varName != null)
{
if (!this.Variables.ContainsKey(varName))
{
this.Variables.Add(varName, new TemplateFrameVariable(new List<int>(), new List<int>()));
}
this.Variables[varName].Indicies.Add(startIndex);
this.Variables[varName].Positions.Add(VariableCount++);
}
text = shiftCharArryLeft(text, startIndex, i);
i = startIndex - 1; // Minus 1 since new characters have been shifted to start index and there could be consecutive variables.
}
}
return new string(text);
}
/// <summary>
/// Shifts left from endIndex to startIndex.
/// </summary>
private char[] shiftCharArryLeft(char[] arry, int startIndex, int endIndex)
{
char[] newArry = new char[arry.Length - (endIndex - startIndex + 1)];
for (int i = 0; i < startIndex; i++)
{
newArry[i] = arry[i];
}
int j = 0;
for (int i = endIndex + 1; i < arry.Length; i++)
{
newArry[startIndex + j] = arry[i];
j++;
}
return newArry;
}
private string getVarName(char[] text, ref int pos)
{
char[] ret;
int startIndex;
int endIndex;
pos = skipSpaces(text, pos);
startIndex = pos;
while (text[pos] != ' ')
{
pos++;
}
endIndex = pos;
ret = new char[endIndex - startIndex];
for (int i = 0; i < ret.Length; i++)
{
ret[i] = text[startIndex + i];
}
pos = skipSpaces(text, pos);
if (text[pos] != EndChar && text[++pos] != EndChar)
{
return null;
}
pos++;
return new string(ret);
}
private static int skipSpaces(char[] text, int pos)
{
while (text[pos] == ' ')
{
pos++;
}
return pos;
}
}
}
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: f54c4f7f44360e043883157320bb069c
timeCreated: 1452594794
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant: