ore2
This commit is contained in:
parent
1a8a42cc18
commit
257edf5312
@ -1,9 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 78d4578f365c73f479602f4f5a21cbb7
|
|
||||||
folderAsset: yes
|
|
||||||
timeCreated: 1507227741
|
|
||||||
licenseType: Store
|
|
||||||
DefaultImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
File diff suppressed because it is too large
Load Diff
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 8b6db2a2ad1387549b3582cbced24e9d
|
|
||||||
timeCreated: 1507139732
|
|
||||||
licenseType: Store
|
|
||||||
DefaultImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,64 +0,0 @@
|
|||||||
%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: Crystal_demosceneSettings
|
|
||||||
serializedVersion: 4
|
|
||||||
m_GIWorkflowMode: 0
|
|
||||||
m_EnableBakedLightmaps: 1
|
|
||||||
m_EnableRealtimeLightmaps: 1
|
|
||||||
m_RealtimeEnvironmentLighting: 1
|
|
||||||
m_BounceScale: 1
|
|
||||||
m_AlbedoBoost: 1
|
|
||||||
m_IndirectOutputScale: 1
|
|
||||||
m_UsingShadowmask: 1
|
|
||||||
m_BakeBackend: 0
|
|
||||||
m_LightmapMaxSize: 1024
|
|
||||||
m_BakeResolution: 40
|
|
||||||
m_Padding: 2
|
|
||||||
m_LightmapCompression: 3
|
|
||||||
m_AO: 0
|
|
||||||
m_AOMaxDistance: 1
|
|
||||||
m_CompAOExponent: 1
|
|
||||||
m_CompAOExponentDirect: 0
|
|
||||||
m_ExtractAO: 0
|
|
||||||
m_MixedBakeMode: 2
|
|
||||||
m_LightmapsBakeMode: 1
|
|
||||||
m_FilterMode: 1
|
|
||||||
m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
m_ExportTrainingData: 0
|
|
||||||
m_TrainingDataDestination: TrainingData
|
|
||||||
m_RealtimeResolution: 2
|
|
||||||
m_ForceWhiteAlbedo: 0
|
|
||||||
m_ForceUpdates: 0
|
|
||||||
m_FinalGather: 0
|
|
||||||
m_FinalGatherRayCount: 256
|
|
||||||
m_FinalGatherFiltering: 1
|
|
||||||
m_PVRCulling: 1
|
|
||||||
m_PVRSampling: 1
|
|
||||||
m_PVRDirectSampleCount: 32
|
|
||||||
m_PVRSampleCount: 500
|
|
||||||
m_PVREnvironmentSampleCount: 500
|
|
||||||
m_PVREnvironmentReferencePointCount: 2048
|
|
||||||
m_LightProbeSampleCountMultiplier: 4
|
|
||||||
m_PVRBounces: 2
|
|
||||||
m_PVRMinBounces: 2
|
|
||||||
m_PVREnvironmentMIS: 0
|
|
||||||
m_PVRFilteringMode: 2
|
|
||||||
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_PVRTiledBaking: 0
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 355380301567f6540a14ea926714b832
|
|
||||||
NativeFormatImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
mainObjectFileID: 4890085278179872738
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
File diff suppressed because it is too large
Load Diff
@ -1,10 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 81ab4f7d2ddde40dba6098e5d1aa7c9e
|
|
||||||
folderAsset: yes
|
|
||||||
timeCreated: 1527265282
|
|
||||||
licenseType: Store
|
|
||||||
DefaultImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,9 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 0c2e55c7cf41f43ce836a64477d3c4e4
|
|
||||||
folderAsset: yes
|
|
||||||
timeCreated: 1457879768
|
|
||||||
licenseType: Store
|
|
||||||
DefaultImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,585 +0,0 @@
|
|||||||
VOLUMETRIC FOG & MIST
|
|
||||||
|
|
||||||
Reference Guide
|
|
||||||
|
|
||||||
1
|
|
||||||
Contents
|
|
||||||
|
|
||||||
Introduction................................................................................................................................. 3
|
|
||||||
Demo Scenes ............................................................................................................................... 3
|
|
||||||
Quick Start................................................................................................................................... 3
|
|
||||||
Special Features ........................................................................................................................... 4
|
|
||||||
Fog Profiles ........................................................................................................................................................... 4
|
|
||||||
Fog Volumes ......................................................................................................................................................... 5
|
|
||||||
Transparency Support .......................................................................................................................................... 7
|
|
||||||
Automatic fog light alignment with Sun .............................................................................................................. 8
|
|
||||||
Elevated Fog & Clouds.......................................................................................................................................... 8
|
|
||||||
Fog Colors and Lighting Model............................................................................................................................. 8
|
|
||||||
Fog Void................................................................................................................................................................ 9
|
|
||||||
Fog Areas ............................................................................................................................................................ 10
|
|
||||||
|
|
||||||
Method 1: Limit the fog of an existing Volumetric Fog component attached to the camera. ...................... 10
|
|
||||||
Method 2: Drag & drop the fog area prefabs. ............................................................................................... 10
|
|
||||||
Method 3: Use the API to create fog areas.................................................................................................... 11
|
|
||||||
Setting rendering order of fog areas.............................................................................................................. 11
|
|
||||||
Fog of War .......................................................................................................................................................... 13
|
|
||||||
Point Light support ............................................................................................................................................. 13
|
|
||||||
Light Scattering................................................................................................................................................... 13
|
|
||||||
Depth Blur .......................................................................................................................................................... 14
|
|
||||||
Sun Shadows ...................................................................................................................................................... 14
|
|
||||||
Geometry Mask .................................................................................................................................................. 15
|
|
||||||
Orthographic Camera support ........................................................................................................................... 16
|
|
||||||
VR and Single Pass Stereo Rendering ................................................................................................................. 16
|
|
||||||
Enhanced compatibility............................................................................................................... 17
|
|
||||||
Enhanced Sprite Compatibility ........................................................................................................................... 17
|
|
||||||
Compatibility with Time of Day .......................................................................................................................... 17
|
|
||||||
Compatibility with other Sky Managers............................................................................................................. 17
|
|
||||||
Compatibility with Gaia ...................................................................................................................................... 17
|
|
||||||
Compatibility with Horizon(ON) ......................................................................................................................... 18
|
|
||||||
Performance Tips ....................................................................................................................... 18
|
|
||||||
Common Issues (FAQ)................................................................................................................. 20
|
|
||||||
Additional Support...................................................................................................................... 22
|
|
||||||
Dynamic Fog & Mist.................................................................................................................... 22
|
|
||||||
|
|
||||||
2
|
|
||||||
Introduction
|
|
||||||
|
|
||||||
Thanks for purchasing!
|
|
||||||
Volumetric Fog & Mist is an advanced full-screen post-image effect for Unity that adds realistic fog,
|
|
||||||
mist, dust and clouds effects to your scenes.
|
|
||||||
This asset is highly optimized but due to the nature of its algorithm it’s not suitable for mobile devices.
|
|
||||||
For mobile devices, use Dynamic Fog & Mist, also included in the package. You can add both assets
|
|
||||||
to your project and enable the most appropriate for the running platform (see Dynamic Fog & Mist
|
|
||||||
section at the end of this document).
|
|
||||||
|
|
||||||
Demo Scenes
|
|
||||||
|
|
||||||
Just load any demo scene included and click “Play”. You will be able to move around using WASD or
|
|
||||||
cursor keys. Press spacebar to jump, F to change fog style and T to toggle on/off the fog.
|
|
||||||
The Fog Of War demo scene allows you to “Cut” the fog as you pass through it (press “C” to enable
|
|
||||||
fog cutting mode).
|
|
||||||
You can delete the Demo folder entirely or ignore it when importing the asset into your project.
|
|
||||||
|
|
||||||
Quick Start
|
|
||||||
|
|
||||||
1. Add the VolumetricFog script to your main camera in your scene.
|
|
||||||
2. Choose one of the preset and that’s all!
|
|
||||||
|
|
||||||
You can of course customize any of its parameters to match your game mood and requirements.
|
|
||||||
Please read this document to learn more about all supported features.
|
|
||||||
|
|
||||||
3
|
|
||||||
Special Features
|
|
||||||
|
|
||||||
Fog Profiles
|
|
||||||
Starting with V8, Volumetric Fog & Mist accepts profiles. A profile is a special file that contains all the
|
|
||||||
settings used to customize look & feel of the Volumetric Fog.
|
|
||||||
|
|
||||||
Assign a profile to the “Profile” slot to load its settings. You can find some sample profiles inside the
|
|
||||||
VolumetricFog/Resources/Profiles folder:
|
|
||||||
|
|
||||||
Click “Create” to create a new profile with current settings. A new file will be created and you can
|
|
||||||
rename it and move it into any folder.
|
|
||||||
When a profile is assigned, you will be able to Create a copy, Revert current settings (reload the
|
|
||||||
profile) or update the profile with current settings:
|
|
||||||
|
|
||||||
4
|
|
||||||
Fog Volumes
|
|
||||||
You can define special zones (fog volumes) where fog alpha, color and other properties can change
|
|
||||||
automatically. Create a fog volume from the menu GameObject / Create Other / Fog Volume. Position
|
|
||||||
the fog volume over the desired area and edit the transform scale, then customize what attributes
|
|
||||||
of the fog should be changed in the FogVolume script (see below).
|
|
||||||
|
|
||||||
Fog Volumes can change fog alpha, fog color, fog specular color, fog light color and sky haze alpha.
|
|
||||||
But also you can assign a fog profile which holds many options:
|
|
||||||
|
|
||||||
5
|
|
||||||
Enable Profile Transition: when this option is enabled and a profile is assigned to the Target Profile
|
|
||||||
slot, all the settings of that profile will be used in the transition. This is the most complete option to
|
|
||||||
create great transitions.
|
|
||||||
|
|
||||||
Enable Alpha Transition: when enabled, will make a transition with fog alpha value (transparency of
|
|
||||||
the fog) and also the sky haze alpha (transparency of the sky haze effect if used).
|
|
||||||
|
|
||||||
Enable Fog Color Transition: when enabled, the albedo color of the fog will transition to this value.
|
|
||||||
|
|
||||||
Enable Fog Specular Transition: same but affecting the fog specular color.
|
|
||||||
|
|
||||||
Enable Light Color Transition: same but affects the light color value.
|
|
||||||
|
|
||||||
Transition Duration: duration in seconds for the transition.
|
|
||||||
|
|
||||||
Target Collider: the collider that will be detected to trigger the transition. By default it uses the
|
|
||||||
collider attached to the camera (if any).
|
|
||||||
|
|
||||||
Debug Mode: if enabled, it will print a debug message into the console when the collider enters or
|
|
||||||
exits the volume.
|
|
||||||
|
|
||||||
Target Fog: the target Volumetric Fog & Mist that will receive the changes. By default it’s the script
|
|
||||||
attached to the camera.
|
|
||||||
|
|
||||||
By default, Fog Volumes will react to any collider that contains the camera to which the fog image
|
|
||||||
effect is attached (for first person controllers this is the default behaviour). But you can also assign a
|
|
||||||
different collider so they will also work with third person controllers.
|
|
||||||
|
|
||||||
Check out Demo Scene #7 “MountainClimb” for an example of Fog Volumes.
|
|
||||||
|
|
||||||
6
|
|
||||||
Transparency Support
|
|
||||||
Under General Settings, you can find a few options to control the order of execution of Volumetric
|
|
||||||
Fog & Mist as well as some specific options for dealing with transparent objects like particles and
|
|
||||||
tree billboards:
|
|
||||||
|
|
||||||
Compute Depth: this option will calculate the depth for standard Unity tree billboards and/or
|
|
||||||
transparent objects included in the specific layer mask (not necessary for SpeedTree). This custom
|
|
||||||
render pass will prevent these trees to be clipped when you look to the horizon or sky and there’s a
|
|
||||||
billboard tree in the middle.
|
|
||||||
Render Before Transparency: this toggle controls the execution order of the image effect. If
|
|
||||||
enabled fog will be rendered before any transparent object. If not (default value), it will render
|
|
||||||
after everything has been rendered.
|
|
||||||
Transparency Mode: this option is only enabled if the image effect renders after transparent
|
|
||||||
objects (see previous option). In this case, if the fog is very thick, it can occlude any particle or
|
|
||||||
transparent object. Using this special Blend feature they will be combined with the fog color.
|
|
||||||
Experiment with different Blend Power values (shown when Transparency Mode is set to Blend).
|
|
||||||
It’s important to note that proper transparency and fog support is not possible in Unity due to how
|
|
||||||
the render pipeline works. Depending on the type of transparent objects you use and your scene
|
|
||||||
setup one of the following 3 options may work for you:
|
|
||||||
1. Render Before Transparency: this option will make Volumetric Fog & Mist render before any
|
|
||||||
|
|
||||||
transparent object is drawn so they are not affected nor clipped by the fog.
|
|
||||||
Pros: best performance.
|
|
||||||
Cons: a side effect of this option is that transparent objects may look weird rendered on top of
|
|
||||||
the fog.
|
|
||||||
2. Enable Compute Depth option with Scope: Tree Billboards And Transparent Objects. This option
|
|
||||||
will enable a custom depth pass and will treat transparent objects as cutout shaders. You can
|
|
||||||
adjust the Cut Off value to match the best result.
|
|
||||||
|
|
||||||
7
|
|
||||||
Pros: transparent objects receive fog effect based on their exact depth.
|
|
||||||
Cons: requires an additional depth pass which is slower. Also some transparent objects with
|
|
||||||
smooth gradients or edges may look bad since this option treats them as CutOut shaders (hard
|
|
||||||
edges).
|
|
||||||
3. Transparency Mode set to Blend: this option can be used instead of the previous one (they are
|
|
||||||
exclusive options). It renders after transparent objects have been drawn but afterwards blends
|
|
||||||
the transparent objects on top of the fog with a customizable blending intensity.
|
|
||||||
Pros: looks similar to “Render Before Transparency” but with customizable blending intensity
|
|
||||||
and running after all transparent objects have been drawn. This setup is required when also
|
|
||||||
using Unity standard tree.
|
|
||||||
Cons: although it provides a bit better result than “Render Before Transparent”, the result is
|
|
||||||
non-optimal as no depth-checking is performed.
|
|
||||||
|
|
||||||
Automatic fog light alignment with Sun
|
|
||||||
A light game object existing in the scene can act as the Sun and be assigned to Volumetric. You’ll find
|
|
||||||
a property in the inspector, called Sun, where you can drag and drop the desired light in your scene.
|
|
||||||
After assigning a light as the Sun, the fog will react to the sun light direction, intensity and color
|
|
||||||
automatically. Click “Unassign” to break the link and allow to freely customize light direction,
|
|
||||||
intensity and color.
|
|
||||||
|
|
||||||
Elevated Fog & Clouds
|
|
||||||
You can make the fog start above Camera position to simulate floating smoke or even clouds! Try it
|
|
||||||
assigning a value above the Camera Y position to Base Height property in the inspector.
|
|
||||||
Check out Demo Scene #7 “MountainClimb” for an example of how to enable a dynamic cloud layer
|
|
||||||
that reacts when player climbs a mountain.
|
|
||||||
|
|
||||||
Fog Colors and Lighting Model
|
|
||||||
To provide more artistic choices, Volumetric Fog provides different “colorization formulae”. This
|
|
||||||
option is located under Fog Colors section:
|
|
||||||
|
|
||||||
8
|
|
||||||
Legacy: this is the traditional technique used in Volumetric Fog & Mist. It lerps between the ambient
|
|
||||||
light and the sun or light color to provide the final fog color.
|
|
||||||
Natural: in this mode, the color lerps between the ambient and ambient + light color and the result
|
|
||||||
is multiplied by the light intensity.
|
|
||||||
Single Light: in this mode, the ambient color is not used. Just the light color multiplied by the light
|
|
||||||
intensity.
|
|
||||||
Note that if a Sun object is assigned, the Sun’s light intensity is added to the Light intensity parameter.
|
|
||||||
|
|
||||||
Fog Void
|
|
||||||
Another great feature included in the asset is the void area. This option is useful if you want a clear
|
|
||||||
area around a world space position. For example, in 3rd Person View games, you may want a clear
|
|
||||||
area around the character.
|
|
||||||
|
|
||||||
This option is similar to the Distance Fog feature (using Distance > 0) but Distance Fog Works having
|
|
||||||
into account the distance from the Camera. So Distance parameter is useful for 1st Person View and
|
|
||||||
Void Areas for 3rd Person View.
|
|
||||||
Void areas can be spherical or boxed. To make a spherical void area just move the radius slider to
|
|
||||||
the left. To make it boxed, set the width and depth sliders.
|
|
||||||
Also, you can assign your character game object to the property field in this section, so the center of
|
|
||||||
the void will follow it automatically.
|
|
||||||
|
|
||||||
9
|
|
||||||
Fog Areas
|
|
||||||
Fog Areas can be defined to limit the rendering of the fog inside a box or sphere container.
|
|
||||||
The demo scene #6 “HighClouds” shows an example
|
|
||||||
There’re 3 ways to add a Fog Area into your scene:
|
|
||||||
Method 1: Limit the fog of an existing Volumetric Fog component attached to the camera.
|
|
||||||
Use the Fog Area section:
|
|
||||||
|
|
||||||
- Set the position of the fog area in Fog Area position property.
|
|
||||||
- Choose a fog area topology.
|
|
||||||
- Choose a radius and a falloff for spherical fog area or radius/depth/height for a box-type fog
|
|
||||||
|
|
||||||
area.
|
|
||||||
- Optionally assign a GameObject to the “Follow GameObject” slot. This will make the fog area
|
|
||||||
|
|
||||||
to follow that game object.
|
|
||||||
Method 2: Drag & drop the fog area prefabs.
|
|
||||||
Locate the fog area prefabs inside VolumetricFog / Resources / Prefab folder:
|
|
||||||
|
|
||||||
10
|
|
||||||
Choose either FogBoxArea or FogSphereArea, drag and drop it into your Scene View or hierarchy:
|
|
||||||
|
|
||||||
Once the fog area is in your scene, it will automatically link to the Volumetric Fog script attached to
|
|
||||||
your camera. If you need to use another camera, just change the Fog Renderer property and assign
|
|
||||||
another Volumetric Fog & Mist.
|
|
||||||
Explanation: fog areas are containers for settings and storages for the fog area state values. It’s the
|
|
||||||
VolumetricFog script attached to the camera which is responsible of all the rendering.
|
|
||||||
To change the dimensions of the fog area created this way, please use the transform of the fog
|
|
||||||
area game object. You can change the position and the scale of the transform to match the desired
|
|
||||||
dimensions and location of the fog area.
|
|
||||||
Method 3: Use the API to create fog areas.
|
|
||||||
You can also create any number of fog areas during runtime calling fog.CreateFogArea API. Please
|
|
||||||
check demo scene 10 source code for quick examples.
|
|
||||||
Setting rendering order of fog areas
|
|
||||||
By default, fog areas are rendered from back to front respective to the distance to the camera.
|
|
||||||
However, in some circumstances you may want to specify a different sorting method. This can be
|
|
||||||
useful when you need a background layer of clouds or to overcome some undesired overlapping.
|
|
||||||
Go to Fog Area section and choose a different sorting method:
|
|
||||||
|
|
||||||
11
|
|
||||||
Possible options are:
|
|
||||||
- Distance To camera (default)
|
|
||||||
- Altitude: this fog area will be sorted depending on the altitude (difference in height with
|
|
||||||
respect to the camera position).
|
|
||||||
- Fixed: this option allows you to introduce a fixed rendering order. All fog areas have a default
|
|
||||||
render order of 1. If you enter a value of 2, this fog area will be rendered after all fog areas
|
|
||||||
have rendered so it will show on top of every other fog area.
|
|
||||||
|
|
||||||
12
|
|
||||||
Fog of War
|
|
||||||
|
|
||||||
You can also set any number of void areas just calling SetFogOfWarAlpha method of the Volumetric
|
|
||||||
script. Just pass the world space position, the radius and the desired new alpha for the fog. Just make
|
|
||||||
sure the center and size of the fog of war (configured in the inspector) are properly set (by default
|
|
||||||
the fog of war is centered on 0,0,0 with a size of 1024x1024). Optionally pass a duration to produce
|
|
||||||
a smoother effect.
|
|
||||||
|
|
||||||
To make the cut permanent make sure Restore Delay is set to 0.
|
|
||||||
|
|
||||||
Call ResetFogOfWar to reset the cleared areas back to normal.
|
|
||||||
|
|
||||||
Important: Fog of War relies on z-buffer data to map world positions to the mask texture. It won’t
|
|
||||||
work properly if there’s no geometry under the fog (it’s aimed to fog over terrain or any other
|
|
||||||
geometry that writes to z-buffer, transparent shaders won’t work neither).
|
|
||||||
|
|
||||||
Point Light support
|
|
||||||
|
|
||||||
Up to 6 point lights can be selected to illuminate the fog with different colors, ranges and intensities.
|
|
||||||
|
|
||||||
This feature can be used to achieve many visual effects, from fog gradients, glow or bloom, definitely
|
|
||||||
enhancing the ambiance of your scenes.
|
|
||||||
|
|
||||||
At night, if you have the fog synced with a Sun game object, the fog will be dark. You can use this
|
|
||||||
feature to illuminate the surrounding area of the characters.
|
|
||||||
|
|
||||||
Note that point light are simulated in the shader, so it’s not necessary to have real point lights in the
|
|
||||||
scene. But if you have them, you can simply assign them to the slots in the Point Light section or
|
|
||||||
make the asset choose them for you automatically using the slider and checking “Track Point Lights”.
|
|
||||||
|
|
||||||
Light Scattering
|
|
||||||
|
|
||||||
Light scattering is the physical phenomena that makes the light reflect/refract when it crosses
|
|
||||||
different densities, adding shafts of light across the scene from the light source. Volumetric Fog &
|
|
||||||
Mist includes a light scattering option, which approximates that effect in screen space (that means
|
|
||||||
that it only works when the light source is in front of you).
|
|
||||||
|
|
||||||
To enable this option, you need to assign a light source to the Sun property and check the Enable
|
|
||||||
toggle in the inspector. Then customize the effect with the different parameters in that section.
|
|
||||||
|
|
||||||
Light Scattering section is really divided in 2 effects:
|
|
||||||
|
|
||||||
13
|
|
||||||
- Light Diffusion: this is a lightweight effect that will color the fog around the Sun as you look
|
|
||||||
directly to it.
|
|
||||||
|
|
||||||
- Sun Shafts: simulates the effect caused when objects occlude the light of the Sun. Please note
|
|
||||||
that Sun Shafts will increase the workload on the GPU, so you may have a configuration
|
|
||||||
parameter in your game to enable it in addition to the fog. Also note that Sun Shafts are
|
|
||||||
designed so they work better when they cross the fog.
|
|
||||||
|
|
||||||
Depth Blur
|
|
||||||
|
|
||||||
This option blurs the color buffer before overlaying the fog to simulate additional light scattering. Try
|
|
||||||
it and experiment with different depths.
|
|
||||||
|
|
||||||
Sun Shadows
|
|
||||||
|
|
||||||
Enable this feature to cast Sun shadows over the fog.
|
|
||||||
|
|
||||||
The “Force Update Interval” parameter can be set to a value greater than 0 to specify the interval in
|
|
||||||
seconds between shadow casting shoots. If set to zero (default value) it will shoot shadows only if
|
|
||||||
the Sun changes rotation (this is usually the most efficient setting). You can set this value to 0.016 to
|
|
||||||
shoot every frame (if you target 60 frames/s or set even a lower value) have the shadows always
|
|
||||||
updated but this will take extra ms from your framerate. It just depends if you have moving objects
|
|
||||||
on the scene that clearly cast shadows over the fog and you want to ensure that shadows are always
|
|
||||||
in sync with those objects.
|
|
||||||
|
|
||||||
The “Max Distance” will determine the maximum distance from the camera for the shadows. It does
|
|
||||||
not affect performance but shadow quality. The greater the value the poor quality and vice versa.
|
|
||||||
The Resolution parameter also affects shadow quality in a more direct way as this value determines
|
|
||||||
the size of the shadow texture that’s produced in each shadow shoot. The default value of 3 uses a
|
|
||||||
4096x4096 texture, you can increase this value to 4 and it will use a 8192x8192 texture which is
|
|
||||||
currently the maximum texture size allowed by Unity 5. You may experiment with lower resolutions
|
|
||||||
as well and see if they work for you – it will improve performance and reduce VRAM memory usage.
|
|
||||||
|
|
||||||
The “Bias” parameter option will offset the shadow start from the object itself to prevent self-
|
|
||||||
shadowing. By default, a value of 0.1 ensures this can’t happen so this value should be left as it’s,
|
|
||||||
unless you need to change it to create special effects.
|
|
||||||
|
|
||||||
The “Shadow Cancellation” slider allows you to control the alpha transparency of the fog under
|
|
||||||
shadows. If you set this value to 1, only lit fog by the assigned Sun light will be visible producing a
|
|
||||||
Volumetric Light effect.
|
|
||||||
|
|
||||||
Use the “Jitter” parameter to reduce banding effects when using Sun Shadows feature.
|
|
||||||
|
|
||||||
14
|
|
||||||
Geometry Mask
|
|
||||||
|
|
||||||
Geometry masks uses the depth information from scene objects to mask out the fog in the scene.
|
|
||||||
This feature is similar to fog areas but has two key differences:
|
|
||||||
|
|
||||||
- Geometry Mask affects entire fog rendering. While each fog area can have different
|
|
||||||
appearance and behaviour attributes, the geometry mask affects the entire fog (including any
|
|
||||||
other fog area!).
|
|
||||||
|
|
||||||
- Geometry Mask can include any number of objects which allows to make very complex
|
|
||||||
shapes.
|
|
||||||
|
|
||||||
The workflow for using geometry mask follows:
|
|
||||||
|
|
||||||
1.- Select the main camera and click “Shader Options” button located on top of Volumetric Fog
|
|
||||||
inspector.
|
|
||||||
2.- Scroll down until you see the Fog Mask option. Enable it.
|
|
||||||
3.- Close the Shader Options section and scroll down to the bottom of inspector until you see
|
|
||||||
“Geometry Mask” section.
|
|
||||||
4.- Select which layers include the objects that will make the mask.
|
|
||||||
5.- Click “Refresh” to quickly list which objects are found. If no object is found, verify that the objects
|
|
||||||
belong to the same layer.
|
|
||||||
6.- Optionally use downsampling option to increase performance (only if needed).
|
|
||||||
|
|
||||||
Important:
|
|
||||||
- Geometry Mask uses the meshes from scene objects to create complex and compound
|
|
||||||
volumes to render the fog inside.
|
|
||||||
- Those objects should be used only for the mask. For example if you have a room and you want
|
|
||||||
fog inside the room only, then you can add a cube and scale it inside the room. Assign that
|
|
||||||
cube to a custom layer for the mask purposes.
|
|
||||||
- In order to allow the fog visible inside the objects assigned to the geometry mask, their mesh
|
|
||||||
renderers need to be disabled. This is expected as the mask objects are only meant to provide
|
|
||||||
their geometry for the mask.
|
|
||||||
- You can combine any number of objects or meshes to create complex and irregular shapes.
|
|
||||||
- If you can achieve the results using a geometry mask instead of a fog area, stick to the
|
|
||||||
geometry mask. Using both geometry mask and fog areas is possible although each additional
|
|
||||||
feature costs performance.
|
|
||||||
|
|
||||||
15
|
|
||||||
Orthographic Camera support
|
|
||||||
To enable orthographic camera support, you need to edit VolumetricFogOptions.cginc file located in
|
|
||||||
VolumetricFog/Resources/Shaders folder:
|
|
||||||
|
|
||||||
This file contains a global macro called “FOG_ORTHO”. To enable orthographic camera support, just
|
|
||||||
change the 0 to 1 so it reads:
|
|
||||||
#define FOG_ORTHO 1
|
|
||||||
VR and Single Pass Stereo Rendering
|
|
||||||
Volumetric Fog & Mist is fully compatible with VR in both “Multi” and “Single”-Pass Stereo Rendering.
|
|
||||||
It has been tested with Oculus DK2 with both Oculus and OpenVR SDKs.
|
|
||||||
Important: if you enable Single Pass Stereo Rendering in Player Settings, make sure you verify that
|
|
||||||
it’s reflected in Volumetric Fog & Mist inspector on your camera. Check this new option which is
|
|
||||||
automatically set based on the Player Settings when the inspector is shown.
|
|
||||||
|
|
||||||
16
|
|
||||||
Enhanced compatibility
|
|
||||||
|
|
||||||
Enhanced Sprite Compatibility
|
|
||||||
|
|
||||||
Standard Unity sprite shaders are not compatible with Image Effects as they are not rendered as 3D
|
|
||||||
objects and don’t write to ZBuffer on real world positions. That forces Image Effects to be rendered
|
|
||||||
before the transparent queue so at least sprites (as particles) are not covered by the Image Effect.
|
|
||||||
This cause that sprites look floating over the scene as the fog makes them clearly separated from rest
|
|
||||||
of the scene.
|
|
||||||
|
|
||||||
To avoid the problem described above, Volumetric Fog & Mist includes two custom sprite shaders
|
|
||||||
found in Resources/Extras folder. You will find two materials with names SpriteFogDiffuse and
|
|
||||||
SpriteFogUnlit, which you may just assign to your Sprite Renderers to make Sprite fully compatible
|
|
||||||
with the Image Effects.
|
|
||||||
|
|
||||||
Compatibility with Time of Day
|
|
||||||
|
|
||||||
If you use Time of Day asset, you may assign the Sun game object found under Sky Dome to the Sun
|
|
||||||
field in the Volumetric Fog & Mist inspector. That will sync the direction and color of the Sun light
|
|
||||||
with the fog.
|
|
||||||
|
|
||||||
Compatibility with other Sky Managers
|
|
||||||
|
|
||||||
The compatibility with Sky managers in Volumetric Fog & Mist affects two parameters:
|
|
||||||
- Depth of skybox: many sky managers use a “Sky Dome” to render the sky. This sky dome is a
|
|
||||||
big sphere that surrounds the scene. To allow sky haze work with sky domes, reduce the sky
|
|
||||||
depth parameters under the sky haze section.
|
|
||||||
- Sun orientation: fog lighting will adapt automatically to the Sun orientation. Just drag and
|
|
||||||
drop any gameobject that reflects current Sun direction onto the Sun property in the
|
|
||||||
inspector.
|
|
||||||
|
|
||||||
Compatibility with Gaia
|
|
||||||
|
|
||||||
Volumetric Fog & Mist is also available from Gaia’s Extension Manager. You will find a list of
|
|
||||||
convenient buttons that configures and select the different presets of Volumetric Fog & Mist in just
|
|
||||||
one click.
|
|
||||||
|
|
||||||
17
|
|
||||||
Compatibility with Horizon(ON)
|
|
||||||
|
|
||||||
Volumetric Fog & Mist has been tested with recent versions of Horizon(ON). It will only work with
|
|
||||||
the real terrain though, so you will probably need to reduce the max distance factor and combine
|
|
||||||
Volumetric Fog & MIst with the fog effect provided by Horizon(ON) for the long distance.
|
|
||||||
|
|
||||||
Performance Tips
|
|
||||||
|
|
||||||
Volumetric Fog uses an extremely optimized ray-marching algorithm to provide “volumetric sense”
|
|
||||||
fog in front of your player. This great effect comes at a performance price that makes Volumetric Fog
|
|
||||||
& Mist not suitable for mobile devices (at least mobile devices to date).
|
|
||||||
|
|
||||||
However, we have added a few optimization parameters to provide you with more control regarding
|
|
||||||
the performance vs quality:
|
|
||||||
|
|
||||||
- Compute Depth: disable this option unless it’s required in your scene as this will add an
|
|
||||||
additional rendering stage (it’s optimized but nevertheless it’s an additional hidden camera
|
|
||||||
rendering stuff like billboard trees).
|
|
||||||
|
|
||||||
- Max Distance: reduce the max distance property to a value that matches your
|
|
||||||
scene/requirements so no extra fog is calculated unnecessarily.
|
|
||||||
|
|
||||||
- Sky Haze: reduce to 0 to improve performance.
|
|
||||||
|
|
||||||
- Transparency Mode: set to None to avoid extra overhead.
|
|
||||||
|
|
||||||
- Downsampling: increase this value to improve performance. A high value will produce visible
|
|
||||||
artifacts around objects. A x2 value usually works well. A x4 or higher value works better with
|
|
||||||
elevated/cloud fog. You can enable the “Edge improvement” option to reduce fog
|
|
||||||
bleeding/pixelization around geometry borders.
|
|
||||||
|
|
||||||
- Stepping: controls the step of the ray-marching algorithm. Reduce this value to improve
|
|
||||||
performance.
|
|
||||||
|
|
||||||
- Stepping near: additional factor for the ray-marching step applied only to close distances.
|
|
||||||
Increase to improve the fog effect when stepping is reduced.
|
|
||||||
|
|
||||||
- Distance (starting Distance in Fog Geometry group): reduce to 0 to improve performance.
|
|
||||||
|
|
||||||
- Height: try to set the minimum height for the look you need.
|
|
||||||
|
|
||||||
Optional features that you may check they’re either on (because you want them) or off (because you
|
|
||||||
don’t want them and want to make sure they are really disabled):
|
|
||||||
|
|
||||||
18
|
|
||||||
- Point Lights: reduce the number of point lights that can illuminate the fog (Point Light
|
|
||||||
section). Make sure the range for non-used slots is zero.
|
|
||||||
|
|
||||||
- Light Scattering: uncheck the Enable toggle to disable the effect and increase performance.
|
|
||||||
Make sure that if you enable it, the effect is visible when facing towards Sun, otherwise you
|
|
||||||
will be wasting lot GPU cycles!
|
|
||||||
|
|
||||||
- Fog Void / Fog of War: disable (either setting the fog void radius to zero) or disabling fog of
|
|
||||||
war feature (toggle in its section) if you’re not using them to reduce GPU work.
|
|
||||||
|
|
||||||
19
|
|
||||||
Common Issues (FAQ)
|
|
||||||
|
|
||||||
When I import Volumetric Fog & Mist I see some errors in the console related to Standard Assets.
|
|
||||||
|
|
||||||
Depending on your Unity version if it’s older than 5.5, Volumetric Fog & Mist includes a copy of the
|
|
||||||
Standard Assets inside the Demo folder. They were used only in the demo scenes so you can
|
|
||||||
remove them along the demo folder if you don’t need them anymore. In Unity 5.5, the Standard
|
|
||||||
Assets are no longer included to avoid issues with your own usage of Standard Assets (instructions
|
|
||||||
to import the demo scenes are easy to follow and included in a readme file inside the demo folder).
|
|
||||||
|
|
||||||
So depending on your Unity version if it’s older than 5.5, this copy of Standard Assets corresponds
|
|
||||||
to 5.1.1, 5.3.1 or 5.4 Unity versions. If you already have the Standard Assets imported in your
|
|
||||||
project you may receive errors due to duplication of files. The errors will go away when you delete
|
|
||||||
the duplicated files. You may delete the Standard Assets folder inside Volumetric Fog & Mist Demos
|
|
||||||
folder.
|
|
||||||
|
|
||||||
I have exceeded the maximum number of allowed shader keywords. What can I do?
|
|
||||||
|
|
||||||
Volumetric Fog & Mist shader uses the following keywords, defined in VolumetricFog.shader file.
|
|
||||||
Since V6.4, a new option in the inspector allows you to remove some of these keywords. This
|
|
||||||
option is accessible pressing a button with the text “Build Options” located on top of the
|
|
||||||
Volumetric Fog & Mist inspector.
|
|
||||||
|
|
||||||
If you want to further optimize the shader, you can edit it and modify it depending if you want the
|
|
||||||
feature or not:
|
|
||||||
|
|
||||||
A) I don’t need that feature: just remove the corresponding keyword or the entire #pragma
|
|
||||||
line.
|
|
||||||
|
|
||||||
B) I need that feature: you may remove the #pragma line AND remove all #if related
|
|
||||||
statements in the shader so that code will always execute.
|
|
||||||
|
|
||||||
#pragma multi_compile __ FOG_DISTANCE_ON
|
|
||||||
Used when you set Starting Distance > 0.
|
|
||||||
|
|
||||||
#pragma multi_compile __ FOG_VOID_SPHERE FOG_VOID_BOX
|
|
||||||
Used when you enable fog void option.
|
|
||||||
|
|
||||||
#pragma multi_compile __ FOG_AREA_SPHERE FOG_AREA_BOX
|
|
||||||
Used when you enable fog area option..
|
|
||||||
|
|
||||||
#pragma multi_compile __ FOG_HAZE_ON
|
|
||||||
Used when you Sky Haze setting is > 0.
|
|
||||||
|
|
||||||
#pragma multi_compile __ FOG_OF_WAR_ON
|
|
||||||
Used when you enable Fog of War feature.
|
|
||||||
|
|
||||||
20
|
|
||||||
#pragma multi_compile __ FOG_POINT_LIGHT0 …
|
|
||||||
Used when the range setting of the optional point light setting is > 0.
|
|
||||||
#pragma multi_compile __ FOG_SCATTERING_ON
|
|
||||||
Used for light scattering (god rays, sun shafts).
|
|
||||||
If you want to further optimize shader keywords at project level, consider using Shader Control
|
|
||||||
asset (check it on the Asset Store).
|
|
||||||
|
|
||||||
When I generate a build, it stucks or takes lot of time!
|
|
||||||
This is a known issue with Unity when compiling shaders with many keywords. You may want to
|
|
||||||
reduce the shader complexity removing some keywords that you don’t use – check the previous
|
|
||||||
question to learn about the different keywords used by the shader.
|
|
||||||
|
|
||||||
I see banding artifacts, how can I remove them?
|
|
||||||
To reduce banding artifacts (ie. circles on the sky), make sure your camera has HDR enabled and
|
|
||||||
use the Dithering and Jittering options found in the Optimization & Quality settings section. You can
|
|
||||||
customize the dither effect using the slider next to the toggle. For low density fog, you may need to
|
|
||||||
increase the dithering intensity.
|
|
||||||
|
|
||||||
Can I extend the maximum distance far beyond the 2000 limit?
|
|
||||||
You can edit the custom inspector to increase that cap. However increasing that value will impact
|
|
||||||
performance. If you need to cover vast or far areas with fog, consider adding Dynamic Fog & Mist in
|
|
||||||
addition to Volumetric Fog & Mist. Use Volumetric Fog & Mist for short distance effects and
|
|
||||||
Dynamic Fog & Mist for the background.
|
|
||||||
|
|
||||||
When I enable transparency pass (Blend) I see strange colors or the particles don’t show up.
|
|
||||||
What is it?
|
|
||||||
In this case, make sure Volumetric Fog & Mist camera scripts are first on the camera stack of
|
|
||||||
components, before any other image effect.
|
|
||||||
|
|
||||||
21
|
|
||||||
Additional Support
|
|
||||||
|
|
||||||
Please visit kronnect.com for questions, support and more info.
|
|
||||||
|
|
||||||
Dynamic Fog & Mist
|
|
||||||
|
|
||||||
You will find a copy of Dynamic Fog & Mist included in this package located in the Extras folder.
|
|
||||||
Dynamic Fog & Mist is somewhat less impressive visually than Volumetric Fog but it will provide
|
|
||||||
better performance.
|
|
||||||
If you’re not interested in using Dynamic Fog & MIst, remember to remove the Extra folder
|
|
||||||
completely.
|
|
||||||
|
|
||||||
22
|
|
||||||
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: d9db9a433452d48ffa96952a49408049
|
|
||||||
timeCreated: 1461503997
|
|
||||||
licenseType: Store
|
|
||||||
DefaultImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,159 +0,0 @@
|
|||||||
Don’t miss these other cool assets brought to you by
|
|
||||||
|
|
||||||
BEAUTIFY
|
|
||||||
|
|
||||||
Beautify is an acclaimed full-screen image processing effect that improves the image quality in real time
|
|
||||||
producing incredibly crisp and vivid scenes.
|
|
||||||
|
|
||||||
In addition to this unique image enhancement filter, you will find in Beautify additional effects like high
|
|
||||||
quality Bloom, dirty lens effect, vignetting, night & termal vision and more!
|
|
||||||
|
|
||||||
Get it on the Asset Store:
|
|
||||||
|
|
||||||
https://www.assetstore.unity3d.com/#!/content/61730?aid=1101lGsd
|
|
||||||
|
|
||||||
DYNAMIC FOG & MIST
|
|
||||||
|
|
||||||
Dynamic Fog & Mist is a full-screen image effect that adds live, moving Fog, Mist and Sky Haze to your scenes
|
|
||||||
making them less dull and boring.
|
|
||||||
|
|
||||||
Get it on the Asset Store:
|
|
||||||
|
|
||||||
https://www.assetstore.unity3d.com/en/#!/content/48200?aid=1101lGsd
|
|
||||||
VOLUMETRIC FOG & MIST
|
|
||||||
|
|
||||||
Volumetric Fog & Mist is the enhanced version of Dynamic Fog & Mist (which is also included in the package)
|
|
||||||
and has been designed to provide a better looking fog and cloud formations with support of lighting and glow
|
|
||||||
effects.
|
|
||||||
|
|
||||||
It’s feature rich with options like fog of war, Sun tracking, better transparent and sprite support, sun shafts and
|
|
||||||
more.
|
|
||||||
|
|
||||||
Get it on the Asset Store:
|
|
||||||
|
|
||||||
https://www.assetstore.unity3d.com/en/#!/content/49858?aid=1101lGsd
|
|
||||||
|
|
||||||
WORLD POLITICAL MAP SERIES
|
|
||||||
|
|
||||||
World Political Map series is a collection of professional mapping assets for Unity (2D and Globe Editions).
|
|
||||||
Used by many companies and agencies across the world to visualize data, resources, interact with the user, etc.
|
|
||||||
|
|
||||||
Get it on the Asset Store (Globe Edition):
|
|
||||||
|
|
||||||
https://www.assetstore.unity3d.com/#!/content/41890?aid=1101lGsd
|
|
||||||
|
|
||||||
Get it on the Asset Store (2D Edition):
|
|
||||||
|
|
||||||
https://www.assetstore.unity3d.com/#!/content/43180?aid=1101lGsd
|
|
||||||
WORLD MAP STRATEGY KIT
|
|
||||||
|
|
||||||
World Political Strategy Kit is a complete framework for building AAA strategy games, including all world
|
|
||||||
countries and provinces, +7000 cities, cool 3D PBS dynamic viewport for map, hexagonal grid, path-finding,
|
|
||||||
real elevation, and much more.
|
|
||||||
|
|
||||||
Get it on the Asset Store:
|
|
||||||
|
|
||||||
https://www.assetstore.unity3d.com/en/#!/content/55121?aid=1101lGsd
|
|
||||||
|
|
||||||
WORLD MAPS PRO BUNDLE
|
|
||||||
|
|
||||||
World Maps Pro Bundle is our most complete and professional suite of maps for Unity platform for the best
|
|
||||||
price.
|
|
||||||
This bundle contains:
|
|
||||||
|
|
||||||
- World Political Map Globe Edition
|
|
||||||
- World Political Map 2D Edition
|
|
||||||
- World Map Strategy Kit
|
|
||||||
- World Flags and Weather Icons
|
|
||||||
|
|
||||||
Purchase this bundle and save $$$!
|
|
||||||
|
|
||||||
https://www.assetstore.unity3d.com/#!/content/80125?aid=1101lGsd
|
|
||||||
COMPASS NAVIGATOR PRO
|
|
||||||
|
|
||||||
Compass Navigator Pro adds a Skyrim -like compass bar to your UI, including smooth fade in/out, various
|
|
||||||
bar designs, +11 icons in two variations (+22 icons) and nice features like beam lights!
|
|
||||||
|
|
||||||
Get it on the Asset Store:
|
|
||||||
|
|
||||||
https://www.assetstore.unity3d.com/en/#!/content/59519?aid=1101lGsd
|
|
||||||
|
|
||||||
X-FRAME FPS ACCELERATOR
|
|
||||||
|
|
||||||
X-Frame FPS Accelerator provides you extra frames per second in your mobile games (iOS and Android). It
|
|
||||||
takes advantage of the huge screen resolution of these devices to sacrifice some pixels in Exchange of
|
|
||||||
performance with flexible and dynamic quality options.
|
|
||||||
|
|
||||||
Get it on the Asset Store:
|
|
||||||
|
|
||||||
https://www.assetstore.unity3d.com/en/#!/content/63965?aid=1101lGsd
|
|
||||||
SHADER CONTROL
|
|
||||||
|
|
||||||
Shader Control is a tiny but powerful tool that will allow you to identify and manage shader keywords usage in
|
|
||||||
your project, taking more control over the build size and compilation time.
|
|
||||||
|
|
||||||
Quickly locates and helps you disable keywords not needed, learn about the shaders used in your project and
|
|
||||||
their keywords!
|
|
||||||
|
|
||||||
Get it on the Asset Store:
|
|
||||||
|
|
||||||
https://www.assetstore.unity3d.com/#!/content/74817?aid=1101lGsd
|
|
||||||
|
|
||||||
TERRAIN GRID SYSTEM
|
|
||||||
|
|
||||||
Terrain Grid System is an advanced grid generator and territory/cell highlighter/fader for both Terrain and 2D
|
|
||||||
grids.
|
|
||||||
|
|
||||||
It can generate voronoi, hexagonal and boxed grids dynamically on your terrain, with flexible position options.
|
|
||||||
|
|
||||||
Get it on the Asset Store:
|
|
||||||
|
|
||||||
https://www.assetstore.unity3d.com/#!/content/47215?aid=1101lGsd
|
|
||||||
GRIDS 2D
|
|
||||||
|
|
||||||
Grids 2D is similar to Terrain GRid System but only for flat 2D grids. It’s fast, convenient and easy to use.
|
|
||||||
It can also generate voronoi, hexagonal and boxed grids dynamically on your terrain, with flexible API to integrate
|
|
||||||
with your game.
|
|
||||||
|
|
||||||
Get it on the Asset Store:
|
|
||||||
|
|
||||||
https://www.assetstore.unity3d.com/en/#!/content/59981?aid=1101lGsd
|
|
||||||
|
|
||||||
HEXASPHERE GRID SYSTEM
|
|
||||||
|
|
||||||
Hexasphere Grid System leverages shader technologies like texture arrays and geometry shaders to render
|
|
||||||
hundreds of thousands of interactive and customiable tiles in a spherical/hexagonal grid.
|
|
||||||
|
|
||||||
Fully interactive, with VR support and super-fast.
|
|
||||||
|
|
||||||
Get it on the Asset Store:
|
|
||||||
|
|
||||||
https://www.assetstore.unity3d.com/en/#!/content/89112?aid=1101lGsd
|
|
||||||
TUNNEL FX 2 Tunnel FX 2 is a full-screen post image effect that creates stunning, colorful 3D animated tunnels. It does not
|
|
||||||
LIQUID VOLUME create any real tunnel but just draw the tunnel as a post-effect behind any geometry or UI.
|
|
||||||
Get it on the Asset Store:
|
|
||||||
|
|
||||||
https://www.assetstore.unity3d.com/#!/content/68564?aid=1101lGsd
|
|
||||||
|
|
||||||
Liquid Volume is a powerful and highly customizable shader that simulates realistic and animated liquid
|
|
||||||
containers. Can be used in 3D scenes and 2D UI (demos included).
|
|
||||||
Liquid Volume is super easy and fun to use: just add the main script to any primitive (sphere, box, cylinder and
|
|
||||||
similar shape models) to convert it into a liquid container!
|
|
||||||
Get it on the Asset Store:
|
|
||||||
|
|
||||||
https://www.assetstore.unity3d.com/#!/content/70992?aid=1101lGsd
|
|
||||||
GLOBAL SNOW Global Snow renders your existing scene into a winter landscape with a couple of clicks. Just add a single script
|
|
||||||
VOXEL PLAY to your camera and customize the results.
|
|
||||||
Supports relief mapping for realistic snow effect + human footprints + terrain marks with automatic collision
|
|
||||||
detection and more!
|
|
||||||
Get it on the Asset Store:
|
|
||||||
|
|
||||||
https://www.assetstore.unity3d.com/#!/content/79795?aid=1101lGsd
|
|
||||||
|
|
||||||
Voxel Play is a procedural, fast environment based on cubes. It leverages highly optimized code, including
|
|
||||||
geometry shaders and texture arrays, to generate beautiful, rich, vast infinite worlds which can be customized
|
|
||||||
and modified in many ways.
|
|
||||||
Get it on the Asset Store:
|
|
||||||
|
|
||||||
https://www.assetstore.unity3d.com/#!/content/106618?aid=1101lGsd
|
|
||||||
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: b56042fb4501b4b57bdc20fb98d28ed3
|
|
||||||
timeCreated: 1470302985
|
|
||||||
licenseType: Store
|
|
||||||
DefaultImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,9 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 8255a088851da4e7881b8ed53f47b26c
|
|
||||||
folderAsset: yes
|
|
||||||
timeCreated: 1446728437
|
|
||||||
licenseType: Store
|
|
||||||
DefaultImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,132 +0,0 @@
|
|||||||
using UnityEngine;
|
|
||||||
using UnityEditor;
|
|
||||||
using System.Collections;
|
|
||||||
|
|
||||||
namespace VolumetricFogAndMist {
|
|
||||||
public class FogVolumeExtensions : MonoBehaviour {
|
|
||||||
|
|
||||||
[MenuItem("GameObject/Create Other/Volumetric Fog Volume")]
|
|
||||||
static void CreateFogVolume(MenuCommand menuCommand) {
|
|
||||||
GameObject fogVolume = Resources.Load<GameObject>("Prefabs/FogVolume");
|
|
||||||
if (fogVolume == null) {
|
|
||||||
Debug.LogError("Could not load FogVolume from Resources/Prefabs folder!");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
GameObject newFogVolume = Instantiate(fogVolume);
|
|
||||||
newFogVolume.name = "Volumetric Fog Volume";
|
|
||||||
|
|
||||||
// Ensure it gets reparented if this was a context click (otherwise does nothing)
|
|
||||||
GameObjectUtility.SetParentAndAlign(newFogVolume, menuCommand.context as GameObject);
|
|
||||||
|
|
||||||
// Break prefab link
|
|
||||||
PrefabUtility.DisconnectPrefabInstance(newFogVolume);
|
|
||||||
|
|
||||||
// Register root object for undo.
|
|
||||||
Undo.RegisterCreatedObjectUndo(newFogVolume, "Create Volumetric Fog Volume");
|
|
||||||
Selection.activeObject = newFogVolume;
|
|
||||||
|
|
||||||
// Enables fog volumes in fog component
|
|
||||||
VolumetricFog fog = Camera.main.GetComponent<VolumetricFog>();
|
|
||||||
if (fog != null)
|
|
||||||
fog.useFogVolumes = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
[MenuItem("GameObject/Create Other/Volumetric Fog Area (Box)")]
|
|
||||||
static void CreateFogAreaBox(MenuCommand menuCommand) {
|
|
||||||
GameObject fogArea = Resources.Load<GameObject>("Prefabs/FogBoxArea");
|
|
||||||
if (fogArea == null) {
|
|
||||||
Debug.LogError("Could not load FogBoxArea from Resources/Prefabs folder!");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
GameObject newFogArea = Instantiate(fogArea);
|
|
||||||
newFogArea.name = "Volumetric Fog Area Box";
|
|
||||||
|
|
||||||
// Ensure it gets reparented if this was a context click (otherwise does nothing)
|
|
||||||
GameObjectUtility.SetParentAndAlign(newFogArea, menuCommand.context as GameObject);
|
|
||||||
|
|
||||||
// Break prefab link
|
|
||||||
PrefabUtility.DisconnectPrefabInstance(newFogArea);
|
|
||||||
|
|
||||||
// Register root object for undo.
|
|
||||||
Undo.RegisterCreatedObjectUndo(newFogArea, "Create Volumetric Fog Area (Box)");
|
|
||||||
Selection.activeObject = newFogArea;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
[MenuItem("GameObject/Create Other/Volumetric Fog Area (Spherical)")]
|
|
||||||
static void CreateFogAreaSphere(MenuCommand menuCommand) {
|
|
||||||
GameObject fogArea = Resources.Load<GameObject>("Prefabs/FogSphereArea");
|
|
||||||
if (fogArea == null) {
|
|
||||||
Debug.LogError("Could not load FogSphereArea from Resources/Prefabs folder!");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
GameObject newFogArea = Instantiate(fogArea);
|
|
||||||
newFogArea.name = "Volumetric Fog Area Sphere";
|
|
||||||
|
|
||||||
// Ensure it gets reparented if this was a context click (otherwise does nothing)
|
|
||||||
GameObjectUtility.SetParentAndAlign(newFogArea, menuCommand.context as GameObject);
|
|
||||||
|
|
||||||
// Break prefab link
|
|
||||||
PrefabUtility.DisconnectPrefabInstance(newFogArea);
|
|
||||||
|
|
||||||
// Register root object for undo.
|
|
||||||
Undo.RegisterCreatedObjectUndo(newFogArea, "Create Volumetric Fog Area (Sphere)");
|
|
||||||
Selection.activeObject = newFogArea;
|
|
||||||
}
|
|
||||||
|
|
||||||
[MenuItem("GameObject/Create Other/Volumetric Fog Area (Spherical, 2 layers)")]
|
|
||||||
static void CreateFogCloud2Layer(MenuCommand menuCommand) {
|
|
||||||
GameObject fogArea = Resources.Load<GameObject>("Prefabs/FogSphereArea");
|
|
||||||
if (fogArea == null) {
|
|
||||||
Debug.LogError("Could not load FogSphereArea from Resources/Prefabs folder!");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
GameObject root = new GameObject("Volumetric Fog Cloud Layers");
|
|
||||||
Vector3 pos = Camera.main != null ? Camera.main.transform.position : Vector3.zero;
|
|
||||||
pos.y += 70;
|
|
||||||
root.transform.position = pos;
|
|
||||||
VolumetricFog fog = InstantiateCloudLayer(fogArea, 1).GetComponent<VolumetricFog>();
|
|
||||||
fog.transform.SetParent(root.transform, false);
|
|
||||||
fog.transform.localScale = new Vector3(2000, 60f, 2000);
|
|
||||||
fog.density = 1f;
|
|
||||||
fog.height = 60f;
|
|
||||||
fog.noiseStrength = 0.778f;
|
|
||||||
fog.noiseScale = 4.37f;
|
|
||||||
fog.noiseSparse = 0.418f;
|
|
||||||
fog.noiseFinalMultiplier = 1f;
|
|
||||||
fog.distance = 0;
|
|
||||||
fog.distanceFallOff = 0f;
|
|
||||||
|
|
||||||
fog = InstantiateCloudLayer(fogArea, 2).GetComponent<VolumetricFog>();
|
|
||||||
fog.transform.SetParent(root.transform, false);
|
|
||||||
fog.transform.localPosition += new Vector3(0, 50, 0);
|
|
||||||
fog.transform.localScale = new Vector3(2000, 50, 2000);
|
|
||||||
fog.density = 1f;
|
|
||||||
fog.height = 50f;
|
|
||||||
fog.noiseStrength = 1f;
|
|
||||||
fog.noiseScale = 5.57f;
|
|
||||||
fog.noiseSparse = 0.458f;
|
|
||||||
fog.noiseFinalMultiplier = 1f;
|
|
||||||
fog.distance = 0;
|
|
||||||
fog.distanceFallOff = 0f;
|
|
||||||
|
|
||||||
|
|
||||||
Selection.activeObject = root;
|
|
||||||
}
|
|
||||||
|
|
||||||
static GameObject InstantiateCloudLayer(GameObject fogArea, int layerIndex) {
|
|
||||||
GameObject newFogArea = Instantiate(fogArea);
|
|
||||||
newFogArea.name = "Volumetric Fog Area Layer " + layerIndex;
|
|
||||||
|
|
||||||
// Break prefab link
|
|
||||||
PrefabUtility.DisconnectPrefabInstance(newFogArea);
|
|
||||||
return newFogArea;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -1,12 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 635c1ad5a1c2644b899dcfc838fb6973
|
|
||||||
timeCreated: 1446728451
|
|
||||||
licenseType: Store
|
|
||||||
MonoImporter:
|
|
||||||
serializedVersion: 2
|
|
||||||
defaultReferences: []
|
|
||||||
executionOrder: 0
|
|
||||||
icon: {instanceID: 0}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,9 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: aa9ebcae19f0e45e0bffc9ee4c0c939b
|
|
||||||
folderAsset: yes
|
|
||||||
timeCreated: 1450484719
|
|
||||||
licenseType: Store
|
|
||||||
DefaultImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
Binary file not shown.
Before Width: | Height: | Size: 135 KiB |
@ -1,55 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: e659317799ff547e6876275d56cd0e7d
|
|
||||||
timeCreated: 1450484325
|
|
||||||
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:
|
|
@ -1,85 +0,0 @@
|
|||||||
using UnityEngine;
|
|
||||||
using UnityEditor;
|
|
||||||
using System.Collections;
|
|
||||||
|
|
||||||
namespace VolumetricFogAndMist {
|
|
||||||
|
|
||||||
public class VolumetricFogAbout : EditorWindow {
|
|
||||||
Texture2D _headerTexture, _blackTexture;
|
|
||||||
GUIStyle richLabelStyle;
|
|
||||||
GUIStyle blackStyle;
|
|
||||||
|
|
||||||
public static void ShowAboutWindow() {
|
|
||||||
float height = 350.0f;
|
|
||||||
float width = 515.0f;
|
|
||||||
|
|
||||||
Rect rect = new Rect(Screen.width * 0.5f - width * 0.5f, Screen.height * 0.5f - height * 0.5f, width, height);
|
|
||||||
GetWindowWithRect<VolumetricFogAbout>(rect, true, "About Volumetric Fog & Mist", true);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void OnEnable() {
|
|
||||||
Color backColor = EditorGUIUtility.isProSkin ? new Color(0.18f, 0.18f, 0.18f) : new Color(0.7f, 0.7f, 0.7f);
|
|
||||||
_blackTexture = MakeTex(4, 4, backColor);
|
|
||||||
_blackTexture.hideFlags = HideFlags.DontSave;
|
|
||||||
_headerTexture = Resources.Load<Texture2D>("VolumetricHeader");
|
|
||||||
blackStyle = new GUIStyle();
|
|
||||||
blackStyle.normal.background = _blackTexture;
|
|
||||||
}
|
|
||||||
|
|
||||||
void OnGUI() {
|
|
||||||
if (richLabelStyle == null) {
|
|
||||||
richLabelStyle = new GUIStyle(GUI.skin.label);
|
|
||||||
richLabelStyle.richText = true;
|
|
||||||
richLabelStyle.wordWrap = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
EditorGUILayout.Separator();
|
|
||||||
GUI.skin.label.alignment = TextAnchor.MiddleCenter;
|
|
||||||
GUILayout.Label(_headerTexture, GUILayout.ExpandWidth(true));
|
|
||||||
GUI.skin.label.alignment = TextAnchor.MiddleLeft;
|
|
||||||
EditorGUILayout.Separator();
|
|
||||||
|
|
||||||
EditorGUILayout.Separator();
|
|
||||||
EditorGUILayout.BeginHorizontal();
|
|
||||||
GUILayout.Label("<b>Volumetric Fog & Mist</b>\nCopyright (C) by Kronnect", richLabelStyle);
|
|
||||||
EditorGUILayout.EndHorizontal();
|
|
||||||
EditorGUILayout.Separator();
|
|
||||||
GUILayout.Label("Thanks for purchasing!");
|
|
||||||
EditorGUILayout.Separator();
|
|
||||||
|
|
||||||
EditorGUILayout.Separator();
|
|
||||||
EditorGUILayout.Separator();
|
|
||||||
|
|
||||||
EditorGUILayout.BeginHorizontal();
|
|
||||||
if (GUILayout.Button("Support Forum and more assets!", GUILayout.Height(40))) {
|
|
||||||
Application.OpenURL("http://kronnect.me");
|
|
||||||
}
|
|
||||||
if (GUILayout.Button("Rate this Asset", GUILayout.Height(40))) {
|
|
||||||
Application.OpenURL("com.unity3d.kharma:content/49858");
|
|
||||||
}
|
|
||||||
if (GUILayout.Button("Close Window", GUILayout.Height(40))) {
|
|
||||||
Close();
|
|
||||||
}
|
|
||||||
EditorGUILayout.EndHorizontal();
|
|
||||||
EditorGUILayout.Separator();
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
Texture2D MakeTex(int width, int height, Color col) {
|
|
||||||
Color[] pix = new Color[width * height];
|
|
||||||
|
|
||||||
for (int i = 0; i < pix.Length; i++)
|
|
||||||
pix[i] = col;
|
|
||||||
|
|
||||||
Texture2D result = new Texture2D(width, height);
|
|
||||||
result.SetPixels(pix);
|
|
||||||
result.Apply();
|
|
||||||
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -1,12 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 6f99a18b487484421b22ea875243b8c0
|
|
||||||
timeCreated: 1450483548
|
|
||||||
licenseType: Store
|
|
||||||
MonoImporter:
|
|
||||||
serializedVersion: 2
|
|
||||||
defaultReferences: []
|
|
||||||
executionOrder: 0
|
|
||||||
icon: {instanceID: 0}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,24 +0,0 @@
|
|||||||
using UnityEngine;
|
|
||||||
using UnityEditor;
|
|
||||||
using System.Collections;
|
|
||||||
|
|
||||||
namespace VolumetricFogAndMist {
|
|
||||||
|
|
||||||
public static class VolumetricFogEditorStyles {
|
|
||||||
|
|
||||||
public static void SetFoldoutColor(this GUIStyle style) {
|
|
||||||
Color foldoutColor = EditorGUIUtility.isProSkin ? new Color(0.52f, 0.66f, 0.9f) : new Color(0.12f, 0.16f, 0.4f);
|
|
||||||
style.normal.textColor = foldoutColor;
|
|
||||||
style.onNormal.textColor = foldoutColor;
|
|
||||||
style.hover.textColor = foldoutColor;
|
|
||||||
style.onHover.textColor = foldoutColor;
|
|
||||||
style.focused.textColor = foldoutColor;
|
|
||||||
style.onFocused.textColor = foldoutColor;
|
|
||||||
style.active.textColor = foldoutColor;
|
|
||||||
style.onActive.textColor = foldoutColor;
|
|
||||||
style.fontStyle = FontStyle.Bold;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
@ -1,13 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 1cd4946f032584986b2513c20a683ab9
|
|
||||||
timeCreated: 1524565791
|
|
||||||
licenseType: Store
|
|
||||||
MonoImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
serializedVersion: 2
|
|
||||||
defaultReferences: []
|
|
||||||
executionOrder: 0
|
|
||||||
icon: {instanceID: 0}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,172 +0,0 @@
|
|||||||
#if GAIA_PRESENT && UNITY_EDITOR
|
|
||||||
|
|
||||||
using UnityEngine;
|
|
||||||
using System.Collections;
|
|
||||||
using System;
|
|
||||||
using System.Reflection;
|
|
||||||
using VolumetricFogAndMist;
|
|
||||||
using UnityEditor;
|
|
||||||
|
|
||||||
namespace Gaia.GX.Kronnect
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// Volumetric Fog & Mist extension for Gaia.
|
|
||||||
/// </summary>
|
|
||||||
public class VolumetricFogGaiaExtension : 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 "Kronnect";
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <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 "Volumetric Fog & Mist";
|
|
||||||
}
|
|
||||||
|
|
||||||
#endregion
|
|
||||||
|
|
||||||
#region Methods exposed by Gaia as buttons must be prefixed with GX_
|
|
||||||
|
|
||||||
public static void GX_About()
|
|
||||||
{
|
|
||||||
EditorUtility.DisplayDialog("About Volumetric Fog & Mist", "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.", "OK");
|
|
||||||
}
|
|
||||||
|
|
||||||
static VolumetricFog CheckFog() {
|
|
||||||
VolumetricFog fog = VolumetricFog.instance;
|
|
||||||
// Checks Volumetric Fog image effect is attached
|
|
||||||
if (fog==null) {
|
|
||||||
Camera camera = Camera.main;
|
|
||||||
if (camera == null)
|
|
||||||
{
|
|
||||||
camera = FindObjectOfType<Camera>();
|
|
||||||
}
|
|
||||||
if (camera == null)
|
|
||||||
{
|
|
||||||
Debug.LogError("Could not find camera to add camera effects to. Please add a camera to your scene.");
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
fog = camera.gameObject.AddComponent<VolumetricFog>();
|
|
||||||
}
|
|
||||||
// Finds a suitable Sun light
|
|
||||||
if (fog.sun==null) {
|
|
||||||
Light[] lights = FindObjectsOfType<Light>();
|
|
||||||
for (int k=0;k<lights.Length;k++) {
|
|
||||||
Light light = lights[k];
|
|
||||||
if (light.name.Equals("Sun")) {
|
|
||||||
fog.sun = light.gameObject;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (fog.sun==null) {
|
|
||||||
for (int k=0;k<lights.Length;k++) {
|
|
||||||
Light light = lights[k];
|
|
||||||
if (light.type == LightType.Directional) {
|
|
||||||
fog.sun = light.gameObject;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return fog;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void GX_WorldEdge() {
|
|
||||||
VolumetricFog fog = CheckFog();
|
|
||||||
if (fog==null) return;
|
|
||||||
fog.preset = FOG_PRESET.WorldEdge;
|
|
||||||
fog.preset = FOG_PRESET.Custom; // enable to make modifications and preserve them
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void GX_WindyMist() {
|
|
||||||
VolumetricFog fog = CheckFog();
|
|
||||||
if (fog==null) return;
|
|
||||||
fog.preset = FOG_PRESET.WindyMist;
|
|
||||||
fog.preset = FOG_PRESET.Custom; // enable to make modifications and preserve them
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void GX_SeaOfClouds() {
|
|
||||||
VolumetricFog fog = CheckFog();
|
|
||||||
if (fog==null) return;
|
|
||||||
fog.preset = FOG_PRESET.SeaClouds;
|
|
||||||
fog.preset = FOG_PRESET.Custom; // enable to make modifications and preserve them
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void GX_Fog() {
|
|
||||||
VolumetricFog fog = CheckFog();
|
|
||||||
if (fog==null) return;
|
|
||||||
fog.preset = FOG_PRESET.Fog;
|
|
||||||
fog.preset = FOG_PRESET.Custom; // enable to make modifications and preserve them
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void GX_HeavyFog() {
|
|
||||||
VolumetricFog fog = CheckFog();
|
|
||||||
if (fog==null) return;
|
|
||||||
fog.preset = FOG_PRESET.HeavyFog;
|
|
||||||
fog.preset = FOG_PRESET.Custom; // enable to make modifications and preserve them
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void GX_FrostedWater() {
|
|
||||||
VolumetricFog fog = CheckFog();
|
|
||||||
if (fog==null) return;
|
|
||||||
fog.preset = FOG_PRESET.FrostedGround;
|
|
||||||
fog.preset = FOG_PRESET.Custom; // enable to make modifications and preserve them
|
|
||||||
fog.color = Color.white;
|
|
||||||
fog.height = 1.5f;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void GX_GroundFog() {
|
|
||||||
VolumetricFog fog = CheckFog();
|
|
||||||
if (fog==null) return;
|
|
||||||
fog.preset = FOG_PRESET.GroundFog;
|
|
||||||
fog.preset = FOG_PRESET.Custom; // enable to make modifications and preserve them
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void GX_ToxicSwamps() {
|
|
||||||
VolumetricFog fog = CheckFog();
|
|
||||||
if (fog==null) return;
|
|
||||||
fog.preset = FOG_PRESET.ToxicSwamp;
|
|
||||||
fog.preset = FOG_PRESET.Custom; // enable to make modifications and preserve them
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void GX_FoggyLakes() {
|
|
||||||
VolumetricFog fog = CheckFog();
|
|
||||||
if (fog==null) return;
|
|
||||||
fog.preset = FOG_PRESET.FoggyLake;
|
|
||||||
fog.preset = FOG_PRESET.Custom; // enable to make modifications and preserve them
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void GX_SandStorm1() {
|
|
||||||
VolumetricFog fog = CheckFog();
|
|
||||||
if (fog==null) return;
|
|
||||||
fog.preset = FOG_PRESET.SandStorm1;
|
|
||||||
fog.preset = FOG_PRESET.Custom; // enable to make modifications and preserve them
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void GX_SandStorm2() {
|
|
||||||
VolumetricFog fog = CheckFog();
|
|
||||||
if (fog==null) return;
|
|
||||||
fog.preset = FOG_PRESET.SandStorm2;
|
|
||||||
fog.preset = FOG_PRESET.Custom; // enable to make modifications and preserve them
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
#endregion
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif
|
|
@ -1,12 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 4ccb95bb9dfdf40c7b3f40103b227d13
|
|
||||||
timeCreated: 1456909943
|
|
||||||
licenseType: Store
|
|
||||||
MonoImporter:
|
|
||||||
serializedVersion: 2
|
|
||||||
defaultReferences: []
|
|
||||||
executionOrder: 0
|
|
||||||
icon: {instanceID: 0}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
File diff suppressed because it is too large
Load Diff
@ -1,12 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: ed722ddd819e74d918d6852f975db6c9
|
|
||||||
timeCreated: 1447430653
|
|
||||||
licenseType: Store
|
|
||||||
MonoImporter:
|
|
||||||
serializedVersion: 2
|
|
||||||
defaultReferences: []
|
|
||||||
executionOrder: 0
|
|
||||||
icon: {instanceID: 0}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,298 +0,0 @@
|
|||||||
using UnityEngine;
|
|
||||||
using UnityEditor;
|
|
||||||
using System;
|
|
||||||
using System.IO;
|
|
||||||
using System.Text;
|
|
||||||
using System.Collections;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
|
|
||||||
namespace VolumetricFogAndMist {
|
|
||||||
[CanEditMultipleObjects]
|
|
||||||
[CustomEditor(typeof(VolumetricFogProfile))]
|
|
||||||
public class VolumetricFogProfileInspector : Editor {
|
|
||||||
|
|
||||||
Color titleColor;
|
|
||||||
|
|
||||||
SerializedProperty lightingModel, sunCopyColor, density, noiseStrength, height, baselineHeight, distance, maxFogLength, maxFogLengthFallOff, distanceFallOff;
|
|
||||||
SerializedProperty baselineRelativeToCamera, baselineRelativeToCameraDelay;
|
|
||||||
SerializedProperty noiseScale, noiseSparse, noiseFinalMultiplier, alpha, color, specularColor, specularThreshold, specularIntensity, lightDirection, lightIntensity, lightColor;
|
|
||||||
SerializedProperty speed, windDirection, useRealTime;
|
|
||||||
SerializedProperty turbulenceStrength, useXYPlane;
|
|
||||||
SerializedProperty skyColor, skyHaze, skySpeed, skyNoiseStrength, skyAlpha;
|
|
||||||
SerializedProperty downsamplingOverride, downsampling, edgeImprove, edgeThreshold, stepping, steppingNear, dithering, ditherStrength;
|
|
||||||
SerializedProperty lightScatteringOverride, lightScatteringEnabled, lightScatteringDiffusion, lightScatteringExposure, lightScatteringSpread, lightScatteringWeight, lightScatteringIllumination, lightScatteringDecay, lightScatteringSamples, lightScatteringJittering;
|
|
||||||
SerializedProperty fogVoidOverride, fogVoidPosition, fogVoidTopology, fogVoidRadius, fogVoidFallOff, fogVoidHeight, fogVoidDepth;
|
|
||||||
|
|
||||||
void OnEnable() {
|
|
||||||
titleColor = EditorGUIUtility.isProSkin ? new Color(0.52f, 0.66f, 0.9f) : new Color(0.12f, 0.16f, 0.4f);
|
|
||||||
|
|
||||||
lightingModel = serializedObject.FindProperty("lightingModel");
|
|
||||||
sunCopyColor = serializedObject.FindProperty("sunCopyColor");
|
|
||||||
density = serializedObject.FindProperty("density");
|
|
||||||
noiseStrength = serializedObject.FindProperty("noiseStrength");
|
|
||||||
height = serializedObject.FindProperty("height");
|
|
||||||
baselineHeight = serializedObject.FindProperty("baselineHeight");
|
|
||||||
distance = serializedObject.FindProperty("distance");
|
|
||||||
maxFogLength = serializedObject.FindProperty("maxFogLength");
|
|
||||||
maxFogLengthFallOff = serializedObject.FindProperty("maxFogLengthFallOff");
|
|
||||||
distanceFallOff = serializedObject.FindProperty("distanceFallOff");
|
|
||||||
baselineRelativeToCamera = serializedObject.FindProperty("baselineRelativeToCamera");
|
|
||||||
baselineRelativeToCameraDelay = serializedObject.FindProperty("baselineRelativeToCameraDelay");
|
|
||||||
noiseScale = serializedObject.FindProperty("noiseScale");
|
|
||||||
noiseSparse = serializedObject.FindProperty("noiseSparse");
|
|
||||||
noiseFinalMultiplier = serializedObject.FindProperty("noiseFinalMultiplier");
|
|
||||||
alpha = serializedObject.FindProperty("alpha");
|
|
||||||
color = serializedObject.FindProperty("color");
|
|
||||||
specularColor = serializedObject.FindProperty("specularColor");
|
|
||||||
specularThreshold = serializedObject.FindProperty("specularThreshold");
|
|
||||||
specularIntensity = serializedObject.FindProperty("specularIntensity");
|
|
||||||
lightDirection = serializedObject.FindProperty("lightDirection");
|
|
||||||
lightIntensity = serializedObject.FindProperty("lightIntensity");
|
|
||||||
lightColor = serializedObject.FindProperty("lightColor");
|
|
||||||
speed = serializedObject.FindProperty("speed");
|
|
||||||
windDirection = serializedObject.FindProperty("windDirection");
|
|
||||||
useRealTime = serializedObject.FindProperty("useRealTime");
|
|
||||||
turbulenceStrength = serializedObject.FindProperty("turbulenceStrength");
|
|
||||||
useXYPlane = serializedObject.FindProperty("useXYPlane");
|
|
||||||
|
|
||||||
skyColor = serializedObject.FindProperty("skyColor");
|
|
||||||
skyHaze = serializedObject.FindProperty("skyHaze");
|
|
||||||
skySpeed = serializedObject.FindProperty("skySpeed");
|
|
||||||
skyNoiseStrength = serializedObject.FindProperty("skyNoiseStrength");
|
|
||||||
skyAlpha = serializedObject.FindProperty("skyAlpha");
|
|
||||||
|
|
||||||
downsamplingOverride = serializedObject.FindProperty("downsamplingOverride");
|
|
||||||
downsampling = serializedObject.FindProperty("downsampling");
|
|
||||||
edgeImprove = serializedObject.FindProperty("edgeImprove");
|
|
||||||
edgeThreshold = serializedObject.FindProperty("edgeThreshold");
|
|
||||||
stepping = serializedObject.FindProperty("stepping");
|
|
||||||
steppingNear = serializedObject.FindProperty("steppingNear");
|
|
||||||
dithering = serializedObject.FindProperty("dithering");
|
|
||||||
ditherStrength = serializedObject.FindProperty("ditherStrength");
|
|
||||||
|
|
||||||
lightScatteringOverride = serializedObject.FindProperty("lightScatteringOverride");
|
|
||||||
lightScatteringEnabled = serializedObject.FindProperty("lightScatteringEnabled");
|
|
||||||
lightScatteringDiffusion = serializedObject.FindProperty("lightScatteringDiffusion");
|
|
||||||
lightScatteringExposure = serializedObject.FindProperty("lightScatteringExposure");
|
|
||||||
lightScatteringSpread = serializedObject.FindProperty("lightScatteringSpread");
|
|
||||||
lightScatteringWeight = serializedObject.FindProperty("lightScatteringWeight");
|
|
||||||
lightScatteringIllumination = serializedObject.FindProperty("lightScatteringIllumination");
|
|
||||||
lightScatteringDecay = serializedObject.FindProperty("lightScatteringDecay");
|
|
||||||
lightScatteringSamples = serializedObject.FindProperty("lightScatteringSamples");
|
|
||||||
lightScatteringJittering = serializedObject.FindProperty("lightScatteringJittering");
|
|
||||||
|
|
||||||
fogVoidOverride = serializedObject.FindProperty("fogVoidOverride");
|
|
||||||
fogVoidPosition = serializedObject.FindProperty("fogVoidPosition");
|
|
||||||
fogVoidTopology = serializedObject.FindProperty("fogVoidTopology");
|
|
||||||
fogVoidRadius = serializedObject.FindProperty("fogVoidRadius");
|
|
||||||
fogVoidFallOff = serializedObject.FindProperty("fogVoidFallOff");
|
|
||||||
fogVoidHeight = serializedObject.FindProperty("fogVoidHeight");
|
|
||||||
fogVoidDepth = serializedObject.FindProperty("fogVoidDepth");
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void OnInspectorGUI() {
|
|
||||||
serializedObject.Update();
|
|
||||||
|
|
||||||
EditorGUILayout.Separator();
|
|
||||||
EditorGUILayout.BeginVertical();
|
|
||||||
|
|
||||||
EditorGUILayout.BeginHorizontal();
|
|
||||||
DrawTitleLabel("Volumetric Fog Profile");
|
|
||||||
if (GUILayout.Button("Help", GUILayout.Width(50)))
|
|
||||||
EditorUtility.DisplayDialog("Help", "Move the mouse over each label to show a description of the parameter.", "Ok");
|
|
||||||
EditorGUILayout.EndHorizontal();
|
|
||||||
|
|
||||||
EditorGUILayout.Separator();
|
|
||||||
EditorGUILayout.EndVertical();
|
|
||||||
EditorGUILayout.Separator();
|
|
||||||
|
|
||||||
EditorGUILayout.BeginVertical();
|
|
||||||
DrawTitleLabel("Geometry");
|
|
||||||
EditorGUILayout.PropertyField(distance, new GUIContent("Distance", "Distance in meters from the camera at which the fog starts. It works with Distance FallOff."));
|
|
||||||
EditorGUILayout.PropertyField(distanceFallOff, new GUIContent(" Fall Off", "When you set a value to Distance > 0, this parameter defines the gradient of the fog to the camera. The higher the value, the shorter the gradient."));
|
|
||||||
EditorGUILayout.PropertyField(maxFogLength, new GUIContent("Max. Distance", "Maximum distance from camera at which the fog is rendered. Decrease this value to improve performance."));
|
|
||||||
EditorGUILayout.PropertyField(maxFogLengthFallOff, new GUIContent(" FallOff", "Blends far range with background."));
|
|
||||||
EditorGUILayout.PropertyField(height, new GUIContent("Height", "Maximum height of the fog in meters."));
|
|
||||||
EditorGUILayout.PropertyField(useXYPlane, new GUIContent("Use XY Plane", "Switches between normal mode to XY mode."));
|
|
||||||
EditorGUILayout.BeginHorizontal();
|
|
||||||
if (useXYPlane.boolValue) {
|
|
||||||
EditorGUILayout.PropertyField(baselineHeight, new GUIContent("Base Z", "Starting Z of the fog in meters."));
|
|
||||||
} else {
|
|
||||||
EditorGUILayout.PropertyField(baselineHeight, new GUIContent("Base Height", "Starting height of the fog in meters. You can set this value above Camera position. Try it!"));
|
|
||||||
}
|
|
||||||
EditorGUILayout.EndHorizontal();
|
|
||||||
|
|
||||||
if (useXYPlane.boolValue) {
|
|
||||||
GUI.enabled = false;
|
|
||||||
}
|
|
||||||
EditorGUILayout.PropertyField(baselineRelativeToCamera, new GUIContent("Relative To Camera", "If set to true, the base height will be added to the camera height. This is useful for cloud styles so they always stay over your head!"));
|
|
||||||
if (baselineRelativeToCamera.boolValue) {
|
|
||||||
EditorGUILayout.PropertyField(baselineRelativeToCameraDelay, new GUIContent("Delay", "Speed factor for transitioning to new camera heights."));
|
|
||||||
}
|
|
||||||
GUI.enabled = true;
|
|
||||||
|
|
||||||
EditorGUILayout.Separator();
|
|
||||||
|
|
||||||
EditorGUILayout.EndVertical();
|
|
||||||
EditorGUILayout.Separator();
|
|
||||||
|
|
||||||
EditorGUILayout.BeginVertical();
|
|
||||||
DrawTitleLabel("Appearance");
|
|
||||||
EditorGUILayout.PropertyField(density, new GUIContent("Density", "General density of the fog. Higher density fog means darker fog as well."));
|
|
||||||
EditorGUILayout.PropertyField(noiseStrength, new GUIContent("Noise Strength", "Randomness of the fog formation. 0 means uniform fog whereas a value towards 1 will make areas of different densities and heights."));
|
|
||||||
EditorGUILayout.PropertyField(noiseScale, new GUIContent(" Scale", "Increasing this value will expand the size of the noise."));
|
|
||||||
EditorGUILayout.PropertyField(noiseSparse, new GUIContent(" Sparse", "Increase to make noise sparser."));
|
|
||||||
EditorGUILayout.PropertyField(noiseFinalMultiplier, new GUIContent(" Final Multiplier", "Final noise value multiplier."));
|
|
||||||
EditorGUILayout.PropertyField(alpha, new GUIContent("Alpha", "Transparency for the fog. You may want to reduce this value if you experiment issues with billboards."));
|
|
||||||
EditorGUILayout.PropertyField(color, new GUIContent("Albedo", "Base color of the fog."));
|
|
||||||
EditorGUILayout.PropertyField(specularColor, new GUIContent("Specular Color", "This is the color reflected by the fog under direct light exposure (see Light parameters)"));
|
|
||||||
EditorGUILayout.PropertyField(specularThreshold, new GUIContent("Specular Threshold", "Area of the fog subject to light reflectancy"));
|
|
||||||
EditorGUILayout.PropertyField(specularIntensity, new GUIContent("Specular Intensity", "The intensity of the reflected light."));
|
|
||||||
EditorGUILayout.PropertyField(lightDirection, new GUIContent("Light Direction", "The normalized direction of a simulated directional light."));
|
|
||||||
EditorGUILayout.PropertyField(lightingModel, new GUIContent("Lighting Model", "The lighting model used to calculate fog color. 'Legacy' is provided for previous version compatibility. 'Natural' uses ambient + light color. 'Single Light' excludes ambient color."));
|
|
||||||
EditorGUILayout.PropertyField(lightIntensity, new GUIContent("Light Intensity", "Intensity of the simulated directional light."));
|
|
||||||
EditorGUILayout.PropertyField(lightColor, new GUIContent("Light Color", "Color of the simulated direcional light."));
|
|
||||||
EditorGUILayout.PropertyField(sunCopyColor, new GUIContent("Copy Sun Color", "Always use Sun light color. Disable this property to allow choosing a custom light color."));
|
|
||||||
|
|
||||||
EditorGUILayout.EndVertical();
|
|
||||||
EditorGUILayout.Separator();
|
|
||||||
|
|
||||||
EditorGUILayout.BeginVertical();
|
|
||||||
DrawTitleLabel("Animation");
|
|
||||||
EditorGUILayout.BeginHorizontal();
|
|
||||||
EditorGUILayout.PropertyField(speed, new GUIContent("Wind Speed", "Speed factor for the simulated wind effect over the fog."));
|
|
||||||
if (GUILayout.Button("Stop", GUILayout.Width(60))) {
|
|
||||||
speed.floatValue = 0;
|
|
||||||
}
|
|
||||||
EditorGUILayout.EndHorizontal();
|
|
||||||
EditorGUILayout.PropertyField(windDirection, new GUIContent("Wind Direction", "Normalized direcional vector for the wind effect."));
|
|
||||||
EditorGUILayout.PropertyField(turbulenceStrength, new GUIContent("Turbulence", "Turbulence strength. Set to zero to deactivate. Turbulence adds a render pass to compute fog animation."));
|
|
||||||
EditorGUILayout.PropertyField(useRealTime, new GUIContent("Use Real Time", "Uses real elapsed time since last fog rendering instead of Time.deltaTime (elapsed time since last frame) to ensure continuous fog animation irrespective of camera enable state. For example, if you disable the camera and 'Use Real Time' is enabled, when you enable the camera again, the fog animation wil compute the total elapsed time so it shows as if fog continues animating while camera was disabled. If set to false, fog animation will use Time.deltaTime (elapsed time since last frame) which will cause fog to resume previous state."));
|
|
||||||
EditorGUILayout.EndVertical();
|
|
||||||
|
|
||||||
EditorGUILayout.Separator();
|
|
||||||
|
|
||||||
EditorGUILayout.BeginVertical();
|
|
||||||
DrawTitleLabel("Sky");
|
|
||||||
if (useXYPlane.boolValue) {
|
|
||||||
EditorGUILayout.HelpBox("Sky haze is disabled when using XY plane.", MessageType.Info);
|
|
||||||
}
|
|
||||||
EditorGUILayout.PropertyField(skyHaze, new GUIContent("Haze", "Height of the sky haze in meters. Reduce this or alpha to 0 to disable sky haze."));
|
|
||||||
EditorGUILayout.PropertyField(skyColor, new GUIContent("Color", "Sky haze color."));
|
|
||||||
EditorGUILayout.PropertyField(skySpeed, new GUIContent("Speed", "Speed of the haze animation."));
|
|
||||||
EditorGUILayout.PropertyField(skyNoiseStrength, new GUIContent("Noise Strength", "Amount of noise for the sky haze."));
|
|
||||||
EditorGUILayout.PropertyField(skyAlpha, new GUIContent("Alpha", "Transparency of the sky haze. Reduce this or Haze value to 0 to disable sky haze."));
|
|
||||||
EditorGUILayout.EndVertical();
|
|
||||||
|
|
||||||
EditorGUILayout.Separator();
|
|
||||||
|
|
||||||
EditorGUILayout.BeginVertical();
|
|
||||||
DrawTitleLabel("Light Scattering");
|
|
||||||
EditorGUILayout.PropertyField(lightScatteringOverride, new GUIContent("Override", "Override current light scattering fog settings."));
|
|
||||||
if (!lightScatteringOverride.boolValue) GUI.enabled = false;
|
|
||||||
EditorGUILayout.PropertyField(lightScatteringEnabled, new GUIContent("Enable", "Enables screen space light scattering. Simulates scattering of Sun light through atmosphere."));
|
|
||||||
if (lightScatteringEnabled.boolValue) {
|
|
||||||
EditorGUILayout.PropertyField(lightScatteringDiffusion, new GUIContent("Diffusion", "Spread or intensity of Sun light scattering."));
|
|
||||||
EditorGUILayout.PropertyField(lightScatteringExposure, new GUIContent("Shafts Intensity", "Intensity for the Sun shafts effect."));
|
|
||||||
EditorGUILayout.PropertyField(lightScatteringSpread, new GUIContent(" Spread", "Length of the Sun rays. "));
|
|
||||||
EditorGUILayout.PropertyField(lightScatteringWeight, new GUIContent(" Sample Weight", "Strength of Sun rays."));
|
|
||||||
EditorGUILayout.PropertyField(lightScatteringIllumination, new GUIContent(" Start Illumination", "Initial strength of each ray."));
|
|
||||||
EditorGUILayout.PropertyField(lightScatteringDecay, new GUIContent(" Decay", "Decay multiplier applied on each step."));
|
|
||||||
EditorGUILayout.PropertyField(lightScatteringSamples, new GUIContent(" Samples", "Number of light samples used when Light Scattering is enabled. Reduce to increse performance."));
|
|
||||||
EditorGUILayout.PropertyField(lightScatteringJittering, new GUIContent(" Jittering", "Smooths rays removing artifacts and allowing to use less samples."));
|
|
||||||
}
|
|
||||||
GUI.enabled = true;
|
|
||||||
EditorGUILayout.EndVertical();
|
|
||||||
|
|
||||||
EditorGUILayout.Separator();
|
|
||||||
|
|
||||||
EditorGUILayout.BeginVertical();
|
|
||||||
DrawTitleLabel("Fog Void");
|
|
||||||
EditorGUILayout.PropertyField(fogVoidOverride, new GUIContent("Override", "Override current fog void settings."));
|
|
||||||
if (!fogVoidOverride.boolValue) GUI.enabled = false;
|
|
||||||
EditorGUILayout.PropertyField(fogVoidPosition, new GUIContent("Center", "Location of the center of the fog void in world space (area where the fog disappear).\nThis option is very useful if you want a clear area around your character in 3rd person view."));
|
|
||||||
EditorGUILayout.PropertyField(fogVoidTopology, new GUIContent("Topology", "Shape of the void area."));
|
|
||||||
if (fogVoidTopology.intValue == (int)FOG_VOID_TOPOLOGY.Sphere) {
|
|
||||||
EditorGUILayout.PropertyField(fogVoidRadius, new GUIContent("Radius", "Radius of the void area."));
|
|
||||||
} else if (fogVoidTopology.intValue == (int)FOG_VOID_TOPOLOGY.Box) {
|
|
||||||
EditorGUILayout.PropertyField(fogVoidRadius, new GUIContent("Width", "Width of the void area."));
|
|
||||||
EditorGUILayout.PropertyField(fogVoidHeight, new GUIContent("Height", "Height of the void area."));
|
|
||||||
EditorGUILayout.PropertyField(fogVoidDepth, new GUIContent("Depth", "Depth of the void area."));
|
|
||||||
}
|
|
||||||
EditorGUILayout.PropertyField(fogVoidFallOff, new GUIContent("FallOff", "Gradient of the void area effect."));
|
|
||||||
GUI.enabled = true;
|
|
||||||
EditorGUILayout.EndVertical();
|
|
||||||
|
|
||||||
EditorGUILayout.Separator();
|
|
||||||
|
|
||||||
EditorGUILayout.BeginVertical();
|
|
||||||
DrawTitleLabel("Rendering");
|
|
||||||
EditorGUILayout.PropertyField(downsamplingOverride, new GUIContent("Downsampling Override", "Overrides downsampling settings."));
|
|
||||||
if (!downsamplingOverride.boolValue) GUI.enabled = false;
|
|
||||||
EditorGUILayout.PropertyField(downsampling, new GUIContent(" Downsampling", "Reduces the size of the depth texture to improve performance."));
|
|
||||||
|
|
||||||
if (downsampling.intValue > 1) {
|
|
||||||
EditorGUILayout.PropertyField(edgeImprove, new GUIContent(" Improve Edges", "Check this option to reduce artifacts and halos around geometry edges when downsampling is applied. This is an option because it's faster to not take care or geometry edges, which is probably unnecesary if you use fog as elevated clouds."));
|
|
||||||
if (edgeImprove.boolValue) {
|
|
||||||
EditorGUILayout.PropertyField(edgeThreshold, new GUIContent(" Threshold", "Depth threshold used to detected edges."));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
GUI.enabled = true;
|
|
||||||
|
|
||||||
EditorGUILayout.PropertyField(stepping, new GUIContent("Stepping", "Multiplier to the ray-marching algorithm. Values between 8-12 are good. Increasing the stepping will produce more accurate and better quality fog but performance will be reduced. The less the density of the fog the lower you can set this value."));
|
|
||||||
EditorGUILayout.PropertyField(steppingNear, new GUIContent("Stepping Near", "Works with Stepping parameter but applies only to short distances from camera. Lowering this value can help to reduce banding effect (performance can be reduced as well)."));
|
|
||||||
EditorGUILayout.PropertyField(dithering, new GUIContent("Dithering", "Blends final fog color with a pattern to reduce banding artifacts. Use the slider to choose the intensity of dither."));
|
|
||||||
if (dithering.boolValue) {
|
|
||||||
EditorGUILayout.PropertyField(ditherStrength, new GUIContent(" Strength", "Dither strength."));
|
|
||||||
}
|
|
||||||
EditorGUILayout.EndVertical();
|
|
||||||
EditorGUILayout.Separator();
|
|
||||||
|
|
||||||
if (serializedObject.ApplyModifiedProperties() || (Event.current.type == EventType.ExecuteCommand &&
|
|
||||||
Event.current.commandName == "UndoRedoPerformed")) {
|
|
||||||
|
|
||||||
// Triggers profile reload on all Volumetric Fog scripts
|
|
||||||
VolumetricFog[] fogs = FindObjectsOfType<VolumetricFog>();
|
|
||||||
for (int t = 0; t < targets.Length; t++) {
|
|
||||||
VolumetricFogProfile profile = (VolumetricFogProfile)targets[t];
|
|
||||||
for (int k = 0; k < fogs.Length; k++) {
|
|
||||||
if (fogs[k] != null && fogs[k].profile == profile) {
|
|
||||||
profile.Load(fogs[k]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
EditorUtility.SetDirty(target);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
Texture2D MakeTex(int width, int height, Color col) {
|
|
||||||
Color[] pix = new Color[width * height];
|
|
||||||
|
|
||||||
for (int i = 0; i < pix.Length; i++)
|
|
||||||
pix[i] = col;
|
|
||||||
|
|
||||||
TextureFormat tf = SystemInfo.SupportsTextureFormat(TextureFormat.RGBAFloat) ? TextureFormat.RGBAFloat : TextureFormat.RGBA32;
|
|
||||||
Texture2D result = new Texture2D(width, height, tf, false);
|
|
||||||
result.SetPixels(pix);
|
|
||||||
result.Apply();
|
|
||||||
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
GUIStyle titleLabelStyle;
|
|
||||||
|
|
||||||
void DrawTitleLabel(string s) {
|
|
||||||
if (titleLabelStyle == null) {
|
|
||||||
titleLabelStyle = new GUIStyle(GUI.skin.label);
|
|
||||||
}
|
|
||||||
titleLabelStyle.normal.textColor = titleColor;
|
|
||||||
titleLabelStyle.fontStyle = FontStyle.Bold;
|
|
||||||
GUILayout.Label(s, titleLabelStyle);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -1,12 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: a832fb0e6186249c08ba284772ed4c63
|
|
||||||
timeCreated: 1502547555
|
|
||||||
licenseType: Store
|
|
||||||
MonoImporter:
|
|
||||||
serializedVersion: 2
|
|
||||||
defaultReferences: []
|
|
||||||
executionOrder: 0
|
|
||||||
icon: {instanceID: 0}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,236 +0,0 @@
|
|||||||
using UnityEngine;
|
|
||||||
using System.Text;
|
|
||||||
using System.Collections;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
|
|
||||||
namespace VolumetricFogAndMist {
|
|
||||||
public class VolumetricFogSInfo {
|
|
||||||
|
|
||||||
public string name = "";
|
|
||||||
public string path = "";
|
|
||||||
public List<SCShaderPass> passes = new List<SCShaderPass>();
|
|
||||||
public List<SCKeyword> keywords = new List<SCKeyword>();
|
|
||||||
public bool pendingChanges;
|
|
||||||
public bool editedByShaderControl;
|
|
||||||
public int enabledKeywordCount;
|
|
||||||
|
|
||||||
public void Add(SCShaderPass pass) {
|
|
||||||
passes.Add(pass);
|
|
||||||
UpdateKeywords();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void EnableKeywords() {
|
|
||||||
keywords.ForEach((SCKeyword keyword) => keyword.enabled = true);
|
|
||||||
}
|
|
||||||
|
|
||||||
void UpdateKeywords() {
|
|
||||||
passes.ForEach((SCShaderPass pass) => {
|
|
||||||
for (int l = 0; l < pass.keywordLines.Count; l++) {
|
|
||||||
SCKeywordLine line = pass.keywordLines[l];
|
|
||||||
for (int k = 0; k < line.keywords.Count; k++) {
|
|
||||||
SCKeyword keyword = line.keywords[k];
|
|
||||||
if (!keywords.Contains(keyword)) {
|
|
||||||
if (SCKeywordChecker.IsValid(keyword.name)) {
|
|
||||||
keywords.Add(keyword);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
enabledKeywordCount = 0;
|
|
||||||
keywords.ForEach((SCKeyword kw) => {
|
|
||||||
if (kw.enabled)
|
|
||||||
enabledKeywordCount++;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
public SCKeyword GetKeyword(string name) {
|
|
||||||
int kCount = keywords.Count;
|
|
||||||
for (int k = 0; k < kCount; k++) {
|
|
||||||
SCKeyword keyword = keywords[k];
|
|
||||||
if (keyword.name.Equals(name))
|
|
||||||
return keyword;
|
|
||||||
}
|
|
||||||
return new SCKeyword(name);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public class SCShaderPass {
|
|
||||||
public int pass;
|
|
||||||
public List<SCKeywordLine> keywordLines = new List<SCKeywordLine>();
|
|
||||||
public int keywordCount;
|
|
||||||
|
|
||||||
public void Add(SCKeywordLine keywordLine) {
|
|
||||||
keywordLines.Add(keywordLine);
|
|
||||||
UpdateKeywordCount();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Add(List<SCKeywordLine> keywordLines) {
|
|
||||||
this.keywordLines.AddRange(keywordLines);
|
|
||||||
UpdateKeywordCount();
|
|
||||||
}
|
|
||||||
|
|
||||||
void UpdateKeywordCount() {
|
|
||||||
keywordCount = 0;
|
|
||||||
keywordLines.ForEach((SCKeywordLine obj) => keywordCount += obj.keywordCount);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Clear() {
|
|
||||||
keywordCount = 0;
|
|
||||||
keywordLines.Clear();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public class SCKeywordLine {
|
|
||||||
public List<SCKeyword> keywords = new List<SCKeyword>();
|
|
||||||
public bool hasUnderscoreVariant;
|
|
||||||
|
|
||||||
public SCKeyword GetKeyword(string name) {
|
|
||||||
int kc = keywords.Count;
|
|
||||||
for (int k = 0; k < kc; k++) {
|
|
||||||
SCKeyword keyword = keywords[k];
|
|
||||||
if (keyword.name.Equals(name)) {
|
|
||||||
return keyword;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Add(SCKeyword keyword) {
|
|
||||||
if (GetKeyword(keyword.name) != null)
|
|
||||||
return;
|
|
||||||
// ignore underscore keywords
|
|
||||||
bool goodKeyword = false;
|
|
||||||
for (int k = 0; k < keyword.name.Length; k++) {
|
|
||||||
if (keyword.name[k] != '_') {
|
|
||||||
goodKeyword = true;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (goodKeyword) {
|
|
||||||
keywords.Add(keyword);
|
|
||||||
} else {
|
|
||||||
keyword.isUnderscoreKeyword = true;
|
|
||||||
hasUnderscoreVariant = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void DisableKeywords() {
|
|
||||||
keywords.ForEach((SCKeyword obj) => obj.enabled = false);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Clear() {
|
|
||||||
keywords.Clear();
|
|
||||||
}
|
|
||||||
|
|
||||||
public int keywordCount {
|
|
||||||
get {
|
|
||||||
return keywords.Count;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public int keywordsEnabledCount {
|
|
||||||
get {
|
|
||||||
int kCount = keywords.Count;
|
|
||||||
int enabledCount = 0;
|
|
||||||
for (int k = 0; k < kCount; k++) {
|
|
||||||
if (keywords[k].enabled)
|
|
||||||
enabledCount++;
|
|
||||||
}
|
|
||||||
return enabledCount;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public override string ToString() {
|
|
||||||
StringBuilder sb = new StringBuilder();
|
|
||||||
for (int k = 0; k < keywords.Count; k++) {
|
|
||||||
if (k > 0)
|
|
||||||
sb.Append(" ");
|
|
||||||
sb.Append(keywords[k].name);
|
|
||||||
}
|
|
||||||
return sb.ToString();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public class SCKeyword {
|
|
||||||
public string name;
|
|
||||||
public bool enabled;
|
|
||||||
public bool isUnderscoreKeyword;
|
|
||||||
|
|
||||||
public SCKeyword(string name) {
|
|
||||||
this.name = name;
|
|
||||||
enabled = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
public override bool Equals(object obj) {
|
|
||||||
if (obj is SCKeyword) {
|
|
||||||
SCKeyword other = (SCKeyword)obj;
|
|
||||||
return name.Equals(other.name);
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
public override int GetHashCode() {
|
|
||||||
return name.GetHashCode();
|
|
||||||
}
|
|
||||||
|
|
||||||
public override string ToString() {
|
|
||||||
return name;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static class SCKeywordChecker {
|
|
||||||
|
|
||||||
static Dictionary<string, string> dict = new Dictionary<string, string>();
|
|
||||||
|
|
||||||
static SCKeywordChecker() {
|
|
||||||
string[][] kw = new string[][]
|
|
||||||
{
|
|
||||||
new string[] { VolumetricFog.SKW_FOG_HAZE_ON, "Sky Haze" },
|
|
||||||
new string[] { VolumetricFog.SKW_FOG_OF_WAR_ON, "Fog of War" },
|
|
||||||
new string[] { VolumetricFog.SKW_LIGHT_SCATTERING, "Light Scattering" },
|
|
||||||
new string[] { VolumetricFog.SKW_SUN_SHADOWS, "Sun Shadows" },
|
|
||||||
new string[] { VolumetricFog.SKW_FOG_VOID_BOX, "Fog Void (Box shape)" },
|
|
||||||
new string[]
|
|
||||||
{
|
|
||||||
VolumetricFog.SKW_FOG_VOID_SPHERE,
|
|
||||||
"Fog Void (Sphere shape)"
|
|
||||||
},
|
|
||||||
new string[] { VolumetricFog.SKW_FOG_AREA_BOX, "Fog Area (Box shape)" },
|
|
||||||
new string[]
|
|
||||||
{
|
|
||||||
VolumetricFog.SKW_FOG_AREA_SPHERE,
|
|
||||||
"Fog Area (Sphere shape)"
|
|
||||||
},
|
|
||||||
new string[] { VolumetricFog.SKW_FOG_BLUR, "Depth Blur" },
|
|
||||||
new string[] { VolumetricFog.SKW_FOG_USE_XY_PLANE, "Use XY Plane" },
|
|
||||||
new string[]
|
|
||||||
{
|
|
||||||
VolumetricFog.SKW_FOG_COMPUTE_DEPTH,
|
|
||||||
"Compute Depth"
|
|
||||||
}
|
|
||||||
};
|
|
||||||
for (int k = 0; k < kw.Length; k++) dict[kw[k][0]] = kw[k][1];
|
|
||||||
}
|
|
||||||
|
|
||||||
public static bool IsValid(string name) {
|
|
||||||
return dict.ContainsKey(name);
|
|
||||||
}
|
|
||||||
|
|
||||||
public static string Translate(string name) {
|
|
||||||
if (dict.ContainsKey(name)) {
|
|
||||||
return dict[name];
|
|
||||||
} else {
|
|
||||||
return name;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
@ -1,12 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: feb2c09a58df64008bd9ce3a50d9394a
|
|
||||||
timeCreated: 1478380890
|
|
||||||
licenseType: Store
|
|
||||||
MonoImporter:
|
|
||||||
serializedVersion: 2
|
|
||||||
defaultReferences: []
|
|
||||||
executionOrder: 0
|
|
||||||
icon: {instanceID: 0}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,100 +0,0 @@
|
|||||||
using UnityEngine;
|
|
||||||
using UnityEditor;
|
|
||||||
using System.IO;
|
|
||||||
using System.Text;
|
|
||||||
using System.Collections;
|
|
||||||
|
|
||||||
namespace VolumetricFogAndMist {
|
|
||||||
|
|
||||||
public class VolumetricFogShaderOptions {
|
|
||||||
|
|
||||||
public bool pendingChanges;
|
|
||||||
public ShaderAdvancedOption[] options;
|
|
||||||
|
|
||||||
public void ReadOptions() {
|
|
||||||
pendingChanges = false;
|
|
||||||
// Populate known options
|
|
||||||
options = new ShaderAdvancedOption[]
|
|
||||||
{
|
|
||||||
new ShaderAdvancedOption
|
|
||||||
{
|
|
||||||
id = "FOG_ORTHO", name = "Orthographic Mode", description = "Enables support for orthographic camera projection."
|
|
||||||
},
|
|
||||||
new ShaderAdvancedOption
|
|
||||||
{
|
|
||||||
id = "FOG_DEBUG",
|
|
||||||
name = "Debug Mode",
|
|
||||||
description = "Enables fog debug view."
|
|
||||||
},
|
|
||||||
new ShaderAdvancedOption
|
|
||||||
{
|
|
||||||
id = "FOG_MASK",
|
|
||||||
name = "Enable Mask",
|
|
||||||
description = "Enables mask defined by geometry volumes (meshes)."
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
Shader shader = Shader.Find("VolumetricFogAndMist/VolumetricFog");
|
|
||||||
if (shader != null) {
|
|
||||||
string path = AssetDatabase.GetAssetPath(shader);
|
|
||||||
string file = Path.GetDirectoryName(path) + "/VolumetricFogOptions.cginc";
|
|
||||||
string[] lines = File.ReadAllLines(file, Encoding.UTF8);
|
|
||||||
for (int k = 0; k < lines.Length; k++) {
|
|
||||||
for (int o = 0; o < options.Length; o++) {
|
|
||||||
if (lines[k].Contains(options[o].id)) {
|
|
||||||
options[o].enabled = !lines[k].StartsWith("//");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public bool GetAdvancedOptionState(string optionId) {
|
|
||||||
if (options == null)
|
|
||||||
return false;
|
|
||||||
for (int k = 0; k < options.Length; k++) {
|
|
||||||
if (options[k].id.Equals(optionId)) {
|
|
||||||
return options[k].enabled;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void UpdateAdvancedOptionsFile() {
|
|
||||||
// Reloads the file and updates it accordingly
|
|
||||||
Shader shader = Shader.Find("VolumetricFogAndMist/VolumetricFog");
|
|
||||||
if (shader != null) {
|
|
||||||
string path = AssetDatabase.GetAssetPath(shader);
|
|
||||||
string file = Path.GetDirectoryName(path) + "/VolumetricFogOptions.cginc";
|
|
||||||
string[] lines = File.ReadAllLines(file, Encoding.UTF8);
|
|
||||||
for (int k = 0; k < lines.Length; k++) {
|
|
||||||
for (int o = 0; o < options.Length; o++) {
|
|
||||||
if (lines[k].Contains(options[o].id)) {
|
|
||||||
if (options[o].enabled) {
|
|
||||||
lines[k] = "#define " + options[o].id;
|
|
||||||
} else {
|
|
||||||
lines[k] = "//#define " + options[o].id;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
File.WriteAllLines(file, lines, Encoding.UTF8);
|
|
||||||
pendingChanges = false;
|
|
||||||
AssetDatabase.Refresh();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public struct ShaderAdvancedOption {
|
|
||||||
public string id;
|
|
||||||
public string name;
|
|
||||||
public string description;
|
|
||||||
public bool enabled;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
@ -1,12 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: f740fb31a7e504c72a37a52559211ca5
|
|
||||||
timeCreated: 1446728225
|
|
||||||
licenseType: Store
|
|
||||||
MonoImporter:
|
|
||||||
serializedVersion: 2
|
|
||||||
defaultReferences: []
|
|
||||||
executionOrder: 0
|
|
||||||
icon: {instanceID: 0}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,9 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 0c673b65a70d747fd9ab80d99a526317
|
|
||||||
folderAsset: yes
|
|
||||||
timeCreated: 1457879698
|
|
||||||
licenseType: Store
|
|
||||||
DefaultImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,9 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 0a89ad2d549a646c9827fe4a0993b474
|
|
||||||
folderAsset: yes
|
|
||||||
timeCreated: 1448045192
|
|
||||||
licenseType: Store
|
|
||||||
DefaultImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,9 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 2d334e385b99044eea0a175beb949ac0
|
|
||||||
folderAsset: yes
|
|
||||||
timeCreated: 1448878157
|
|
||||||
licenseType: Store
|
|
||||||
DefaultImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
Binary file not shown.
@ -1,6 +0,0 @@
|
|||||||
To install and execute the demo scenes:
|
|
||||||
|
|
||||||
1) Import Standard Assets package: Character
|
|
||||||
2) Double click on Demos package inside the Demos folder to import them
|
|
||||||
3) The demos are now available inside Demos folder
|
|
||||||
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 3908849d17f724c3eac25a82d0cfe674
|
|
||||||
timeCreated: 1490607267
|
|
||||||
licenseType: Store
|
|
||||||
TextScriptImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,9 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: f1c0566be989a42588f2fa19430c6c8a
|
|
||||||
folderAsset: yes
|
|
||||||
timeCreated: 1461499627
|
|
||||||
licenseType: Store
|
|
||||||
DefaultImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,235 +0,0 @@
|
|||||||
Contents
|
|
||||||
|
|
||||||
Introduction................................................................................................................................. 3
|
|
||||||
|
|
||||||
Demo Scenes ............................................................................................................................... 4
|
|
||||||
|
|
||||||
Quick Start................................................................................................................................... 4
|
|
||||||
|
|
||||||
Special Features (only Image Effect) ............................................................................................... 6
|
|
||||||
VR and Single Pass Stereo Rendering ................................................................................................................... 6
|
|
||||||
Fog Volumes ......................................................................................................................................................... 6
|
|
||||||
Fog of War ............................................................................................................................................................ 6
|
|
||||||
Gradient Fog ......................................................................................................................................................... 6
|
|
||||||
|
|
||||||
Special Features (Dynamic Fog of War)........................................................................................... 7
|
|
||||||
Using the Dynamic Fog of War prefab ................................................................................................................. 7
|
|
||||||
|
|
||||||
Enhanced compatibility................................................................................................................. 8
|
|
||||||
Compatibility with Gaia ........................................................................................................................................ 8
|
|
||||||
|
|
||||||
Support ....................................................................................................................................... 8
|
|
||||||
|
|
||||||
FAQ............................................................................................................................................. 8
|
|
||||||
Introduction
|
|
||||||
|
|
||||||
Thanks for purchasing!
|
|
||||||
|
|
||||||
Dynamic Fog & Mist is a collection of shaders that adds live, moving Fog, Mist and Sky Haze to your
|
|
||||||
scenes making them less dull and boring.
|
|
||||||
|
|
||||||
This asset contains:
|
|
||||||
|
|
||||||
- A full-screen image post-processing image effect with 7 variants.
|
|
||||||
- 15 materials with integrated fog effect in custom shaders.
|
|
||||||
- A fog of war prefab optimized for top-down perspective.
|
|
||||||
|
|
||||||
Important: you should use either the full-screen image effect or the fog materials, but not both!
|
|
||||||
|
|
||||||
Explanation follows:
|
|
||||||
|
|
||||||
- The image effect is controlled by the script DynamicFog.cs that you add to your camera. The
|
|
||||||
image effect overlays a layer of fog on top of the image every frame. The fog is computed
|
|
||||||
using the depth of each pixel on the screen rendered by the camera. The farther the pixel the
|
|
||||||
thicker the fog.
|
|
||||||
|
|
||||||
- On the other hand, the fog materials use custom shaders that integrate the fog calculation.
|
|
||||||
There’s no full screen blit nor full screen fog computation but instead the color of the objects
|
|
||||||
are modified depending on the distance to the camera. Since there’s no separate full-screen
|
|
||||||
blit pass, using fog materials could be faster on old mobile devices.
|
|
||||||
|
|
||||||
- Finally if you need a top-down view, fog of war effect that occludes game area and allows you
|
|
||||||
to clear custom zones, the fog of war prefab provides you the best performance.
|
|
||||||
|
|
||||||
Only if you’re really concerned about performance (eg. mobile), use the fog materials or the fog of
|
|
||||||
war prefab. Otherwise use the full-screen image effect. Demo scenes 1-4 show examples of the full-
|
|
||||||
screen image effect whereas demo scene 5 shows how to use fog materials to create a simple arcade
|
|
||||||
game.
|
|
||||||
Demo Scenes
|
|
||||||
|
|
||||||
Demo scenes depends on Standard Assets’ Camera package, so it needs to be imported along the
|
|
||||||
Demos package (double click on it to uncompress).
|
|
||||||
|
|
||||||
Just load any included demo scene and click “Play”. In FPS demos you will be able to move around
|
|
||||||
using WASD or cursor keys. Press spacebar to jump, F to change fog style and T to toggle on/off the
|
|
||||||
fog.
|
|
||||||
|
|
||||||
The Fog Of War demo scene allows you to “Cut” the fog as you pass through it (press “C” to enable
|
|
||||||
fog cutting mode).
|
|
||||||
|
|
||||||
Finally there’s a Fog of War demo scene that uses the fog of war prefab (only works for the top-down
|
|
||||||
perspective).
|
|
||||||
|
|
||||||
You can delete the Demo folder entirely or ignore it when importing the asset into your project.
|
|
||||||
|
|
||||||
Quick Start
|
|
||||||
|
|
||||||
To use Dynamic Fog & Mist full screen image effect (demo scenes 1-4):
|
|
||||||
|
|
||||||
1. Add “Dynamic Fog” OR “Dynamic Fog Exclusive” script to your main camera in your scene.
|
|
||||||
Dynamic Fog Exclusive renders to an offscreen target which accepts downsampling. This
|
|
||||||
mode can be faster than normal Dynamic Fog script.
|
|
||||||
|
|
||||||
2. Choose one of the preset and that’s all!
|
|
||||||
|
|
||||||
You can of course customize any of its parameters to match your game mood and requirements.
|
|
||||||
|
|
||||||
The effect type selector in the inspector allows you to select one of the shader variants:
|
|
||||||
|
|
||||||
- Desktop Fog + Sky Haze: this effect provides a fast fog effect plus sky haze options for desktop
|
|
||||||
platforms. It uses two different noise textures to produce a soft animated fog effect.
|
|
||||||
|
|
||||||
- Desktop Fog Plus + Sky Haze: this effect provides a fog effect using a volumetric approach
|
|
||||||
improving the fog coverage when there’s no geometry in front of the camera. It also uses sky
|
|
||||||
haze.
|
|
||||||
|
|
||||||
- Mobile Fog + Sky Haze: optimized version of Desktop Fog + Sky Haze for mobile devices. Uses
|
|
||||||
a single noise texture.
|
|
||||||
|
|
||||||
- Mobile Fog (No Sky Haze): same than Mobile Fog but without sky haze effect.
|
|
||||||
- Mobile Fog (Simplified): uses a volumetric approach and no noise textures, hence, no
|
|
||||||
|
|
||||||
animation nor turbulence is supported in this mode. This can be the best choice for fast static
|
|
||||||
fog.
|
|
||||||
- Mobile Fog (Basic): uses a even simpler version of Mobile Fog (Simplified) aimed for the low
|
|
||||||
end mobile devices.
|
|
||||||
|
|
||||||
To use Dynamic Fog & Mist fog materials (not to be combined with the image effect! – see demo
|
|
||||||
scene 5):
|
|
||||||
|
|
||||||
1. Select and duplicate any fog material inside DynamicFog/Resources/Materials (see below for
|
|
||||||
names, they start with DFM).
|
|
||||||
|
|
||||||
2. Customize the material properties (color, texture or metallic/glossiness, depending on the
|
|
||||||
chosen material).
|
|
||||||
|
|
||||||
3. Assign the material to your game objects (you can mix different material types).
|
|
||||||
4. Create an empty game object and add “DynamicFogManager.cs” script to it. This script
|
|
||||||
|
|
||||||
controls the shaders of the fog materials and allows you to customize the fog properties for
|
|
||||||
all materials from a centralized point.
|
|
||||||
|
|
||||||
The current fog materials available in DynamicFog/Resources/Materials are:
|
|
||||||
|
|
||||||
- DFMStandardShader: a derivation of the Standard Shader which integrated our fog effect.
|
|
||||||
- DFMStandardShaderNormal: same but adds bump map.
|
|
||||||
- DFMStandardShaderNormalOcclusionMap: same but adds occlusion map.
|
|
||||||
- DFMStandardShaderNormalOcclusionIntegrated: in this case the alpha component of the
|
|
||||||
|
|
||||||
main texture is used for occlusion.
|
|
||||||
- DFMStandardShaderSolidColor: same but does not use textures, just single color (faster).
|
|
||||||
- DFMLambert: a fog shader that uses simple lighting (faster).
|
|
||||||
- DFMLambertSolidColor: same but does not use textures (even faster).
|
|
||||||
- DFMUnlit: does not use lighting, just texture, color and fog effect (faster yet!)
|
|
||||||
- DFMUnlitSingleColor: same but does not use texture (the fastest shader!)
|
|
||||||
|
|
||||||
These materials are also available with a reflection texture support:
|
|
||||||
|
|
||||||
- DFRStandardShader: a derivation of the Standard Shader which integrated our fog effect.
|
|
||||||
- DFRStandardShaderSolidColor: same but does not use textures, just single color (faster).
|
|
||||||
- DFRLambert: a fog shader that uses simple lighting (faster).
|
|
||||||
- DFRLambertSolidColor: same but does not use textures (even faster).
|
|
||||||
- DFRUnlit: does not use lighting, just texture, color and fog effect (faster yet!)
|
|
||||||
- DFRUnlitSingleColor: same but does not use texture (the fastest shader!)
|
|
||||||
|
|
||||||
It’s possible to assign a reflection texture to these materials (using
|
|
||||||
mat.SetTexture(“_ReflectionTex”, texture) to blend reflections along with the fog. The free asset
|
|
||||||
Realtime Reflections provide a simple way to expose the reflection textures to these materials:
|
|
||||||
https://www.assetstore.unity3d.com/en/#!/content/21730
|
|
||||||
Special Features (only Image Effect)
|
|
||||||
|
|
||||||
VR and Single Pass Stereo Rendering
|
|
||||||
|
|
||||||
Dynamic Fog & Mist fully supports VR and Single Pass Stereo Rendering. It has been tested with
|
|
||||||
Oculus DK2 headset and both Oculus and OpenVR SDKs.
|
|
||||||
|
|
||||||
Important: if you enable Single Pass Stereo Rendering in Player Settings, make sure to review
|
|
||||||
Dynamic Fog & Mist inspector on your camera and ensure the checkbox “Single Pass Stereo” shown
|
|
||||||
at top of inspector is marked. This checkbox is automatically set based on the Player Settings so no
|
|
||||||
need to change it, just ensure it reflects current player settings. Reason for this checkbox is that Unity
|
|
||||||
does not provide a way to check if Single Pass Stereo is enabled at runtime (from scripts) so this
|
|
||||||
redundant checkbox was added. Just make sure it’s in line with your Player Settings.
|
|
||||||
|
|
||||||
Fog Volumes
|
|
||||||
|
|
||||||
You can define special zones (fog volumes) where fog alpha will automatically change. Create a fog
|
|
||||||
volume from the menu GameObject / Create Other / Fog Volume. Position the fog volume over the
|
|
||||||
desired area, edit the collider bounds and set the desired fog alpha and transition duration in the
|
|
||||||
inspector.
|
|
||||||
|
|
||||||
Fog of War
|
|
||||||
|
|
||||||
You can also set any number of void areas just calling SetFogOfWarAlpha method of the Volumetric
|
|
||||||
script. Just pass the world space position, the radius and the desired new alpha for the fog. Just make
|
|
||||||
sure the center and size of the fog of war (configured in the inspector) are properly set (by default
|
|
||||||
the fog of war is centered on 0,0,0 with a size of 1024x1024).
|
|
||||||
|
|
||||||
Texture Size defines the resolution of the fog of war transparency texture. Increase this size to
|
|
||||||
improve the precision of the clearings.
|
|
||||||
|
|
||||||
Call ResetForOfWar to reset the cleared areas back to normal.
|
|
||||||
|
|
||||||
Gradient Fog
|
|
||||||
|
|
||||||
Dynamic Fog & Mist exposes two color selectors to create artistic fog gradients. Just experiment with
|
|
||||||
them!
|
|
||||||
Special Features (Dynamic Fog of War)
|
|
||||||
|
|
||||||
Using the Dynamic Fog of War prefab
|
|
||||||
Dynamic Fog also includes a custom prefab optimized for Fog of War usage:
|
|
||||||
|
|
||||||
This prefab does not use any image effect but a custom shader that works much faster on mobile.
|
|
||||||
Please check demo scene 7 for a full example.
|
|
||||||
To use this feature in your game, just locate and drag the prefab FogOfWarLayer located in
|
|
||||||
DynamicFog/Resources/Prefabs folder to your scene. Position the plane over the terrain or area to
|
|
||||||
cover. Then, the following API is available:
|
|
||||||
DynamicFogOfWar fog = DynamicFogOfWar.instance;
|
|
||||||
fog.SetFogWarTerrainBoundary(terrain, borderSize)
|
|
||||||
This function smoothly cuts the fog crossing the terrain. This call is optional and only useful if you
|
|
||||||
want to produce a smooth cut like in the image above.
|
|
||||||
fog.SetFogOfWarAlpha(worldPosition, radius, alpha)
|
|
||||||
Call this function to clear or set a custom fog transparency on any world position.
|
|
||||||
fog.ResetFogOfWar()
|
|
||||||
Call this function to restore fog of war to fully opaque.
|
|
||||||
fog.fogOfWarTextureSize
|
|
||||||
This property determines the resolution of the internal alpha control texture.
|
|
||||||
Enhanced compatibility
|
|
||||||
|
|
||||||
Compatibility with Gaia
|
|
||||||
Dynamic Fog & Mist is also available from Gaia’s Extension Manager. You will find a list of
|
|
||||||
convenient buttons that configures and select the different presets of Dynamic Fog & Mist in just
|
|
||||||
one click.
|
|
||||||
|
|
||||||
Support
|
|
||||||
|
|
||||||
Please visit kronnect.com for questions, support and more info.
|
|
||||||
|
|
||||||
FAQ
|
|
||||||
|
|
||||||
How can I render the fog behind particles?
|
|
||||||
Just edit DynamicFog.cs and add [ImageEffectOpaque] before OnRenderImage method.
|
|
||||||
|
|
||||||
At night, fog still is showing in same color, how can I make it react to ambient light?
|
|
||||||
Assign a directional light or Sun gameobject to the Sun property in the inspector (eg. assign the Sun
|
|
||||||
gameobject of Time Of Day plugin). Once assigned, DynamicFog will lerp between fog color and black
|
|
||||||
depending on the Y-axis angle of the directional light.
|
|
||||||
|
|
||||||
What’s Dynamic Fog Exclusive script for?
|
|
||||||
Starting version 6, Dynamic Fog & Mist includes two scripts:
|
|
||||||
|
|
||||||
- Dynamic Fog (normal usage, recommended for most situations).
|
|
||||||
- Dynamic Fog Exclusive. This new script is a variant of the normal script optimized for
|
|
||||||
|
|
||||||
performance. It includes a “Downsampling” parameter in the inspector that allows you to
|
|
||||||
reduce quality to improve speed.
|
|
||||||
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: a4a94446e13f34f3e86db1fe515c6763
|
|
||||||
timeCreated: 1461499627
|
|
||||||
licenseType: Store
|
|
||||||
DefaultImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,9 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: d08f1205913624ddfa56e42c221b3002
|
|
||||||
folderAsset: yes
|
|
||||||
timeCreated: 1448876969
|
|
||||||
licenseType: Store
|
|
||||||
DefaultImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,341 +0,0 @@
|
|||||||
using UnityEngine;
|
|
||||||
using UnityEditor;
|
|
||||||
using System;
|
|
||||||
using System.Collections;
|
|
||||||
|
|
||||||
namespace DynamicFogAndMist {
|
|
||||||
[CustomEditor (typeof(DynamicFog))]
|
|
||||||
public class DynamicFogEditor : Editor {
|
|
||||||
|
|
||||||
static GUIStyle titleLabelStyle, sectionHeaderStyle;
|
|
||||||
static Color titleColor;
|
|
||||||
static bool[] expandSection = new bool[5];
|
|
||||||
const string SECTION_PREFS = "DynamicFogExpandSection";
|
|
||||||
static GUIContent[] FOG_TYPE_OPTIONS = new GUIContent[] {
|
|
||||||
new GUIContent ("Desktop Fog Plus + Sky Haze"),
|
|
||||||
new GUIContent ("Desktop Fog Plus (Orthogonal)"),
|
|
||||||
new GUIContent ("Desktop Fog + Sky Haze"),
|
|
||||||
new GUIContent ("Mobile Fog Plus (Simplified)"),
|
|
||||||
new GUIContent ("Mobile Fog + Sky Haze"),
|
|
||||||
new GUIContent ("Mobile Fog (No Sky Haze)"),
|
|
||||||
new GUIContent ("Mobile Fog (Orthogonal)"),
|
|
||||||
new GUIContent ("Mobile Fog (Basic)")
|
|
||||||
};
|
|
||||||
static int[] FOG_TYPE_VALUES = new int[] {
|
|
||||||
(int)FOG_TYPE.DesktopFogPlusWithSkyHaze,
|
|
||||||
(int)FOG_TYPE.DesktopFogPlusOrthogonal,
|
|
||||||
(int)FOG_TYPE.DesktopFogWithSkyHaze,
|
|
||||||
(int)FOG_TYPE.MobileFogSimple,
|
|
||||||
(int)FOG_TYPE.MobileFogWithSkyHaze,
|
|
||||||
(int)FOG_TYPE.MobileFogOnlyGround,
|
|
||||||
(int)FOG_TYPE.MobileFogOrthogonal,
|
|
||||||
(int)FOG_TYPE.MobileFogBasic
|
|
||||||
};
|
|
||||||
static string[] sectionNames = new string[] {
|
|
||||||
"Fog Properties",
|
|
||||||
"Sky Properties",
|
|
||||||
"Fog of War"
|
|
||||||
};
|
|
||||||
const int FOG_PROPERTIES = 0;
|
|
||||||
const int SKY_PROPERTIES = 1;
|
|
||||||
const int FOG_OF_WAR = 2;
|
|
||||||
SerializedProperty effectType, preset, useFogVolumes, enableDithering, ditherStrength, useSinglePassStereoRenderingMatrix;
|
|
||||||
SerializedProperty alpha, noiseStrength, noiseScale, distance, distanceFallOff, maxDistance, maxDistanceFallOff, height, maxHeight;
|
|
||||||
SerializedProperty heightFallOff, baselineHeight, clipUnderBaseline, turbulence, speed, windDirection, color, color2;
|
|
||||||
SerializedProperty skyHaze, skySpeed, skyNoiseStrength, skyAlpha, sun, scattering, scatteringColor;
|
|
||||||
SerializedProperty fogOfWarEnabled, fogOfWarCenter, fogOfWarSize, fogOfWarTextureSize;
|
|
||||||
bool profileChanges;
|
|
||||||
DynamicFog _fog;
|
|
||||||
|
|
||||||
void OnEnable () {
|
|
||||||
titleColor = EditorGUIUtility.isProSkin ? new Color (0.52f, 0.66f, 0.9f) : new Color (0.12f, 0.16f, 0.4f);
|
|
||||||
for (int k = 0; k < expandSection.Length; k++) {
|
|
||||||
expandSection [k] = EditorPrefs.GetBool (SECTION_PREFS + k, false);
|
|
||||||
}
|
|
||||||
effectType = serializedObject.FindProperty ("_effectType");
|
|
||||||
preset = serializedObject.FindProperty ("_preset");
|
|
||||||
useFogVolumes = serializedObject.FindProperty ("_useFogVolumes");
|
|
||||||
enableDithering = serializedObject.FindProperty ("_enableDithering");
|
|
||||||
ditherStrength = serializedObject.FindProperty ("_ditherStrength");
|
|
||||||
#if UNITY_5_4_OR_NEWER
|
|
||||||
useSinglePassStereoRenderingMatrix = serializedObject.FindProperty ("_useSinglePassStereoRenderingMatrix");
|
|
||||||
#endif
|
|
||||||
|
|
||||||
alpha = serializedObject.FindProperty ("_alpha");
|
|
||||||
noiseStrength = serializedObject.FindProperty ("_noiseStrength");
|
|
||||||
noiseScale = serializedObject.FindProperty ("_noiseScale");
|
|
||||||
distance = serializedObject.FindProperty ("_distance");
|
|
||||||
distanceFallOff = serializedObject.FindProperty ("_distanceFallOff");
|
|
||||||
maxDistance = serializedObject.FindProperty ("_maxDistance");
|
|
||||||
maxDistanceFallOff = serializedObject.FindProperty ("_maxDistanceFallOff");
|
|
||||||
maxHeight = serializedObject.FindProperty ("_maxHeight");
|
|
||||||
height = serializedObject.FindProperty ("_height");
|
|
||||||
heightFallOff = serializedObject.FindProperty ("_heightFallOff");
|
|
||||||
baselineHeight = serializedObject.FindProperty ("_baselineHeight");
|
|
||||||
clipUnderBaseline = serializedObject.FindProperty ("_clipUnderBaseline");
|
|
||||||
turbulence = serializedObject.FindProperty ("_turbulence");
|
|
||||||
speed = serializedObject.FindProperty ("_speed");
|
|
||||||
windDirection = serializedObject.FindProperty ("_windDirection");
|
|
||||||
|
|
||||||
color = serializedObject.FindProperty ("_color");
|
|
||||||
color2 = serializedObject.FindProperty ("_color2");
|
|
||||||
skyHaze = serializedObject.FindProperty ("_skyHaze");
|
|
||||||
skySpeed = serializedObject.FindProperty ("_skySpeed");
|
|
||||||
skyNoiseStrength = serializedObject.FindProperty ("_skyNoiseStrength");
|
|
||||||
skyAlpha = serializedObject.FindProperty ("_skyAlpha");
|
|
||||||
sun = serializedObject.FindProperty ("_sun");
|
|
||||||
scattering = serializedObject.FindProperty ("_scattering");
|
|
||||||
scatteringColor = serializedObject.FindProperty ("_scatteringColor");
|
|
||||||
|
|
||||||
fogOfWarEnabled = serializedObject.FindProperty ("_fogOfWarEnabled");
|
|
||||||
fogOfWarCenter = serializedObject.FindProperty ("_fogOfWarCenter");
|
|
||||||
fogOfWarSize = serializedObject.FindProperty ("_fogOfWarSize");
|
|
||||||
fogOfWarTextureSize = serializedObject.FindProperty ("_fogOfWarTextureSize");
|
|
||||||
|
|
||||||
_fog = (DynamicFog)target;
|
|
||||||
}
|
|
||||||
|
|
||||||
void OnDestroy () {
|
|
||||||
// Save folding sections state
|
|
||||||
for (int k = 0; k < expandSection.Length; k++) {
|
|
||||||
EditorPrefs.SetBool (SECTION_PREFS + k, expandSection [k]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void OnInspectorGUI () {
|
|
||||||
#if UNITY_5_6_OR_NEWER
|
|
||||||
serializedObject.UpdateIfRequiredOrScript ();
|
|
||||||
#else
|
|
||||||
serializedObject.UpdateIfDirtyOrScript ();
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (sectionHeaderStyle == null) {
|
|
||||||
sectionHeaderStyle = new GUIStyle (EditorStyles.foldout);
|
|
||||||
}
|
|
||||||
sectionHeaderStyle.normal.textColor = titleColor;
|
|
||||||
sectionHeaderStyle.margin = new RectOffset (12, 0, 0, 0);
|
|
||||||
sectionHeaderStyle.fontStyle = FontStyle.Bold;
|
|
||||||
|
|
||||||
if (titleLabelStyle == null) {
|
|
||||||
titleLabelStyle = new GUIStyle (EditorStyles.label);
|
|
||||||
}
|
|
||||||
titleLabelStyle.normal.textColor = titleColor;
|
|
||||||
titleLabelStyle.fontStyle = FontStyle.Bold;
|
|
||||||
|
|
||||||
|
|
||||||
EditorGUILayout.Separator ();
|
|
||||||
|
|
||||||
EditorGUILayout.BeginHorizontal ();
|
|
||||||
EditorGUILayout.LabelField ("General Settings", titleLabelStyle);
|
|
||||||
if (GUILayout.Button ("Help", GUILayout.Width (40))) {
|
|
||||||
if (!EditorUtility.DisplayDialog ("Dynamic Fog & Mist", "To learn more about a property in this inspector move the mouse over the label for a quick description (tooltip).\n\nPlease check README file in the root of the asset for details and contact support.\n\nIf you like Dynamic Fog & Mist, please rate it on the Asset Store. For feedback and suggestions visit our support forum on kronnect.com.", "Close", "Visit Support Forum")) {
|
|
||||||
Application.OpenURL ("http://kronnect.com/taptapgo");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
EditorGUILayout.EndHorizontal ();
|
|
||||||
|
|
||||||
int prevPreset = preset.intValue;
|
|
||||||
bool prevFogVolumes = useFogVolumes.boolValue;
|
|
||||||
int prevDither = enableDithering.intValue;
|
|
||||||
float prevDitherStrength = ditherStrength.floatValue;
|
|
||||||
|
|
||||||
EditorGUILayout.IntPopup (effectType, FOG_TYPE_OPTIONS, FOG_TYPE_VALUES, new GUIContent ("Effect Type", "Choose a shader variant. Each variant provides different capabilities. Read documentation for explanation."));
|
|
||||||
switch (effectType.intValue) {
|
|
||||||
case (int)FOG_TYPE.DesktopFogPlusWithSkyHaze:
|
|
||||||
EditorGUILayout.HelpBox ("BEST IMMERSION. 5 step raymarching based fog effect which does not require geometry. Uses a more complex algorithm to simulate 3D noise in world space. Also adds sky haze at the background.", MessageType.Info);
|
|
||||||
break;
|
|
||||||
case (int)FOG_TYPE.DesktopFogPlusOrthogonal:
|
|
||||||
EditorGUILayout.HelpBox ("Variant of Desktop Plus With Sky Haze which treats distance fog and height fog separately. This variant does not add sky haze at the background.", MessageType.Info);
|
|
||||||
break;
|
|
||||||
case (int)FOG_TYPE.DesktopFogWithSkyHaze:
|
|
||||||
EditorGUILayout.HelpBox ("Depth based fog effect that lays out fog over existing geometry. Uses two noise textures and adds haze effect at the background to complete fog composition (geometry fog + sky fog).", MessageType.Info);
|
|
||||||
break;
|
|
||||||
case (int)FOG_TYPE.MobileFogWithSkyHaze:
|
|
||||||
EditorGUILayout.HelpBox ("Depth based fog effect over existing geometry. Similar to Desktop Fog with Sky, but uses one noise texture instead of two, and also adds haze effect at the background to complete fog composition (geometry fog + sky fog).", MessageType.Info);
|
|
||||||
break;
|
|
||||||
case (int)FOG_TYPE.MobileFogOnlyGround:
|
|
||||||
EditorGUILayout.HelpBox ("FASTEST, Depth based fog effect over existing geometry. Similar to Mobile Fog with Sky, but only affects geometry (no sky haze).", MessageType.Info);
|
|
||||||
break;
|
|
||||||
case (int)FOG_TYPE.MobileFogSimple:
|
|
||||||
EditorGUILayout.HelpBox ("GREAT PERFORMANCE/QUALITY. Similar to Desktop Fog Plus with Sky Haze but uses 3 steps instead of 5 and does not add sky haze at the background.", MessageType.Info);
|
|
||||||
break;
|
|
||||||
case (int)FOG_TYPE.MobileFogOrthogonal:
|
|
||||||
EditorGUILayout.HelpBox ("Variant of Mobile Fog (Simplified) which treats distance fog and height fog separately. Does not use noise textures. Does not adds sky haze at the background.", MessageType.Info);
|
|
||||||
break;
|
|
||||||
case (int)FOG_TYPE.MobileFogBasic:
|
|
||||||
EditorGUILayout.HelpBox ("FASTEST, Ray-marching variant. Uses only 1 step. Does not use noise textures. Does not adds sky haze at the background.", MessageType.Info);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
EditorGUILayout.PropertyField (preset, new GUIContent ("Legacy Preset", "Amount of detail of the liquid effect. The 'Simple' setting does not use 3D textures which makes it compatible with mobile."));
|
|
||||||
|
|
||||||
EditorGUILayout.BeginHorizontal ();
|
|
||||||
_fog.profile = (DynamicFogProfile)EditorGUILayout.ObjectField (new GUIContent ("Profile", "Create or load stored presets."), _fog.profile, typeof(DynamicFogProfile), false);
|
|
||||||
|
|
||||||
if (_fog.profile != null) {
|
|
||||||
EditorGUILayout.EndHorizontal ();
|
|
||||||
EditorGUILayout.BeginHorizontal ();
|
|
||||||
GUILayout.Label ("", GUILayout.Width (130));
|
|
||||||
if (GUILayout.Button (new GUIContent ("Create", "Creates a new profile which is a copy of the current settings."), GUILayout.Width (60))) {
|
|
||||||
CreateProfile ();
|
|
||||||
profileChanges = false;
|
|
||||||
GUIUtility.ExitGUI ();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (GUILayout.Button (new GUIContent ("Revert", "Updates fog settings with the profile configuration."), GUILayout.Width (60))) {
|
|
||||||
profileChanges = false;
|
|
||||||
_fog.profile.Load (_fog);
|
|
||||||
}
|
|
||||||
if (!profileChanges)
|
|
||||||
GUI.enabled = false;
|
|
||||||
if (GUILayout.Button (new GUIContent ("Apply", "Updates profile configuration with changes in this inspector."), GUILayout.Width (60))) {
|
|
||||||
profileChanges = false;
|
|
||||||
_fog.profile.Save (_fog);
|
|
||||||
}
|
|
||||||
GUI.enabled = true;
|
|
||||||
} else {
|
|
||||||
if (GUILayout.Button (new GUIContent ("Create", "Creates a new profile which is a copy of the current settings."), GUILayout.Width (60))) {
|
|
||||||
CreateProfile ();
|
|
||||||
GUIUtility.ExitGUI ();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
EditorGUILayout.EndHorizontal ();
|
|
||||||
|
|
||||||
|
|
||||||
EditorGUILayout.PropertyField (useFogVolumes, new GUIContent ("Use Fog Volumes", "Enables fog volumes. These are zones which changes the transparency of the fog automatically, either making it disappear or appear."));
|
|
||||||
|
|
||||||
#if UNITY_5_4_OR_NEWER
|
|
||||||
|
|
||||||
if (EditorUserBuildSettings.activeBuildTarget != BuildTarget.Android) {
|
|
||||||
#if UNITY_5_5_OR_NEWER
|
|
||||||
useSinglePassStereoRenderingMatrix.boolValue = PlayerSettings.stereoRenderingPath == StereoRenderingPath.SinglePass;
|
|
||||||
#else
|
|
||||||
useSinglePassStereoRenderingMatrix.boolValue = PlayerSettings.singlePassStereoRendering;
|
|
||||||
#endif
|
|
||||||
GUI.enabled = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
EditorGUILayout.PropertyField (useSinglePassStereoRenderingMatrix, new GUIContent ("Single Pass Stereo", "Enables Single Pass Stereo Rendering when using in VR (automatically set based on player settings."));
|
|
||||||
GUI.enabled = true;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (useSinglePassStereoRenderingMatrix.boolValue && EditorUserBuildSettings.activeBuildTarget == BuildTarget.Android) {
|
|
||||||
EditorGUILayout.HelpBox("Single Pass Stereo is not supported on all Android devices.", MessageType.Info);
|
|
||||||
}
|
|
||||||
|
|
||||||
int effect = effectType.intValue;
|
|
||||||
|
|
||||||
EditorGUILayout.PropertyField (enableDithering, new GUIContent ("Enable Dithering", "Reduces banding artifacts."));
|
|
||||||
if (enableDithering.boolValue) {
|
|
||||||
EditorGUILayout.PropertyField (ditherStrength, new GUIContent (" Dither Strength", "Intensity of dither blending."));
|
|
||||||
}
|
|
||||||
|
|
||||||
EditorGUILayout.PropertyField (sun, new GUIContent ("Sun", "Assign a game object (a directional light acting as Sun for example) to make the fog color sync automatically with the Sun orientation and light intensity."));
|
|
||||||
if (effect == (int)FOG_TYPE.DesktopFogPlusWithSkyHaze) {
|
|
||||||
if (sun.objectReferenceValue == null) {
|
|
||||||
EditorGUILayout.HelpBox ("Light scattering requires a Sun reference.", MessageType.Info);
|
|
||||||
GUI.enabled = false;
|
|
||||||
}
|
|
||||||
EditorGUILayout.PropertyField (scattering, new GUIContent ("Light Scattering", "Amount of Sun light diffusion when it crosses the fog towards viewer."));
|
|
||||||
EditorGUILayout.PropertyField (scatteringColor, new GUIContent (" Scattering Color", "Tint color for the light scattering effect."));
|
|
||||||
GUI.enabled = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
EditorGUILayout.Separator ();
|
|
||||||
expandSection [FOG_PROPERTIES] = EditorGUILayout.Foldout (expandSection [FOG_PROPERTIES], sectionNames [FOG_PROPERTIES], sectionHeaderStyle);
|
|
||||||
|
|
||||||
if (expandSection [FOG_PROPERTIES]) {
|
|
||||||
EditorGUILayout.PropertyField (alpha, new GUIContent ("Alpha", "Global fog transparency. You can also change the transparency at color level."));
|
|
||||||
if (effect != 4 && effect != 5 && effect != 6) {
|
|
||||||
EditorGUILayout.PropertyField (noiseStrength, new GUIContent ("Noise Strength", "Set this value to zero to use solid colors."));
|
|
||||||
EditorGUILayout.PropertyField (noiseScale, new GUIContent ("Noise Scale", "Scale factor for sampling noise."));
|
|
||||||
}
|
|
||||||
EditorGUILayout.PropertyField (distance, new GUIContent ("Distance", "The starting distance of the fog measure in linear 0-1 values (0=camera near clip, 1=camera far clip)."));
|
|
||||||
EditorGUILayout.PropertyField (distanceFallOff, new GUIContent ("Distance Fall Off", "Makes the fog appear smoothly on the near distance."));
|
|
||||||
if (effect < 4)
|
|
||||||
EditorGUILayout.PropertyField (maxDistance, new GUIContent ("Max Distance", "The end distance of the fog measure in linear 0-1 values (0=camera near clip, 1=camera far clip)."));
|
|
||||||
if (effect < 3) {
|
|
||||||
EditorGUILayout.PropertyField (maxDistanceFallOff, new GUIContent ("Distance Fall Off", "Makes the fog disappear smoothly on the far distance."));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (effect == (int)FOG_TYPE.MobileFogOrthogonal || effect == (int)FOG_TYPE.DesktopFogPlusOrthogonal) {
|
|
||||||
EditorGUILayout.PropertyField (maxHeight, new GUIContent ("Max Height", "Max. height of the fog in meters."));
|
|
||||||
}
|
|
||||||
EditorGUILayout.PropertyField (height, new GUIContent ("Height", "Height of the fog in meters."));
|
|
||||||
EditorGUILayout.PropertyField (heightFallOff, new GUIContent ("Height Fall Off", "Increase to make the fog change gradually its density based on height."));
|
|
||||||
EditorGUILayout.PropertyField (baselineHeight, new GUIContent ("Baseline Height", "Vertical position of the fog in meters. Height is counted above this baseline height."));
|
|
||||||
|
|
||||||
if (effect < 3) {
|
|
||||||
EditorGUILayout.PropertyField (clipUnderBaseline, new GUIContent ("Clip Under Baseline", "Enable this property to only render fog above baseline height."));
|
|
||||||
EditorGUILayout.PropertyField (turbulence, new GUIContent ("Turbulence", "Amount of fog turbulence."));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (effect < 4 || effect == (int)FOG_TYPE.DesktopFogPlusOrthogonal) {
|
|
||||||
EditorGUILayout.PropertyField (speed, new GUIContent ("Speed", "Speed of fog animation if noise strength or turbulence > 0 (turbulence not available in Desktop Fog Plus mode)."));
|
|
||||||
EditorGUILayout.PropertyField (windDirection, new GUIContent ("Wind Direction", "Direction of the wind to take into account for the fog animation."));
|
|
||||||
}
|
|
||||||
|
|
||||||
EditorGUILayout.PropertyField (color);
|
|
||||||
if (effect != 4 && effect != 5)
|
|
||||||
EditorGUILayout.PropertyField (color2);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (effect != 2 && effect != 4 && effect != 5 && effect != (int)FOG_TYPE.DesktopFogPlusOrthogonal) {
|
|
||||||
EditorGUILayout.Separator ();
|
|
||||||
expandSection [SKY_PROPERTIES] = EditorGUILayout.Foldout (expandSection [SKY_PROPERTIES], sectionNames [SKY_PROPERTIES], sectionHeaderStyle);
|
|
||||||
|
|
||||||
if (expandSection [SKY_PROPERTIES]) {
|
|
||||||
EditorGUILayout.PropertyField (skyHaze, new GUIContent ("Haze", "Vertical range for the sky haze."));
|
|
||||||
EditorGUILayout.PropertyField (skySpeed, new GUIContent ("Speed", "Speed of sky haze animation."));
|
|
||||||
EditorGUILayout.PropertyField (skyNoiseStrength, new GUIContent ("Noise Strength", "Amount of noise for the sky haze effect."));
|
|
||||||
EditorGUILayout.PropertyField (skyAlpha, new GUIContent ("Alpha", "Transparency of sky haze."));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
EditorGUILayout.Separator ();
|
|
||||||
expandSection [FOG_OF_WAR] = EditorGUILayout.Foldout (expandSection [FOG_OF_WAR], sectionNames [FOG_OF_WAR], sectionHeaderStyle);
|
|
||||||
|
|
||||||
if (expandSection [FOG_OF_WAR]) {
|
|
||||||
EditorGUILayout.PropertyField (fogOfWarEnabled, new GUIContent ("Enabled", "Enables fog of war feature. This requires that you assign a fog of war mask texture at runtime. Read documentation or demo scene for details."));
|
|
||||||
EditorGUILayout.PropertyField (fogOfWarCenter, new GUIContent ("Center", "World space position of the center of the fog of war mask texture."));
|
|
||||||
EditorGUILayout.PropertyField (fogOfWarSize, new GUIContent ("Area Size", "Size of the fog of war area in world space units."));
|
|
||||||
EditorGUILayout.PropertyField (fogOfWarTextureSize, new GUIContent ("Texture Size", "Size of the fog of war mask texture."));
|
|
||||||
}
|
|
||||||
|
|
||||||
EditorGUILayout.Separator ();
|
|
||||||
|
|
||||||
if (serializedObject.ApplyModifiedProperties () || (Event.current.type == EventType.ExecuteCommand && Event.current.commandName == "UndoRedoPerformed")) {
|
|
||||||
DynamicFog fog = (DynamicFog)target;
|
|
||||||
if (prevPreset == preset.intValue && prevFogVolumes == useFogVolumes.boolValue && prevDither == enableDithering.intValue && prevDitherStrength == ditherStrength.floatValue)
|
|
||||||
fog.preset = FOG_PRESET.Custom;
|
|
||||||
if (fog.profile != null)
|
|
||||||
profileChanges = true;
|
|
||||||
fog.UpdateMaterialProperties ();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
#region Profile handling
|
|
||||||
|
|
||||||
void CreateProfile () {
|
|
||||||
|
|
||||||
DynamicFogProfile newProfile = ScriptableObject.CreateInstance<DynamicFogProfile> ();
|
|
||||||
newProfile.Save (_fog);
|
|
||||||
|
|
||||||
AssetDatabase.CreateAsset (newProfile, "Assets/DynamicFogProfile.asset");
|
|
||||||
AssetDatabase.SaveAssets ();
|
|
||||||
|
|
||||||
EditorUtility.FocusProjectWindow ();
|
|
||||||
Selection.activeObject = newProfile;
|
|
||||||
|
|
||||||
_fog.profile = newProfile;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
#endregion
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -1,12 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: f2a2118e75a8e4d578594bfc8307a769
|
|
||||||
timeCreated: 1474104927
|
|
||||||
licenseType: Store
|
|
||||||
MonoImporter:
|
|
||||||
serializedVersion: 2
|
|
||||||
defaultReferences: []
|
|
||||||
executionOrder: 0
|
|
||||||
icon: {instanceID: 0}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,379 +0,0 @@
|
|||||||
using UnityEngine;
|
|
||||||
using UnityEditor;
|
|
||||||
using System;
|
|
||||||
using System.Collections;
|
|
||||||
|
|
||||||
namespace DynamicFogAndMist
|
|
||||||
{
|
|
||||||
[CustomEditor(typeof(DynamicFogExclusive))]
|
|
||||||
public class DynamicFogExclusiveEditor : Editor
|
|
||||||
{
|
|
||||||
|
|
||||||
static GUIStyle titleLabelStyle, sectionHeaderStyle;
|
|
||||||
static Color titleColor;
|
|
||||||
static bool[] expandSection = new bool[5];
|
|
||||||
const string SECTION_PREFS = "DynamicFogExpandSection";
|
|
||||||
static GUIContent[] FOG_TYPE_OPTIONS = new GUIContent[] {
|
|
||||||
new GUIContent ("Desktop Fog Plus + Sky Haze"),
|
|
||||||
new GUIContent ("Desktop Fog Plus (Orthogonal)"),
|
|
||||||
new GUIContent ("Desktop Fog + Sky Haze"),
|
|
||||||
new GUIContent ("Mobile Fog Plus (Simplified)"),
|
|
||||||
new GUIContent ("Mobile Fog + Sky Haze"),
|
|
||||||
new GUIContent ("Mobile Fog (No Sky Haze)"),
|
|
||||||
new GUIContent ("Mobile Fog (Orthogonal)"),
|
|
||||||
new GUIContent ("Mobile Fog (Basic)")
|
|
||||||
};
|
|
||||||
static int[] FOG_TYPE_VALUES = new int[] {
|
|
||||||
(int)FOG_TYPE.DesktopFogPlusWithSkyHaze,
|
|
||||||
(int)FOG_TYPE.DesktopFogPlusOrthogonal,
|
|
||||||
(int)FOG_TYPE.DesktopFogWithSkyHaze,
|
|
||||||
(int)FOG_TYPE.MobileFogSimple,
|
|
||||||
(int)FOG_TYPE.MobileFogWithSkyHaze,
|
|
||||||
(int)FOG_TYPE.MobileFogOnlyGround,
|
|
||||||
(int)FOG_TYPE.MobileFogOrthogonal,
|
|
||||||
(int)FOG_TYPE.MobileFogBasic
|
|
||||||
};
|
|
||||||
static string[] sectionNames = new string[] {
|
|
||||||
"Fog Properties",
|
|
||||||
"Sky Properties",
|
|
||||||
"Fog of War"
|
|
||||||
};
|
|
||||||
const int FOG_PROPERTIES = 0;
|
|
||||||
const int SKY_PROPERTIES = 1;
|
|
||||||
const int FOG_OF_WAR = 2;
|
|
||||||
SerializedProperty effectType, preset, useFogVolumes, enableDithering, ditherStrength, useSinglePassStereoRenderingMatrix;
|
|
||||||
SerializedProperty alpha, noiseStrength, noiseScale, distance, distanceFallOff, maxDistance, maxDistanceFallOff, height, maxHeight;
|
|
||||||
SerializedProperty heightFallOff, baselineHeight, clipUnderBaseline, turbulence, speed, windDirection, color, color2;
|
|
||||||
SerializedProperty skyHaze, skySpeed, skyNoiseStrength, skyAlpha, sun, scattering, scatteringColor;
|
|
||||||
SerializedProperty fogOfWarEnabled, fogOfWarCenter, fogOfWarSize, fogOfWarTextureSize, renderScale;
|
|
||||||
bool profileChanges;
|
|
||||||
DynamicFogExclusive _fog;
|
|
||||||
|
|
||||||
void OnEnable()
|
|
||||||
{
|
|
||||||
titleColor = EditorGUIUtility.isProSkin ? new Color(0.52f, 0.66f, 0.9f) : new Color(0.12f, 0.16f, 0.4f);
|
|
||||||
for (int k = 0; k < expandSection.Length; k++)
|
|
||||||
{
|
|
||||||
expandSection[k] = EditorPrefs.GetBool(SECTION_PREFS + k, false);
|
|
||||||
}
|
|
||||||
effectType = serializedObject.FindProperty("_effectType");
|
|
||||||
preset = serializedObject.FindProperty("_preset");
|
|
||||||
useFogVolumes = serializedObject.FindProperty("_useFogVolumes");
|
|
||||||
enableDithering = serializedObject.FindProperty("_enableDithering");
|
|
||||||
ditherStrength = serializedObject.FindProperty("_ditherStrength");
|
|
||||||
#if UNITY_5_4_OR_NEWER
|
|
||||||
useSinglePassStereoRenderingMatrix = serializedObject.FindProperty("_useSinglePassStereoRenderingMatrix");
|
|
||||||
#endif
|
|
||||||
|
|
||||||
renderScale = serializedObject.FindProperty("renderScale");
|
|
||||||
alpha = serializedObject.FindProperty("_alpha");
|
|
||||||
noiseStrength = serializedObject.FindProperty("_noiseStrength");
|
|
||||||
noiseScale = serializedObject.FindProperty("_noiseScale");
|
|
||||||
distance = serializedObject.FindProperty("_distance");
|
|
||||||
distanceFallOff = serializedObject.FindProperty("_distanceFallOff");
|
|
||||||
maxDistance = serializedObject.FindProperty("_maxDistance");
|
|
||||||
maxDistanceFallOff = serializedObject.FindProperty("_maxDistanceFallOff");
|
|
||||||
maxHeight = serializedObject.FindProperty("_maxHeight");
|
|
||||||
height = serializedObject.FindProperty("_height");
|
|
||||||
heightFallOff = serializedObject.FindProperty("_heightFallOff");
|
|
||||||
baselineHeight = serializedObject.FindProperty("_baselineHeight");
|
|
||||||
clipUnderBaseline = serializedObject.FindProperty("_clipUnderBaseline");
|
|
||||||
turbulence = serializedObject.FindProperty("_turbulence");
|
|
||||||
speed = serializedObject.FindProperty("_speed");
|
|
||||||
windDirection = serializedObject.FindProperty("_windDirection");
|
|
||||||
|
|
||||||
color = serializedObject.FindProperty("_color");
|
|
||||||
color2 = serializedObject.FindProperty("_color2");
|
|
||||||
skyHaze = serializedObject.FindProperty("_skyHaze");
|
|
||||||
skySpeed = serializedObject.FindProperty("_skySpeed");
|
|
||||||
skyNoiseStrength = serializedObject.FindProperty("_skyNoiseStrength");
|
|
||||||
skyAlpha = serializedObject.FindProperty("_skyAlpha");
|
|
||||||
sun = serializedObject.FindProperty("_sun");
|
|
||||||
scattering = serializedObject.FindProperty("_scattering");
|
|
||||||
scatteringColor = serializedObject.FindProperty("_scatteringColor");
|
|
||||||
|
|
||||||
fogOfWarEnabled = serializedObject.FindProperty("_fogOfWarEnabled");
|
|
||||||
fogOfWarCenter = serializedObject.FindProperty("_fogOfWarCenter");
|
|
||||||
fogOfWarSize = serializedObject.FindProperty("_fogOfWarSize");
|
|
||||||
fogOfWarTextureSize = serializedObject.FindProperty("_fogOfWarTextureSize");
|
|
||||||
|
|
||||||
_fog = (DynamicFogExclusive)target;
|
|
||||||
}
|
|
||||||
|
|
||||||
void OnDestroy()
|
|
||||||
{
|
|
||||||
// Save folding sections state
|
|
||||||
for (int k = 0; k < expandSection.Length; k++)
|
|
||||||
{
|
|
||||||
EditorPrefs.SetBool(SECTION_PREFS + k, expandSection[k]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void OnInspectorGUI()
|
|
||||||
{
|
|
||||||
#if UNITY_5_6_OR_NEWER
|
|
||||||
serializedObject.UpdateIfRequiredOrScript();
|
|
||||||
#else
|
|
||||||
serializedObject.UpdateIfDirtyOrScript();
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (sectionHeaderStyle == null)
|
|
||||||
{
|
|
||||||
sectionHeaderStyle = new GUIStyle(EditorStyles.foldout);
|
|
||||||
}
|
|
||||||
sectionHeaderStyle.normal.textColor = titleColor;
|
|
||||||
sectionHeaderStyle.margin = new RectOffset(12, 0, 0, 0);
|
|
||||||
sectionHeaderStyle.fontStyle = FontStyle.Bold;
|
|
||||||
|
|
||||||
if (titleLabelStyle == null)
|
|
||||||
{
|
|
||||||
titleLabelStyle = new GUIStyle(EditorStyles.label);
|
|
||||||
}
|
|
||||||
titleLabelStyle.normal.textColor = titleColor;
|
|
||||||
titleLabelStyle.fontStyle = FontStyle.Bold;
|
|
||||||
|
|
||||||
|
|
||||||
EditorGUILayout.Separator();
|
|
||||||
EditorGUILayout.HelpBox("Dynamic Fog Exclusive Mode", MessageType.Info);
|
|
||||||
|
|
||||||
EditorGUILayout.BeginHorizontal();
|
|
||||||
EditorGUILayout.LabelField("General Settings", titleLabelStyle);
|
|
||||||
if (GUILayout.Button("Help", GUILayout.Width(40)))
|
|
||||||
{
|
|
||||||
if (!EditorUtility.DisplayDialog("Dynamic Fog & Mist", "To learn more about a property in this inspector move the mouse over the label for a quick description (tooltip).\n\nPlease check README file in the root of the asset for details and contact support.\n\nIf you like Dynamic Fog & Mist, please rate it on the Asset Store. For feedback and suggestions visit our support forum on kronnect.com.", "Close", "Visit Support Forum"))
|
|
||||||
{
|
|
||||||
Application.OpenURL("http://kronnect.com/taptapgo");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
EditorGUILayout.EndHorizontal();
|
|
||||||
|
|
||||||
int prevPreset = preset.intValue;
|
|
||||||
bool prevFogVolumes = useFogVolumes.boolValue;
|
|
||||||
int prevDither = enableDithering.intValue;
|
|
||||||
float prevDitherStrength = ditherStrength.floatValue;
|
|
||||||
|
|
||||||
EditorGUILayout.IntPopup(effectType, FOG_TYPE_OPTIONS, FOG_TYPE_VALUES, new GUIContent("Effect Type", "Choose a shader variant. Each variant provides different capabilities. Read documentation for explanation."));
|
|
||||||
switch (effectType.intValue)
|
|
||||||
{
|
|
||||||
case (int)FOG_TYPE.DesktopFogPlusWithSkyHaze:
|
|
||||||
EditorGUILayout.HelpBox("BEST IMMERSION. 5 step raymarching based fog effect which does not require geometry. Uses a more complex algorithm to simulate 3D noise in world space. Also adds sky haze at the background.", MessageType.Info);
|
|
||||||
break;
|
|
||||||
case (int)FOG_TYPE.DesktopFogPlusOrthogonal:
|
|
||||||
EditorGUILayout.HelpBox("Variant of Desktop Plus With Sky Haze which treats distance fog and height fog separately. This variant does not add sky haze at the background.", MessageType.Info);
|
|
||||||
break;
|
|
||||||
case (int)FOG_TYPE.DesktopFogWithSkyHaze:
|
|
||||||
EditorGUILayout.HelpBox("Depth based fog effect that lays out fog over existing geometry. Uses two noise textures and adds haze effect at the background to complete fog composition (geometry fog + sky fog).", MessageType.Info);
|
|
||||||
break;
|
|
||||||
case (int)FOG_TYPE.MobileFogWithSkyHaze:
|
|
||||||
EditorGUILayout.HelpBox("Depth based fog effect over existing geometry. Similar to Desktop Fog with Sky, but uses one noise texture instead of two, and also adds haze effect at the background to complete fog composition (geometry fog + sky fog).", MessageType.Info);
|
|
||||||
break;
|
|
||||||
case (int)FOG_TYPE.MobileFogOnlyGround:
|
|
||||||
EditorGUILayout.HelpBox("FASTEST, Depth based fog effect over existing geometry. Similar to Mobile Fog with Sky, but only affects geometry (no sky haze).", MessageType.Info);
|
|
||||||
break;
|
|
||||||
case (int)FOG_TYPE.MobileFogSimple:
|
|
||||||
EditorGUILayout.HelpBox("GREAT PERFORMANCE/QUALITY. Similar to Desktop Fog Plus with Sky Haze but uses 3 steps instead of 5 and does not add sky haze at the background.", MessageType.Info);
|
|
||||||
break;
|
|
||||||
case (int)FOG_TYPE.MobileFogOrthogonal:
|
|
||||||
EditorGUILayout.HelpBox("Variant of Mobile Fog (Simplified) which treats distance fog and height fog separately. Does not use noise textures. Does not adds sky haze at the background.", MessageType.Info);
|
|
||||||
break;
|
|
||||||
case (int)FOG_TYPE.MobileFogBasic:
|
|
||||||
EditorGUILayout.HelpBox("FASTEST, Ray-marching variant. Uses only 1 step. Does not use noise textures. Does not adds sky haze at the background.", MessageType.Info);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
EditorGUILayout.PropertyField(preset, new GUIContent("Legacy Preset", "Amount of detail of the liquid effect. The 'Simple' setting does not use 3D textures which makes it compatible with mobile."));
|
|
||||||
|
|
||||||
EditorGUILayout.BeginHorizontal();
|
|
||||||
_fog.profile = (DynamicFogProfile)EditorGUILayout.ObjectField(new GUIContent("Profile", "Create or load stored presets."), _fog.profile, typeof(DynamicFogProfile), false);
|
|
||||||
|
|
||||||
if (_fog.profile != null)
|
|
||||||
{
|
|
||||||
EditorGUILayout.EndHorizontal();
|
|
||||||
EditorGUILayout.BeginHorizontal();
|
|
||||||
GUILayout.Label("", GUILayout.Width(130));
|
|
||||||
if (GUILayout.Button(new GUIContent("Create", "Creates a new profile which is a copy of the current settings."), GUILayout.Width(60)))
|
|
||||||
{
|
|
||||||
CreateProfile();
|
|
||||||
profileChanges = false;
|
|
||||||
GUIUtility.ExitGUI();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (GUILayout.Button(new GUIContent("Revert", "Updates fog settings with the profile configuration."), GUILayout.Width(60)))
|
|
||||||
{
|
|
||||||
profileChanges = false;
|
|
||||||
_fog.profile.Load(_fog);
|
|
||||||
}
|
|
||||||
if (!profileChanges)
|
|
||||||
GUI.enabled = false;
|
|
||||||
if (GUILayout.Button(new GUIContent("Apply", "Updates profile configuration with changes in this inspector."), GUILayout.Width(60)))
|
|
||||||
{
|
|
||||||
profileChanges = false;
|
|
||||||
_fog.profile.Save(_fog);
|
|
||||||
}
|
|
||||||
GUI.enabled = true;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if (GUILayout.Button(new GUIContent("Create", "Creates a new profile which is a copy of the current settings."), GUILayout.Width(60)))
|
|
||||||
{
|
|
||||||
CreateProfile();
|
|
||||||
GUIUtility.ExitGUI();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
EditorGUILayout.EndHorizontal();
|
|
||||||
|
|
||||||
|
|
||||||
EditorGUILayout.PropertyField(useFogVolumes, new GUIContent("Use Fog Volumes", "Enables fog volumes. These are zones which changes the transparency of the fog automatically, either making it disappear or appear."));
|
|
||||||
|
|
||||||
#if UNITY_5_4_OR_NEWER
|
|
||||||
|
|
||||||
if (EditorUserBuildSettings.activeBuildTarget != BuildTarget.Android)
|
|
||||||
{
|
|
||||||
#if UNITY_5_5_OR_NEWER
|
|
||||||
useSinglePassStereoRenderingMatrix.boolValue = PlayerSettings.stereoRenderingPath == StereoRenderingPath.SinglePass;
|
|
||||||
#else
|
|
||||||
useSinglePassStereoRenderingMatrix.boolValue = PlayerSettings.singlePassStereoRendering;
|
|
||||||
#endif
|
|
||||||
GUI.enabled = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
EditorGUILayout.PropertyField(useSinglePassStereoRenderingMatrix, new GUIContent("Single Pass Stereo", "Enables Single Pass Stereo Rendering when using in VR (automatically set based on player settings."));
|
|
||||||
GUI.enabled = true;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (useSinglePassStereoRenderingMatrix.boolValue && EditorUserBuildSettings.activeBuildTarget == BuildTarget.Android)
|
|
||||||
{
|
|
||||||
EditorGUILayout.HelpBox("Single Pass Stereo is not supported on all Android devices.", MessageType.Info);
|
|
||||||
}
|
|
||||||
|
|
||||||
int effect = effectType.intValue;
|
|
||||||
|
|
||||||
EditorGUILayout.PropertyField(enableDithering, new GUIContent("Enable Dithering", "Reduces banding artifacts."));
|
|
||||||
if (enableDithering.boolValue)
|
|
||||||
{
|
|
||||||
EditorGUILayout.PropertyField(ditherStrength, new GUIContent(" Dither Strength", "Intensity of dither blending."));
|
|
||||||
}
|
|
||||||
|
|
||||||
EditorGUILayout.PropertyField(sun, new GUIContent("Sun", "Assign a game object (a directional light acting as Sun for example) to make the fog color sync automatically with the Sun orientation and light intensity."));
|
|
||||||
if (effect == (int)FOG_TYPE.DesktopFogPlusWithSkyHaze)
|
|
||||||
{
|
|
||||||
if (sun.objectReferenceValue == null)
|
|
||||||
{
|
|
||||||
EditorGUILayout.HelpBox("Light scattering requires a Sun reference.", MessageType.Info);
|
|
||||||
GUI.enabled = false;
|
|
||||||
}
|
|
||||||
EditorGUILayout.PropertyField(scattering, new GUIContent("Light Scattering", "Amount of Sun light diffusion when it crosses the fog towards viewer."));
|
|
||||||
EditorGUILayout.PropertyField(scatteringColor, new GUIContent(" Scattering Color", "Tint color for the light scattering effect."));
|
|
||||||
GUI.enabled = true;
|
|
||||||
}
|
|
||||||
EditorGUILayout.PropertyField(renderScale, new GUIContent("Render Scale", "Optional render scale factor."));
|
|
||||||
|
|
||||||
EditorGUILayout.Separator();
|
|
||||||
expandSection[FOG_PROPERTIES] = EditorGUILayout.Foldout(expandSection[FOG_PROPERTIES], sectionNames[FOG_PROPERTIES], sectionHeaderStyle);
|
|
||||||
|
|
||||||
if (expandSection[FOG_PROPERTIES])
|
|
||||||
{
|
|
||||||
EditorGUILayout.PropertyField(alpha, new GUIContent("Alpha", "Global fog transparency. You can also change the transparency at color level."));
|
|
||||||
if (effect != 4 && effect != 5 && effect != 6)
|
|
||||||
{
|
|
||||||
EditorGUILayout.PropertyField(noiseStrength, new GUIContent("Noise Strength", "Set this value to zero to use solid colors."));
|
|
||||||
EditorGUILayout.PropertyField(noiseScale, new GUIContent("Noise Scale", "Scale factor for sampling noise."));
|
|
||||||
}
|
|
||||||
EditorGUILayout.PropertyField(distance, new GUIContent("Distance", "The starting distance of the fog measure in linear 0-1 values (0=camera near clip, 1=camera far clip)."));
|
|
||||||
EditorGUILayout.PropertyField(distanceFallOff, new GUIContent("Distance Fall Off", "Makes the fog appear smoothly on the near distance."));
|
|
||||||
if (effect < 4)
|
|
||||||
EditorGUILayout.PropertyField(maxDistance, new GUIContent("Max Distance", "The end distance of the fog measure in linear 0-1 values (0=camera near clip, 1=camera far clip)."));
|
|
||||||
if (effect < 3)
|
|
||||||
{
|
|
||||||
EditorGUILayout.PropertyField(maxDistanceFallOff, new GUIContent("Distance Fall Off", "Makes the fog disappear smoothly on the far distance."));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (effect == (int)FOG_TYPE.MobileFogOrthogonal || effect == (int)FOG_TYPE.DesktopFogPlusOrthogonal)
|
|
||||||
{
|
|
||||||
EditorGUILayout.PropertyField(maxHeight, new GUIContent("Max Height", "Max. height of the fog in meters."));
|
|
||||||
}
|
|
||||||
EditorGUILayout.PropertyField(height, new GUIContent("Height", "Height of the fog in meters."));
|
|
||||||
EditorGUILayout.PropertyField(heightFallOff, new GUIContent("Height Fall Off", "Increase to make the fog change gradually its density based on height."));
|
|
||||||
EditorGUILayout.PropertyField(baselineHeight, new GUIContent("Baseline Height", "Vertical position of the fog in meters. Height is counted above this baseline height."));
|
|
||||||
|
|
||||||
if (effect < 3)
|
|
||||||
{
|
|
||||||
EditorGUILayout.PropertyField(clipUnderBaseline, new GUIContent("Clip Under Baseline", "Enable this property to only render fog above baseline height."));
|
|
||||||
EditorGUILayout.PropertyField(turbulence, new GUIContent("Turbulence", "Amount of fog turbulence."));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (effect < 4 || effect == (int)FOG_TYPE.DesktopFogPlusOrthogonal)
|
|
||||||
{
|
|
||||||
EditorGUILayout.PropertyField(speed, new GUIContent("Speed", "Speed of fog animation if noise strength or turbulence > 0 (turbulence not available in Desktop Fog Plus mode)."));
|
|
||||||
EditorGUILayout.PropertyField(windDirection, new GUIContent("Wind Direction", "Direction of the wind to take into account for the fog animation."));
|
|
||||||
}
|
|
||||||
|
|
||||||
EditorGUILayout.PropertyField(color);
|
|
||||||
if (effect != 4 && effect != 5)
|
|
||||||
EditorGUILayout.PropertyField(color2);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (effect != 2 && effect != 4 && effect != 5 && effect != (int)FOG_TYPE.DesktopFogPlusOrthogonal)
|
|
||||||
{
|
|
||||||
EditorGUILayout.Separator();
|
|
||||||
expandSection[SKY_PROPERTIES] = EditorGUILayout.Foldout(expandSection[SKY_PROPERTIES], sectionNames[SKY_PROPERTIES], sectionHeaderStyle);
|
|
||||||
|
|
||||||
if (expandSection[SKY_PROPERTIES])
|
|
||||||
{
|
|
||||||
EditorGUILayout.PropertyField(skyHaze, new GUIContent("Haze", "Vertical range for the sky haze."));
|
|
||||||
EditorGUILayout.PropertyField(skySpeed, new GUIContent("Speed", "Speed of sky haze animation."));
|
|
||||||
EditorGUILayout.PropertyField(skyNoiseStrength, new GUIContent("Noise Strength", "Amount of noise for the sky haze effect."));
|
|
||||||
EditorGUILayout.PropertyField(skyAlpha, new GUIContent("Alpha", "Transparency of sky haze."));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
EditorGUILayout.Separator();
|
|
||||||
expandSection[FOG_OF_WAR] = EditorGUILayout.Foldout(expandSection[FOG_OF_WAR], sectionNames[FOG_OF_WAR], sectionHeaderStyle);
|
|
||||||
|
|
||||||
if (expandSection[FOG_OF_WAR])
|
|
||||||
{
|
|
||||||
EditorGUILayout.PropertyField(fogOfWarEnabled, new GUIContent("Enabled", "Enables fog of war feature. This requires that you assign a fog of war mask texture at runtime. Read documentation or demo scene for details."));
|
|
||||||
EditorGUILayout.PropertyField(fogOfWarCenter, new GUIContent("Center", "World space position of the center of the fog of war mask texture."));
|
|
||||||
EditorGUILayout.PropertyField(fogOfWarSize, new GUIContent("Area Size", "Size of the fog of war area in world space units."));
|
|
||||||
EditorGUILayout.PropertyField(fogOfWarTextureSize, new GUIContent("Texture Size", "Size of the fog of war mask texture."));
|
|
||||||
}
|
|
||||||
|
|
||||||
EditorGUILayout.Separator();
|
|
||||||
|
|
||||||
if (serializedObject.ApplyModifiedProperties() || (Event.current.type == EventType.ExecuteCommand && Event.current.commandName == "UndoRedoPerformed"))
|
|
||||||
{
|
|
||||||
DynamicFogExclusive fog = (DynamicFogExclusive)target;
|
|
||||||
if (prevPreset == preset.intValue && prevFogVolumes == useFogVolumes.boolValue && prevDither == enableDithering.intValue && prevDitherStrength == ditherStrength.floatValue)
|
|
||||||
fog.preset = FOG_PRESET.Custom;
|
|
||||||
if (fog.profile != null)
|
|
||||||
profileChanges = true;
|
|
||||||
fog.UpdateMaterialProperties();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
#region Profile handling
|
|
||||||
|
|
||||||
void CreateProfile()
|
|
||||||
{
|
|
||||||
|
|
||||||
DynamicFogProfile newProfile = ScriptableObject.CreateInstance<DynamicFogProfile>();
|
|
||||||
newProfile.Save(_fog);
|
|
||||||
|
|
||||||
AssetDatabase.CreateAsset(newProfile, "Assets/DynamicFogProfile.asset");
|
|
||||||
AssetDatabase.SaveAssets();
|
|
||||||
|
|
||||||
EditorUtility.FocusProjectWindow();
|
|
||||||
Selection.activeObject = newProfile;
|
|
||||||
|
|
||||||
_fog.profile = newProfile;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
#endregion
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -1,12 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 34641daa5fe504e50acc2fec136d1fc1
|
|
||||||
timeCreated: 1474104927
|
|
||||||
licenseType: Store
|
|
||||||
MonoImporter:
|
|
||||||
serializedVersion: 2
|
|
||||||
defaultReferences: []
|
|
||||||
executionOrder: 0
|
|
||||||
icon: {instanceID: 0}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,161 +0,0 @@
|
|||||||
#if GAIA_PRESENT && UNITY_EDITOR
|
|
||||||
|
|
||||||
using UnityEngine;
|
|
||||||
using System.Collections;
|
|
||||||
using System;
|
|
||||||
using System.Reflection;
|
|
||||||
using DynamicFogAndMist;
|
|
||||||
using UnityEditor;
|
|
||||||
|
|
||||||
namespace Gaia.GX.Kronnect
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// Volumetric Fog & Mist extension for Gaia.
|
|
||||||
/// </summary>
|
|
||||||
public class DynamicFogGaiaExtension : 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 "Kronnect";
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <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 "Dynamic Fog & Mist (mobile & VR compatible)";
|
|
||||||
}
|
|
||||||
|
|
||||||
#endregion
|
|
||||||
|
|
||||||
#region Methods exposed by Gaia as buttons must be prefixed with GX_
|
|
||||||
|
|
||||||
public static void GX_About()
|
|
||||||
{
|
|
||||||
EditorUtility.DisplayDialog("About Dynamic Fog & Mist", "Dynamic Fog & Mist is a full-screen image effect that adds live, moving Fog, Mist and Sky Haze to your scenes making them less dull and boring.", "OK");
|
|
||||||
}
|
|
||||||
|
|
||||||
static DynamicFog CheckFog() {
|
|
||||||
DynamicFog fog = DynamicFog.instance;
|
|
||||||
// Checks Dynamic Fog image effect is attached
|
|
||||||
if (fog==null) {
|
|
||||||
Camera camera = Camera.main;
|
|
||||||
if (camera == null)
|
|
||||||
{
|
|
||||||
camera = FindObjectOfType<Camera>();
|
|
||||||
}
|
|
||||||
if (camera == null)
|
|
||||||
{
|
|
||||||
Debug.LogError("Could not find camera to add camera effects to. Please add a camera to your scene.");
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
fog = camera.gameObject.AddComponent<DynamicFog>();
|
|
||||||
}
|
|
||||||
|
|
||||||
// set nice default params
|
|
||||||
fog.height = 20;
|
|
||||||
fog.distanceFallOff = 0.4f;
|
|
||||||
|
|
||||||
// Finds a suitable Sun light and set color1 to it
|
|
||||||
Light[] lights = FindObjectsOfType<Light>();
|
|
||||||
Light sun = null;
|
|
||||||
for (int k=0;k<lights.Length;k++) {
|
|
||||||
Light light = lights[k];
|
|
||||||
if (light.name.Equals("Sun")) {
|
|
||||||
sun = light;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (sun==null) {
|
|
||||||
for (int k=0;k<lights.Length;k++) {
|
|
||||||
Light light = lights[k];
|
|
||||||
if (light.type == LightType.Directional) {
|
|
||||||
sun = light;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (sun!=null) {
|
|
||||||
fog.color = sun.color;
|
|
||||||
}
|
|
||||||
// Set fog base-line height to water level
|
|
||||||
GaiaSceneInfo sceneInfo = GaiaSceneInfo.GetSceneInfo();
|
|
||||||
fog.baselineHeight = sceneInfo.m_seaLevel;
|
|
||||||
|
|
||||||
return fog;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void GX_Mist() {
|
|
||||||
DynamicFog fog = CheckFog();
|
|
||||||
if (fog==null) return;
|
|
||||||
fog.preset = FOG_PRESET.Mist;
|
|
||||||
fog.CheckPreset();
|
|
||||||
fog.preset = FOG_PRESET.Custom; // enable to make modifications and preserve them
|
|
||||||
PostMessage();
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void GX_WindyMist() {
|
|
||||||
DynamicFog fog = CheckFog();
|
|
||||||
if (fog==null) return;
|
|
||||||
fog.preset = FOG_PRESET.WindyMist;
|
|
||||||
fog.CheckPreset();
|
|
||||||
fog.preset = FOG_PRESET.Custom; // enable to make modifications and preserve them
|
|
||||||
PostMessage();
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void GX_Fog() {
|
|
||||||
DynamicFog fog = CheckFog();
|
|
||||||
if (fog==null) return;
|
|
||||||
fog.preset = FOG_PRESET.Fog;
|
|
||||||
fog.CheckPreset();
|
|
||||||
fog.preset = FOG_PRESET.Custom; // enable to make modifications and preserve them
|
|
||||||
PostMessage();
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void GX_HeavyFog() {
|
|
||||||
DynamicFog fog = CheckFog();
|
|
||||||
if (fog==null) return;
|
|
||||||
fog.preset = FOG_PRESET.HeavyFog;
|
|
||||||
fog.CheckPreset();
|
|
||||||
fog.preset = FOG_PRESET.Custom; // enable to make modifications and preserve them
|
|
||||||
PostMessage();
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void GX_GroundFog() {
|
|
||||||
DynamicFog fog = CheckFog();
|
|
||||||
if (fog==null) return;
|
|
||||||
fog.preset = FOG_PRESET.GroundFog;
|
|
||||||
fog.CheckPreset();
|
|
||||||
fog.preset = FOG_PRESET.Custom; // enable to make modifications and preserve them
|
|
||||||
PostMessage();
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void GX_SandStorm() {
|
|
||||||
DynamicFog fog = CheckFog();
|
|
||||||
if (fog==null) return;
|
|
||||||
fog.preset = FOG_PRESET.SandStorm;
|
|
||||||
fog.CheckPreset();
|
|
||||||
fog.preset = FOG_PRESET.Custom; // enable to make modifications and preserve them
|
|
||||||
PostMessage();
|
|
||||||
}
|
|
||||||
|
|
||||||
static void PostMessage() {
|
|
||||||
Debug.Log ("Dynamic Fog & Mist added to main Camera and configured to chosen preset. Review the script attached to the Camera and customize its settings to your preferences (fog height, distance, distance fall-off, ...).");
|
|
||||||
}
|
|
||||||
|
|
||||||
#endregion
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif
|
|
@ -1,12 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 37ecad7f3bef046cfb37c61e4c994f3f
|
|
||||||
timeCreated: 1461499631
|
|
||||||
licenseType: Store
|
|
||||||
MonoImporter:
|
|
||||||
serializedVersion: 2
|
|
||||||
defaultReferences: []
|
|
||||||
executionOrder: 0
|
|
||||||
icon: {instanceID: 0}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,104 +0,0 @@
|
|||||||
using UnityEngine;
|
|
||||||
using UnityEditor;
|
|
||||||
using System;
|
|
||||||
using System.Collections;
|
|
||||||
|
|
||||||
namespace DynamicFogAndMist {
|
|
||||||
[CustomEditor (typeof(DynamicFogManager))]
|
|
||||||
public class DynamicFogManagerEditor : Editor {
|
|
||||||
|
|
||||||
static GUIStyle titleLabelStyle, sectionHeaderStyle;
|
|
||||||
static Color titleColor;
|
|
||||||
static bool[] expandSection = new bool[5];
|
|
||||||
const string SECTION_PREFS = "DynamicFogExpandSection";
|
|
||||||
static string[] sectionNames = new string[] {
|
|
||||||
"Fog Properties",
|
|
||||||
};
|
|
||||||
const int FOG_PROPERTIES = 0;
|
|
||||||
SerializedProperty sun;
|
|
||||||
SerializedProperty alpha, distance, distanceFallOff, height, heightFallOff, baselineHeight, color;
|
|
||||||
|
|
||||||
void OnEnable () {
|
|
||||||
titleColor = EditorGUIUtility.isProSkin ? new Color (0.52f, 0.66f, 0.9f) : new Color (0.12f, 0.16f, 0.4f);
|
|
||||||
for (int k = 0; k < expandSection.Length; k++) {
|
|
||||||
expandSection [k] = EditorPrefs.GetBool (SECTION_PREFS + k, false);
|
|
||||||
}
|
|
||||||
sun = serializedObject.FindProperty ("sun");
|
|
||||||
|
|
||||||
alpha = serializedObject.FindProperty ("alpha");
|
|
||||||
distance = serializedObject.FindProperty ("distance");
|
|
||||||
distanceFallOff = serializedObject.FindProperty ("distanceFallOff");
|
|
||||||
height = serializedObject.FindProperty ("height");
|
|
||||||
heightFallOff = serializedObject.FindProperty ("heightFallOff");
|
|
||||||
baselineHeight = serializedObject.FindProperty ("baselineHeight");
|
|
||||||
|
|
||||||
color = serializedObject.FindProperty ("color");
|
|
||||||
sun = serializedObject.FindProperty ("sun");
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
void OnDestroy () {
|
|
||||||
// Save folding sections state
|
|
||||||
for (int k = 0; k < expandSection.Length; k++) {
|
|
||||||
EditorPrefs.SetBool (SECTION_PREFS + k, expandSection [k]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void OnInspectorGUI () {
|
|
||||||
#if UNITY_5_6_OR_NEWER
|
|
||||||
serializedObject.UpdateIfRequiredOrScript ();
|
|
||||||
#else
|
|
||||||
serializedObject.UpdateIfDirtyOrScript ();
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (sectionHeaderStyle == null) {
|
|
||||||
sectionHeaderStyle = new GUIStyle (EditorStyles.foldout);
|
|
||||||
}
|
|
||||||
sectionHeaderStyle.normal.textColor = titleColor;
|
|
||||||
sectionHeaderStyle.margin = new RectOffset (12, 0, 0, 0);
|
|
||||||
sectionHeaderStyle.fontStyle = FontStyle.Bold;
|
|
||||||
|
|
||||||
if (titleLabelStyle == null) {
|
|
||||||
titleLabelStyle = new GUIStyle (EditorStyles.label);
|
|
||||||
}
|
|
||||||
titleLabelStyle.normal.textColor = titleColor;
|
|
||||||
titleLabelStyle.fontStyle = FontStyle.Bold;
|
|
||||||
|
|
||||||
|
|
||||||
EditorGUILayout.Separator ();
|
|
||||||
|
|
||||||
EditorGUILayout.BeginHorizontal ();
|
|
||||||
EditorGUILayout.LabelField ("General Settings", titleLabelStyle);
|
|
||||||
if (GUILayout.Button ("Help", GUILayout.Width (40))) {
|
|
||||||
if (!EditorUtility.DisplayDialog ("Dynamic Fog & Mist", "To learn more about a property in this inspector move the mouse over the label for a quick description (tooltip).\n\nPlease check README file in the root of the asset for details and contact support.\n\nIf you like Dynamic Fog & Mist, please rate it on the Asset Store. For feedback and suggestions visit our support forum on kronnect.com.", "Close", "Visit Support Forum")) {
|
|
||||||
Application.OpenURL ("http://kronnect.com/taptapgo");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
EditorGUILayout.EndHorizontal ();
|
|
||||||
|
|
||||||
EditorGUILayout.PropertyField (sun, new GUIContent ("Sun", "Assign a game object (a directional light acting as Sun for example) to make the fog color sync automatically with the Sun orientation and light intensity."));
|
|
||||||
|
|
||||||
|
|
||||||
EditorGUILayout.Separator ();
|
|
||||||
expandSection [FOG_PROPERTIES] = EditorGUILayout.Foldout (expandSection [FOG_PROPERTIES], sectionNames [FOG_PROPERTIES], sectionHeaderStyle);
|
|
||||||
|
|
||||||
if (expandSection [FOG_PROPERTIES]) {
|
|
||||||
EditorGUILayout.PropertyField (alpha, new GUIContent ("Alpha", "Global fog transparency. You can also change the transparency at color level."));
|
|
||||||
EditorGUILayout.PropertyField (distance, new GUIContent ("Distance", "The starting distance of the fog measure in linear 0-1 values (0=camera near clip, 1=camera far clip)."));
|
|
||||||
EditorGUILayout.PropertyField (distanceFallOff, new GUIContent ("Distance Fall Off", "Makes the fog appear smoothly on the near distance."));
|
|
||||||
EditorGUILayout.PropertyField (height, new GUIContent ("Height", "Height of the fog in meters."));
|
|
||||||
EditorGUILayout.PropertyField (heightFallOff, new GUIContent ("Height Fall Off", "Increase to make the fog change gradually its density based on height."));
|
|
||||||
EditorGUILayout.PropertyField (baselineHeight, new GUIContent ("Baseline Height", "Vertical position of the fog in meters. Height is counted above this baseline height."));
|
|
||||||
EditorGUILayout.PropertyField (color);
|
|
||||||
}
|
|
||||||
EditorGUILayout.Separator ();
|
|
||||||
|
|
||||||
if (serializedObject.ApplyModifiedProperties () || (Event.current.type == EventType.ExecuteCommand && Event.current.commandName == "UndoRedoPerformed")) {
|
|
||||||
DynamicFogManager fog = (DynamicFogManager)target;
|
|
||||||
fog.UpdateMaterialProperties ();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -1,12 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 52cedf0a1d54c40718a868391ba7f471
|
|
||||||
timeCreated: 1475145313
|
|
||||||
licenseType: Store
|
|
||||||
MonoImporter:
|
|
||||||
serializedVersion: 2
|
|
||||||
defaultReferences: []
|
|
||||||
executionOrder: 0
|
|
||||||
icon: {instanceID: 0}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,192 +0,0 @@
|
|||||||
using UnityEngine;
|
|
||||||
using UnityEditor;
|
|
||||||
using System;
|
|
||||||
using System.Collections;
|
|
||||||
|
|
||||||
namespace DynamicFogAndMist {
|
|
||||||
[CustomEditor (typeof(DynamicFogProfile))]
|
|
||||||
public class DynamicFogProfileEditor : Editor {
|
|
||||||
|
|
||||||
static GUIStyle titleLabelStyle;
|
|
||||||
static Color titleColor;
|
|
||||||
static GUIContent[] FOG_TYPE_OPTIONS = new GUIContent[] {
|
|
||||||
new GUIContent ("Desktop Fog Plus + Sky Haze"),
|
|
||||||
new GUIContent ("Desktop Fog Plus (Orthogonal)"),
|
|
||||||
new GUIContent ("Desktop Fog + Sky Haze"),
|
|
||||||
new GUIContent ("Mobile Fog Plus (Simplified)"),
|
|
||||||
new GUIContent ("Mobile Fog + Sky Haze"),
|
|
||||||
new GUIContent ("Mobile Fog (No Sky Haze)"),
|
|
||||||
new GUIContent ("Mobile Fog (Orthogonal)"),
|
|
||||||
new GUIContent ("Mobile Fog (Basic)")
|
|
||||||
};
|
|
||||||
static int[] FOG_TYPE_VALUES = new int[] {
|
|
||||||
(int)FOG_TYPE.DesktopFogPlusWithSkyHaze,
|
|
||||||
(int)FOG_TYPE.DesktopFogPlusOrthogonal,
|
|
||||||
(int)FOG_TYPE.DesktopFogWithSkyHaze,
|
|
||||||
(int)FOG_TYPE.MobileFogSimple,
|
|
||||||
(int)FOG_TYPE.MobileFogWithSkyHaze,
|
|
||||||
(int)FOG_TYPE.MobileFogOnlyGround,
|
|
||||||
(int)FOG_TYPE.MobileFogOrthogonal,
|
|
||||||
(int)FOG_TYPE.MobileFogBasic
|
|
||||||
};
|
|
||||||
const int FOG_PROPERTIES = 0;
|
|
||||||
const int SKY_PROPERTIES = 1;
|
|
||||||
SerializedProperty effectType, enableDithering, ditherStrength;
|
|
||||||
SerializedProperty alpha, noiseStrength, noiseScale, distance, distanceFallOff, maxDistance, maxDistanceFallOff, height, maxHeight;
|
|
||||||
SerializedProperty heightFallOff, baselineHeight, clipUnderBaseline, turbulence, speed, windDirection, color, color2;
|
|
||||||
SerializedProperty skyHaze, skySpeed, skyNoiseStrength, skyAlpha, scattering, scatteringColor;
|
|
||||||
|
|
||||||
void OnEnable () {
|
|
||||||
titleColor = EditorGUIUtility.isProSkin ? new Color (0.52f, 0.66f, 0.9f) : new Color (0.12f, 0.16f, 0.4f);
|
|
||||||
|
|
||||||
effectType = serializedObject.FindProperty ("effectType");
|
|
||||||
enableDithering = serializedObject.FindProperty ("enableDithering");
|
|
||||||
ditherStrength = serializedObject.FindProperty ("ditherStrength");
|
|
||||||
|
|
||||||
alpha = serializedObject.FindProperty ("alpha");
|
|
||||||
noiseStrength = serializedObject.FindProperty ("noiseStrength");
|
|
||||||
noiseScale = serializedObject.FindProperty ("noiseScale");
|
|
||||||
distance = serializedObject.FindProperty ("distance");
|
|
||||||
distanceFallOff = serializedObject.FindProperty ("distanceFallOff");
|
|
||||||
maxDistance = serializedObject.FindProperty ("maxDistance");
|
|
||||||
maxDistanceFallOff = serializedObject.FindProperty ("maxDistanceFallOff");
|
|
||||||
maxHeight = serializedObject.FindProperty ("maxHeight");
|
|
||||||
height = serializedObject.FindProperty ("height");
|
|
||||||
heightFallOff = serializedObject.FindProperty ("heightFallOff");
|
|
||||||
baselineHeight = serializedObject.FindProperty ("baselineHeight");
|
|
||||||
clipUnderBaseline = serializedObject.FindProperty ("clipUnderBaseline");
|
|
||||||
turbulence = serializedObject.FindProperty ("turbulence");
|
|
||||||
speed = serializedObject.FindProperty ("speed");
|
|
||||||
windDirection = serializedObject.FindProperty ("windDirection");
|
|
||||||
|
|
||||||
color = serializedObject.FindProperty ("color");
|
|
||||||
color2 = serializedObject.FindProperty ("color2");
|
|
||||||
skyHaze = serializedObject.FindProperty ("skyHaze");
|
|
||||||
skySpeed = serializedObject.FindProperty ("skySpeed");
|
|
||||||
skyNoiseStrength = serializedObject.FindProperty ("skyNoiseStrength");
|
|
||||||
skyAlpha = serializedObject.FindProperty ("skyAlpha");
|
|
||||||
scattering = serializedObject.FindProperty ("scattering");
|
|
||||||
scatteringColor = serializedObject.FindProperty ("scatteringColor");
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void OnInspectorGUI () {
|
|
||||||
serializedObject.Update ();
|
|
||||||
|
|
||||||
EditorGUILayout.Separator ();
|
|
||||||
|
|
||||||
DrawTitleLabel ("General Settings");
|
|
||||||
|
|
||||||
EditorGUILayout.IntPopup (effectType, FOG_TYPE_OPTIONS, FOG_TYPE_VALUES, new GUIContent ("Effect Type", "Choose a shader variant. Each variant provides different capabilities. Read documentation for explanation."));
|
|
||||||
switch (effectType.intValue) {
|
|
||||||
case (int)FOG_TYPE.DesktopFogPlusWithSkyHaze:
|
|
||||||
EditorGUILayout.HelpBox ("BEST IMMERSION. 5 step raymarching based fog effect which does not require geometry. Uses a more complex algorithm to simulate 3D noise in world space. Also adds sky haze at the background.", MessageType.Info);
|
|
||||||
break;
|
|
||||||
case (int)FOG_TYPE.DesktopFogPlusOrthogonal:
|
|
||||||
EditorGUILayout.HelpBox ("Variant of Desktop Plus With Sky Haze which treats distance fog and height fog separately. This variant does not add sky haze at the background.", MessageType.Info);
|
|
||||||
break;
|
|
||||||
case (int)FOG_TYPE.DesktopFogWithSkyHaze:
|
|
||||||
EditorGUILayout.HelpBox ("Depth based fog effect that lays out fog over existing geometry. Uses two noise textures and adds haze effect at the background to complete fog composition (geometry fog + sky fog).", MessageType.Info);
|
|
||||||
break;
|
|
||||||
case (int)FOG_TYPE.MobileFogWithSkyHaze:
|
|
||||||
EditorGUILayout.HelpBox ("Depth based fog effect over existing geometry. Similar to Desktop Fog with Sky, but uses one noise texture instead of two, and also adds haze effect at the background to complete fog composition (geometry fog + sky fog).", MessageType.Info);
|
|
||||||
break;
|
|
||||||
case (int)FOG_TYPE.MobileFogOnlyGround:
|
|
||||||
EditorGUILayout.HelpBox ("FASTEST, Depth based fog effect over existing geometry. Similar to Mobile Fog with Sky, but only affects geometry (no sky haze).", MessageType.Info);
|
|
||||||
break;
|
|
||||||
case (int)FOG_TYPE.MobileFogSimple:
|
|
||||||
EditorGUILayout.HelpBox ("GREAT PERFORMANCE/QUALITY. Similar to Desktop Fog Plus with Sky Haze but uses 3 steps instead of 5 and does not add sky haze at the background.", MessageType.Info);
|
|
||||||
break;
|
|
||||||
case (int)FOG_TYPE.MobileFogOrthogonal:
|
|
||||||
EditorGUILayout.HelpBox ("Variant of Mobile Fog (Simplified) which treats distance fog and height fog separately. Does not use noise textures. Does not adds sky haze at the background.", MessageType.Info);
|
|
||||||
break;
|
|
||||||
case (int)FOG_TYPE.MobileFogBasic:
|
|
||||||
EditorGUILayout.HelpBox ("FASTEST, Ray-marching variant. Uses only 1 step. Does not use noise textures. Does not adds sky haze at the background.", MessageType.Info);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
int effect = effectType.intValue;
|
|
||||||
|
|
||||||
EditorGUILayout.PropertyField (enableDithering, new GUIContent ("Enable Dithering", "Reduces banding artifacts."));
|
|
||||||
if (enableDithering.boolValue) {
|
|
||||||
EditorGUILayout.PropertyField (ditherStrength, new GUIContent (" Dither Strength", "Intensity of dither blending."));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
EditorGUILayout.PropertyField (scattering, new GUIContent ("Light Scattering", "Amount of Sun light diffusion when it crosses the fog towards viewer."));
|
|
||||||
EditorGUILayout.PropertyField (scatteringColor, new GUIContent (" Scattering Color", "Tint color for the light scattering effect."));
|
|
||||||
|
|
||||||
EditorGUILayout.Separator ();
|
|
||||||
DrawTitleLabel ("Fog Settings");
|
|
||||||
EditorGUILayout.PropertyField (alpha, new GUIContent ("Alpha", "Global fog transparency. You can also change the transparency at color level."));
|
|
||||||
if (effect != 4 && effect != 5 && effect != 6) {
|
|
||||||
EditorGUILayout.PropertyField (noiseStrength, new GUIContent ("Noise Strength", "Set this value to zero to use solid colors."));
|
|
||||||
EditorGUILayout.PropertyField (noiseScale, new GUIContent ("Noise Scale", "Scale factor for sampling noise."));
|
|
||||||
}
|
|
||||||
EditorGUILayout.PropertyField (distance, new GUIContent ("Distance", "The starting distance of the fog measure in linear 0-1 values (0=camera near clip, 1=camera far clip)."));
|
|
||||||
EditorGUILayout.PropertyField (distanceFallOff, new GUIContent ("Distance Fall Off", "Makes the fog appear smoothly on the near distance."));
|
|
||||||
if (effect < 4)
|
|
||||||
EditorGUILayout.PropertyField (maxDistance, new GUIContent ("Max Distance", "The end distance of the fog measure in linear 0-1 values (0=camera near clip, 1=camera far clip)."));
|
|
||||||
if (effect < 3) {
|
|
||||||
EditorGUILayout.PropertyField (maxDistanceFallOff, new GUIContent ("Distance Fall Off", "Makes the fog disappear smoothly on the far distance."));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (effect == (int)FOG_TYPE.MobileFogOrthogonal || effect == (int)FOG_TYPE.DesktopFogPlusOrthogonal) {
|
|
||||||
EditorGUILayout.PropertyField (maxHeight, new GUIContent ("Max Height", "Max. height of the fog in meters."));
|
|
||||||
}
|
|
||||||
EditorGUILayout.PropertyField (height, new GUIContent ("Height", "Height of the fog in meters."));
|
|
||||||
EditorGUILayout.PropertyField (heightFallOff, new GUIContent ("Height Fall Off", "Increase to make the fog change gradually its density based on height."));
|
|
||||||
EditorGUILayout.PropertyField (baselineHeight, new GUIContent ("Baseline Height", "Vertical position of the fog in meters. Height is counted above this baseline height."));
|
|
||||||
|
|
||||||
if (effect < 3) {
|
|
||||||
EditorGUILayout.PropertyField (clipUnderBaseline, new GUIContent ("Clip Under Baseline", "Enable this property to only render fog above baseline height."));
|
|
||||||
EditorGUILayout.PropertyField (turbulence, new GUIContent ("Turbulence", "Amount of fog turbulence."));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (effect < 4 || effect == (int)FOG_TYPE.DesktopFogPlusOrthogonal) {
|
|
||||||
EditorGUILayout.PropertyField (speed, new GUIContent ("Speed", "Speed of fog animation if noise strength or turbulence > 0 (turbulence not available in Desktop Fog Plus mode)."));
|
|
||||||
EditorGUILayout.PropertyField (windDirection, new GUIContent ("Wind Direction", "Direction of the wind to take into account for the fog animation."));
|
|
||||||
}
|
|
||||||
|
|
||||||
EditorGUILayout.PropertyField (color);
|
|
||||||
if (effect != 4 && effect != 5)
|
|
||||||
EditorGUILayout.PropertyField (color2);
|
|
||||||
|
|
||||||
if (effect != 2 && effect != 4 && effect != 5 && effect != (int)FOG_TYPE.DesktopFogPlusOrthogonal) {
|
|
||||||
EditorGUILayout.Separator ();
|
|
||||||
DrawTitleLabel ("Sky Settings");
|
|
||||||
EditorGUILayout.PropertyField (skyHaze, new GUIContent ("Haze", "Vertical range for the sky haze."));
|
|
||||||
EditorGUILayout.PropertyField (skySpeed, new GUIContent ("Speed", "Speed of sky haze animation."));
|
|
||||||
EditorGUILayout.PropertyField (skyNoiseStrength, new GUIContent ("Noise Strength", "Amount of noise for the sky haze effect."));
|
|
||||||
EditorGUILayout.PropertyField (skyAlpha, new GUIContent ("Alpha", "Transparency of sky haze."));
|
|
||||||
}
|
|
||||||
|
|
||||||
EditorGUILayout.Separator ();
|
|
||||||
|
|
||||||
if (serializedObject.ApplyModifiedProperties () || (Event.current.type == EventType.ExecuteCommand && Event.current.commandName == "UndoRedoPerformed")) {
|
|
||||||
// Triggers profile reload on all Volumetric Fog scripts
|
|
||||||
DynamicFog[] fogs = FindObjectsOfType<DynamicFog> ();
|
|
||||||
for (int t = 0; t < targets.Length; t++) {
|
|
||||||
DynamicFogProfile profile = (DynamicFogProfile)targets [t];
|
|
||||||
for (int k = 0; k < fogs.Length; k++) {
|
|
||||||
if (fogs [k] != null && fogs [k].profile == profile) {
|
|
||||||
profile.Load (fogs [k]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
EditorUtility.SetDirty (target);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void DrawTitleLabel (string s) {
|
|
||||||
if (titleLabelStyle == null) {
|
|
||||||
titleLabelStyle = new GUIStyle (GUI.skin.label);
|
|
||||||
}
|
|
||||||
titleLabelStyle.normal.textColor = titleColor;
|
|
||||||
titleLabelStyle.fontStyle = FontStyle.Bold;
|
|
||||||
GUILayout.Label (s, titleLabelStyle);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -1,12 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: fb837799bbfd04204ac6b1a0731619f8
|
|
||||||
timeCreated: 1509736796
|
|
||||||
licenseType: Store
|
|
||||||
MonoImporter:
|
|
||||||
serializedVersion: 2
|
|
||||||
defaultReferences: []
|
|
||||||
executionOrder: 0
|
|
||||||
icon: {instanceID: 0}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,34 +0,0 @@
|
|||||||
using UnityEngine;
|
|
||||||
using UnityEditor;
|
|
||||||
using System.Collections;
|
|
||||||
|
|
||||||
namespace DynamicFogAndMist {
|
|
||||||
public class FogVolumeExtensions : MonoBehaviour {
|
|
||||||
|
|
||||||
[MenuItem ("GameObject/Create Other/Dynamic Fog Volume")]
|
|
||||||
static void CreateFogVolume (MenuCommand menuCommand) {
|
|
||||||
GameObject fogVolume = Resources.Load<GameObject> ("Prefabs/DynamicFogVolume");
|
|
||||||
if (fogVolume == null) {
|
|
||||||
Debug.LogError ("Could not load DynamicFogVolume from Resources/Prefabs folder!");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
GameObject newFogVolume = Instantiate (fogVolume);
|
|
||||||
newFogVolume.name = "Dynamic Fog Volume";
|
|
||||||
|
|
||||||
// Disconnect prefab
|
|
||||||
PrefabUtility.DisconnectPrefabInstance (newFogVolume);
|
|
||||||
// Ensure it gets reparented if this was a context click (otherwise does nothing)
|
|
||||||
GameObjectUtility.SetParentAndAlign (newFogVolume, menuCommand.context as GameObject);
|
|
||||||
|
|
||||||
// Register root object for undo.
|
|
||||||
Undo.RegisterCreatedObjectUndo (newFogVolume, "Create Dynamic Fog Volume");
|
|
||||||
Selection.activeObject = newFogVolume;
|
|
||||||
|
|
||||||
// Enables fog volumes in fog component
|
|
||||||
DynamicFog fog = Camera.main.GetComponent<DynamicFog> ();
|
|
||||||
if (fog != null)
|
|
||||||
fog.useFogVolumes = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -1,12 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: a0c1ba28ec1b04c4c95ffbbdf0a7078a
|
|
||||||
timeCreated: 1446728451
|
|
||||||
licenseType: Store
|
|
||||||
MonoImporter:
|
|
||||||
serializedVersion: 2
|
|
||||||
defaultReferences: []
|
|
||||||
executionOrder: 0
|
|
||||||
icon: {instanceID: 0}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,147 +0,0 @@
|
|||||||
************************************
|
|
||||||
* DYNAMIC FOG & MIST *
|
|
||||||
* (C) Copyright 2015-2017 Kronnect *
|
|
||||||
* README FILE *
|
|
||||||
************************************
|
|
||||||
|
|
||||||
|
|
||||||
How to use this asset
|
|
||||||
---------------------
|
|
||||||
Firstly, you should run the Demo Scenes provided to get an idea of the overall functionality.
|
|
||||||
Later, you should read the documentation and experiment with the plugin.
|
|
||||||
|
|
||||||
Hint: to quick start using the asset just add DynamicFog script to your camera. It will show up in the Game view. Customize it using the custom inspector.
|
|
||||||
|
|
||||||
|
|
||||||
Demo Scenes
|
|
||||||
-----------
|
|
||||||
There're at several demo scenes, located in "Demos" folder. Just go there from Unity, open them and run it. Remember to remove the Demos folder from your project to reduce size.
|
|
||||||
|
|
||||||
Important: since Unity 5.4, the Game View allows to scale the window. Choose "Free Aspect" to easily read the text of some of the demo scenes, otherwise due to the scaling feature demo texts could not be visible inside the window depending on the chosen resolution and your screen size.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Documentation/API reference
|
|
||||||
---------------------------
|
|
||||||
The PDF is located in the Documentation folder. It contains additional instructions on how to use this asset as well as a useful Frequent Asked Question section.
|
|
||||||
|
|
||||||
|
|
||||||
Support
|
|
||||||
-------
|
|
||||||
Please read the documentation PDF and browse/play with the demo scene and sample source code included before contacting us for support :-)
|
|
||||||
|
|
||||||
* Support: contact@kronnect.me
|
|
||||||
* Website-Forum: http://kronnect.me
|
|
||||||
* Twitter: @KronnectGames
|
|
||||||
|
|
||||||
|
|
||||||
Future updates
|
|
||||||
--------------
|
|
||||||
|
|
||||||
All our assets follow an incremental development process by which a few beta releases are published on our support forum (kronnect.com).
|
|
||||||
We encourage you to signup and engage our forum. The forum is the primary support and feature discussions medium.
|
|
||||||
|
|
||||||
Of course, all updates of Dynamic Fog & Mist will be eventually available on the Asset Store.
|
|
||||||
|
|
||||||
|
|
||||||
Version history
|
|
||||||
---------------
|
|
||||||
|
|
||||||
V6.0
|
|
||||||
- New Exclusive Mode (add 'Dynamic Fog Exclusive' script' to camera instead of normal Dynamic Fog script)
|
|
||||||
|
|
||||||
V5.2
|
|
||||||
- Added 3 new fog materials: Standard + Normal, Standard + Normal + Occlusion Map and Standard + Normal + Occlusion integrated
|
|
||||||
- [Fix] Fixed racing condition when preset and other values are set at runtime
|
|
||||||
- [Fix] Workaround for an error in Unity 2018.1 beta
|
|
||||||
|
|
||||||
V5.1
|
|
||||||
- VR: support for Single Pass Instanced (Unity 2017.2+)
|
|
||||||
- Support for Timeline animations
|
|
||||||
- Added wind direction
|
|
||||||
|
|
||||||
V5.0
|
|
||||||
- New Fog Profiles
|
|
||||||
- Fog volumes now handle full set of fog properies by setting target fog profile
|
|
||||||
- Dithering option extended to all fog variants
|
|
||||||
|
|
||||||
V4.3
|
|
||||||
- Added light scattering option to Desktop Plus variant
|
|
||||||
|
|
||||||
V4.2
|
|
||||||
- New fog variant: orthogonal - takes depth and height separately for computing fog
|
|
||||||
- New fog variant: desktop plus orthogonal - takes depth and height separately for computing fog
|
|
||||||
- Added noise scale parameter to some fog variants
|
|
||||||
|
|
||||||
V4.1
|
|
||||||
- Fog volumes: added option to specify custom fog colors
|
|
||||||
|
|
||||||
V4.0.1
|
|
||||||
- [Fix] Fixed issue with Post-Processing Stack
|
|
||||||
|
|
||||||
V4.0
|
|
||||||
- New fog of war prefab and mode!
|
|
||||||
- Updated demo scene "Orthographic" with fog of war functionality
|
|
||||||
|
|
||||||
V3.1:
|
|
||||||
- New fog variant "Basic" for low end mobile devices
|
|
||||||
- [Fix] Fixed Single Pass Stereo with OpenVR SDK
|
|
||||||
|
|
||||||
V3.0:
|
|
||||||
- Support for orthographic camera
|
|
||||||
|
|
||||||
V2.4:
|
|
||||||
- Compatibility with Unity 5.5
|
|
||||||
- VR: Compatibility with Single Pass Stereo Rendering
|
|
||||||
|
|
||||||
V2.3:
|
|
||||||
- Additional fog materials for reflection support
|
|
||||||
- Improved scene 5 (game) with sounds
|
|
||||||
- Fixed baseline height issue with fog materials
|
|
||||||
- Added distance falloff to Desktop Fog Plus, Mobile (Simplified) and fog material shaders
|
|
||||||
|
|
||||||
V2.2:
|
|
||||||
- New fog materials for using on geometry (see demo scene 5)
|
|
||||||
- Updated documentation
|
|
||||||
|
|
||||||
V2.0:
|
|
||||||
- New Desktop Fog Plus variant which improves fog effect
|
|
||||||
- New custom inspector
|
|
||||||
|
|
||||||
V1.8:
|
|
||||||
- Added Sun property to assign a directional light and implement day light cycle
|
|
||||||
|
|
||||||
V1.7:
|
|
||||||
- Enhanced fog blending for desktop variant
|
|
||||||
- Fog is now clipped above fog height, saving GPU cycles when using low fog
|
|
||||||
- Added option “Clip under baseline height”
|
|
||||||
- Fixed “fog soup” issue when using low camera far clip values
|
|
||||||
|
|
||||||
V1.6.1:
|
|
||||||
- Added compatibility with Gaia Extension System
|
|
||||||
|
|
||||||
V1.6:
|
|
||||||
- Added max distance and max distance falloff parameters.
|
|
||||||
- Added support for second color to mobile shaders.
|
|
||||||
|
|
||||||
V1.5:
|
|
||||||
- Support for custom void areas (“Fog of War”). See demo scene 4.
|
|
||||||
- New secondary color to create artistic/gradient fog effects.
|
|
||||||
|
|
||||||
V1.4:
|
|
||||||
- Compatibility with RenderTexture targets
|
|
||||||
|
|
||||||
V1.3:
|
|
||||||
- New option to specify a baseline for the height of the fog
|
|
||||||
|
|
||||||
V1.2:
|
|
||||||
- Support for fog volumes
|
|
||||||
- Improved performance (even more!)
|
|
||||||
- Fixed non-advanced fog shader to take into account new sky alpha setting
|
|
||||||
|
|
||||||
V1.1:
|
|
||||||
- Fixed opaque sky haze issue with billboard trees
|
|
||||||
|
|
||||||
V1.0
|
|
||||||
- Initial release
|
|
||||||
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: ab0ccc3c935ec46fdbbdb6d8c92cabc4
|
|
||||||
timeCreated: 1474104932
|
|
||||||
licenseType: Store
|
|
||||||
TextScriptImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,9 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 141cfe7a4b35946a49e2df45197db5c3
|
|
||||||
folderAsset: yes
|
|
||||||
timeCreated: 1457877688
|
|
||||||
licenseType: Store
|
|
||||||
DefaultImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,9 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 83f78db3e278a4b73a273b684b296721
|
|
||||||
folderAsset: yes
|
|
||||||
timeCreated: 1457877688
|
|
||||||
licenseType: Store
|
|
||||||
DefaultImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,106 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!21 &2100000
|
|
||||||
Material:
|
|
||||||
serializedVersion: 6
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_Name: DFGBasic
|
|
||||||
m_Shader: {fileID: 4800000, guid: ae1d03f8bbe2d4e2e99e3844821471d2, type: 3}
|
|
||||||
m_ShaderKeywords:
|
|
||||||
m_LightmapFlags: 5
|
|
||||||
m_EnableInstancingVariants: 0
|
|
||||||
m_DoubleSidedGI: 0
|
|
||||||
m_CustomRenderQueue: -1
|
|
||||||
stringTagMap: {}
|
|
||||||
disabledShaderPasses: []
|
|
||||||
m_SavedProperties:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TexEnvs:
|
|
||||||
- _BumpMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailAlbedoMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailMask:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailNormalMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _EmissionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _FogOfWar:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MainTex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MetallicGlossMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _Noise2Tex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _NoiseTex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 9733f0d7aec8848f08cae3c95b44d3ae, 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}
|
|
||||||
m_Floats:
|
|
||||||
- _BumpScale: 1
|
|
||||||
- _Cutoff: 0.5
|
|
||||||
- _DetailNormalMapScale: 1
|
|
||||||
- _DstBlend: 0
|
|
||||||
- _FogAlpha: 0.8
|
|
||||||
- _FogBaseHeight: 0
|
|
||||||
- _FogDistance: 0.244
|
|
||||||
- _FogDistanceFallOff: 0.001
|
|
||||||
- _FogFallOff: 0.908
|
|
||||||
- _FogHeight: 1
|
|
||||||
- _FogHeightFallOff: 0.1
|
|
||||||
- _FogIntensity: 1
|
|
||||||
- _FogNoise: 0
|
|
||||||
- _FogSkyAlpha: 1
|
|
||||||
- _FogSkyHaze: 50
|
|
||||||
- _FogSkyNoise: 0
|
|
||||||
- _FogSkySpeed: 0.3
|
|
||||||
- _FogSpeed: 0
|
|
||||||
- _FogTurbulence: 0
|
|
||||||
- _Glossiness: 0.5
|
|
||||||
- _Metallic: 0
|
|
||||||
- _Mode: 0
|
|
||||||
- _OcclusionStrength: 1
|
|
||||||
- _Parallax: 0.02
|
|
||||||
- _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}
|
|
||||||
- _FogColor: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogColor2: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogDistance: {r: 0.1, g: 0.001, b: 1, a: 0.15}
|
|
||||||
- _FogHeightData: {r: 1, g: 0, b: 0, a: 0.1}
|
|
||||||
- _FogNoiseData: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogOfWarCenter: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogOfWarSize: {r: 1, g: 1, b: 1, a: 1}
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 338c14822666745c9b0acc9ec4037c04
|
|
||||||
timeCreated: 1487933946
|
|
||||||
licenseType: Store
|
|
||||||
NativeFormatImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,132 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!21 &2100000
|
|
||||||
Material:
|
|
||||||
serializedVersion: 6
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_Name: DFGDesktop
|
|
||||||
m_Shader: {fileID: 4800000, guid: 2ba43f9c67f804cb1837e2a75fbc6ce9, type: 3}
|
|
||||||
m_ShaderKeywords:
|
|
||||||
m_LightmapFlags: 5
|
|
||||||
m_EnableInstancingVariants: 0
|
|
||||||
m_DoubleSidedGI: 0
|
|
||||||
m_CustomRenderQueue: -1
|
|
||||||
stringTagMap: {}
|
|
||||||
disabledShaderPasses: []
|
|
||||||
m_SavedProperties:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TexEnvs:
|
|
||||||
- _BumpMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailAlbedoMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailMask:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailNormalMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _EmissionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _FogOfWar:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MainTex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MetallicGlossMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _Noise2Tex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 4e4a0e2a9212f4a1b8ce9108443f3b03, type: 3}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _NoiseTex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 9733f0d7aec8848f08cae3c95b44d3ae, 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}
|
|
||||||
m_Floats:
|
|
||||||
- _BumpScale: 1
|
|
||||||
- _Cutoff: 0.5
|
|
||||||
- _DetailNormalMapScale: 1
|
|
||||||
- _DstBlend: 0
|
|
||||||
- _FogAlpha: 1
|
|
||||||
- _FogBaseHeight: 0
|
|
||||||
- _FogDensity: 1
|
|
||||||
- _FogDistance: 0
|
|
||||||
- _FogDistanceFallOff: 0.001
|
|
||||||
- _FogFallOff: 0.908
|
|
||||||
- _FogHeight: 1
|
|
||||||
- _FogHeightFallOff: 0.36
|
|
||||||
- _FogIntensity: 1
|
|
||||||
- _FogNoise: 0.34
|
|
||||||
- _FogPointLightRadius0: 5
|
|
||||||
- _FogPointLightRadius1: 5
|
|
||||||
- _FogPointLightRadius2: 5
|
|
||||||
- _FogPointLightRadius3: 5
|
|
||||||
- _FogPointLightRadius4: 5
|
|
||||||
- _FogPointLightRadius5: 5
|
|
||||||
- _FogScale: 1
|
|
||||||
- _FogSkyAlpha: 0.8
|
|
||||||
- _FogSkyHaze: 50
|
|
||||||
- _FogSkyNoise: 0
|
|
||||||
- _FogSkySpeed: 0.3
|
|
||||||
- _FogSpeed: 0
|
|
||||||
- _FogStepping: 0.0833333
|
|
||||||
- _FogSteppingNear: 1
|
|
||||||
- _FogTurbulence: 0
|
|
||||||
- _Glossiness: 0.5
|
|
||||||
- _Metallic: 0
|
|
||||||
- _Mode: 0
|
|
||||||
- _OcclusionStrength: 1
|
|
||||||
- _Parallax: 0.02
|
|
||||||
- _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}
|
|
||||||
- _FogColor: {r: 0.8161765, g: 0.7321583, b: 0.7321583, a: 1}
|
|
||||||
- _FogColor2: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogDistance: {r: 0, g: 1, b: 1000, a: 1}
|
|
||||||
- _FogHeightData: {r: 1, g: 0, b: 0, a: 0.1}
|
|
||||||
- _FogNoiseData: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogOfWarCenter: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogOfWarSize: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogPointLightColor0: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor1: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor2: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor3: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor4: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor5: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition0: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition1: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition2: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition3: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition4: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition5: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogSkyColor: {r: 0.9, g: 0.9, b: 0.9, a: 1}
|
|
||||||
- _FogVoidData: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogVoidPosition: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogWindDir: {r: 1, g: 0, b: 0, a: 1}
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: e690fbcab4e0648b7a7442a23edb176c
|
|
||||||
timeCreated: 1444924885
|
|
||||||
licenseType: Store
|
|
||||||
NativeFormatImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,132 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!21 &2100000
|
|
||||||
Material:
|
|
||||||
serializedVersion: 6
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_Name: DFGDesktopPlus
|
|
||||||
m_Shader: {fileID: 4800000, guid: 644c1bfde7ef3430bb41094a9b2c2058, type: 3}
|
|
||||||
m_ShaderKeywords:
|
|
||||||
m_LightmapFlags: 5
|
|
||||||
m_EnableInstancingVariants: 0
|
|
||||||
m_DoubleSidedGI: 0
|
|
||||||
m_CustomRenderQueue: -1
|
|
||||||
stringTagMap: {}
|
|
||||||
disabledShaderPasses: []
|
|
||||||
m_SavedProperties:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TexEnvs:
|
|
||||||
- _BumpMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailAlbedoMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailMask:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailNormalMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _EmissionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _FogOfWar:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MainTex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MetallicGlossMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _Noise2Tex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: adddca2e5ce8e4581a5fe066e43559aa, type: 2}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _NoiseTex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 4e4a0e2a9212f4a1b8ce9108443f3b03, 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}
|
|
||||||
m_Floats:
|
|
||||||
- _BumpScale: 1
|
|
||||||
- _Cutoff: 0.5
|
|
||||||
- _DetailNormalMapScale: 1
|
|
||||||
- _DstBlend: 0
|
|
||||||
- _FogAlpha: 1
|
|
||||||
- _FogBaseHeight: 0
|
|
||||||
- _FogDensity: 1
|
|
||||||
- _FogDistance: 0
|
|
||||||
- _FogDistanceFallOff: 0.001
|
|
||||||
- _FogFallOff: 0.908
|
|
||||||
- _FogHeight: 1
|
|
||||||
- _FogHeightFallOff: 0.36
|
|
||||||
- _FogIntensity: 1
|
|
||||||
- _FogNoise: 0.34
|
|
||||||
- _FogPointLightRadius0: 5
|
|
||||||
- _FogPointLightRadius1: 5
|
|
||||||
- _FogPointLightRadius2: 5
|
|
||||||
- _FogPointLightRadius3: 5
|
|
||||||
- _FogPointLightRadius4: 5
|
|
||||||
- _FogPointLightRadius5: 5
|
|
||||||
- _FogScale: 1
|
|
||||||
- _FogSkyAlpha: 0.8
|
|
||||||
- _FogSkyHaze: 50
|
|
||||||
- _FogSkyNoise: 0
|
|
||||||
- _FogSkySpeed: 0.3
|
|
||||||
- _FogSpeed: 0
|
|
||||||
- _FogStepping: 0.0833333
|
|
||||||
- _FogSteppingNear: 1
|
|
||||||
- _FogTurbulence: 0
|
|
||||||
- _Glossiness: 0.5
|
|
||||||
- _Metallic: 0
|
|
||||||
- _Mode: 0
|
|
||||||
- _OcclusionStrength: 1
|
|
||||||
- _Parallax: 0.02
|
|
||||||
- _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}
|
|
||||||
- _FogColor: {r: 0.8161765, g: 0.7321583, b: 0.7321583, a: 1}
|
|
||||||
- _FogColor2: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogDistance: {r: 0, g: 1, b: 1000, a: 1}
|
|
||||||
- _FogHeightData: {r: 1, g: 0, b: 0, a: 0.1}
|
|
||||||
- _FogNoiseData: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogOfWarCenter: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogOfWarSize: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogPointLightColor0: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor1: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor2: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor3: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor4: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor5: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition0: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition1: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition2: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition3: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition4: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition5: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogSkyColor: {r: 0.9, g: 0.9, b: 0.9, a: 1}
|
|
||||||
- _FogVoidData: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogVoidPosition: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogWindDir: {r: 1, g: 0, b: 0, a: 1}
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 7965c0a84210e428db3cef4e40f73651
|
|
||||||
timeCreated: 1473407296
|
|
||||||
licenseType: Store
|
|
||||||
NativeFormatImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,132 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!21 &2100000
|
|
||||||
Material:
|
|
||||||
serializedVersion: 6
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_Name: DFGDesktopPlusOrthogonal
|
|
||||||
m_Shader: {fileID: 4800000, guid: 29d4bbe63898f48b6ac57fdfbb765eef, type: 3}
|
|
||||||
m_ShaderKeywords:
|
|
||||||
m_LightmapFlags: 5
|
|
||||||
m_EnableInstancingVariants: 0
|
|
||||||
m_DoubleSidedGI: 0
|
|
||||||
m_CustomRenderQueue: -1
|
|
||||||
stringTagMap: {}
|
|
||||||
disabledShaderPasses: []
|
|
||||||
m_SavedProperties:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TexEnvs:
|
|
||||||
- _BumpMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailAlbedoMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailMask:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailNormalMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _EmissionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _FogOfWar:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MainTex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MetallicGlossMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _Noise2Tex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: adddca2e5ce8e4581a5fe066e43559aa, type: 2}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _NoiseTex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 4e4a0e2a9212f4a1b8ce9108443f3b03, 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}
|
|
||||||
m_Floats:
|
|
||||||
- _BumpScale: 1
|
|
||||||
- _Cutoff: 0.5
|
|
||||||
- _DetailNormalMapScale: 1
|
|
||||||
- _DstBlend: 0
|
|
||||||
- _FogAlpha: 1
|
|
||||||
- _FogBaseHeight: 0
|
|
||||||
- _FogDensity: 1
|
|
||||||
- _FogDistance: 0
|
|
||||||
- _FogDistanceFallOff: 0.001
|
|
||||||
- _FogFallOff: 0.908
|
|
||||||
- _FogHeight: 1
|
|
||||||
- _FogHeightFallOff: 0.36
|
|
||||||
- _FogIntensity: 1
|
|
||||||
- _FogNoise: 0.34
|
|
||||||
- _FogPointLightRadius0: 5
|
|
||||||
- _FogPointLightRadius1: 5
|
|
||||||
- _FogPointLightRadius2: 5
|
|
||||||
- _FogPointLightRadius3: 5
|
|
||||||
- _FogPointLightRadius4: 5
|
|
||||||
- _FogPointLightRadius5: 5
|
|
||||||
- _FogScale: 1
|
|
||||||
- _FogSkyAlpha: 0.8
|
|
||||||
- _FogSkyHaze: 50
|
|
||||||
- _FogSkyNoise: 0
|
|
||||||
- _FogSkySpeed: 0.3
|
|
||||||
- _FogSpeed: 0
|
|
||||||
- _FogStepping: 0.0833333
|
|
||||||
- _FogSteppingNear: 1
|
|
||||||
- _FogTurbulence: 0
|
|
||||||
- _Glossiness: 0.5
|
|
||||||
- _Metallic: 0
|
|
||||||
- _Mode: 0
|
|
||||||
- _OcclusionStrength: 1
|
|
||||||
- _Parallax: 0.02
|
|
||||||
- _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}
|
|
||||||
- _FogColor: {r: 0.8161765, g: 0.7321583, b: 0.7321583, a: 1}
|
|
||||||
- _FogColor2: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogDistance: {r: 0, g: 1, b: 1000, a: 1}
|
|
||||||
- _FogHeightData: {r: 1, g: 0, b: 0, a: 0.1}
|
|
||||||
- _FogNoiseData: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogOfWarCenter: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogOfWarSize: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogPointLightColor0: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor1: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor2: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor3: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor4: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor5: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition0: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition1: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition2: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition3: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition4: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition5: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogSkyColor: {r: 0.9, g: 0.9, b: 0.9, a: 1}
|
|
||||||
- _FogVoidData: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogVoidPosition: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogWindDir: {r: 1, g: 0, b: 0, a: 1}
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 44d4c77a5da97412f9fbe7c9a6136ccc
|
|
||||||
timeCreated: 1499281812
|
|
||||||
licenseType: Store
|
|
||||||
NativeFormatImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,101 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!21 &2100000
|
|
||||||
Material:
|
|
||||||
serializedVersion: 6
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_Name: DFGOnlyFog
|
|
||||||
m_Shader: {fileID: 4800000, guid: 6680b4e428db94819b2146526f96ca7c, type: 3}
|
|
||||||
m_ShaderKeywords:
|
|
||||||
m_LightmapFlags: 5
|
|
||||||
m_EnableInstancingVariants: 0
|
|
||||||
m_DoubleSidedGI: 0
|
|
||||||
m_CustomRenderQueue: -1
|
|
||||||
stringTagMap: {}
|
|
||||||
disabledShaderPasses: []
|
|
||||||
m_SavedProperties:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TexEnvs:
|
|
||||||
- _BumpMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailAlbedoMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailMask:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailNormalMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _EmissionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _FogOfWar:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MainTex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MetallicGlossMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _Noise2Tex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _NoiseTex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 9733f0d7aec8848f08cae3c95b44d3ae, 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}
|
|
||||||
m_Floats:
|
|
||||||
- _BumpScale: 1
|
|
||||||
- _Cutoff: 0.5
|
|
||||||
- _DetailNormalMapScale: 1
|
|
||||||
- _DstBlend: 0
|
|
||||||
- _FogAlpha: 0.8
|
|
||||||
- _FogBaseHeight: 0
|
|
||||||
- _FogDistance: 0.244
|
|
||||||
- _FogDistanceFallOff: 0.001
|
|
||||||
- _FogFallOff: 0.908
|
|
||||||
- _FogHeight: 1
|
|
||||||
- _FogHeightFallOff: 0.1
|
|
||||||
- _FogIntensity: 1
|
|
||||||
- _FogNoise: 0
|
|
||||||
- _FogSkyHaze: 50
|
|
||||||
- _FogSkyNoise: 0
|
|
||||||
- _FogSkySpeed: 0.3
|
|
||||||
- _FogSpeed: 0
|
|
||||||
- _FogTurbulence: 0
|
|
||||||
- _Glossiness: 0.5
|
|
||||||
- _Metallic: 0
|
|
||||||
- _Mode: 0
|
|
||||||
- _OcclusionStrength: 1
|
|
||||||
- _Parallax: 0.02
|
|
||||||
- _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}
|
|
||||||
- _FogColor: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogOfWarCenter: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogOfWarSize: {r: 1, g: 1, b: 1, a: 1}
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 76b8b0ff6425342b0bf7e432dcd5220f
|
|
||||||
timeCreated: 1445132075
|
|
||||||
licenseType: Store
|
|
||||||
NativeFormatImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,107 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!21 &2100000
|
|
||||||
Material:
|
|
||||||
serializedVersion: 6
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_Name: DFGOrthogonal
|
|
||||||
m_Shader: {fileID: 4800000, guid: 1e37bd98e87444e51aabdfd2b4d91675, type: 3}
|
|
||||||
m_ShaderKeywords:
|
|
||||||
m_LightmapFlags: 5
|
|
||||||
m_EnableInstancingVariants: 0
|
|
||||||
m_DoubleSidedGI: 0
|
|
||||||
m_CustomRenderQueue: -1
|
|
||||||
stringTagMap: {}
|
|
||||||
disabledShaderPasses: []
|
|
||||||
m_SavedProperties:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TexEnvs:
|
|
||||||
- _BumpMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailAlbedoMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailMask:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailNormalMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _EmissionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _FogOfWar:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MainTex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MetallicGlossMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _Noise2Tex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _NoiseTex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 9733f0d7aec8848f08cae3c95b44d3ae, 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}
|
|
||||||
m_Floats:
|
|
||||||
- _BumpScale: 1
|
|
||||||
- _Cutoff: 0.5
|
|
||||||
- _DetailNormalMapScale: 1
|
|
||||||
- _DstBlend: 0
|
|
||||||
- _FogAlpha: 0.8
|
|
||||||
- _FogBaseHeight: 0
|
|
||||||
- _FogDistance: 0.244
|
|
||||||
- _FogDistanceFallOff: 0.001
|
|
||||||
- _FogFallOff: 0.908
|
|
||||||
- _FogHeight: 1
|
|
||||||
- _FogHeightFallOff: 0.1
|
|
||||||
- _FogIntensity: 1
|
|
||||||
- _FogNoise: 0
|
|
||||||
- _FogSkyAlpha: 1
|
|
||||||
- _FogSkyHaze: 50
|
|
||||||
- _FogSkyNoise: 0
|
|
||||||
- _FogSkySpeed: 0.3
|
|
||||||
- _FogSpeed: 0
|
|
||||||
- _FogTurbulence: 0
|
|
||||||
- _Glossiness: 0.5
|
|
||||||
- _Metallic: 0
|
|
||||||
- _Mode: 0
|
|
||||||
- _OcclusionStrength: 1
|
|
||||||
- _Parallax: 0.02
|
|
||||||
- _SrcBlend: 1
|
|
||||||
- _UVSec: 0
|
|
||||||
- _ZWrite: 1
|
|
||||||
m_Colors:
|
|
||||||
- _ClipDir: {r: 0, g: 0, b: 1, a: 1}
|
|
||||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogColor: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogColor2: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogDistance: {r: 0.1, g: 0.001, b: 1, a: 0.15}
|
|
||||||
- _FogHeightData: {r: 1, g: 0, b: 0, a: 0.1}
|
|
||||||
- _FogNoiseData: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogOfWarCenter: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogOfWarSize: {r: 1, g: 1, b: 1, a: 1}
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 4ffaabe80115e4a749ed52e0306b7cf3
|
|
||||||
timeCreated: 1499254542
|
|
||||||
licenseType: Store
|
|
||||||
NativeFormatImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,106 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!21 &2100000
|
|
||||||
Material:
|
|
||||||
serializedVersion: 6
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_Name: DFGSimple
|
|
||||||
m_Shader: {fileID: 4800000, guid: 1b3db286d77a04ff9bfb7265197c604e, type: 3}
|
|
||||||
m_ShaderKeywords:
|
|
||||||
m_LightmapFlags: 5
|
|
||||||
m_EnableInstancingVariants: 0
|
|
||||||
m_DoubleSidedGI: 0
|
|
||||||
m_CustomRenderQueue: -1
|
|
||||||
stringTagMap: {}
|
|
||||||
disabledShaderPasses: []
|
|
||||||
m_SavedProperties:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TexEnvs:
|
|
||||||
- _BumpMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailAlbedoMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailMask:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailNormalMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _EmissionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _FogOfWar:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MainTex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MetallicGlossMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _Noise2Tex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _NoiseTex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 9733f0d7aec8848f08cae3c95b44d3ae, 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}
|
|
||||||
m_Floats:
|
|
||||||
- _BumpScale: 1
|
|
||||||
- _Cutoff: 0.5
|
|
||||||
- _DetailNormalMapScale: 1
|
|
||||||
- _DstBlend: 0
|
|
||||||
- _FogAlpha: 0.8
|
|
||||||
- _FogBaseHeight: 0
|
|
||||||
- _FogDistance: 0.244
|
|
||||||
- _FogDistanceFallOff: 0.001
|
|
||||||
- _FogFallOff: 0.908
|
|
||||||
- _FogHeight: 1
|
|
||||||
- _FogHeightFallOff: 0.1
|
|
||||||
- _FogIntensity: 1
|
|
||||||
- _FogNoise: 0
|
|
||||||
- _FogSkyAlpha: 1
|
|
||||||
- _FogSkyHaze: 50
|
|
||||||
- _FogSkyNoise: 0
|
|
||||||
- _FogSkySpeed: 0.3
|
|
||||||
- _FogSpeed: 0
|
|
||||||
- _FogTurbulence: 0
|
|
||||||
- _Glossiness: 0.5
|
|
||||||
- _Metallic: 0
|
|
||||||
- _Mode: 0
|
|
||||||
- _OcclusionStrength: 1
|
|
||||||
- _Parallax: 0.02
|
|
||||||
- _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}
|
|
||||||
- _FogColor: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogColor2: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogDistance: {r: 0.1, g: 0.001, b: 1, a: 0.15}
|
|
||||||
- _FogHeightData: {r: 1, g: 0, b: 0, a: 0.1}
|
|
||||||
- _FogNoiseData: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogOfWarCenter: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogOfWarSize: {r: 1, g: 1, b: 1, a: 1}
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 3a2dfa2b0fab14d81a58b715543db1da
|
|
||||||
timeCreated: 1445132069
|
|
||||||
licenseType: Store
|
|
||||||
NativeFormatImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,102 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!21 &2100000
|
|
||||||
Material:
|
|
||||||
serializedVersion: 6
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_Name: DFGWithSky
|
|
||||||
m_Shader: {fileID: 4800000, guid: fd5f780b0e4da4534ad95b35d5ac3079, type: 3}
|
|
||||||
m_ShaderKeywords:
|
|
||||||
m_LightmapFlags: 5
|
|
||||||
m_EnableInstancingVariants: 0
|
|
||||||
m_DoubleSidedGI: 0
|
|
||||||
m_CustomRenderQueue: -1
|
|
||||||
stringTagMap: {}
|
|
||||||
disabledShaderPasses: []
|
|
||||||
m_SavedProperties:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TexEnvs:
|
|
||||||
- _BumpMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailAlbedoMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailMask:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailNormalMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _EmissionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _FogOfWar:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MainTex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MetallicGlossMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _Noise2Tex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _NoiseTex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 9733f0d7aec8848f08cae3c95b44d3ae, 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}
|
|
||||||
m_Floats:
|
|
||||||
- _BumpScale: 1
|
|
||||||
- _Cutoff: 0.5
|
|
||||||
- _DetailNormalMapScale: 1
|
|
||||||
- _DstBlend: 0
|
|
||||||
- _FogAlpha: 0.8
|
|
||||||
- _FogBaseHeight: 0
|
|
||||||
- _FogDistance: 0.244
|
|
||||||
- _FogDistanceFallOff: 0.001
|
|
||||||
- _FogFallOff: 0.908
|
|
||||||
- _FogHeight: 1
|
|
||||||
- _FogHeightFallOff: 0.1
|
|
||||||
- _FogIntensity: 1
|
|
||||||
- _FogNoise: 0
|
|
||||||
- _FogSkyAlpha: 1
|
|
||||||
- _FogSkyHaze: 50
|
|
||||||
- _FogSkyNoise: 0
|
|
||||||
- _FogSkySpeed: 0.3
|
|
||||||
- _FogSpeed: 0
|
|
||||||
- _FogTurbulence: 0
|
|
||||||
- _Glossiness: 0.5
|
|
||||||
- _Metallic: 0
|
|
||||||
- _Mode: 0
|
|
||||||
- _OcclusionStrength: 1
|
|
||||||
- _Parallax: 0.02
|
|
||||||
- _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}
|
|
||||||
- _FogColor: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogOfWarCenter: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogOfWarSize: {r: 1, g: 1, b: 1, a: 1}
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: ce599e96f824a4ada8a2ed635064adef
|
|
||||||
timeCreated: 1445132069
|
|
||||||
licenseType: Store
|
|
||||||
NativeFormatImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,87 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!21 &2100000
|
|
||||||
Material:
|
|
||||||
serializedVersion: 6
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_Name: DFMLambert
|
|
||||||
m_Shader: {fileID: 4800000, guid: cc1816ff4770440d7836fbf2c66e6667, type: 3}
|
|
||||||
m_ShaderKeywords: _EMISSION
|
|
||||||
m_LightmapFlags: 1
|
|
||||||
m_EnableInstancingVariants: 0
|
|
||||||
m_DoubleSidedGI: 0
|
|
||||||
m_CustomRenderQueue: -1
|
|
||||||
stringTagMap: {}
|
|
||||||
disabledShaderPasses: []
|
|
||||||
m_SavedProperties:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TexEnvs:
|
|
||||||
- _BumpMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailAlbedoMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailMask:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailNormalMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _EmissionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MainTex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MetallicGlossMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _NoiseTex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 9733f0d7aec8848f08cae3c95b44d3ae, 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}
|
|
||||||
m_Floats:
|
|
||||||
- _BumpScale: 1
|
|
||||||
- _Cutoff: 0.5
|
|
||||||
- _DetailNormalMapScale: 1
|
|
||||||
- _DstBlend: 0
|
|
||||||
- _FogAlpha: 0.8
|
|
||||||
- _FogSpeed: 0.1
|
|
||||||
- _GlossMapScale: 1
|
|
||||||
- _Glossiness: 0.5
|
|
||||||
- _GlossyReflections: 1
|
|
||||||
- _Metallic: 0
|
|
||||||
- _Mode: 0
|
|
||||||
- _OcclusionStrength: 1
|
|
||||||
- _Parallax: 0.02
|
|
||||||
- _SmoothnessTextureChannel: 0
|
|
||||||
- _SpecularHighlights: 1
|
|
||||||
- _SrcBlend: 1
|
|
||||||
- _UVSec: 0
|
|
||||||
- _ZWrite: 1
|
|
||||||
m_Colors:
|
|
||||||
- _Color: {r: 0, g: 0, b: 1, a: 1}
|
|
||||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogColor: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogColor2: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogDistance: {r: 0.1, g: 0.001, b: 1, a: 0.15}
|
|
||||||
- _FogHeightData: {r: 1, g: 0, b: 0, a: 0.1}
|
|
||||||
- _FogNoiseData: {r: 0, g: 0, b: 0, a: 1}
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: d8f88774a72ec4efca16b7126853ab2b
|
|
||||||
timeCreated: 1474887004
|
|
||||||
licenseType: Store
|
|
||||||
NativeFormatImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,87 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!21 &2100000
|
|
||||||
Material:
|
|
||||||
serializedVersion: 6
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_Name: DFMLambertSolidColor
|
|
||||||
m_Shader: {fileID: 4800000, guid: 3460cf748dd624adaa627a42a966880a, type: 3}
|
|
||||||
m_ShaderKeywords: _EMISSION
|
|
||||||
m_LightmapFlags: 1
|
|
||||||
m_EnableInstancingVariants: 0
|
|
||||||
m_DoubleSidedGI: 0
|
|
||||||
m_CustomRenderQueue: -1
|
|
||||||
stringTagMap: {}
|
|
||||||
disabledShaderPasses: []
|
|
||||||
m_SavedProperties:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TexEnvs:
|
|
||||||
- _BumpMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailAlbedoMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailMask:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailNormalMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _EmissionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MainTex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MetallicGlossMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _NoiseTex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 9733f0d7aec8848f08cae3c95b44d3ae, 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}
|
|
||||||
m_Floats:
|
|
||||||
- _BumpScale: 1
|
|
||||||
- _Cutoff: 0.5
|
|
||||||
- _DetailNormalMapScale: 1
|
|
||||||
- _DstBlend: 0
|
|
||||||
- _FogAlpha: 0.8
|
|
||||||
- _FogSpeed: 0.1
|
|
||||||
- _GlossMapScale: 1
|
|
||||||
- _Glossiness: 0.5
|
|
||||||
- _GlossyReflections: 1
|
|
||||||
- _Metallic: 0
|
|
||||||
- _Mode: 0
|
|
||||||
- _OcclusionStrength: 1
|
|
||||||
- _Parallax: 0.02
|
|
||||||
- _SmoothnessTextureChannel: 0
|
|
||||||
- _SpecularHighlights: 1
|
|
||||||
- _SrcBlend: 1
|
|
||||||
- _UVSec: 0
|
|
||||||
- _ZWrite: 1
|
|
||||||
m_Colors:
|
|
||||||
- _Color: {r: 0, g: 1, b: 1, a: 1}
|
|
||||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogColor: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogColor2: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogDistance: {r: 0.1, g: 0.001, b: 1, a: 0.15}
|
|
||||||
- _FogHeightData: {r: 1, g: 0, b: 0, a: 0.1}
|
|
||||||
- _FogNoiseData: {r: 0, g: 0, b: 0, a: 1}
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 0d37bfe3e818a40df8f9a3a7f9de78dc
|
|
||||||
timeCreated: 1474887004
|
|
||||||
licenseType: Store
|
|
||||||
NativeFormatImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,87 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!21 &2100000
|
|
||||||
Material:
|
|
||||||
serializedVersion: 6
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_Name: DFMStandardShader
|
|
||||||
m_Shader: {fileID: 4800000, guid: 16be16c19927c408ca8baafff138be5f, type: 3}
|
|
||||||
m_ShaderKeywords: _EMISSION
|
|
||||||
m_LightmapFlags: 1
|
|
||||||
m_EnableInstancingVariants: 0
|
|
||||||
m_DoubleSidedGI: 0
|
|
||||||
m_CustomRenderQueue: -1
|
|
||||||
stringTagMap: {}
|
|
||||||
disabledShaderPasses: []
|
|
||||||
m_SavedProperties:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TexEnvs:
|
|
||||||
- _BumpMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailAlbedoMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailMask:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailNormalMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _EmissionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MainTex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MetallicGlossMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _NoiseTex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 9733f0d7aec8848f08cae3c95b44d3ae, 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}
|
|
||||||
m_Floats:
|
|
||||||
- _BumpScale: 1
|
|
||||||
- _Cutoff: 0.5
|
|
||||||
- _DetailNormalMapScale: 1
|
|
||||||
- _DstBlend: 0
|
|
||||||
- _FogAlpha: 0.8
|
|
||||||
- _FogSpeed: 0.1
|
|
||||||
- _GlossMapScale: 1
|
|
||||||
- _Glossiness: 0.5
|
|
||||||
- _GlossyReflections: 1
|
|
||||||
- _Metallic: 0
|
|
||||||
- _Mode: 0
|
|
||||||
- _OcclusionStrength: 1
|
|
||||||
- _Parallax: 0.02
|
|
||||||
- _SmoothnessTextureChannel: 0
|
|
||||||
- _SpecularHighlights: 1
|
|
||||||
- _SrcBlend: 1
|
|
||||||
- _UVSec: 0
|
|
||||||
- _ZWrite: 1
|
|
||||||
m_Colors:
|
|
||||||
- _Color: {r: 1, g: 0, b: 0, a: 1}
|
|
||||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogColor: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogColor2: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogDistance: {r: 0.1, g: 0.001, b: 1, a: 0.15}
|
|
||||||
- _FogHeightData: {r: 1, g: 0, b: 0, a: 0.1}
|
|
||||||
- _FogNoiseData: {r: 0, g: 0, b: 0, a: 1}
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: fa0ed8310cadb4e2c8dfd7fb51877ae3
|
|
||||||
timeCreated: 1474887004
|
|
||||||
licenseType: Store
|
|
||||||
NativeFormatImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,87 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!21 &2100000
|
|
||||||
Material:
|
|
||||||
serializedVersion: 6
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_Name: DFMStandardShaderNormal
|
|
||||||
m_Shader: {fileID: 4800000, guid: 209b7b4bc127a4ed79ed7ac00c31fa62, type: 3}
|
|
||||||
m_ShaderKeywords: _EMISSION
|
|
||||||
m_LightmapFlags: 1
|
|
||||||
m_EnableInstancingVariants: 0
|
|
||||||
m_DoubleSidedGI: 0
|
|
||||||
m_CustomRenderQueue: -1
|
|
||||||
stringTagMap: {}
|
|
||||||
disabledShaderPasses: []
|
|
||||||
m_SavedProperties:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TexEnvs:
|
|
||||||
- _BumpMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailAlbedoMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailMask:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailNormalMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _EmissionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MainTex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MetallicGlossMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _NoiseTex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 9733f0d7aec8848f08cae3c95b44d3ae, 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}
|
|
||||||
m_Floats:
|
|
||||||
- _BumpScale: 1
|
|
||||||
- _Cutoff: 0.5
|
|
||||||
- _DetailNormalMapScale: 1
|
|
||||||
- _DstBlend: 0
|
|
||||||
- _FogAlpha: 0.8
|
|
||||||
- _FogSpeed: 0.1
|
|
||||||
- _GlossMapScale: 1
|
|
||||||
- _Glossiness: 0.5
|
|
||||||
- _GlossyReflections: 1
|
|
||||||
- _Metallic: 0
|
|
||||||
- _Mode: 0
|
|
||||||
- _OcclusionStrength: 1
|
|
||||||
- _Parallax: 0.02
|
|
||||||
- _SmoothnessTextureChannel: 0
|
|
||||||
- _SpecularHighlights: 1
|
|
||||||
- _SrcBlend: 1
|
|
||||||
- _UVSec: 0
|
|
||||||
- _ZWrite: 1
|
|
||||||
m_Colors:
|
|
||||||
- _Color: {r: 0, g: 0, b: 1, a: 1}
|
|
||||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogColor: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogColor2: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogDistance: {r: 0.1, g: 0.001, b: 1, a: 0.15}
|
|
||||||
- _FogHeightData: {r: 1, g: 0, b: 0, a: 0.1}
|
|
||||||
- _FogNoiseData: {r: 0, g: 0, b: 0, a: 1}
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 1487d67a51dd24c16afb4a3554f908f1
|
|
||||||
timeCreated: 1474887004
|
|
||||||
licenseType: Store
|
|
||||||
NativeFormatImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,87 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!21 &2100000
|
|
||||||
Material:
|
|
||||||
serializedVersion: 6
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_Name: DFMStandardShaderNormalOcclusionIntegrated
|
|
||||||
m_Shader: {fileID: 4800000, guid: fa7b9b4de3d574b0a8942b29f2c0a591, type: 3}
|
|
||||||
m_ShaderKeywords: _EMISSION
|
|
||||||
m_LightmapFlags: 1
|
|
||||||
m_EnableInstancingVariants: 0
|
|
||||||
m_DoubleSidedGI: 0
|
|
||||||
m_CustomRenderQueue: -1
|
|
||||||
stringTagMap: {}
|
|
||||||
disabledShaderPasses: []
|
|
||||||
m_SavedProperties:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TexEnvs:
|
|
||||||
- _BumpMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailAlbedoMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailMask:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailNormalMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _EmissionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MainTex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MetallicGlossMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _NoiseTex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 9733f0d7aec8848f08cae3c95b44d3ae, 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}
|
|
||||||
m_Floats:
|
|
||||||
- _BumpScale: 1
|
|
||||||
- _Cutoff: 0.5
|
|
||||||
- _DetailNormalMapScale: 1
|
|
||||||
- _DstBlend: 0
|
|
||||||
- _FogAlpha: 0.8
|
|
||||||
- _FogSpeed: 0.1
|
|
||||||
- _GlossMapScale: 1
|
|
||||||
- _Glossiness: 0.5
|
|
||||||
- _GlossyReflections: 1
|
|
||||||
- _Metallic: 0
|
|
||||||
- _Mode: 0
|
|
||||||
- _OcclusionStrength: 1
|
|
||||||
- _Parallax: 0.02
|
|
||||||
- _SmoothnessTextureChannel: 0
|
|
||||||
- _SpecularHighlights: 1
|
|
||||||
- _SrcBlend: 1
|
|
||||||
- _UVSec: 0
|
|
||||||
- _ZWrite: 1
|
|
||||||
m_Colors:
|
|
||||||
- _Color: {r: 0, g: 0, b: 1, a: 1}
|
|
||||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogColor: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogColor2: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogDistance: {r: 0.1, g: 0.001, b: 1, a: 0.15}
|
|
||||||
- _FogHeightData: {r: 1, g: 0, b: 0, a: 0.1}
|
|
||||||
- _FogNoiseData: {r: 0, g: 0, b: 0, a: 1}
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 9797dd7a6014541d9bdd20ccfef2c29b
|
|
||||||
timeCreated: 1474887004
|
|
||||||
licenseType: Store
|
|
||||||
NativeFormatImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,87 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!21 &2100000
|
|
||||||
Material:
|
|
||||||
serializedVersion: 6
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_Name: DFMStandardShaderNormalOcclusionMap
|
|
||||||
m_Shader: {fileID: 4800000, guid: 8935132b5e4174eacb72038a313da47e, type: 3}
|
|
||||||
m_ShaderKeywords: _EMISSION
|
|
||||||
m_LightmapFlags: 1
|
|
||||||
m_EnableInstancingVariants: 0
|
|
||||||
m_DoubleSidedGI: 0
|
|
||||||
m_CustomRenderQueue: -1
|
|
||||||
stringTagMap: {}
|
|
||||||
disabledShaderPasses: []
|
|
||||||
m_SavedProperties:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TexEnvs:
|
|
||||||
- _BumpMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailAlbedoMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailMask:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailNormalMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _EmissionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MainTex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MetallicGlossMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _NoiseTex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 9733f0d7aec8848f08cae3c95b44d3ae, 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}
|
|
||||||
m_Floats:
|
|
||||||
- _BumpScale: 1
|
|
||||||
- _Cutoff: 0.5
|
|
||||||
- _DetailNormalMapScale: 1
|
|
||||||
- _DstBlend: 0
|
|
||||||
- _FogAlpha: 0.8
|
|
||||||
- _FogSpeed: 0.1
|
|
||||||
- _GlossMapScale: 1
|
|
||||||
- _Glossiness: 0.5
|
|
||||||
- _GlossyReflections: 1
|
|
||||||
- _Metallic: 0
|
|
||||||
- _Mode: 0
|
|
||||||
- _OcclusionStrength: 1
|
|
||||||
- _Parallax: 0.02
|
|
||||||
- _SmoothnessTextureChannel: 0
|
|
||||||
- _SpecularHighlights: 1
|
|
||||||
- _SrcBlend: 1
|
|
||||||
- _UVSec: 0
|
|
||||||
- _ZWrite: 1
|
|
||||||
m_Colors:
|
|
||||||
- _Color: {r: 0, g: 0, b: 1, a: 1}
|
|
||||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogColor: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogColor2: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogDistance: {r: 0.1, g: 0.001, b: 1, a: 0.15}
|
|
||||||
- _FogHeightData: {r: 1, g: 0, b: 0, a: 0.1}
|
|
||||||
- _FogNoiseData: {r: 0, g: 0, b: 0, a: 1}
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: b1eb93a2017ad41d19dda6076523e9cb
|
|
||||||
timeCreated: 1474887004
|
|
||||||
licenseType: Store
|
|
||||||
NativeFormatImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,87 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!21 &2100000
|
|
||||||
Material:
|
|
||||||
serializedVersion: 6
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_Name: DFMStandardShaderSolidColor
|
|
||||||
m_Shader: {fileID: 4800000, guid: 02967eaf217cc4948a86c20df352ff8c, type: 3}
|
|
||||||
m_ShaderKeywords: _EMISSION
|
|
||||||
m_LightmapFlags: 1
|
|
||||||
m_EnableInstancingVariants: 0
|
|
||||||
m_DoubleSidedGI: 0
|
|
||||||
m_CustomRenderQueue: -1
|
|
||||||
stringTagMap: {}
|
|
||||||
disabledShaderPasses: []
|
|
||||||
m_SavedProperties:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TexEnvs:
|
|
||||||
- _BumpMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailAlbedoMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailMask:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailNormalMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _EmissionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MainTex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MetallicGlossMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _NoiseTex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 9733f0d7aec8848f08cae3c95b44d3ae, 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}
|
|
||||||
m_Floats:
|
|
||||||
- _BumpScale: 1
|
|
||||||
- _Cutoff: 0.5
|
|
||||||
- _DetailNormalMapScale: 1
|
|
||||||
- _DstBlend: 0
|
|
||||||
- _FogAlpha: 0.8
|
|
||||||
- _FogSpeed: 0.1
|
|
||||||
- _GlossMapScale: 1
|
|
||||||
- _Glossiness: 0.5
|
|
||||||
- _GlossyReflections: 1
|
|
||||||
- _Metallic: 0
|
|
||||||
- _Mode: 0
|
|
||||||
- _OcclusionStrength: 1
|
|
||||||
- _Parallax: 0.02
|
|
||||||
- _SmoothnessTextureChannel: 0
|
|
||||||
- _SpecularHighlights: 1
|
|
||||||
- _SrcBlend: 1
|
|
||||||
- _UVSec: 0
|
|
||||||
- _ZWrite: 1
|
|
||||||
m_Colors:
|
|
||||||
- _Color: {r: 0, g: 0, b: 1, a: 1}
|
|
||||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogColor: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogColor2: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogDistance: {r: 0.1, g: 0.001, b: 1, a: 0.15}
|
|
||||||
- _FogHeightData: {r: 1, g: 0, b: 0, a: 0.1}
|
|
||||||
- _FogNoiseData: {r: 0, g: 0, b: 0, a: 1}
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 747d539aa886e4306af61498aeb8f763
|
|
||||||
timeCreated: 1474887004
|
|
||||||
licenseType: Store
|
|
||||||
NativeFormatImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,87 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!21 &2100000
|
|
||||||
Material:
|
|
||||||
serializedVersion: 6
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_Name: DFMUnlit
|
|
||||||
m_Shader: {fileID: 4800000, guid: 9177e310d24864c29b137881b4856702, type: 3}
|
|
||||||
m_ShaderKeywords: _EMISSION
|
|
||||||
m_LightmapFlags: 1
|
|
||||||
m_EnableInstancingVariants: 0
|
|
||||||
m_DoubleSidedGI: 0
|
|
||||||
m_CustomRenderQueue: -1
|
|
||||||
stringTagMap: {}
|
|
||||||
disabledShaderPasses: []
|
|
||||||
m_SavedProperties:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TexEnvs:
|
|
||||||
- _BumpMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailAlbedoMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailMask:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailNormalMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _EmissionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MainTex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MetallicGlossMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _NoiseTex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 9733f0d7aec8848f08cae3c95b44d3ae, 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}
|
|
||||||
m_Floats:
|
|
||||||
- _BumpScale: 1
|
|
||||||
- _Cutoff: 0.5
|
|
||||||
- _DetailNormalMapScale: 1
|
|
||||||
- _DstBlend: 0
|
|
||||||
- _FogAlpha: 0.8
|
|
||||||
- _FogSpeed: 0.1
|
|
||||||
- _GlossMapScale: 1
|
|
||||||
- _Glossiness: 0.5
|
|
||||||
- _GlossyReflections: 1
|
|
||||||
- _Metallic: 0
|
|
||||||
- _Mode: 0
|
|
||||||
- _OcclusionStrength: 1
|
|
||||||
- _Parallax: 0.02
|
|
||||||
- _SmoothnessTextureChannel: 0
|
|
||||||
- _SpecularHighlights: 1
|
|
||||||
- _SrcBlend: 1
|
|
||||||
- _UVSec: 0
|
|
||||||
- _ZWrite: 1
|
|
||||||
m_Colors:
|
|
||||||
- _Color: {r: 0, g: 0, b: 1, a: 1}
|
|
||||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogColor: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogColor2: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogDistance: {r: 0.1, g: 0.001, b: 1, a: 0.15}
|
|
||||||
- _FogHeightData: {r: 1, g: 0, b: 0, a: 0.1}
|
|
||||||
- _FogNoiseData: {r: 0, g: 0, b: 0, a: 1}
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 876b86b5ad7494ec598e4869e6a4a837
|
|
||||||
timeCreated: 1474887004
|
|
||||||
licenseType: Store
|
|
||||||
NativeFormatImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,87 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!21 &2100000
|
|
||||||
Material:
|
|
||||||
serializedVersion: 6
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_Name: DFMUnlitSolidColor
|
|
||||||
m_Shader: {fileID: 4800000, guid: 970daee79078e4e0f9653aa5f23424f0, type: 3}
|
|
||||||
m_ShaderKeywords: _EMISSION
|
|
||||||
m_LightmapFlags: 1
|
|
||||||
m_EnableInstancingVariants: 0
|
|
||||||
m_DoubleSidedGI: 0
|
|
||||||
m_CustomRenderQueue: -1
|
|
||||||
stringTagMap: {}
|
|
||||||
disabledShaderPasses: []
|
|
||||||
m_SavedProperties:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TexEnvs:
|
|
||||||
- _BumpMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailAlbedoMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailMask:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailNormalMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _EmissionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MainTex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MetallicGlossMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _NoiseTex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 9733f0d7aec8848f08cae3c95b44d3ae, 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}
|
|
||||||
m_Floats:
|
|
||||||
- _BumpScale: 1
|
|
||||||
- _Cutoff: 0.5
|
|
||||||
- _DetailNormalMapScale: 1
|
|
||||||
- _DstBlend: 0
|
|
||||||
- _FogAlpha: 0.8
|
|
||||||
- _FogSpeed: 0.1
|
|
||||||
- _GlossMapScale: 1
|
|
||||||
- _Glossiness: 0.5
|
|
||||||
- _GlossyReflections: 1
|
|
||||||
- _Metallic: 0
|
|
||||||
- _Mode: 0
|
|
||||||
- _OcclusionStrength: 1
|
|
||||||
- _Parallax: 0.02
|
|
||||||
- _SmoothnessTextureChannel: 0
|
|
||||||
- _SpecularHighlights: 1
|
|
||||||
- _SrcBlend: 1
|
|
||||||
- _UVSec: 0
|
|
||||||
- _ZWrite: 1
|
|
||||||
m_Colors:
|
|
||||||
- _Color: {r: 0, g: 0, b: 1, a: 1}
|
|
||||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogColor: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogColor2: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogDistance: {r: 0.1, g: 0.001, b: 1, a: 0.15}
|
|
||||||
- _FogHeightData: {r: 1, g: 0, b: 0, a: 0.1}
|
|
||||||
- _FogNoiseData: {r: 0, g: 0, b: 0, a: 1}
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 41b594b9ea7f64537a7568ce9b964891
|
|
||||||
timeCreated: 1474887004
|
|
||||||
licenseType: Store
|
|
||||||
NativeFormatImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,107 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!21 &2100000
|
|
||||||
Material:
|
|
||||||
serializedVersion: 6
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_Name: DFOBasic
|
|
||||||
m_Shader: {fileID: 4800000, guid: f00eee561a21443978f3da8566abe2da, type: 3}
|
|
||||||
m_ShaderKeywords:
|
|
||||||
m_LightmapFlags: 5
|
|
||||||
m_EnableInstancingVariants: 0
|
|
||||||
m_DoubleSidedGI: 0
|
|
||||||
m_CustomRenderQueue: -1
|
|
||||||
stringTagMap: {}
|
|
||||||
disabledShaderPasses: []
|
|
||||||
m_SavedProperties:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TexEnvs:
|
|
||||||
- _BumpMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailAlbedoMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailMask:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailNormalMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _EmissionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _FogOfWar:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MainTex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MetallicGlossMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _Noise2Tex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _NoiseTex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 9733f0d7aec8848f08cae3c95b44d3ae, 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}
|
|
||||||
m_Floats:
|
|
||||||
- _BumpScale: 1
|
|
||||||
- _Cutoff: 0.5
|
|
||||||
- _DetailNormalMapScale: 1
|
|
||||||
- _DstBlend: 0
|
|
||||||
- _FogAlpha: 0.8
|
|
||||||
- _FogBaseHeight: 0
|
|
||||||
- _FogDistance: 0.244
|
|
||||||
- _FogDistanceFallOff: 0.001
|
|
||||||
- _FogFallOff: 0.908
|
|
||||||
- _FogHeight: 1
|
|
||||||
- _FogHeightFallOff: 0.1
|
|
||||||
- _FogIntensity: 1
|
|
||||||
- _FogNoise: 0
|
|
||||||
- _FogSkyAlpha: 1
|
|
||||||
- _FogSkyHaze: 50
|
|
||||||
- _FogSkyNoise: 0
|
|
||||||
- _FogSkySpeed: 0.3
|
|
||||||
- _FogSpeed: 0
|
|
||||||
- _FogTurbulence: 0
|
|
||||||
- _Glossiness: 0.5
|
|
||||||
- _Metallic: 0
|
|
||||||
- _Mode: 0
|
|
||||||
- _OcclusionStrength: 1
|
|
||||||
- _Parallax: 0.02
|
|
||||||
- _SrcBlend: 1
|
|
||||||
- _UVSec: 0
|
|
||||||
- _ZWrite: 1
|
|
||||||
m_Colors:
|
|
||||||
- _ClipDir: {r: 0, g: 0, b: 1, a: 1}
|
|
||||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogColor: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogColor2: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogDistance: {r: 0.1, g: 0.001, b: 1, a: 0.15}
|
|
||||||
- _FogHeightData: {r: 1, g: 0, b: 0, a: 0.1}
|
|
||||||
- _FogNoiseData: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogOfWarCenter: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogOfWarSize: {r: 1, g: 1, b: 1, a: 1}
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 4c83ae0b9b9e74e588dcaa5d44fd099b
|
|
||||||
timeCreated: 1487933946
|
|
||||||
licenseType: Store
|
|
||||||
NativeFormatImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,132 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!21 &2100000
|
|
||||||
Material:
|
|
||||||
serializedVersion: 6
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_Name: DFODesktop
|
|
||||||
m_Shader: {fileID: 4800000, guid: b9e97418043194e34a4e23e8f2b8e5f3, type: 3}
|
|
||||||
m_ShaderKeywords:
|
|
||||||
m_LightmapFlags: 5
|
|
||||||
m_EnableInstancingVariants: 0
|
|
||||||
m_DoubleSidedGI: 0
|
|
||||||
m_CustomRenderQueue: -1
|
|
||||||
stringTagMap: {}
|
|
||||||
disabledShaderPasses: []
|
|
||||||
m_SavedProperties:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TexEnvs:
|
|
||||||
- _BumpMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailAlbedoMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailMask:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailNormalMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _EmissionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _FogOfWar:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MainTex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MetallicGlossMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _Noise2Tex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 4e4a0e2a9212f4a1b8ce9108443f3b03, type: 3}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _NoiseTex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 9733f0d7aec8848f08cae3c95b44d3ae, 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}
|
|
||||||
m_Floats:
|
|
||||||
- _BumpScale: 1
|
|
||||||
- _Cutoff: 0.5
|
|
||||||
- _DetailNormalMapScale: 1
|
|
||||||
- _DstBlend: 0
|
|
||||||
- _FogAlpha: 1
|
|
||||||
- _FogBaseHeight: 0
|
|
||||||
- _FogDensity: 1
|
|
||||||
- _FogDistance: 0
|
|
||||||
- _FogDistanceFallOff: 0.001
|
|
||||||
- _FogFallOff: 0.908
|
|
||||||
- _FogHeight: 1
|
|
||||||
- _FogHeightFallOff: 0.36
|
|
||||||
- _FogIntensity: 1
|
|
||||||
- _FogNoise: 0.34
|
|
||||||
- _FogPointLightRadius0: 5
|
|
||||||
- _FogPointLightRadius1: 5
|
|
||||||
- _FogPointLightRadius2: 5
|
|
||||||
- _FogPointLightRadius3: 5
|
|
||||||
- _FogPointLightRadius4: 5
|
|
||||||
- _FogPointLightRadius5: 5
|
|
||||||
- _FogScale: 1
|
|
||||||
- _FogSkyAlpha: 0.8
|
|
||||||
- _FogSkyHaze: 50
|
|
||||||
- _FogSkyNoise: 0
|
|
||||||
- _FogSkySpeed: 0.3
|
|
||||||
- _FogSpeed: 0
|
|
||||||
- _FogStepping: 0.0833333
|
|
||||||
- _FogSteppingNear: 1
|
|
||||||
- _FogTurbulence: 0
|
|
||||||
- _Glossiness: 0.5
|
|
||||||
- _Metallic: 0
|
|
||||||
- _Mode: 0
|
|
||||||
- _OcclusionStrength: 1
|
|
||||||
- _Parallax: 0.02
|
|
||||||
- _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}
|
|
||||||
- _FogColor: {r: 0.8161765, g: 0.7321583, b: 0.7321583, a: 1}
|
|
||||||
- _FogColor2: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogDistance: {r: 0, g: 1, b: 1000, a: 1}
|
|
||||||
- _FogHeightData: {r: 1, g: 0, b: 0, a: 0.1}
|
|
||||||
- _FogNoiseData: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogOfWarCenter: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogOfWarSize: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogPointLightColor0: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor1: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor2: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor3: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor4: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor5: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition0: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition1: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition2: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition3: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition4: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition5: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogSkyColor: {r: 0.9, g: 0.9, b: 0.9, a: 1}
|
|
||||||
- _FogVoidData: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogVoidPosition: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogWindDir: {r: 1, g: 0, b: 0, a: 1}
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 34719bb486a464f37be75ba9a03e141d
|
|
||||||
timeCreated: 1486134738
|
|
||||||
licenseType: Store
|
|
||||||
NativeFormatImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,132 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!21 &2100000
|
|
||||||
Material:
|
|
||||||
serializedVersion: 6
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_Name: DFODesktopPlus
|
|
||||||
m_Shader: {fileID: 4800000, guid: 7117e60b9fd4a4d619777be5d2c58341, type: 3}
|
|
||||||
m_ShaderKeywords:
|
|
||||||
m_LightmapFlags: 5
|
|
||||||
m_EnableInstancingVariants: 0
|
|
||||||
m_DoubleSidedGI: 0
|
|
||||||
m_CustomRenderQueue: -1
|
|
||||||
stringTagMap: {}
|
|
||||||
disabledShaderPasses: []
|
|
||||||
m_SavedProperties:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TexEnvs:
|
|
||||||
- _BumpMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailAlbedoMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailMask:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailNormalMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _EmissionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _FogOfWar:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MainTex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MetallicGlossMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _Noise2Tex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: adddca2e5ce8e4581a5fe066e43559aa, type: 2}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _NoiseTex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 4e4a0e2a9212f4a1b8ce9108443f3b03, 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}
|
|
||||||
m_Floats:
|
|
||||||
- _BumpScale: 1
|
|
||||||
- _Cutoff: 0.5
|
|
||||||
- _DetailNormalMapScale: 1
|
|
||||||
- _DstBlend: 0
|
|
||||||
- _FogAlpha: 1
|
|
||||||
- _FogBaseHeight: 0
|
|
||||||
- _FogDensity: 1
|
|
||||||
- _FogDistance: 0
|
|
||||||
- _FogDistanceFallOff: 0.001
|
|
||||||
- _FogFallOff: 0.908
|
|
||||||
- _FogHeight: 1
|
|
||||||
- _FogHeightFallOff: 0.36
|
|
||||||
- _FogIntensity: 1
|
|
||||||
- _FogNoise: 0.34
|
|
||||||
- _FogPointLightRadius0: 5
|
|
||||||
- _FogPointLightRadius1: 5
|
|
||||||
- _FogPointLightRadius2: 5
|
|
||||||
- _FogPointLightRadius3: 5
|
|
||||||
- _FogPointLightRadius4: 5
|
|
||||||
- _FogPointLightRadius5: 5
|
|
||||||
- _FogScale: 1
|
|
||||||
- _FogSkyAlpha: 0.8
|
|
||||||
- _FogSkyHaze: 50
|
|
||||||
- _FogSkyNoise: 0
|
|
||||||
- _FogSkySpeed: 0.3
|
|
||||||
- _FogSpeed: 0
|
|
||||||
- _FogStepping: 0.0833333
|
|
||||||
- _FogSteppingNear: 1
|
|
||||||
- _FogTurbulence: 0
|
|
||||||
- _Glossiness: 0.5
|
|
||||||
- _Metallic: 0
|
|
||||||
- _Mode: 0
|
|
||||||
- _OcclusionStrength: 1
|
|
||||||
- _Parallax: 0.02
|
|
||||||
- _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}
|
|
||||||
- _FogColor: {r: 0.8161765, g: 0.7321583, b: 0.7321583, a: 1}
|
|
||||||
- _FogColor2: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogDistance: {r: 0, g: 1, b: 1000, a: 1}
|
|
||||||
- _FogHeightData: {r: 1, g: 0, b: 0, a: 0.1}
|
|
||||||
- _FogNoiseData: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogOfWarCenter: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogOfWarSize: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogPointLightColor0: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor1: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor2: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor3: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor4: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor5: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition0: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition1: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition2: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition3: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition4: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition5: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogSkyColor: {r: 0.9, g: 0.9, b: 0.9, a: 1}
|
|
||||||
- _FogVoidData: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogVoidPosition: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogWindDir: {r: 1, g: 0, b: 0, a: 1}
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 30ad6dcc88202426ba12607857faf4a1
|
|
||||||
timeCreated: 1486143856
|
|
||||||
licenseType: Store
|
|
||||||
NativeFormatImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@ -1,133 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!21 &2100000
|
|
||||||
Material:
|
|
||||||
serializedVersion: 6
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_Name: DFODesktopPlusOrthogonal
|
|
||||||
m_Shader: {fileID: 4800000, guid: d09454293d4514303aeba0ec0aae5faa, type: 3}
|
|
||||||
m_ShaderKeywords:
|
|
||||||
m_LightmapFlags: 5
|
|
||||||
m_EnableInstancingVariants: 0
|
|
||||||
m_DoubleSidedGI: 0
|
|
||||||
m_CustomRenderQueue: -1
|
|
||||||
stringTagMap: {}
|
|
||||||
disabledShaderPasses: []
|
|
||||||
m_SavedProperties:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TexEnvs:
|
|
||||||
- _BumpMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailAlbedoMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailMask:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailNormalMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _EmissionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _FogOfWar:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MainTex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MetallicGlossMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _Noise2Tex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: adddca2e5ce8e4581a5fe066e43559aa, type: 2}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _NoiseTex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 4e4a0e2a9212f4a1b8ce9108443f3b03, 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}
|
|
||||||
m_Floats:
|
|
||||||
- _BumpScale: 1
|
|
||||||
- _Cutoff: 0.5
|
|
||||||
- _DetailNormalMapScale: 1
|
|
||||||
- _DstBlend: 0
|
|
||||||
- _FogAlpha: 1
|
|
||||||
- _FogBaseHeight: 0
|
|
||||||
- _FogDensity: 1
|
|
||||||
- _FogDistance: 0
|
|
||||||
- _FogDistanceFallOff: 0.001
|
|
||||||
- _FogFallOff: 0.908
|
|
||||||
- _FogHeight: 1
|
|
||||||
- _FogHeightFallOff: 0.36
|
|
||||||
- _FogIntensity: 1
|
|
||||||
- _FogNoise: 0.34
|
|
||||||
- _FogPointLightRadius0: 5
|
|
||||||
- _FogPointLightRadius1: 5
|
|
||||||
- _FogPointLightRadius2: 5
|
|
||||||
- _FogPointLightRadius3: 5
|
|
||||||
- _FogPointLightRadius4: 5
|
|
||||||
- _FogPointLightRadius5: 5
|
|
||||||
- _FogScale: 1
|
|
||||||
- _FogSkyAlpha: 0.8
|
|
||||||
- _FogSkyHaze: 50
|
|
||||||
- _FogSkyNoise: 0
|
|
||||||
- _FogSkySpeed: 0.3
|
|
||||||
- _FogSpeed: 0
|
|
||||||
- _FogStepping: 0.0833333
|
|
||||||
- _FogSteppingNear: 1
|
|
||||||
- _FogTurbulence: 0
|
|
||||||
- _Glossiness: 0.5
|
|
||||||
- _Metallic: 0
|
|
||||||
- _Mode: 0
|
|
||||||
- _OcclusionStrength: 1
|
|
||||||
- _Parallax: 0.02
|
|
||||||
- _SrcBlend: 1
|
|
||||||
- _UVSec: 0
|
|
||||||
- _ZWrite: 1
|
|
||||||
m_Colors:
|
|
||||||
- _ClipDir: {r: 0, g: 0, b: 1, a: 1}
|
|
||||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogColor: {r: 0.8161765, g: 0.7321583, b: 0.7321583, a: 1}
|
|
||||||
- _FogColor2: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogDistance: {r: 0, g: 1, b: 1000, a: 1}
|
|
||||||
- _FogHeightData: {r: 1, g: 0, b: 0, a: 0.1}
|
|
||||||
- _FogNoiseData: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogOfWarCenter: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogOfWarSize: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _FogPointLightColor0: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor1: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor2: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor3: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor4: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightColor5: {r: 1, g: 1, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition0: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition1: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition2: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition3: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition4: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogPointLightPosition5: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogSkyColor: {r: 0.9, g: 0.9, b: 0.9, a: 1}
|
|
||||||
- _FogVoidData: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogVoidPosition: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _FogWindDir: {r: 1, g: 0, b: 0, a: 1}
|
|
@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: bf5b19aebc4d64e16992d5b1bc856e95
|
|
||||||
timeCreated: 1499281813
|
|
||||||
licenseType: Store
|
|
||||||
NativeFormatImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user