9 Commits

Author SHA1 Message Date
Chris
105da8850a maint: hotreload updated to 1.13.7 2026-01-06 22:42:15 -05:00
Chris
796dbca5d8 maint: updated odin inspector to 4.0.1.2 2026-01-06 18:14:07 -05:00
Chris
4c34207707 maint: base unity updated 6000.3.2 2026-01-06 18:06:14 -05:00
Chris
dfff4e6f1d maint: settings files cleanup 2026-01-01 21:11:16 -05:00
Chris
839e955464 Merge branch 'feature/world.create-demo-scene' into dev
# Conflicts:
#	Assets/Scenes/WorldDemo.unity
2026-01-01 21:05:22 -05:00
Chris
d5023993d7 maint: added toony colors pro 2 v2.9.20 2025-12-29 13:21:00 -05:00
Chris
0899cfa19e maint: cleaned up scene dependencies, mainly making all scenes use prefabs ($15y) 2025-12-09 15:44:11 -05:00
Chris
a971f6f536 maint: moved environmentobserver to its own file 2025-12-09 15:19:26 -05:00
Chris
312d4da6b6 maint: ILockOnTarget moved to own file 2025-12-09 15:18:42 -05:00
942 changed files with 205091 additions and 4722 deletions

View File

@@ -34,3 +34,8 @@ MonoBehaviour:
SourcePrefabToOverride: {fileID: 0}
SourceHashToOverride: 0
OverridingTargetPrefab: {fileID: 0}
- Override: 0
Prefab: {fileID: 5341383984788871445, guid: 00a3f73dca17403479ee59f90449d8d2, type: 3}
SourcePrefabToOverride: {fileID: 0}
SourceHashToOverride: 0
OverridingTargetPrefab: {fileID: 0}

View File

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

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 91526101b975b0a4799acdfe0d1d2049
folderAsset: yes
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,647 @@
Toony Colors Pro, version 2.9
2025/09/23
<EFBFBD> 2013-2025 - Jean Moreno
=============================
QUICK START
-----------
Select one of the following shader in your material:
Built-in or URP:
- Toony Colors Pro 2/Hybrid
Built-in only:
- Toony Colors Pro 2/Standard PBS
- Toony Colors Pro 2/Standard PBS (Specular)
Then set the options in the material inspector.
To go further, you can use the Shader Generator 2 to make your own stylized shaders.
Please read the documentation for more information!
PLEASE LEAVE A REVIEW ON THE ASSET STORE IF YOU FIND THE ASSET USEFUL! It really helps!
Thank you and enjoy! :)
CONTACT
-------
Questions, suggestions, help needed?
Contact me at:
jean.moreno.public+unity@gmail.com
I'd be happy to see Toony Colors Pro 2 used in your project, so feel free to drop me a line about that! :)
UPDATE NOTES
------------
See full and formatted changelog here: https://jeanmoreno.com/unity/toonycolorspro/doc/changelog
2.9.20
#### Fixed
- [Hybrid Shader 2] (URP) Fixed compilation error with mesh rendering layers following last update
- [Hybrid Shader 2] (URP) Use proper "_CLUSTER_LIGHT_LOOP" keyword instead of "_FORWARD_PLUS" (Unity 6.1+)
2.9.19
#### Added
- [Shader Generator 2] (URP) Added support for Reflection Probes blending and box projection
- [Shader Generator 2] Code Injection: added option to ignore indent spaces (enabled by default), and "append"/"prepend" alternatives to the "replace" function to easily add code without removing the existing one
#### Fixed
- [Hybrid Shader 2][Shader Generator 2] (URP) Fixed rendering layers support in Unity 6.2
- [Shader Generator 2] (URP) Use proper "_CLUSTER_LIGHT_LOOP" keyword instead of "_FORWARD_PLUS" (Unity 6.1+)
- [Shader Generator 2] (URP) Fixed lightmap support when "GPU Resident Drawer" is active (Unity 6+)
- [Shader Generator 2] (URP) Fixed soft shadow quality levels support (low/medium/high) for platforms requiring strict static branches
- Fixed various deprecated scripting APIs triggering upgrade prompt (mostly Unity 6.1+)
- Fixed demo scripts and scenes so that the new Input System also works when enabled
- Reorganized some files
2.9.18
#### Fixed
- [Shader Generator 2] (URP) Hotfix for template outputing an error on opening
2.9.17
#### Fixed
- [Hybrid Shader 2] (URP) Fixed shader compilation error when using lightmaps
- [Shader Generator 2] (URP) Fixed shadow rendering with Terrain shaders when using "Draw Instanced" terrain option
- [Shader Generator 2] (BIRP) Fixed Planar Reflections errors and rendering with Terrains
- [Shader Generator 2] (URP) Fixed alpha cutout shadows when using dithering
- [Shader Generator 2] Fixed error when using a texture "Custom Material Property" for both vertex and fragment variables
2.9.16
#### Fixed
- [Hybrid Shader 2] (BIRP) Fixed Hybrid Shader 2 not compiling for the built-in render pipeline
- [Hybrid Shader 2] (URP) Fixed Reflection Probes when using "Forward+" and probes blending
2.9.15
#### Added
- [Hybrid Shader 2] (URP) Added support for "GPU Resident Drawer"
- [Hybrid Shader 2][Shader Generator 2] (URP) Added support for "Adaptive Probe Volumes"
#### Modified
- [Shader Generator 2] (URP) Renamed "DOTS Instancing" feature to "BRG Instancing" (for 'Batch Renderer Group') as it also enables support for GPU Resident Drawer
- [Shader Generator 2] (URP) "Forward+" and "Depth Normals Pass" support is now enabled by default in Unity 6
#### Fixed
- [Shader Generator 2] (URP) Fixed "DOTS Instancing" object and world matrices compilation errors
2.9.14
#### Fixed
- Fixed compilation error when URP is not installed in the project (for real this time)
2.9.13
#### Fixed
- Fixed compilation error when URP is not installed in the project
2.9.12
#### Added
- [Shader Generator 2] Added an option to convert vertex colors to linear space
- [Shader Generator 2] Added a menu option to update all selected shaders with the Shader Generator 2 (useful if you manually changed the template, or updated TCP2 and want to apply all latest fixes in your generated shaders)
- URP version of the Material Layers demo scene
#### Modified
- Demo Scenes reorganization: each render pipeline-specific scene has been included in a corresponding package
- Cat Demo Scene (BIRP): converted all shaders so that they use the Shader Generator 2 (they used the legacy SG1 previously)
#### Fixed
- Fixed "Planar Reflections" with Unity 6 (Built-in and URP)
- "Planar Reflections" blurring size is now resolution-independent
- [Shader Generator 2] Fixed console error when copying a shader that is at the root of the "Assets" folder
- [Shader Generator 2] Only calculate contrast and/or noise modifiers once for Material Layers
2.9.11
#### Fixed
- [Hybrid Shader 2] (URP) Fixed compilation error when using Outline with lighting while light layers are disabled
- [Hybrid Shader 2] (URP) Fixed cascaded shadow map not working when using URP 10 or lower
- [Hybrid Shader 2][Shader Generator 2] (URP) Fixed view direction calculation when camera is orthographic which caused incorrect visuals for view-dependent features (e.g. specular reflections)
- [Shader Generator 2] Fixed compilation error when "Terrain" shader is enabled and no layer has texcoord0 set as UV
- [Shader Generator 2] Fixed compilation error when "Terrain" and "Lightmaps" are enabled, but lightmap isn't enabled in the current Scene
2.9.10
#### Fixed
- [Shader Generator 2] Fixed error when updating a shader generated with a version prior to TCP2 2.9.7
- [Shader Generator 2] Fixed compilation errors when Vertex UV is used outside the XY channels as general data
2.9.9
#### Added
- [Shader Generator 2] (URP) Added DOTS instancing support: enable it in the OPTIONS section of the FEATURES tab, and then enable "DOTS Instanced" on the properties you want in the SHADER PROPERTIES tab
2.9.8
#### Added
- [Hybrid Shader 2] (URP)(BIRP) Added/fixed support for Realtime Global Illumination (Enlighten) for both render pipelines
- [Shader Generator 2] (URP) Added support for Realtime Global Illumination (Enlighten)
#### Fixed
- [Shader Generator 2] Fixed Shader Generator 2 broken with URP template in last update
2.9.7
#### Added
- [Shader Generator 2] Added the ability to change the default blending of "Material Layers", which use linear interpolation (lerp). Custom blending formulas are also possible, see the documentation.
- [Hybrid Shader 2] Added DOTS instancing support for the "Hybrid Shader 2" (needs to be explicitly enabled in the shader inspector)
#### Fixed
- [Shader Generator 2] (URP) Fixed a specular bug with "Visible over shadows" option enabled, where specular could pop out when going out of an additional light's volume
- [Shader Generator 2] Prevent NaNs on some platforms when using "Anisotropic Specular" feature
- [Shader Generator 2] Code Injection: fixed parsing line breaks for the replacement blocks (multi-line replacements)
- [Hybrid Shader 2][Shader Generator 2] Fixed possible precision issues with specular on mobile or low-precision platforms
2.9.6
#### Fixed
- [Shader Generator 2] Fixed "Vertex Displacement" in the shadow, outline and depth passes when "Make Optional" is enabled
- [Shader Generator 2] Fixed compilation when using "Texture Blending" with normal map blending enabled
- [Shader Generator 2] Fixed Light Layers support for additional lights
- [Hybrid Shader 2] Fixed SSAO issues with URP 12+
- [Hybrid Shader 2] Fixed "Fade" transparency mode not affected by color or texture alpha
- [Hybrid Shader 2] (URP) Fixed compilation error when using Forward+ with SSAO
2.9.5
#### Fixed
- [Hybrid Shader 2][Shader Generator 2] Fixed shadows on mobile when only using one cascade (and possibly fixed other shadow-related issues)
- [Shader Generator 2] Fixed "Sample Normal Map First" option for BIRP and added it for URP
- [Shader Generator 2] Added epsilon to "Blinn-Phong Specular" calculation to prevent NaN results
- [Shader Generator 2] Fixed "Albedo HSV: Saturation Only" option not working
- [Shader Generator 2] Fixed template issue when enabling Forward+ support
- [Shader Generator 2] (URP) Fixed "Parallax Mapping" causing a compile error
- [Shader Generator 2] Fixed issue where enabled GPU instanced properties in a layered property wouldn't actually be included (and cause a compile error)
2.9.4
#### Added
- [Hybrid Shader 2] Added support for "Forward+ Renderer" (URP 14+)
- [Hybrid Shader 2] Added support for "Rendering Debugger" modes (URP 14+)
- [Hybrid Shader 2] Added support for "Rendering Layers" (URP 14+) _(note: the feature is broken for lights in Unity 2022.2.0 but works for decals)_
- [Shader Generator 2] (URP) Added options to support "Light Layers" (URP 12+), "Forward+ Renderer" & "Rendering Layers" (URP 14+)
#### Fixed
- [Hybrid Shader 2] Fixed compilation errors in URP 14
- [Shader Generator 2] (URP) Fixed compilation errors in URP 14
- Fixed glass material rendering queue in scene "Demo TCP2 Hybrid Shader"
2.9.3
#### Fixed
- [Shader Generator 2] (BIRP) Fixed compilation errors related to TRANSFER_SHADOW (built-in render pipeline)
- [Shader Generator 2] (URP) Fixed "Depth Normals Pass" (and related effects like SSAO) not working with terrain shaders
- [Shader Generator 2] (URP) Fixed baked lighting not working with terrain shaders
2.9.2
#### Added
- [Shader Generator 2] (URP) Added "Enable Decals" option to add support for decals in the shader (URP 12+)
- [Shader Generator 2] (URP) Added "Enable Light Cookies" option to add support for light cookies in the shader (URP 12+)
#### Fixed
- [Hybrid Shader 2] Fixed compilation errors related to TRANSFER_SHADOW macro which could prevent builds on some platforms
- [Hybrid Shader 2] Fixed issue with newer URP features not necessarily being taken into account
- [Shader Generator 2] (URP) Fixed compilation error when enabling "Depth Normals Pass"
- [Shader Generator 2] (URP) Fixed depth-based effects with an orthographic camera
- [Shader Generator 2] Fixed compilation error when using texcoords in fragment shader for Material Layer properties only
- [Shader Generator 2] Auto-detection of used Custom Material Properties in Custom Code, so that they are properly included in the generated shader
- [Shader Generator 2] Fixed generated shader sometimes incorrectly identified as manually modified
2.9.1
#### Modified
- [Shader Generator 2] Always serialize the current TCP2 version rather than the very first one the shader has been generated with.
#### Fixed
- [Standard PBS] Restored Outlines that were broken in the last update
- [Standard PBS] Fixed Outline option not working in Unity 2021.2+
- [Standard PBS Demo] Restored Normal Map on Robot model for PBS Demo
- [Shader Generator 2] (BIRP) Fixed "no tile" sampling when using the built-in render pipeline.
2.9.0
#### Added
- [Hybrid Shader] Added the "Hybrid Shader 2", which changes the way the shader handles render pipelines internally. This will improve compatibility and maintainability with future URP versions, and allow easier shader variants stripping.
You can also now entirely exclude features you don't use from the shader code, to reduce the total variants count, build filesize and runtime memory usage. Please read the documentation to know more.
*NOTE 1:* Your materials using the old "Hybrid Shader" will need to be updated, a script will propose to do that automatically when you update TCP2, or you can use the menu option in "Tools/Toony Colors Pro/Upgrade materials".
*NOTE 2:* Lightmap support is now disabled by default because it dramatically reduces the number of shader variants; select the shader file and toggle "Lightmap" in the options to enable it back.
- [Hybrid Shader] Added support for URP 12 features: "Decals", "Light Layers", "Light Cookies"
- [Shader Generator 2] (BIRP) (URP) Added options to enable LOD Crossfading for both render pipelines
- [Shader Generator 2] (BIRP) (URP) Added procedural dithering pattern options when using "Dithered Transparency"
#### Modified
- Legacy "Desktop" and "Mobile" shaders have been removed. You can use the menu option "Tools/Toony Colors Pro/Upgrade materials/From Legacy Desktop-Mobile to Hybrid Shader 2" to upgrade your legacy materials to using the "Hybrid Shader 2"
- Removed "TCP2_BuildShaderPreprocessor" script that was used to strip out Hybrid Shader variants ("Hybrid Shader 2" does a better job at stripping out of the box)
- Minimum Unity version for TCP2 is now Unity 2019.4.12
#### Fixed
- [Shader Generator 2] "Other Shader Property" references should now accept the same as the Base property with properties from Material Layers
- [Shader Generator 2] Reloading a template will not clear the Shader Properties settings anymore
- [Shader Generator 2] (BIRP) (URP) Fixed "Wind" and "Dissolve" features not working with the "Outline" pass
- [Shader Generator 2] (BIRP) (URP) Fixed "Curved World 2020" not working for the "Outline" pass
- [Shader Generator 2] (URP) Fixed console error about "PROP:Occlusion" when "Alpha Testing" was enabled
- [TCP2_PlanarReflection] Fixed script complaining about the blur shader in a build even if blur is disabled
- [TCP2_PlanarReflection] Made the blur shader reference explicit so that Unity knows to include it in builds
2.8.1
#### Fixed
- [Shader Generator 2] (BIRP) (URP) Holes should now work in Terrain shaders
- [Shader Generator 2] (BIRP) Fixed triplanar and no-tile texture sampling
- [Shader Generator 2] (URP) Fixed reflection color not working with reflection probes
- [Shader Generator 2] (BIRP) Prevent selecting invalid texture samplers (e.g. when they use triplanar or no-tile UVs)
- [Shader Generator 2] (BIRP) (URP) Fixed some possible compilation errors when using Material Layers
- Prevent possible asmdef conflict with Cartoon FX Remaster
2.8
#### Added
- [Shader Generator 2] Added ability to generate *Terrain-compatible shaders*, with the flexibility of the Shader Properties system (see documentation and tutorials)
- [Shader Generator 2] Added option to use a "Custom Material Property" as the UV source for a "Material Property/Texture" (e.g. allowing gradient remapping effects)
- [Shader Generator 2] Added ability to reuse samplers for texture properties (Unity 2019.4+)
- [Shader Generator 2] Added "Transparency Dithering" option for the "Alpha Testing" feature with 4 included dithering pattern textures
- [Shader Generator 2] Triplanar: added "Bump Scale" option when Normal Map is enabled
- [Shader Generator 2] Triplanar UV: added "Scale" field to easily change the order of magnitude when needed (e.g. to avoid using very small UV tiling values for Terrain textures)
- [Shader Generator 2] Triplanar: added "Ceiling Smoothness" shader property when using "Min Max Threshold" ceiling mode
- [Shader Generator 2] Vertical Fog: added new options (space, make optional)
#### Modified
- [Shader Generator 2] (URP) Force normals normalization per-pixel for all platforms (was per-vertex on mobile previously). Use Code Injection if you really need to optimize things this much.
- [Shader Generator 2] (BIRP) Using "Alpha Testing" now also works with "Outline" pass (but is unlikely to work nicely visually due to the outline technique used)
- [Shader Generator 2] Generated shaders now use "shader_feature_local" and their "fragment/vertex" versions when relevant, if supported by the running Unity version (reduces global shader keyword count and compiled shader variants count)
#### Fixed
- [Hybrid Shader] [Shader Generator 2] (URP) Fixed shadow casting for point lights (URP 11+)
- [Shader Generator 2] (BIRP) Fixed normal map with triplanar UV when using "Sample Normal Map First" option
- [Shader Generator 2] (BIRP) Fixed bug where dithered shadows wouldn't work
- [Shader Generator 2] (BIRP) (URP) Rim effects correctly use triplanar normal maps if they exist
- [Shader Generator 2] (BIRP) Fixed alpha clipping in depth pass when using "Alpha to Coverage" option
- [Shader Generator 2] Fixed channels swizzle not taken into account when using "Triplanar" UV mapping on "Material Property/Texture"
- Restored Water shader and material example in the "Shader Generator 2" demo scene
2.7.4
#### Fixed
- [Hybrid Shader] (URP) Fixed an issue where shadow casting shader variants were stripped from builds when using URP (thus breaking shadows in builds)
2.7.3
#### Added
- [Hybrid Shader] Added automatic stripping of shader variants at build time, based on if the project is using URP or not
#### Fixed
- [Shader Generator 2] Fixed material inspector UI when using Material Layers
- [Shader Generator 2] Fixed UI issue with Material Layers tab
- [Shader Generator 2] Fixed small UI issues
2.7.2
#### Added
- [Shader Generator 2] Added "Progressive Sketch" option for "Sketch" stylization feature, inspired by the Tonal Art Map technique
- [Shader Generator 2] Added "Maximum Pixel Size" option for "Outline" feature when using "Clip Space" mode
- [Shader Generator 2] Added "Global Variable" option for Material Property implementations, so that they can be changed with scripts (using "Shader.SetGlobal*" methods)
- [Hybrid Shader Outline] Added a "Min Max" pixel size option for outline
#### Modified
- Updated the "TCP2 Demo Shader Generator 2" scene shaders with the latest SG2 version
- [Shader Generator 2] Changed "View Dir Ambient Sampling" label to "Single Indirect Color", so that it's the same as in the Hybrid Shader
- [Shader Generator 2] Typing a single letter in a swizzle input will expand it if necessary (e.g. typing "A" in a texture swizzle will expand it to "AAA" for a color property instead of discarding it)
- [Shader Generator 2] Now using a monospace font for "Custom Code" and Material Property "Variable" text fields
- [Shader Generator 2] Added a lot of help buttons in the FEATURES tab
#### Fixed
- [Hybrid Shader Outline] Fixed outline size that was dependent on screen resolution: this is now only the case with pixel sizes options (constant, minimum, maximum)
*NOTE: this may change the outline size of your existing materials using the Hybrid Shader Outline!*
- [Shader Generator 2] Fixed outline size that was dependent on screen resolution when in clip space: this is now only the case with pixel sizes options (constant, minimum, maximum)
- [Shader Generator 2] Fixed "Reflection Color" shader property only being applied when "Planar Reflections" was enabled
- [Shader Generator 2] Fixed errors with "Code Injection" when the referenced injection file of a shader has been modified and the shader loaded again
2.7.1
#### Added
- [Shader Generator 2] (URP) Added point lights shadow support (URP 11+)
- [Shader Generator 2] "Sine Distortion" UV animation: added "Global" option to make the calculation global to the selected texcoord channel
- [Hybrid Shader] (URP) Added point lights shadow support (URP 11+)
- [Hybrid Shader] (BIRP) Added cast shadows support for additional point/spot/directional lights (built-in render pipeline)
#### Modified
- [Shader Generator 2] Removed LWRP template
#### Fixed
- [Hybrid Shader] Fixed "Fade" transparent mode
- [Hybrid Shader] Fixed "Shadowmask" lightmap mode
- [Hybrid Shader] Fixed compilation issue in shadow pass when compiling for certain platforms
- [Shader Generator 2] Fixed global UV settings being applied multiple times with Custom Material Properties
- [Shader Generator 2] Fixed compilation error when using a different texcoord channel for layered properties
- [Shader Generator 2] Fixed some UV issues when using Custom Material Properties in layered properties
- [Shader Generator 2] (BIRP) Fixed compilation error when a Custom Material Property is used for a hook in the Lighting function of a surface shader
- [Shader Generator 2] (BIRP) Fixed worldPos and other sepcific data not being computed when they are only used in a "#if defined(UNITY_PASS_FORWARDBASE)" block
- [Shader Generator 2] (URP) Fixed spotlight shadows (URP 10+)
- [Shader Generator 2] (URP) Fixed "Shadowmask" lightmap mode (URP 10+)
- [Shader Generator 2] (URP) Fixed depth texture sampling in URP for depth effects, depending on the clipping planes values
- [Standard PBS] Fixed compilation issue on PlayStation platforms
- [Standard PBS] Fixed a different compilation issue on Switch and Xbox platforms
2.7.0
#### Added
- [Shader Generator 2] Added a new "Material Layers" system to the Shader Generator, allowing to add any number of layers in a single shader.
This can be used to make effects from simple texture blending to snow accumulation, procedural moss and more! Please read the documentation about it!
- Added "Material Layers" section in the documentation
- Added "Demo TCP2 Material Layers" to show Material Layers examples
- [Shader Generator 2] (BIRP) (URP) Added "Minimum Pixel Width" option for the "Outline" feature when "Clip Space" is selected (acts like the existing option in the "Hybrid Shader")
- [Shader Generator 2] (BIRP) Added "Sample Normal Map first" option to make sure the normal map is sampled before using world normal elsewhere (e.g. for Material Layers)
- Added texture "TCP2_SketchG_Hatches" for sketch effects
#### Modified
- [Shader Generator 2] The "Code Injection" system has been updated:
- An injection file that is updated externally (i.e. in a text editor) will automatically be reloaded when going back in Unity
- Replace blocks now need to have a name defined, and will be listed alongside other blocks
- All blocks can now be easily disabled (e.g. using a single injection file for multiple shaders)
- Planar Reflections script now allows changing the reflection Render Texture format
#### Fixed
- [Hybrid Shader] Fixed shader compilation errors when building for some platforms
- [Shader Generator 2] (URP) Fixed "Dissolve" effect with the "Outline" pass in URP
- [Shader Generator 2] (BIRP) (URP) "Triplanar" now works nicely with "Texture Blending"
- [Shader Generator 2] (BIRP) Fixed wrong attenuation value when using Lightmaps with shadow masks in Mixed Lighting setups
- Fixed the shadow color on materials in the "Demo TCP2 Hybrid Shader" scene
- [Shader Generator 2] "Outline": Correctly perform screen aspect ratio correction when outlines are in Clip Space
2.6.4
#### Fixed
- [Shader Generator 2] (URP) Fixed "Vertex Displacement" error when loading the URP template
- [Shader Generator 2] Removed serialization debug log
2.6.3
#### Added
- [Hybrid Shader] (BIRP) (URP) Added "Main Light affects Shadow Color" option to have the main light color affect the shadow color (enabled by default, this was the old behavior before v2.6.1)
- [Hybrid Shader] (BIRP) (URP) Added "Golbal Illumination" material flags options in the material inspector UI
- [Hybrid Shader] (BIRP) (URP) Added "Meta Pass" to allow baking lighting when using the Hybrid Shader
- [Hybrid Shader] (URP) Added support for SSAO and Depth Normals pass
- [Shader Generator 2] (URP) Added support for SSAO ("Enable SSAO" in the "OPTIONS" section)
- [Shader Generator 2] (URP) Added support for the Depth Normals pass ("Enable Depth Normals Pass" in the "OPTIONS" section)
- [Shader Generator 2] (BIRP) (URP) Added "Vertex Displacement" feature in the "SURFACE" section (should be easier to use than the existing "Vertex Position" Hook)
- [Shader Generator 2] "Sine Distortion" UV animation: added ability to use another texture's parameters for the animation, to synchronize both textures
- [Shader Generator 2] Added "Reflection Color" Shader Property when using "Planar Reflections"
#### Modified
- [Shader Generator 2] (BIRP) (URP) Exposed "Triplanar Parameters" in Shader Properties, and added "Triplanar Normal" hook
- [Shader Generator 2] (BIRP) (URP) "Dissolve" effect now works in the "Outline" pass as well (but it will likely have artifacts)
- [Shader Generator 2] Overwrite prompt will always be called when generating a new shader over an existing path, even if the "don't prompt" option is enabled
#### Fixed
- Fixed possible null reference error in TCP2_PlanarReflection script
- Fixed UI issue in the "Hybrid Shader Demo" at 1080p resolution (text was cropped)
- Fixed serialization issue for vectors for environments where decimals separation is a comma
- [Hybrid Shader] (BIRP) (URP) Fixed cast shadows when using "Alpha Clipping"
- [Shader Generator 2] (URP) Fixed "VertExmotion" support for URP
- [Shader Generator 2] (URP) Fixed "Directional Ambient" on mobile builds for URP
2.6.2
#### Fixed
- Fixed TCP2_PlanarReflection script compilation error in some Unity versions when URP isn't installed
2.6.1
#### Added
- [Shader Generator 2] (BIRP) (URP) Added "Planar Reflections" option that works with the eponymous script
- [Shader Generator 2] Added vertex "Local Position", "Local Normal" and "World Normal" implementations for the "Shader Properties" system
- Planar Reflection script now has an option to blur the reflection texture
#### Modified
- [Shader Generator 2] Reorganized vertex-based implementations into their own sub-menu ("Shader Properties" system)
- [Shader Generator 2] Disabled "Aura 2" third party support as it's not actually needed for compatibility
- Planar Reflection script now works with URP
- Improved UI readability for Material Inspectors: using orange labels for headers, better spacing after certain headers
#### Fixed
- [Hybrid Shader] Fixed main directional light color/intensity affecting unlit parts too when it shouldn't
- [Hybrid Shader] Fixed Occlusion being applied twice for the built-in rendering pipeline
- [Shader Generator 2] (BIRP) (URP) Fixed shadow casting when using "Curved World 2020" support
- [Shader Generator 2] (URP) Fixed "Sine Distortion" UV animation in the shadow pass when used with "World Position" UVs
- [Shader Generator 2] Copying a shader now copies "Code Injection" settings
- [Shader Generator 2] Fixed minor issues with the undo/redo system
2.6.0
#### Added
- [Shader Generator 2] (BIRP) (URP) Added Water Effects in the default templates: vertex-based waves animation & depth-based effect (color, foam, transparency)
- [Shader Generator 2] (BIRP) (URP) Added "Auto Optional Transparency" feature: it will add a "Rendering Mode" option in the material inspector to select opaque, fade or transparent mode (as in the Hybrid Shader)
- [Shader Generator 2] (BIRP) (URP) Added "Custom Time" option in the "Special Effects" section: this will override the built-in shader _Time value with a custom vector, controlable with scripts
- [Shader Generator 2] (BIRP) (URP) Added support for "Curved World 2020" third party asset
- [Shader Generator 2] Added "Sine Distortion" UV animation for "Material Property/Texture" properties: use this water-like animation for almost any texture in your shader!
- "TCP2_PlanarReflection" script: added option to define a custom background color, instead of inheriting the one from the main camera
- [Documentation] Added sections about the aforementioned new features
#### Modified
- [Shader Generator 2] (BIRP) N.V-based effect like Rim Lighting now looks a bit better (less visible vertices artefacts in some cases)
#### Fixed
- [Shader Generator 2] (BIRP) (URP) Wind: fixed Wind Texture being sampled twice
- [Shader Generator 2] (BIRP) (URP) Fixed N.V (e.g. rim effects) calculation for back faces
- [Shader Generator 2] Performance optimizations when parsing template conditions (which happens every time an option is changed)
2.5.4
#### Added
- [Shader Generator 2] Added "Code Injection" tab: this is a new system allowing to insert arbitrary code at various points in the shader file, for even more control over the resulting file. See the documentation to learn more!
#### Modified
- [Hybrid Shader] Optimizations and readability
#### Fixed
- [Shader Generator 2] (URP) Fixed compilation error with 'vertexNormalInput'
- [Shader Generator 2] Fixed "Vertex UV" implementation sampling
- [Hybrid Shader] Shadow and depth passes now respect the culling mode set in the material inspector
- [Hybrid Shader] Fixed fog calculations for mobile platforms
- [Demo] Updated the Cat Demo URP shaders with the latest template version (fixes compatibility with latest URP, notably shadows and VR)
2.5.3
#### Added
- "Animated Dissolve" example shader in the "Demo TCP2 ShaderGenerator 2" scene
- Added a tutorial about the creation of the "Animated Dissolve" shader in the documentation
- [Shader Generator 2] Added "Triplanar" UV option for "Material Property/Texture" properties: use triplanar mapping for almost any texture in your shader!
#### Modified
- [Shader Generator 2] Improved "Shader Properties" UI, notably for Unity 2019.3+
#### Fixed
- "Hologram" demo shader is now in "Toony Colors Pro 2/Examples/SG2/Hologram" instead of the root of the shaders menu
- [Shader Generator 2] (BIRP) (URP) Fixed compilation error where some features would miss variable declaration (e.g. Triplanar)
2.5.2
#### Added
- Added back the "Cat Demo URP" package that wrongly disappeared, and removed the LWRP one
- [Shader Generator 2] GPU Instancing options are now available in the OPTIONS section
- [Shader Generator 2] (BIRP) (URP) Added "Apply Shadows before Ramp" feature
#### Modified
- [Shader Generator 2] Shader output is different and simplified: all variables for all passes will always be declared in an include block at the top now
#### Fixed
- [Hybrid Shader] Fixed compilation error for outline version when using UV2 as normals and textured outline
- [Hybrid Shader] Fixed harmless GUI error when assigning Hybrid Shader Outline to a new material
- [Hybrid Shader] Fixed [MainTexture] tag to identify _BaseMap as the main texture in the shader (Unity 2019.1+)
- [Hybrid Shader Demo] Fixed UI issue when resolution isn't 720p
- [Shader Generator 2] Fixed Shader Properties marked as "GPU Instanced"
- [Shader Generator 2] "Silhouette Pass" now works with GPU Instancing
- [Shader Generator 2] Fixed error when selecting an invalid shader in the "Current Shader" field
- [Shader Generator 2] (URP) Fixed compilation errors with strict compilers (e.g. PS4)
- [Shader Generator 2] (URP) Fixed "Affect Ambient" option for "Sketch" stylization feature
- [Shader Generator 2] (URP) Fixed "View Dir Ambient Sampling" option
- [Shader Generator 2] (URP) "SRP Batcher" option is removed and now always enabled, and it also fixes some compilation errors that could happen without it
2.5.1
#### Added
- [Shader Generator 2] Check-boxes can now be toggled by clicking on their label
#### Modified
- [Hybrid Shader] Changed specular calculation for Stylized/Crisp types, so that it's visually more intuitive to change size/smoothness
- [Documentation] Updated layout and added missing "Specular" section for "Hybrid Shader"
#### Fixed
- [Hybrid Shader] Added lightmap support for URP and Built-in
- [Hybrid Shader] Reduced number of variants to compile when building when using the Outline version
- [Shader Generator 2] Fixed placement of modules functions block after variables declaration; fixes "No Tile" option for textures and possibly other modules
- [Shader Generator 2] (BIRP) (URP) Fixed "Unlit" ramp option that still needed a main directional light in the scene to work properly
- [Shader Generator 2] (URP) Fixed compilation error when using "VertExmotion" option
2.5.0
#### Added
- [TCP2 Hybrid Shader]: this is a new ubershader to replace the old Desktop/Mobile ones.
It adds a few options that were lacking, e.g. transparency, and is compatible with both the *Built-In* and *Universal render pipelines*.
Please read the documentation to know more!
- Added new demo scene: "Demo TCP2 Hybrid Shader"
- [Documentation] New updated documentation using the same format as the Shader Generator 2 documentation.
Some parts have been rewritten, and some have been added (e.g. Hybrid Shader).
- [Smoothed Normals Utility] Updated the tool, now supporting "UV1", "UV3", "UV4" targets to store the normals, as well as storing them as "Full XYZ", "Compressed XY", "Compressed ZW" for UV targets.
- [Shader Generator 2] (BIRP) (URP) Added "Bands" options for the "Ramp Style" feature in "Lighting"
#### Modified
- `Desktop` and `Mobile` shaders have been moved into the "Shaders/Legacy/" folder, as well as their shader path ("Toony Colors Pro 2/Legacy/")
- `Standard PBS` shaders have been moved into the "Shaders/Standard PBS/" folder
2.4.5
#### Added
- [Shader Generator 2] (BIRP) (URP) Added "Wrapped Lighting" feature in "Lighting"
- [Shader Generator 2] (BIRP) (URP) Added "Shadow Line Strength" property for "Shadow Line", to help make larger lines
- [Shader Generator 2] (BIRP) (URP) Exposed sine parameters as Shader Properties for "Wind" animation
#### Fixed
- [Shader Generator 2] (BIRP) (URP) Fixed fog and vertical fog when used with "Outline"
- [Shader Generator 2] (BIRP) (URP) Fixed "Texture Splatting/Blending" error when using non-Linear blend and normal map
- [Shader Generator 2] (URP) Fixed compilation error when "Outline" and "Silhouette Pass" are both enabled without "SRP Batcher Compatibility"
- [Shader Generator 2] (URP) Fixed compilation error with "Hair Anisotropic" specular
2.4.4
#### Added
- [Shader Generator 2] (BIRP) (URP) Added "Wind Animation" feature in "Special Effects"
- [Shader Generator 2] (BIRP) (URP) Added "Hair Anisotropic" option for "Specular" feature
- [Shader Generator 2] (BIRP) (URP) Added "Fresnel Reflections" option for Reflections features
- [Shader Generator 2] (BIRP) (URP) Added "Unlit" option for "Ramp Style" feature
- [Shader Generator 2] (BIRP) (URP) Added "Fresnel Reflections" options for "Reflections"
- [Shader Generator 2] (URP) Added "Clamp Light Intensities" option when using "All Lights" shadow color shading: prevent received light from exceeding a defined value
- [Shader Generator 2] (URP) Added "View Dir Ambient Sampling", allowing to have a solid color with no gradations on the whole mesh when sampling ambient color/light probes
- [Shader Generator 2] (URP) Added "Special Implementation/Ambient Color" and "Indirect Diffuse" to sample those in other properties
- [Shader Generator 2] Added "Other Shader Property" UV option for textures: use any other property as the UV source of a texture; this can allow more complicated UV calculations, or use the same source for multiple textures
- [Shader Generator 2] Added "Constant Float" implementation for "Shader Properties"
- [Shader Generator 1] Added "Shadow Color Texture" feature for the "Surface PBS" template
- Added wind animation example in "Demo TCP2 ShaderGenerator 2" scene
- Updated the "Features Reference" part of the documentation
#### Fixed
- [Shader Generator 2] (URP) Fixed main light culling layers
- [Shader Generator 2] (URP) More SRP Batcher fixes
- [Shader Generator 2] (URP) Compilation error when using "World Position" UV
- [Shader Generator 2] (BIRP) (URP) Fixed Texture Blending with Normal Maps
- [Shader Generator 2] Fixed missing text in some dynamic tooltips
- [Shader Generator 2] Removed the "Fresnel" word from the Rim Lighting feature, as both words actually describe different things
- Added a warning regarding mesh orientation for TCP2_PlanarReflection script
- Fixed console warning because of a Font import settings
2.4.33.2
- [Shader Generator 2] (URP) Fixed possible compilation errors because of new "SRP Batcher Compatibility" option
- [Shader Generator 2] Minor UI fixes
2.4.33.1
- [Shader Generator 2] (URP) Fixed broken additional passes because of new "SRP Batcher Compatibility" option
2.4.33
- [Shader Generator 2] (BIRP) (URP) Added "Shadow Line" feature in Stylization, to create a crisp line between highlighted and shadowed part. Can be used to create comic-book style shadows for example.
- [Shader Generator 2] Added "World Position" UV option for textures: use the vertex world position as texture UV. This can allow different effects, like using a world-space texture blending map to control multiple objects (ground, grass), or add a scrolling clouds shadow map for example.
- [Shader Generator 2] (URP) Added "SRP Batcher Compatibility" in the Options (experimental, let me know if it doesn't work!)
- [Shader Generator 2] Modified Shader Properties are now retained when changing template; this should make it easier to convert a shader from the built-in pipeline to URP for example.
- Added a few Sketch textures
- [Shader Generator 2] Added ability to use a custom font in the Options
- [Shader Generator 2] Improved UI and readability, especially in Unity 2019.3+
- [Shader Generator 2] (URP) Fixed shadow coordinates calculation changes introduced in URP 7.2.0
- [Shader Generator 2] (URP) Fixed Meta Pass
- [Shader Generator 2] Fixed possible unwanted variable name changes when changing template on an existing shader.
2.4.32
- [Shader Generator 2] (BIRP) (LWRP/URP) Added "Shading Ramp" hook
- [Shader Generator 2] (URP) Added options for "Silhouette" and "Outline" to make them explicitly use the "URP Render Features" and updated documentation about it
- [Shader Generator 2] (BIRP) (LWRP/URP) Changed "smoothness" to "roughness" for Specular PBR/GGX
- [Shader Generator 2] (LWRP/URP) Added GPU instancing and stereo rendering support
- [Shader Generator 2] (LWRP/URP) Fixed error when using "Vertical Fog" and "Enable Fog" in the same shader
- [Shader Generator 1] Fixed visual bug with spot light falloff bypass
2.4.31
- Added `Cat Demo URP` scene (extract it from the `Cat Demo URP.unitypackage` file)
- [Shader Generator 2] (LWRP/URP) Fixed compilation error when using Specular GGX along with Reflection Probes
- [Shader Generator 2] Fixed frequent compilation errors due to the new custom code prepend option
- [Shader Generator 2] Reloading shaders from the current output directory now works
- [Shader Generator 2] Fixed bug that was showing all Shader Properties as modified when copying a shader
- [Shader Generator 2] Performance optimizations in the UI
- Hopefully fixed mesh references that get lost when importing unitypackage in Cat demo scene
2.4.3
- [Shader Generator 2] Added 'Prepend Code' option for Custom Code implementation: add arbitrary code before the implementation to allow for more complex code insertion
- [Shader Generator 2] (BIRP) (LWRP/URP) Added "Alpha to Coverage" option for "Alpha Testing"
- [Shader Generator 2] (BIRP) Added "Aura 2" third-party support (experimental)
- [Shader Generator 2] Add Unity version on generated shaders, will be useful for support
- [Shader Generator 2] Changed how hash is calculated: old shaders opened in the tool will show a warning that they are modified externally, even though they are not. The warning will disappear once the shader is updated.
- [Shader Generator] (Water) Enabled 'Add Shadow Pass' option to enable shadow receiving for water shaders (note: not compatible with depth-buffer effects)
- [Shader Generator 2] Fixed UI bug that prevented some options from showing if `Show disabled fields` was disabled
- [Shader Generator 2] Fixed possible compilation error with texture coordinates
- [Shader Generator 2] Fixed "Vertical Fog" that was reapplied when using additional lights
- "Demo TCP2 Cat LWRP" scene: water shader now also works with orthographic cameras
- Fixed possible corrupted shaders when unpacking from the menu
2.4.2
- [Shader Generator 2] (BIRP) (LWRP/URP) Added "Vertical Fog" special effect
- [Shader Generator 2] (LWRP/URP) Fixed shader compilation error when using features with world-space view direction (e.g. "Specular")
- [Shader Generator 2] Fixed shader compilation error when using `Min Max Threshold` ceiling mode with "Triplanar Mapping"
- [Shader Generator 2] `Custom Code` implementation: fixed reference bug and improved UI on referenced implementations
- [Shader Generator 2] Fixed tiling and scrolling calculation order which could result in animation pops for Texture implementations
- [Shader Generator 1] Fixed issues with non-US culture when using C# 4.x (when using constant float values in Shader Generator 1)
- [Shader Generator 2] Fixed issue that produced a warning for generated shaders
- Cat Demo Scene: fixed mesh references in Unity 2019.1+
2.4.1
- As of version 2.4.0, the "Shaders 2.0" folder has been renamed to "Shaders".
Any shaders and files in "Shaders 2.0" or a sub-folder (e.g. "Variants") has to be moved there for the shaders to compile properly.
- Added HTML formatted changelog
- Fixed packed shaders that were unpacking in the wrong folder, causing an #include error
2.4.0
- Added "Shader Generator 2" beta: more flexible tool, with a fully-featured Lightweight/Universal Pipeline template
See the documentation to learn more!
- Added "Cat Demo LWRP" scene (extract it from the "Cat Demo LWRP.unitypackage" file)
- Shader Generator: Added "VertExmotion" support (under "Special Effects")
- Shader Generator: Enabled Dithered Shadows when using Alpha Testing with "Dithered Transparency"
- Shader Generator: fixed Outline in Single-Pass Stereo rendering mode (VR)
- Added 26 MatCap textures
- Reorganized the Textures folder
- Renamed the "Shaders 2.0" folder to "Shaders"
- Added namespaces for all TCP2 classes (except material inspectors for compatibility)
- Added .asmdef files for TCP2 scripts (Unity 2019.1+)
2.3.572
- Fixed compilation error on MacOS
- Fixed issues with non-US culture when using C# 4.x
- Regression fixed: Shader Generator: "Constant Size Outline" was broken, will take objects' scale into account again
2.3.571
- Shader Generator: "Default" template: fixed Specular Mask when using PBR Blinn-Phong or GGX models
- Shader Generator: "PBS" templates: fixed compilation issues on builds when using outlines
- Shader Generator: "Surface PBS" template: fixed Emission feature
- Shader Generator: "Water" template: fixed precision issue causing artifacts on some mobile platforms
- Shader Generator: fixed "Constant Size Outline" option so that it ignores objects' scale
- Shader Generator: UI fixes with inline features
2.3.57
- Shader Generator: upgraded "SRP/Lightweight" template to latest version (4.1.0-preview with Unity 2018.3.0b9)
- Shader Generator: "Default" template: fixed "Pixel MatCap" option when using a normal map with skinned meshes
- Shader Generator: always start with a new shader when opening the tool (don't load the last generated/loaded shader anymore)
- Added example MatCap textures
- Removed 'JMOAssets.dll', became obsolete with the Asset Store update notification system
2.3.56
- Shader Generator: added "Texture Blending" feature for "Surface PBS" template
- Shader Generator: fixed non-repeating tiling for "Texture Blending" in relevant templates
- Shader Generator: fixed masks for "Surface PBS" template (Albedo Color Mask, HSV Mask, Subsurface Scattering Mask)
- Added default non-repeating tiling noise textures
2.3.55
- Shader Generator: added "Silhouette Pass" option: simple solid color silhouette for when objects are behind obstacles
- Shader Generator: fixed fog for "Standard PBS" shaders in Unity 2018.2+
- Reorganized some files and folders
2.3.54
- Shader Generator: added more Tessellation options for "Default" template: Fixed, Distance Based and Edge Length Based
- Shader Generator: added Tessellation support for "Standard PBS" template
- Desktop/Mobile shaders: removed Directional Lightmap support for shaders, so that all variants can compile properly (max number of interpolators was reached for some combination in Unity 2018+)
- Mpbile shaders: disabled view direction calculated in the vertex shader, will be calculated in the fragment instead, so that all variants compile properly (slightly slower but it frees up one interpolator)
- Shader Generator: restored 'VertexLit' fallback for Surface PBS template, so that shadow receiving works by default
2.3.53
- Shader Generator: added "Shadow Color Mode" feature with "Replace Color" option to entirely replace the Albedo with the shadow color
- Shader Generator: updated GGX Specular to be more faithful to the Standard shader implementation
- Shader Generator: fixed GGX Specular when using Linear color space
- Shader Generator: updated Lightweight SRP template to work with Unity 2018.2 and lightweight 2.0.5-preview
- Shader Generator: Lightweight SRP template still works with Unity 2017.1 and lightweight 1.1.11-preview
2.3.52
- Shader Generator: added "Vertical Fog" option for "Default" template
- Shader Generator: fixed wrong colors and transparency in "Fade" mode with "Surface Standard PBS" template
- Shader Generator: fixed disabling depth buffer writing mode depending on transparency mode with "Surface Standard PBS" template
- Shader Generator: reorganized templates UI in foldout boxes for clarity
- Shader Generator: updated UI for clarity
- Shader Generator: harmonized UI colors for Unity Editor pro skin
2.3.51
- Shader Generator: fixed issue with "Sketch" option in "Surface Standard PBS" template
- Shader Generator: fixed "Bump Scale" option in "SRP/Lightweight" template
2.3.5
- Shader Generator: added experiment "SRP/Lightweight" template with limited features (Unity 2018.1+)
- extract "Lightweight SRP Template.unitypackage" for it to work
- Shader Generator: added "LOD Group Blending" feature (dither or cross-fade)
- script warning fix
See full and formatted changelog here: https://jeanmoreno.com/unity/toonycolorspro/doc/changelog

View File

@@ -0,0 +1,13 @@
fileFormatVersion: 2
guid: d6d278f2c506dde44ab56fd1555fb4d4
TextScriptImporter:
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/!ToonyColorsPro Readme.txt
uploadId: 794284

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: f599ea5c3d118a442a8edf7614c7fc0f
folderAsset: yes
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

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

View File

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

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View File

@@ -0,0 +1,129 @@
fileFormatVersion: 2
guid: 58c0fc773f756464e8a491182171ac65
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 9
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 0
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -100
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- serializedVersion: 2
buildTarget: DefaultTexturePlatform
maxTextureSize: 32
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Standalone
maxTextureSize: 32
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Android
maxTextureSize: 32
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: WebGL
maxTextureSize: 32
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID:
vertices: []
indices:
edges: []
weights: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Graphics/TCP2_Demo
Cross.png
uploadId: 794284

Binary file not shown.

After

Width:  |  Height:  |  Size: 217 KiB

View File

@@ -0,0 +1,129 @@
fileFormatVersion: 2
guid: c78e565eaf65cb1428fac66341a4a8bc
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 9
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 0
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.1
normalMapFilter: 1
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -100
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 1
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- serializedVersion: 2
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: WebGL
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID:
vertices: []
indices:
edges: []
weights: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Graphics/TCP2_Demo
Perlin Noise Normal.png
uploadId: 794284

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

View File

@@ -0,0 +1,129 @@
fileFormatVersion: 2
guid: 3eda0c4754885564f9df920405499055
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 9
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 0
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -100
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- serializedVersion: 2
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: WebGL
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID:
vertices: []
indices:
edges: []
weights: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Graphics/TCP2_Demo
Perlin Noise.png
uploadId: 794284

Binary file not shown.

After

Width:  |  Height:  |  Size: 340 KiB

View File

@@ -0,0 +1,84 @@
fileFormatVersion: 2
guid: 0a56ed8b745db3846972e3345f656b91
timeCreated: 1568717074
licenseType: Store
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 0
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
filterMode: -1
aniso: -1
mipBias: -1
wrapMode: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 2
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 10
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 128
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
- buildTarget: Standalone
maxTextureSize: 128
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Graphics/TCP2_Demo
Small Rocks Height.png
uploadId: 794284

Binary file not shown.

After

Width:  |  Height:  |  Size: 868 KiB

View File

@@ -0,0 +1,84 @@
fileFormatVersion: 2
guid: 8d95929314ce653489a6fa3be328f373
timeCreated: 1568710956
licenseType: Store
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 0
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
filterMode: -1
aniso: -1
mipBias: -1
wrapMode: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 1
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 128
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
- buildTarget: Standalone
maxTextureSize: 128
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Graphics/TCP2_Demo
Small Rocks Normal.png
uploadId: 794284

Binary file not shown.

After

Width:  |  Height:  |  Size: 553 KiB

View File

@@ -0,0 +1,84 @@
fileFormatVersion: 2
guid: 2e7f49d39e4fb284eb26ddf4da1611ae
timeCreated: 1568710580
licenseType: Store
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
filterMode: -1
aniso: -1
mipBias: -1
wrapMode: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 0
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 256
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
- buildTarget: Standalone
maxTextureSize: 256
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Graphics/TCP2_Demo
Small Rocks.png
uploadId: 794284

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

View File

@@ -0,0 +1,129 @@
fileFormatVersion: 2
guid: 0dad96dccfd8a344492d4cd202ff059b
TextureImporter:
fileIDToRecycleName:
8900000: generatedCubemap
externalObjects: {}
serializedVersion: 9
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: -3
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 2
aniso: -1
mipBias: -100
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 2
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- serializedVersion: 2
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: WebGL
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID:
vertices: []
indices:
edges: []
weights: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Graphics/TCP2_Demo_CubemapDay.png
uploadId: 794284

Binary file not shown.

After

Width:  |  Height:  |  Size: 597 KiB

View File

@@ -0,0 +1,129 @@
fileFormatVersion: 2
guid: 6741ab397df180148acdecc362fe5868
TextureImporter:
fileIDToRecycleName:
8900000: generatedCubemap
externalObjects: {}
serializedVersion: 9
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 2
aniso: -1
mipBias: -100
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 2
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- serializedVersion: 2
buildTarget: DefaultTexturePlatform
maxTextureSize: 4096
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Standalone
maxTextureSize: 4096
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Android
maxTextureSize: 4096
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: WebGL
maxTextureSize: 4096
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID:
vertices: []
indices:
edges: []
weights: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Graphics/TCP2_Demo_CubemapDusk.png
uploadId: 794284

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

View File

@@ -0,0 +1,129 @@
fileFormatVersion: 2
guid: 5ba058c8d7e86e648b63592545e021cb
TextureImporter:
fileIDToRecycleName:
8900000: generatedCubemap
externalObjects: {}
serializedVersion: 9
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: -3
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 2
aniso: -1
mipBias: -100
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 2
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- serializedVersion: 2
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: WebGL
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID:
vertices: []
indices:
edges: []
weights: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Graphics/TCP2_Demo_CubemapNight.png
uploadId: 794284

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

View File

@@ -0,0 +1,128 @@
fileFormatVersion: 2
guid: 0acc52ae5d23d6d40a5fcbe6548986e1
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 9
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: -3
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: 16
mipBias: -100
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 0
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- serializedVersion: 2
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: WebGL
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 011f814af30171348923b10b4a8c9be7
vertices: []
indices:
edges: []
weights: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Graphics/TCP2_Demo_Logo_180.png
uploadId: 794284

Binary file not shown.

After

Width:  |  Height:  |  Size: 428 KiB

View File

@@ -0,0 +1,75 @@
fileFormatVersion: 2
guid: 31943228e69a5b54992b5322327313e7
timeCreated: 1510317140
licenseType: Store
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: -3
maxTextureSize: 2048
textureSettings:
filterMode: -1
aniso: -1
mipBias: -1
wrapMode: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Graphics/TCP2_Demo_Sand.png
uploadId: 794284

View File

@@ -0,0 +1,30 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: TCP2_Demo_SkyboxDay
m_Shader: {fileID: 103, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords: _EMISSION
m_LightmapFlags: 1
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _Tex:
m_Texture: {fileID: 8900000, guid: 0dad96dccfd8a344492d4cd202ff059b, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _Exposure: 1
- _Rotation: 0
m_Colors:
- _Tint: {r: 0.5, g: 0.5, b: 0.5, a: 0.5}

View File

@@ -0,0 +1,15 @@
fileFormatVersion: 2
guid: b94a90c9516c9cc42bf2d46a3d63a76a
timeCreated: 1510349024
licenseType: Store
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Graphics/TCP2_Demo_SkyboxDay.mat
uploadId: 794284

View File

@@ -0,0 +1,30 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: TCP2_Demo_SkyboxDusk
m_Shader: {fileID: 103, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords: _EMISSION
m_LightmapFlags: 1
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _Tex:
m_Texture: {fileID: 8900000, guid: 6741ab397df180148acdecc362fe5868, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _Exposure: 1
- _Rotation: 0
m_Colors:
- _Tint: {r: 0.5, g: 0.5, b: 0.5, a: 0.5}

View File

@@ -0,0 +1,15 @@
fileFormatVersion: 2
guid: 5390ccc6cbba36142a51bb2d8a8b582d
timeCreated: 1510349024
licenseType: Store
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Graphics/TCP2_Demo_SkyboxDusk.mat
uploadId: 794284

View File

@@ -0,0 +1,34 @@
%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: TCP2_Demo_SkyboxNight
m_Shader: {fileID: 103, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords: _EMISSION
m_LightmapFlags: 1
m_CustomRenderQueue: -1
stringTagMap: {}
m_SavedProperties:
serializedVersion: 2
m_TexEnvs:
- first:
name: _Tex
second:
m_Texture: {fileID: 8900000, guid: 5ba058c8d7e86e648b63592545e021cb, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- first:
name: _Exposure
second: 1
- first:
name: _Rotation
second: 0
m_Colors:
- first:
name: _Tint
second: {r: 0.5, g: 0.5, b: 0.5, a: 0.5}

View File

@@ -0,0 +1,15 @@
fileFormatVersion: 2
guid: 24e37d9b5c3e0be4fab3e1defb323693
timeCreated: 1510349024
licenseType: Store
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Graphics/TCP2_Demo_SkyboxNight.mat
uploadId: 794284

View File

@@ -0,0 +1,104 @@
fileFormatVersion: 2
guid: 53788dfff3ecd8a4ca2d85ecc291d2f7
ModelImporter:
serializedVersion: 23
fileIDToRecycleName:
100000: //RootNode
400000: //RootNode
2100000: No Name
2300000: //RootNode
3300000: //RootNode
4300000: TCP2_Demo_WaterCircle
externalObjects: {}
materials:
importMaterials: 0
materialName: 0
materialSearch: 1
materialLocation: 1
animations:
legacyGenerateAnimations: 4
bakeSimulation: 0
resampleCurves: 1
optimizeGameObjects: 0
motionNodeName:
rigImportErrors:
rigImportWarnings:
animationImportErrors:
animationImportWarnings:
animationRetargetingWarnings:
animationDoRetargetingWarnings: 0
importAnimatedCustomProperties: 0
importConstraints: 0
animationCompression: 1
animationRotationError: 0.5
animationPositionError: 0.5
animationScaleError: 0.5
animationWrapMode: 0
extraExposedTransformPaths: []
extraUserProperties: []
clipAnimations: []
isReadable: 1
meshes:
lODScreenPercentages: []
globalScale: 1
meshCompression: 0
addColliders: 0
useSRGBMaterialColor: 1
importVisibility: 1
importBlendShapes: 1
importCameras: 1
importLights: 1
swapUVChannels: 0
generateSecondaryUV: 0
useFileUnits: 1
optimizeMeshForGPU: 1
keepQuads: 0
weldVertices: 1
preserveHierarchy: 0
indexFormat: 0
secondaryUVAngleDistortion: 8
secondaryUVAreaDistortion: 15.000001
secondaryUVHardAngle: 88
secondaryUVPackMargin: 4
useFileScale: 1
previousCalculatedGlobalScale: 1
hasPreviousCalculatedGlobalScale: 0
tangentSpace:
normalSmoothAngle: 60
normalImportMode: 0
tangentImportMode: 3
normalCalculationMode: 4
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
blendShapeNormalImportMode: 1
normalSmoothingSource: 0
importAnimation: 0
copyAvatar: 0
humanDescription:
serializedVersion: 2
human: []
skeleton: []
armTwist: 0.5
foreArmTwist: 0.5
upperLegTwist: 0.5
legTwist: 0.5
armStretch: 0.05
legStretch: 0.05
feetSpacing: 0
rootMotionBoneName:
hasTranslationDoF: 0
hasExtraRoot: 0
skeletonHasParents: 1
lastHumanDescriptionAvatarSource: {instanceID: 0}
animationType: 0
humanoidOversampling: 1
additionalBone: 0
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Graphics/TCP2_Demo_WaterCircle.fbx
uploadId: 794284

View File

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

View File

@@ -0,0 +1,272 @@
//
// Kino/Bloom v2 - Bloom filter for Unity
//
// Copyright (C) 2015, 2016 Keijiro Takahashi
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
//
// Modified by Jean Moreno for Cartoon FX Remaster Demo
// - effect previews in SceneView
// - disabled a code warning
using UnityEngine;
namespace Kino
{
[ExecuteInEditMode]
[RequireComponent(typeof(Camera))]
[ImageEffectAllowedInSceneView]
public class Bloom : MonoBehaviour
{
#region Public Properties
/// Prefilter threshold (gamma-encoded)
/// Filters out pixels under this level of brightness.
public float thresholdGamma
{
get { return Mathf.Max(_threshold, 0); }
set { _threshold = value; }
}
/// Prefilter threshold (linearly-encoded)
/// Filters out pixels under this level of brightness.
public float thresholdLinear
{
get { return GammaToLinear(thresholdGamma); }
set { _threshold = LinearToGamma(value); }
}
[SerializeField]
[Tooltip("Filters out pixels under this level of brightness.")]
float _threshold = 0.8f;
/// Soft-knee coefficient
/// Makes transition between under/over-threshold gradual.
public float softKnee
{
get { return _softKnee; }
set { _softKnee = value; }
}
[SerializeField, Range(0, 1)]
[Tooltip("Makes transition between under/over-threshold gradual.")]
float _softKnee = 0.5f;
/// Bloom radius
/// Changes extent of veiling effects in a screen
/// resolution-independent fashion.
public float radius
{
get { return _radius; }
set { _radius = value; }
}
[SerializeField, Range(1, 7)]
[Tooltip("Changes extent of veiling effects\n" +
"in a screen resolution-independent fashion.")]
float _radius = 2.5f;
/// Bloom intensity
/// Blend factor of the result image.
public float intensity
{
get { return Mathf.Max(_intensity, 0); }
set { _intensity = value; }
}
[SerializeField]
[Tooltip("Blend factor of the result image.")]
float _intensity = 0.8f;
/// High quality mode
/// Controls filter quality and buffer resolution.
public bool highQuality
{
get { return _highQuality; }
set { _highQuality = value; }
}
[SerializeField]
[Tooltip("Controls filter quality and buffer resolution.")]
bool _highQuality = true;
/// Anti-flicker filter
/// Reduces flashing noise with an additional filter.
[SerializeField]
[Tooltip("Reduces flashing noise with an additional filter.")]
bool _antiFlicker = true;
public bool antiFlicker
{
get { return _antiFlicker; }
set { _antiFlicker = value; }
}
#endregion
#region Private Members
#pragma warning disable 0649
[SerializeField, HideInInspector]
Shader _shader;
#pragma warning restore 0649
Material _material;
const int kMaxIterations = 16;
RenderTexture[] _blurBuffer1 = new RenderTexture[kMaxIterations];
RenderTexture[] _blurBuffer2 = new RenderTexture[kMaxIterations];
float LinearToGamma(float x)
{
#if UNITY_5_3_OR_NEWER
return Mathf.LinearToGammaSpace(x);
#else
if (x <= 0.0031308f)
return 12.92f * x;
else
return 1.055f * Mathf.Pow(x, 1 / 2.4f) - 0.055f;
#endif
}
float GammaToLinear(float x)
{
#if UNITY_5_3_OR_NEWER
return Mathf.GammaToLinearSpace(x);
#else
if (x <= 0.04045f)
return x / 12.92f;
else
return Mathf.Pow((x + 0.055f) / 1.055f, 2.4f);
#endif
}
#endregion
#region MonoBehaviour Functions
void OnEnable()
{
var shader = _shader ? _shader : Shader.Find("Hidden/Kino/Bloom");
_material = new Material(shader);
_material.hideFlags = HideFlags.DontSave;
}
void OnDisable()
{
DestroyImmediate(_material);
}
void OnRenderImage(RenderTexture source, RenderTexture destination)
{
var useRGBM = Application.isMobilePlatform;
// source texture size
var tw = source.width;
var th = source.height;
// halve the texture size for the low quality mode
if (!_highQuality)
{
tw /= 2;
th /= 2;
}
// blur buffer format
var rtFormat = useRGBM ?
RenderTextureFormat.Default : RenderTextureFormat.DefaultHDR;
// determine the iteration count
var logh = Mathf.Log(th, 2) + _radius - 8;
var logh_i = (int)logh;
var iterations = Mathf.Clamp(logh_i, 1, kMaxIterations);
// update the shader properties
var lthresh = thresholdLinear;
_material.SetFloat("_Threshold", lthresh);
var knee = lthresh * _softKnee + 1e-5f;
var curve = new Vector3(lthresh - knee, knee * 2, 0.25f / knee);
_material.SetVector("_Curve", curve);
var pfo = !_highQuality && _antiFlicker;
_material.SetFloat("_PrefilterOffs", pfo ? -0.5f : 0.0f);
_material.SetFloat("_SampleScale", 0.5f + logh - logh_i);
_material.SetFloat("_Intensity", intensity);
// prefilter pass
var prefiltered = RenderTexture.GetTemporary(tw, th, 0, rtFormat);
var pass = _antiFlicker ? 1 : 0;
Graphics.Blit(source, prefiltered, _material, pass);
// construct a mip pyramid
var last = prefiltered;
for (var level = 0; level < iterations; level++)
{
_blurBuffer1[level] = RenderTexture.GetTemporary(
last.width / 2, last.height / 2, 0, rtFormat
);
pass = (level == 0) ? (_antiFlicker ? 3 : 2) : 4;
Graphics.Blit(last, _blurBuffer1[level], _material, pass);
last = _blurBuffer1[level];
}
// upsample and combine loop
for (var level = iterations - 2; level >= 0; level--)
{
var basetex = _blurBuffer1[level];
_material.SetTexture("_BaseTex", basetex);
_blurBuffer2[level] = RenderTexture.GetTemporary(
basetex.width, basetex.height, 0, rtFormat
);
pass = _highQuality ? 6 : 5;
Graphics.Blit(last, _blurBuffer2[level], _material, pass);
last = _blurBuffer2[level];
}
// finish process
_material.SetTexture("_BaseTex", source);
pass = _highQuality ? 8 : 7;
Graphics.Blit(last, destination, _material, pass);
// release the temporary buffers
for (var i = 0; i < kMaxIterations; i++)
{
if (_blurBuffer1[i] != null)
RenderTexture.ReleaseTemporary(_blurBuffer1[i]);
if (_blurBuffer2[i] != null)
RenderTexture.ReleaseTemporary(_blurBuffer2[i]);
_blurBuffer1[i] = null;
_blurBuffer2[i] = null;
}
RenderTexture.ReleaseTemporary(prefiltered);
}
#endregion
}
}

View File

@@ -0,0 +1,21 @@
fileFormatVersion: 2
guid: 6363bba448bf64e60a763433f9ddf81b
timeCreated: 1445671165
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences:
- _shader: {fileID: 4800000, guid: 5a711a01011934ebcb58ef5ad52159d6, type: 3}
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Kino
Bloom/Bloom.cs
uploadId: 794284

View File

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

View File

@@ -0,0 +1,76 @@
//
// Kino/Bloom v2 - Bloom filter for Unity
//
// Copyright (C) 2015, 2016 Keijiro Takahashi
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
//
using UnityEngine;
using UnityEditor;
namespace Kino
{
[CanEditMultipleObjects]
[CustomEditor(typeof(Bloom))]
public class BloomEditor : Editor
{
BloomGraphDrawer _graph;
SerializedProperty _threshold;
SerializedProperty _softKnee;
SerializedProperty _radius;
SerializedProperty _intensity;
SerializedProperty _highQuality;
SerializedProperty _antiFlicker;
static GUIContent _textThreshold = new GUIContent("Threshold (gamma)");
void OnEnable()
{
_graph = new BloomGraphDrawer();
_threshold = serializedObject.FindProperty("_threshold");
_softKnee = serializedObject.FindProperty("_softKnee");
_radius = serializedObject.FindProperty("_radius");
_intensity = serializedObject.FindProperty("_intensity");
_highQuality = serializedObject.FindProperty("_highQuality");
_antiFlicker = serializedObject.FindProperty("_antiFlicker");
}
public override void OnInspectorGUI()
{
serializedObject.Update();
if (!serializedObject.isEditingMultipleObjects) {
EditorGUILayout.Space();
_graph.Prepare((Bloom)target);
_graph.DrawGraph();
EditorGUILayout.Space();
}
EditorGUILayout.PropertyField(_threshold, _textThreshold);
EditorGUILayout.PropertyField(_softKnee);
EditorGUILayout.PropertyField(_intensity);
EditorGUILayout.PropertyField(_radius);
EditorGUILayout.PropertyField(_highQuality);
EditorGUILayout.PropertyField(_antiFlicker);
serializedObject.ApplyModifiedProperties();
}
}
}

View File

@@ -0,0 +1,20 @@
fileFormatVersion: 2
guid: 036bc30d96c3349ce86bfc8d95667da7
timeCreated: 1435816745
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Kino
Bloom/Editor/BloomEditor.cs
uploadId: 794284

View File

@@ -0,0 +1,183 @@
//
// Kino/Bloom v2 - Bloom filter for Unity
//
// Copyright (C) 2015, 2016 Keijiro Takahashi
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
//
using UnityEngine;
using UnityEditor;
namespace Kino
{
// Class used for drawing the brightness response curve
public class BloomGraphDrawer
{
#region Public Methods
// Update internal state with a given bloom instance.
public void Prepare(Bloom bloom)
{
#if UNITY_5_6_OR_NEWER
if (bloom.GetComponent<Camera>().allowHDR)
#else
if (bloom.GetComponent<Camera>().hdr)
#endif
{
_rangeX = 6;
_rangeY = 1.5f;
}
else
{
_rangeX = 1;
_rangeY = 1;
}
_threshold = bloom.thresholdLinear;
_knee = bloom.softKnee * _threshold + 1e-5f;
// Intensity is capped to prevent sampling errors.
_intensity = Mathf.Min(bloom.intensity, 10);
}
// Draw the graph at the current position.
public void DrawGraph()
{
_rectGraph = GUILayoutUtility.GetRect(128, 80);
// Background
DrawRect(0, 0, _rangeX, _rangeY, 0.1f, 0.4f);
// Soft-knee range
DrawRect(_threshold - _knee, 0, _threshold + _knee, _rangeY, 0.25f, -1);
// Horizontal lines
for (var i = 1; i < _rangeY; i++)
DrawLine(0, i, _rangeX, i, 0.4f);
// Vertical lines
for (var i = 1; i < _rangeX; i++)
DrawLine(i, 0, i, _rangeY, 0.4f);
// Label
Handles.Label(
PointInRect(0, _rangeY) + Vector3.right,
"Brightness Response (linear)", EditorStyles.miniLabel
);
// Threshold line
DrawLine(_threshold, 0, _threshold, _rangeY, 0.6f);
// Response curve
var vcount = 0;
while (vcount < _curveResolution)
{
var x = _rangeX * vcount / (_curveResolution - 1);
var y = ResponseFunction(x);
if (y < _rangeY)
{
_curveVertices[vcount++] = PointInRect(x, y);
}
else
{
if (vcount > 1)
{
// Extend the last segment to the top edge of the rect.
var v1 = _curveVertices[vcount - 2];
var v2 = _curveVertices[vcount - 1];
var clip = (_rectGraph.y - v1.y) / (v2.y - v1.y);
_curveVertices[vcount - 1] = v1 + (v2 - v1) * clip;
}
break;
}
}
if (vcount > 1)
{
Handles.color = Color.white * 0.9f;
Handles.DrawAAPolyLine(2.0f, vcount, _curveVertices);
}
}
#endregion
#region Response Function
float _threshold;
float _knee;
float _intensity;
float ResponseFunction(float x)
{
var rq = Mathf.Clamp(x - _threshold + _knee, 0, _knee * 2);
rq = rq * rq * 0.25f / _knee;
return Mathf.Max(rq, x - _threshold) * _intensity;
}
#endregion
#region Graph Functions
// Number of vertices in curve
const int _curveResolution = 96;
// Vertex buffers
Vector3[] _rectVertices = new Vector3[4];
Vector3[] _lineVertices = new Vector3[2];
Vector3[] _curveVertices = new Vector3[_curveResolution];
Rect _rectGraph;
float _rangeX;
float _rangeY;
// Transform a point into the graph rect.
Vector3 PointInRect(float x, float y)
{
x = Mathf.Lerp(_rectGraph.x, _rectGraph.xMax, x / _rangeX);
y = Mathf.Lerp(_rectGraph.yMax, _rectGraph.y, y / _rangeY);
return new Vector3(x, y, 0);
}
// Draw a line in the graph rect.
void DrawLine(float x1, float y1, float x2, float y2, float grayscale)
{
_lineVertices[0] = PointInRect(x1, y1);
_lineVertices[1] = PointInRect(x2, y2);
Handles.color = Color.white * grayscale;
Handles.DrawAAPolyLine(2.0f, _lineVertices);
}
// Draw a rect in the graph rect.
void DrawRect(float x1, float y1, float x2, float y2, float fill, float line)
{
_rectVertices[0] = PointInRect(x1, y1);
_rectVertices[1] = PointInRect(x2, y1);
_rectVertices[2] = PointInRect(x2, y2);
_rectVertices[3] = PointInRect(x1, y2);
Handles.DrawSolidRectangleWithOutline(
_rectVertices,
fill < 0 ? Color.clear : Color.white * fill,
line < 0 ? Color.clear : Color.white * line
);
}
#endregion
}
}

View File

@@ -0,0 +1,20 @@
fileFormatVersion: 2
guid: 4afcb2949e7fb42679b587b8848b7e02
timeCreated: 1457674915
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Kino
Bloom/Editor/BloomGraphDrawer.cs
uploadId: 794284

View File

@@ -0,0 +1,16 @@
{
"name": "ToonyColorsPro.Demo.Editor",
"references": [
"KinoBloom.Runtime"
],
"optionalUnityReferences": [],
"includePlatforms": [
"Editor"
],
"excludePlatforms": [],
"allowUnsafeCode": false,
"overrideReferences": false,
"precompiledReferences": [],
"autoReferenced": true,
"defineConstraints": []
}

View File

@@ -0,0 +1,15 @@
fileFormatVersion: 2
guid: cd0a5c04eb538be45bab7f699da24bec
AssemblyDefinitionImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Kino
Bloom/Editor/KinoBloom.Editor.asmdef
uploadId: 794284

View File

@@ -0,0 +1,13 @@
Bloom Post Effect by Keijiro Takahashi
https://github.com/keijiro/KinoBloom
---------------------------------------
MIT License
Copyright (c) 2015-2017 Keijiro Takahashi
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

View File

@@ -0,0 +1,15 @@
fileFormatVersion: 2
guid: fd252a094a85ae0499ad570e08e4652f
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Kino
Bloom/Kino Bloom License.txt
uploadId: 794284

View File

@@ -0,0 +1,3 @@
{
"name": "KinoBloom.Runtime"
}

View File

@@ -0,0 +1,15 @@
fileFormatVersion: 2
guid: fb9ff7b799c73af479a69874581439d3
AssemblyDefinitionImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Kino
Bloom/KinoBloom.Runtime.asmdef
uploadId: 794284

View File

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

View File

@@ -0,0 +1,251 @@
//
// Kino/Bloom v2 - Bloom filter for Unity
//
// Copyright (C) 2015, 2016 Keijiro Takahashi
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
//
#include "UnityCG.cginc"
// Mobile: use RGBM instead of float/half RGB
#define USE_RGBM defined(SHADER_API_MOBILE)
sampler2D _MainTex;
sampler2D _BaseTex;
float2 _MainTex_TexelSize;
float2 _BaseTex_TexelSize;
half4 _MainTex_ST;
half4 _BaseTex_ST;
float _PrefilterOffs;
half _Threshold;
half3 _Curve;
float _SampleScale;
half _Intensity;
// Brightness function
half Brightness(half3 c)
{
return max(max(c.r, c.g), c.b);
}
// 3-tap median filter
half3 Median(half3 a, half3 b, half3 c)
{
return a + b + c - min(min(a, b), c) - max(max(a, b), c);
}
// Clamp HDR value within a safe range
half3 SafeHDR(half3 c) { return min(c, 65000); }
half4 SafeHDR(half4 c) { return min(c, 65000); }
// RGBM encoding/decoding
half4 EncodeHDR(float3 rgb)
{
#if USE_RGBM
rgb *= 1.0 / 8;
float m = max(max(rgb.r, rgb.g), max(rgb.b, 1e-6));
m = ceil(m * 255) / 255;
return half4(rgb / m, m);
#else
return half4(rgb, 0);
#endif
}
float3 DecodeHDR(half4 rgba)
{
#if USE_RGBM
return rgba.rgb * rgba.a * 8;
#else
return rgba.rgb;
#endif
}
// Downsample with a 4x4 box filter
half3 DownsampleFilter(float2 uv)
{
float4 d = _MainTex_TexelSize.xyxy * float4(-1, -1, +1, +1);
half3 s;
s = DecodeHDR(tex2D(_MainTex, uv + d.xy));
s += DecodeHDR(tex2D(_MainTex, uv + d.zy));
s += DecodeHDR(tex2D(_MainTex, uv + d.xw));
s += DecodeHDR(tex2D(_MainTex, uv + d.zw));
return s * (1.0 / 4);
}
// Downsample with a 4x4 box filter + anti-flicker filter
half3 DownsampleAntiFlickerFilter(float2 uv)
{
float4 d = _MainTex_TexelSize.xyxy * float4(-1, -1, +1, +1);
half3 s1 = DecodeHDR(tex2D(_MainTex, uv + d.xy));
half3 s2 = DecodeHDR(tex2D(_MainTex, uv + d.zy));
half3 s3 = DecodeHDR(tex2D(_MainTex, uv + d.xw));
half3 s4 = DecodeHDR(tex2D(_MainTex, uv + d.zw));
// Karis's luma weighted average (using brightness instead of luma)
half s1w = 1 / (Brightness(s1) + 1);
half s2w = 1 / (Brightness(s2) + 1);
half s3w = 1 / (Brightness(s3) + 1);
half s4w = 1 / (Brightness(s4) + 1);
half one_div_wsum = 1 / (s1w + s2w + s3w + s4w);
return (s1 * s1w + s2 * s2w + s3 * s3w + s4 * s4w) * one_div_wsum;
}
half3 UpsampleFilter(float2 uv)
{
#if HIGH_QUALITY
// 9-tap bilinear upsampler (tent filter)
float4 d = _MainTex_TexelSize.xyxy * float4(1, 1, -1, 0) * _SampleScale;
half3 s;
s = DecodeHDR(tex2D(_MainTex, uv - d.xy));
s += DecodeHDR(tex2D(_MainTex, uv - d.wy)) * 2;
s += DecodeHDR(tex2D(_MainTex, uv - d.zy));
s += DecodeHDR(tex2D(_MainTex, uv + d.zw)) * 2;
s += DecodeHDR(tex2D(_MainTex, uv )) * 4;
s += DecodeHDR(tex2D(_MainTex, uv + d.xw)) * 2;
s += DecodeHDR(tex2D(_MainTex, uv + d.zy));
s += DecodeHDR(tex2D(_MainTex, uv + d.wy)) * 2;
s += DecodeHDR(tex2D(_MainTex, uv + d.xy));
return s * (1.0 / 16);
#else
// 4-tap bilinear upsampler
float4 d = _MainTex_TexelSize.xyxy * float4(-1, -1, +1, +1) * (_SampleScale * 0.5);
half3 s;
s = DecodeHDR(tex2D(_MainTex, uv + d.xy));
s += DecodeHDR(tex2D(_MainTex, uv + d.zy));
s += DecodeHDR(tex2D(_MainTex, uv + d.xw));
s += DecodeHDR(tex2D(_MainTex, uv + d.zw));
return s * (1.0 / 4);
#endif
}
//
// Vertex shader
//
v2f_img vert(appdata_img v)
{
v2f_img o;
o.pos = UnityObjectToClipPos(v.vertex);
o.uv = UnityStereoScreenSpaceUVAdjust(v.texcoord, _MainTex_ST);
return o;
}
struct v2f_multitex
{
float4 pos : SV_POSITION;
float2 uvMain : TEXCOORD0;
float2 uvBase : TEXCOORD1;
};
v2f_multitex vert_multitex(appdata_img v)
{
v2f_multitex o;
o.pos = UnityObjectToClipPos(v.vertex);
o.uvMain = UnityStereoScreenSpaceUVAdjust(v.texcoord, _MainTex_ST);
o.uvBase = UnityStereoScreenSpaceUVAdjust(v.texcoord, _BaseTex_ST);
#if UNITY_UV_STARTS_AT_TOP
if (_BaseTex_TexelSize.y < 0.0)
o.uvBase.y = 1.0 - v.texcoord.y;
#endif
return o;
}
//
// fragment shader
//
half4 frag_prefilter(v2f_img i) : SV_Target
{
float2 uv = i.uv + _MainTex_TexelSize.xy * _PrefilterOffs;
#if ANTI_FLICKER
float3 d = _MainTex_TexelSize.xyx * float3(1, 1, 0);
half4 s0 = SafeHDR(tex2D(_MainTex, uv));
half3 s1 = SafeHDR(tex2D(_MainTex, uv - d.xz).rgb);
half3 s2 = SafeHDR(tex2D(_MainTex, uv + d.xz).rgb);
half3 s3 = SafeHDR(tex2D(_MainTex, uv - d.zy).rgb);
half3 s4 = SafeHDR(tex2D(_MainTex, uv + d.zy).rgb);
half3 m = Median(Median(s0.rgb, s1, s2), s3, s4);
#else
half4 s0 = SafeHDR(tex2D(_MainTex, uv));
half3 m = s0.rgb;
#endif
#if UNITY_COLORSPACE_GAMMA
m = GammaToLinearSpace(m);
#endif
// Pixel brightness
half br = Brightness(m);
// Under-threshold part: quadratic curve
half rq = clamp(br - _Curve.x, 0, _Curve.y);
rq = _Curve.z * rq * rq;
// Combine and apply the brightness response curve.
m *= max(rq, br - _Threshold) / max(br, 1e-5);
return EncodeHDR(m);
}
half4 frag_downsample1(v2f_img i) : SV_Target
{
#if ANTI_FLICKER
return EncodeHDR(DownsampleAntiFlickerFilter(i.uv));
#else
return EncodeHDR(DownsampleFilter(i.uv));
#endif
}
half4 frag_downsample2(v2f_img i) : SV_Target
{
return EncodeHDR(DownsampleFilter(i.uv));
}
half4 frag_upsample(v2f_multitex i) : SV_Target
{
half3 base = DecodeHDR(tex2D(_BaseTex, i.uvBase));
half3 blur = UpsampleFilter(i.uvMain);
return EncodeHDR(base + blur);
}
half4 frag_upsample_final(v2f_multitex i) : SV_Target
{
half4 base = tex2D(_BaseTex, i.uvBase);
half3 blur = UpsampleFilter(i.uvMain);
#if UNITY_COLORSPACE_GAMMA
base.rgb = GammaToLinearSpace(base.rgb);
#endif
half3 cout = base.rgb + blur * _Intensity;
#if UNITY_COLORSPACE_GAMMA
cout = LinearToGammaSpace(cout);
#endif
return half4(cout, base.a);
}

View File

@@ -0,0 +1,17 @@
fileFormatVersion: 2
guid: 1b8325918052c4c5492831d116e3ed27
timeCreated: 1463470294
licenseType: Store
ShaderImporter:
defaultTextures: []
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Kino
Bloom/Shader/Bloom.cginc
uploadId: 794284

View File

@@ -0,0 +1,141 @@
//
// Kino/Bloom v2 - Bloom filter for Unity
//
// Copyright (C) 2015, 2016 Keijiro Takahashi
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
//
Shader "Hidden/Kino/Bloom"
{
Properties
{
_MainTex("", 2D) = "" {}
_BaseTex("", 2D) = "" {}
}
SubShader
{
// 0: Prefilter
Pass
{
ZTest Always Cull Off ZWrite Off
CGPROGRAM
#pragma multi_compile _ UNITY_COLORSPACE_GAMMA
#include "Bloom.cginc"
#pragma vertex vert
#pragma fragment frag_prefilter
#pragma target 3.0
ENDCG
}
// 1: Prefilter with anti-flicker
Pass
{
ZTest Always Cull Off ZWrite Off
CGPROGRAM
#define ANTI_FLICKER 1
#pragma multi_compile _ UNITY_COLORSPACE_GAMMA
#include "Bloom.cginc"
#pragma vertex vert
#pragma fragment frag_prefilter
#pragma target 3.0
ENDCG
}
// 2: First level downsampler
Pass
{
ZTest Always Cull Off ZWrite Off
CGPROGRAM
#include "Bloom.cginc"
#pragma vertex vert
#pragma fragment frag_downsample1
#pragma target 3.0
ENDCG
}
// 3: First level downsampler with anti-flicker
Pass
{
ZTest Always Cull Off ZWrite Off
CGPROGRAM
#define ANTI_FLICKER 1
#include "Bloom.cginc"
#pragma vertex vert
#pragma fragment frag_downsample1
#pragma target 3.0
ENDCG
}
// 4: Second level downsampler
Pass
{
ZTest Always Cull Off ZWrite Off
CGPROGRAM
#include "Bloom.cginc"
#pragma vertex vert
#pragma fragment frag_downsample2
#pragma target 3.0
ENDCG
}
// 5: Upsampler
Pass
{
ZTest Always Cull Off ZWrite Off
CGPROGRAM
#include "Bloom.cginc"
#pragma vertex vert_multitex
#pragma fragment frag_upsample
#pragma target 3.0
ENDCG
}
// 6: High quality upsampler
Pass
{
ZTest Always Cull Off ZWrite Off
CGPROGRAM
#define HIGH_QUALITY 1
#include "Bloom.cginc"
#pragma vertex vert_multitex
#pragma fragment frag_upsample
#pragma target 3.0
ENDCG
}
// 7: Combiner
Pass
{
ZTest Always Cull Off ZWrite Off
CGPROGRAM
#pragma multi_compile _ UNITY_COLORSPACE_GAMMA
#include "Bloom.cginc"
#pragma vertex vert_multitex
#pragma fragment frag_upsample_final
#pragma target 3.0
ENDCG
}
// 8: High quality combiner
Pass
{
ZTest Always Cull Off ZWrite Off
CGPROGRAM
#define HIGH_QUALITY 1
#pragma multi_compile _ UNITY_COLORSPACE_GAMMA
#include "Bloom.cginc"
#pragma vertex vert_multitex
#pragma fragment frag_upsample_final
#pragma target 3.0
ENDCG
}
}
}

View File

@@ -0,0 +1,17 @@
fileFormatVersion: 2
guid: 5a711a01011934ebcb58ef5ad52159d6
timeCreated: 1435809878
licenseType: Store
ShaderImporter:
defaultTextures: []
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Kino
Bloom/Shader/Bloom.shader
uploadId: 794284

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: b7d657a527da95345ab6a80bf997b38f
folderAsset: yes
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: e5fd508c3e37c48299886fc24fff49c1
folderAsset: yes
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,124 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: TCP2_Demo Robot PBS
m_Shader: {fileID: 4800000, guid: 80412fe88398cd147be3aacebe2c3fe3, type: 3}
m_ShaderKeywords: OUTLINES TCP2_COLORS_AS_NORMALS TCP2_DISABLE_WRAPPED_LIGHT TCP2_SPEC_TOON
TCP2_STYLIZED_FRESNEL TCP2_UV_NORMALS_FULL _EMISSION _NORMALMAP
m_LightmapFlags: 1
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _Bump:
m_Texture: {fileID: 2800000, guid: 94c473c9137744d7eabd829f1150da8d, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 2800000, guid: d13af914022d95848adfec9d2951e5ae, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _Cube:
m_Texture: {fileID: 8900000, guid: 32cf25e1cd773ef43b3930a506e1b214, type: 2}
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: 2800000, guid: 90f5c2a59e018304bb00979205857f25, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _Ramp:
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
- _DstBlendOutline: 10
- _EnableOutline: 1
- _GlossMapScale: 1
- _Glossiness: 0.7
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _NormalsSource: 1
- _NormalsUVType: 0
- _OcclusionStrength: 1
- _Offset1: 0
- _Offset2: 0
- _Outline: 0.4
- _Parallax: 0.02
- _RampSmooth: 0.15
- _RampSmoothAdd: 0.5
- _RampThreshold: 0.5
- _RimMax: 0.9
- _RimMin: 0.6
- _RimPower: -1.2835822
- _RimStrength: 0.3
- _Shininess: 0.35
- _SmoothnessTextureChannel: 0
- _SpecBlend: 1
- _SpecSmooth: 1
- _SpecularHighlights: 1
- _SrcBlend: 1
- _SrcBlendOutline: 5
- _TCP2_DISABLE_WRAPPED_LIGHT: 1
- _TCP2_OUTLINE_CONST_SIZE: 0
- _TCP2_OUTLINE_TEXTURED: 0
- _TCP2_RAMPTEXT: 0
- _TCP2_SPEC_TOON: 1
- _TCP2_STYLIZED_FRESNEL: 1
- _TCP2_ZSMOOTH_ON: 0
- _TexLod: 5
- _UVSec: 0
- _ZSmooth: -0.5
- _ZWrite: 1
m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _HColor: {r: 1, g: 1, b: 1, a: 1}
- _OutlineColor: {r: 0.2509804, g: 0.2509804, b: 0.2509804, a: 0.5882353}
- _ReflectColor: {r: 1, g: 1, b: 1, a: 1}
- _RimColor: {r: 0.2, g: 0.6, b: 1, a: 0.5}
- _RimDir: {r: 0, g: 0, b: 1, a: 0}
- _SColor: {r: 0.23484801, g: 0.43726364, b: 0.716, a: 1}
- _SpecColor: {r: 0.60294116, g: 0.60294116, b: 0.60294116, a: 1}

View File

@@ -0,0 +1,16 @@
fileFormatVersion: 2
guid: 9f3a70a4a6c18ea49929fc2eabd72d1d
timeCreated: 1468663340
licenseType: Store
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Robot
Kyle/Materials/TCP2_Demo Robot PBS.mat
uploadId: 794284

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 7fed4106219f345ba8957ddcac79815a
folderAsset: yes
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,826 @@
fileFormatVersion: 2
guid: 320b1c2af77554f99a1658df4a6d3d5c
ModelImporter:
serializedVersion: 19
fileIDToRecycleName:
100000: //RootNode
100002: Right_Toe_Joint_01
100004: Right_Ankle_Joint_01
100006: Right_Knee_Joint_01
100008: Right_Thigh_Joint_01
100010: Left_Toe_Joint_01
100012: Left_Ankle_Joint_01
100014: Left_Knee_Joint_01
100016: Left_Thigh_Joint_01
100018: Hip
100020: Right_Thumb_Joint_01b
100022: Right_Thumb_Joint_01a
100024: Right_Pinky_Finger_Joint_01c
100026: Right_Pinky_Finger_Joint_01b
100028: Right_Pinky_Finger_Joint_01a
100030: Right_Ring_Finger_Joint_01c
100032: Right_Ring_Finger_Joint_01b
100034: Right_Ring_Finger_Joint_01a
100036: Right_Middle_Finger_Joint_01c
100038: Right_Middle_Finger_Joint_01b
100040: Right_Middle_Finger_Joint_01a
100042: Right_Index_Finger_Joint_01c
100044: Right_Index_Finger_Joint_01b
100046: Right_Index_Finger_Joint_01a
100048: Right_Wrist_Joint_01
100050: Right_Forearm_Joint_01
100052: Right_Upper_Arm_Joint_01
100054: Right_Shoulder_Joint_01
100056: Left_Thumb_Joint_01b
100058: Left_Thumb_Joint_01a
100060: Left_Pinky_Finger_Joint_01c
100062: Left_Pinky_Finger_Joint_01b
100064: Left_Pinky_Finger_Joint_01a
100066: Left_Ring_Finger_Joint_01c
100068: Left_Ring_Finger_Joint_01b
100070: Left_Ring_Finger_Joint_01a
100072: Left_Middle_Finger_Joint_01c
100074: Left_Middle_Finger_Joint_01b
100076: Left_Middle_Finger_Joint_01a
100078: Left_Index_Finger_Joint_01c
100080: Left_Index_Finger_Joint_01b
100082: Left_Index_Finger_Joint_01a
100084: Left_Wrist_Joint_01
100086: Left_Forearm_Joint_01
100088: Left_Upper_Arm_Joint_01
100090: Left_Shoulder_Joint_01
100092: Head
100094: Neck
100096: Ribs
100098: Root
100100: Robot2
400000: //RootNode
400002: Right_Toe_Joint_01
400004: Right_Ankle_Joint_01
400006: Right_Knee_Joint_01
400008: Right_Thigh_Joint_01
400010: Left_Toe_Joint_01
400012: Left_Ankle_Joint_01
400014: Left_Knee_Joint_01
400016: Left_Thigh_Joint_01
400018: Hip
400020: Right_Thumb_Joint_01b
400022: Right_Thumb_Joint_01a
400024: Right_Pinky_Finger_Joint_01c
400026: Right_Pinky_Finger_Joint_01b
400028: Right_Pinky_Finger_Joint_01a
400030: Right_Ring_Finger_Joint_01c
400032: Right_Ring_Finger_Joint_01b
400034: Right_Ring_Finger_Joint_01a
400036: Right_Middle_Finger_Joint_01c
400038: Right_Middle_Finger_Joint_01b
400040: Right_Middle_Finger_Joint_01a
400042: Right_Index_Finger_Joint_01c
400044: Right_Index_Finger_Joint_01b
400046: Right_Index_Finger_Joint_01a
400048: Right_Wrist_Joint_01
400050: Right_Forearm_Joint_01
400052: Right_Upper_Arm_Joint_01
400054: Right_Shoulder_Joint_01
400056: Left_Thumb_Joint_01b
400058: Left_Thumb_Joint_01a
400060: Left_Pinky_Finger_Joint_01c
400062: Left_Pinky_Finger_Joint_01b
400064: Left_Pinky_Finger_Joint_01a
400066: Left_Ring_Finger_Joint_01c
400068: Left_Ring_Finger_Joint_01b
400070: Left_Ring_Finger_Joint_01a
400072: Left_Middle_Finger_Joint_01c
400074: Left_Middle_Finger_Joint_01b
400076: Left_Middle_Finger_Joint_01a
400078: Left_Index_Finger_Joint_01c
400080: Left_Index_Finger_Joint_01b
400082: Left_Index_Finger_Joint_01a
400084: Left_Wrist_Joint_01
400086: Left_Forearm_Joint_01
400088: Left_Upper_Arm_Joint_01
400090: Left_Shoulder_Joint_01
400092: Head
400094: Neck
400096: Ribs
400098: Root
400100: Robot2
4300000: Robot2
9500000: //RootNode
11100000: //RootNode
13700000: Robot2
materials:
importMaterials: 0
materialName: 0
materialSearch: 1
animations:
legacyGenerateAnimations: 4
bakeSimulation: 0
resampleCurves: 1
optimizeGameObjects: 0
motionNodeName:
animationImportErrors:
animationImportWarnings:
animationRetargetingWarnings:
animationDoRetargetingWarnings: 0
animationCompression: 3
animationRotationError: 0.5
animationPositionError: 0.5
animationScaleError: 0.5
animationWrapMode: 0
extraExposedTransformPaths: []
clipAnimations: []
isReadable: 1
meshes:
lODScreenPercentages: []
globalScale: 0.01
meshCompression: 0
addColliders: 0
importBlendShapes: 0
swapUVChannels: 0
generateSecondaryUV: 0
useFileUnits: 1
optimizeMeshForGPU: 1
keepQuads: 0
weldVertices: 1
secondaryUVAngleDistortion: 8
secondaryUVAreaDistortion: 15.000001
secondaryUVHardAngle: 88
secondaryUVPackMargin: 4
useFileScale: 0
tangentSpace:
normalSmoothAngle: 60
normalImportMode: 0
tangentImportMode: 4
importAnimation: 1
copyAvatar: 0
humanDescription:
serializedVersion: 2
human:
- boneName: Root
humanName: Hips
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Left_Thigh_Joint_01
humanName: LeftUpperLeg
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Right_Thigh_Joint_01
humanName: RightUpperLeg
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Left_Knee_Joint_01
humanName: LeftLowerLeg
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Right_Knee_Joint_01
humanName: RightLowerLeg
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Left_Ankle_Joint_01
humanName: LeftFoot
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Right_Ankle_Joint_01
humanName: RightFoot
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Ribs
humanName: Spine
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Neck
humanName: Neck
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Head
humanName: Head
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Left_Shoulder_Joint_01
humanName: LeftShoulder
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Right_Shoulder_Joint_01
humanName: RightShoulder
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Left_Upper_Arm_Joint_01
humanName: LeftUpperArm
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Right_Upper_Arm_Joint_01
humanName: RightUpperArm
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Left_Forearm_Joint_01
humanName: LeftLowerArm
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Right_Forearm_Joint_01
humanName: RightLowerArm
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Left_Wrist_Joint_01
humanName: LeftHand
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Right_Wrist_Joint_01
humanName: RightHand
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Left_Toe_Joint_01
humanName: LeftToes
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Right_Toe_Joint_01
humanName: RightToes
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Left_Thumb_Joint_01a
humanName: Left Thumb Proximal
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Left_Thumb_Joint_01b
humanName: Left Thumb Intermediate
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Left_Index_Finger_Joint_01a
humanName: Left Index Proximal
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Left_Index_Finger_Joint_01b
humanName: Left Index Intermediate
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Left_Index_Finger_Joint_01c
humanName: Left Index Distal
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Left_Middle_Finger_Joint_01a
humanName: Left Middle Proximal
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Left_Middle_Finger_Joint_01b
humanName: Left Middle Intermediate
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Left_Middle_Finger_Joint_01c
humanName: Left Middle Distal
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Left_Ring_Finger_Joint_01a
humanName: Left Ring Proximal
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Left_Ring_Finger_Joint_01b
humanName: Left Ring Intermediate
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Left_Ring_Finger_Joint_01c
humanName: Left Ring Distal
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Left_Pinky_Finger_Joint_01a
humanName: Left Little Proximal
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Left_Pinky_Finger_Joint_01b
humanName: Left Little Intermediate
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Left_Pinky_Finger_Joint_01c
humanName: Left Little Distal
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Right_Thumb_Joint_01a
humanName: Right Thumb Proximal
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Right_Thumb_Joint_01b
humanName: Right Thumb Intermediate
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Right_Index_Finger_Joint_01a
humanName: Right Index Proximal
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Right_Index_Finger_Joint_01b
humanName: Right Index Intermediate
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Right_Index_Finger_Joint_01c
humanName: Right Index Distal
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Right_Middle_Finger_Joint_01a
humanName: Right Middle Proximal
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Right_Middle_Finger_Joint_01b
humanName: Right Middle Intermediate
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Right_Middle_Finger_Joint_01c
humanName: Right Middle Distal
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Right_Ring_Finger_Joint_01a
humanName: Right Ring Proximal
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Right_Ring_Finger_Joint_01b
humanName: Right Ring Intermediate
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Right_Ring_Finger_Joint_01c
humanName: Right Ring Distal
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Right_Pinky_Finger_Joint_01a
humanName: Right Little Proximal
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Right_Pinky_Finger_Joint_01b
humanName: Right Little Intermediate
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
- boneName: Right_Pinky_Finger_Joint_01c
humanName: Right Little Distal
limit:
min: {x: 0, y: 0, z: 0}
max: {x: 0, y: 0, z: 0}
value: {x: 0, y: 0, z: 0}
length: 0
modified: 0
skeleton:
- name: TCP2_Demo Robot Kyle(Clone)
parentName:
position: {x: 0, y: 0, z: 0}
rotation: {x: 0, y: 0, z: 0, w: 1}
scale: {x: 1, y: 1, z: 1}
- name: Robot2
parentName:
position: {x: 0, y: 0, z: 0}
rotation: {x: 0, y: -0, z: 0, w: 1}
scale: {x: 1, y: 1, z: 1}
- name: Root
parentName:
position: {x: -2.1878564e-33, y: 1.0628308, z: 0.035129853}
rotation: {x: 0.4729446, y: -0.5256648, z: -0.4729446, w: 0.5256648}
scale: {x: 1, y: 1, z: 1}
- name: Ribs
parentName:
position: {x: -0.08024527, y: 0.00062167255, z: -9.82317e-18}
rotation: {x: 0, y: 0, z: -0.009375382, w: 0.99995613}
scale: {x: 1.0000001, y: 1, z: 1}
- name: Neck
parentName:
position: {x: -0.39539942, y: 1.2878587e-16, z: -8.9015506e-17}
rotation: {x: 0, y: 0, z: 0.15122359, w: -0.9884996}
scale: {x: 0.9999999, y: 0.9999998, z: 0.9999999}
- name: Head
parentName:
position: {x: -0.079593115, y: 0, z: -2.0962138e-17}
rotation: {x: 0, y: 0, z: -0.000000012901358, w: 1}
scale: {x: 0.9999999, y: 1, z: 1}
- name: Left_Shoulder_Joint_01
parentName:
position: {x: -0.24796544, y: -0.018968333, z: 0.13130726}
rotation: {x: -0.4105823, y: 0.44783446, z: 0.5367564, w: 0.5854563}
scale: {x: 1.0000001, y: 1, z: 0.99999994}
- name: Left_Upper_Arm_Joint_01
parentName:
position: {x: -0.06358527, y: 0, z: -3.1086245e-17}
rotation: {x: 0.08105733, y: 0.12253879, z: 0.085757025, w: 0.9854237}
scale: {x: 1, y: 1.0000002, z: 1}
- name: Left_Forearm_Joint_01
parentName:
position: {x: -0.2383711, y: 0.03532467, z: -0.0012605645}
rotation: {x: -0.002279385, y: -0.0410712, z: -0.52682173, w: 0.8489799}
scale: {x: 1, y: 1, z: 1.0000002}
- name: Left_Wrist_Joint_01
parentName:
position: {x: -0.17692582, y: -0.24830171, z: 0.04193508}
rotation: {x: -0.0027681466, y: 0.008098027, z: 0.4626801, w: 0.88648397}
scale: {x: 1, y: 1.0000001, z: 0.9999998}
- name: Left_Index_Finger_Joint_01a
parentName:
position: {x: -0.07013222, y: 0.012475326, z: 0.025505245}
rotation: {x: 0.010232638, y: 0.006961088, z: -0.00866502, w: 0.9998859}
scale: {x: 1, y: 0.99999994, z: 1}
- name: Left_Index_Finger_Joint_01b
parentName:
position: {x: -0.04053395, y: -2.3314683e-17, z: 9.922638e-19}
rotation: {x: 0.0007114164, y: 0.00047986023, z: 0.0111967735, w: 0.999937}
scale: {x: 1.0000001, y: 1.0000001, z: 1.0000001}
- name: Left_Index_Finger_Joint_01c
parentName:
position: {x: -0.02294514, y: -3.190986e-16, z: 9.775166e-18}
rotation: {x: -0.011016652, y: -0.0002521863, z: -0.022881672, w: 0.9996775}
scale: {x: 0.99999994, y: 1.0000002, z: 0.99999994}
- name: Left_Middle_Finger_Joint_01a
parentName:
position: {x: -0.071809866, y: 0.012475326, z: 0.005054819}
rotation: {x: 0.010241678, y: 0.0067211445, z: -0.008701704, w: 0.99988717}
scale: {x: 1.0000001, y: 0.99999994, z: 1}
- name: Left_Middle_Finger_Joint_01b
parentName:
position: {x: -0.044052828, y: 2.220446e-18, z: 1.3147821e-18}
rotation: {x: 0.00064984796, y: 0.00044096189, z: 0.010304554, w: 0.9999466}
scale: {x: 1, y: 1.0000001, z: 0.99999994}
- name: Left_Middle_Finger_Joint_01c
parentName:
position: {x: -0.024933377, y: 1.4801235e-16, z: -4.9960034e-18}
rotation: {x: -0.010956344, y: -0.00023077764, z: -0.021056164, w: 0.99971825}
scale: {x: 0.99999994, y: 1, z: 0.9999998}
- name: Left_Ring_Finger_Joint_01a
parentName:
position: {x: -0.072257206, y: 0.012475326, z: -0.014861824}
rotation: {x: 0.010225939, y: 0.0071310024, z: -0.008639347, w: 0.999885}
scale: {x: 0.99999994, y: 1, z: 1}
- name: Left_Ring_Finger_Joint_01b
parentName:
position: {x: -0.038333587, y: -2.4980017e-18, z: 4.4126392e-18}
rotation: {x: 0.0007562086, y: 0.00050789304, z: 0.011839099, w: 0.9999295}
scale: {x: 1.0000001, y: 1.0000001, z: 1.0000001}
- name: Left_Ring_Finger_Joint_01c
parentName:
position: {x: -0.021700656, y: -6.477451e-17, z: 8.274631e-18}
rotation: {x: -0.011060443, y: -0.00026769633, z: -0.024194682, w: 0.99964607}
scale: {x: 1, y: 1, z: 0.9999998}
- name: Left_Pinky_Finger_Joint_01a
parentName:
position: {x: -0.07212005, y: 0.012475326, z: -0.03323619}
rotation: {x: 0.010191536, y: 0.007907695, z: -0.008531141, w: 0.9998804}
scale: {x: 0.9999998, y: 0.99999976, z: 1}
- name: Left_Pinky_Finger_Joint_01b
parentName:
position: {x: -0.030515512, y: -3.1502578e-17, z: 2.4720094e-18}
rotation: {x: 0.00097386836, y: 0.0006409516, z: 0.014862226, w: 0.9998889}
scale: {x: 0.99999994, y: 1.0000002, z: 1}
- name: Left_Pinky_Finger_Joint_01c
parentName:
position: {x: -0.017283713, y: -3.8666223e-16, z: 1.5274239e-17}
rotation: {x: -0.0112725785, y: -0.000342642, z: -0.030382695, w: 0.9994747}
scale: {x: 1, y: 1, z: 0.99999994}
- name: Left_Thumb_Joint_01a
parentName:
position: {x: -0.046887316, y: -0.004865311, z: 0.046988335}
rotation: {x: 0.38158312, y: 0.38118383, z: -0.19772153, w: 0.8185349}
scale: {x: 0.9999999, y: 1.0000001, z: 0.9999998}
- name: Left_Thumb_Joint_01b
parentName:
position: {x: -0.028778248, y: -0.0016480584, z: -0.002403863}
rotation: {x: -0.42036256, y: -0.37180412, z: 0.08352771, w: 0.8234562}
scale: {x: 1.0000001, y: 1, z: 1}
- name: Right_Shoulder_Joint_01
parentName:
position: {x: -0.24796993, y: -0.01896791, z: -0.13130699}
rotation: {x: 0.44783443, y: 0.41058227, z: -0.5854563, w: 0.5367564}
scale: {x: 1.0000001, y: 0.9999999, z: 0.9999996}
- name: Right_Upper_Arm_Joint_01
parentName:
position: {x: 0.063585564, y: 2.842171e-16, z: -0.000000039259945}
rotation: {x: -0.06200692, y: 0.09710601, z: 0.020602027, w: 0.993127}
scale: {x: 1.0000004, y: 1.0000001, z: 1.0000001}
- name: Right_Forearm_Joint_01
parentName:
position: {x: 0.24062023, y: 0.0051437393, z: -0.012117967}
rotation: {x: -0.7832733, y: -0.011671151, z: -0.003269787, w: -0.6215595}
scale: {x: 1, y: 1.0000001, z: 0.99999994}
- name: Right_Wrist_Joint_01
parentName:
position: {x: 0.30588374, y: -0.03317292, z: 0.007066546}
rotation: {x: 0.7051212, y: 0.00824264, z: -0.012901099, w: -0.70892155}
scale: {x: 0.99999994, y: 1, z: 0.99999976}
- name: Right_Index_Finger_Joint_01a
parentName:
position: {x: 0.06940201, y: -0.013847475, z: -0.026764035}
rotation: {x: 0.010311721, y: 0.015860317, z: -0.018614585, w: 0.99964774}
scale: {x: 1, y: 0.9999999, z: 0.9999997}
- name: Right_Index_Finger_Joint_01b
parentName:
position: {x: 0.04053422, y: -0.0000009354332, z: 0.000000022560922}
rotation: {x: 0.00071136927, y: 0.00047986908, z: 0.011196691, w: 0.999937}
scale: {x: 1, y: 1.0000002, z: 1.0000005}
- name: Right_Index_Finger_Joint_01c
parentName:
position: {x: 0.022944802, y: -0.00000007977574, z: -0.00000007166869}
rotation: {x: -0.011016649, y: -0.00025218175, z: -0.022881592, w: 0.9996775}
scale: {x: 0.99999994, y: 0.99999994, z: 0.9999999}
- name: Right_Middle_Finger_Joint_01a
parentName:
position: {x: 0.07144747, y: -0.013888802, z: -0.0063472134}
rotation: {x: 0.010317576, y: 0.015625415, z: -0.01867056, w: 0.9996504}
scale: {x: 1.0000002, y: 1.0000004, z: 1.0000005}
- name: Right_Middle_Finger_Joint_01b
parentName:
position: {x: 0.044053018, y: 0.0000006337014, z: -0.000000019575731}
rotation: {x: 0.0006497581, y: 0.0004409553, z: 0.010304447, w: 0.99994665}
scale: {x: 0.9999998, y: 1, z: 0.99999976}
- name: Right_Middle_Finger_Joint_01c
parentName:
position: {x: 0.024932733, y: -0.00000037860835, z: 0.000000067108736}
rotation: {x: -0.010956302, y: -0.00023076139, z: -0.021056136, w: 0.99971825}
scale: {x: 0.9999999, y: 1, z: 0.9999999}
- name: Right_Ring_Finger_Joint_01a
parentName:
position: {x: 0.07225248, y: -0.0139042325, z: 0.013558211}
rotation: {x: 0.010306648, y: 0.01603313, z: -0.018599637, w: 0.99964535}
scale: {x: 1, y: 1, z: 0.9999999}
- name: Right_Ring_Finger_Joint_01b
parentName:
position: {x: 0.03833457, y: -0.00000014894434, z: 0.000000029383655}
rotation: {x: 0.00075615966, y: 0.0005079195, z: 0.01183902, w: 0.9999295}
scale: {x: 1, y: 1.0000001, z: 1.0000002}
- name: Right_Ring_Finger_Joint_01c
parentName:
position: {x: 0.02170031, y: 0.00000020217867, z: -0.00000009377064}
rotation: {x: -0.011060424, y: -0.00026772564, z: -0.024194542, w: 0.9996461}
scale: {x: 0.99999994, y: 0.99999994, z: 0.9999999}
- name: Right_Pinky_Finger_Joint_01a
parentName:
position: {x: 0.07244643, y: -0.013907843, z: 0.031932004}
rotation: {x: 0.0102809295, y: 0.016810248, z: -0.018491222, w: 0.9996348}
scale: {x: 0.9999999, y: 0.9999998, z: 0.9999997}
- name: Right_Pinky_Finger_Joint_01b
parentName:
position: {x: 0.030516144, y: -0.0000000478116, z: 0.000000060660284}
rotation: {x: 0.00097382034, y: 0.00064097095, z: 0.014862117, w: 0.99988896}
scale: {x: 0.99999994, y: 1.0000002, z: 1.0000002}
- name: Right_Pinky_Finger_Joint_01c
parentName:
position: {x: 0.017282948, y: -0.00000019535615, z: 0.000000014650439}
rotation: {x: -0.011272563, y: -0.0003426636, z: -0.030382663, w: 0.9994747}
scale: {x: 1.0000001, y: 1.0000001, z: 1.0000001}
- name: Right_Thumb_Joint_01a
parentName:
position: {x: 0.046120938, y: 0.0039559877, z: -0.04782508}
rotation: {x: 0.38360626, y: 0.38477236, z: -0.20918234, w: 0.8130432}
scale: {x: 0.99999976, y: 1, z: 0.9999998}
- name: Right_Thumb_Joint_01b
parentName:
position: {x: 0.028778402, y: 0.0016480286, z: 0.0024040877}
rotation: {x: 0.122744314, y: -0.08501497, z: 0.31844968, w: 0.9361069}
scale: {x: 1.0000001, y: 1.0000002, z: 0.99999994}
- name: Hip
parentName:
position: {x: 0.028992068, y: -0.0025938721, z: 1.22991095e-17}
rotation: {x: 0.037740193, y: 0.99928766, z: 0.000000028189694, w: 0.000000031332064}
scale: {x: 0.9999996, y: 0.9999998, z: 0.99999964}
- name: Left_Thigh_Joint_01
parentName:
position: {x: -0.12213361, y: 0.011331997, z: -0.068905555}
rotation: {x: -0.99570054, y: -0.09263126, z: 0.00000005674898, w: 0.0000000017817425}
scale: {x: 1.0000004, y: 1.0000001, z: 1}
- name: Left_Knee_Joint_01
parentName:
position: {x: -0.3717338, y: -0.0019966115, z: 0.07303617}
rotation: {x: 0.00000002799456, y: 0.000000031506524, z: 0.01881248, w: 0.9998231}
scale: {x: 0.9999998, y: 0.99999994, z: 0.99999976}
- name: Left_Ankle_Joint_01
parentName:
position: {x: -0.43405014, y: -8.4273525e-18, z: -8.746468e-18}
rotation: {x: 0.8692545, y: 0.494365, z: -0.000000027994565, w: 0.00000003150653}
scale: {x: 0.99999976, y: 1, z: 0.99999964}
- name: Left_Toe_Joint_01
parentName:
position: {x: -0.13787192, y: -2.6645352e-17, z: 3.5527136e-17}
rotation: {x: -0.227292, y: -0.6695807, z: -0.227292, w: 0.66958076}
scale: {x: 1.0000001, y: 1.0000001, z: 1}
- name: Right_Thigh_Joint_01
parentName:
position: {x: -0.1221335, y: 0.011331954, z: 0.0689056}
rotation: {x: 0.0000000019551984, y: 0.00000006227345, z: -0.99570054, w: 0.09263126}
scale: {x: 1.0000001, y: 1.0000001, z: 1.0000002}
- name: Right_Knee_Joint_01
parentName:
position: {x: 0.3717341, y: -0.001996706, z: 0.073036395}
rotation: {x: 0.00000002799456, y: -0.000000031506524, z: -0.01881248, w: 0.9998231}
scale: {x: 0.9999998, y: 0.9999999, z: 0.99999976}
- name: Right_Ankle_Joint_01
parentName:
position: {x: 0.43404976, y: 0.00000007899868, z: -1.7763568e-17}
rotation: {x: 0.00000003150653, y: 0.000000027994565, z: 0.494365, w: -0.8692545}
scale: {x: 0.99999976, y: 0.99999994, z: 1}
- name: Right_Toe_Joint_01
parentName:
position: {x: 0.13787201, y: 0.00000006441087, z: -3.5527136e-17}
rotation: {x: 0.000000012219932, y: 0.000000037998728, z: -0.32143945, w: 0.94693017}
scale: {x: 1.0000002, y: 1.0000004, z: 1.0000001}
armTwist: 0.5
foreArmTwist: 0.5
upperLegTwist: 0.5
legTwist: 0.5
armStretch: 0.05
legStretch: 0.05
feetSpacing: 0
rootMotionBoneName:
rootMotionBoneRotation: {x: 0, y: 0, z: 0, w: 1}
hasTranslationDoF: 0
hasExtraRoot: 0
skeletonHasParents: 0
lastHumanDescriptionAvatarSource: {instanceID: 0}
animationType: 3
humanoidOversampling: 1
additionalBone: 0
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Robot
Kyle/Model/TCP2_Demo Robot Kyle.fbx
uploadId: 794284

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 1ad884e3b6d9c4d85a91ca91c66a540a
folderAsset: yes
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,74 @@
fileFormatVersion: 2
guid: 90f5c2a59e018304bb00979205857f25
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: -1
maxTextureSize: 1024
textureSettings:
filterMode: 1
aniso: -1
mipBias: -1
wrapMode: 0
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 1024
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Robot
Kyle/Textures/TCP2_Demo Robot_Color.png
uploadId: 794284

View File

@@ -0,0 +1,129 @@
fileFormatVersion: 2
guid: 2df7e900b89bbae44b88897b59da1e86
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 9
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: -1
maxTextureSize: 1024
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: -1
mipBias: -100
wrapU: 0
wrapV: 0
wrapW: 0
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 0
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- serializedVersion: 2
buildTarget: DefaultTexturePlatform
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Standalone
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Android
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: WebGL
maxTextureSize: 1024
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID:
vertices: []
indices:
edges: []
weights: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Robot
Kyle/Textures/TCP2_Demo Robot_Color_NoAlpha.png
uploadId: 794284

View File

@@ -0,0 +1,148 @@
fileFormatVersion: 2
guid: d13af914022d95848adfec9d2951e5ae
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 0
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 0
wrapV: 0
wrapW: 0
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 1
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
applyGammaDecoding: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Robot
Kyle/Textures/TCP2_Demo Robot_Normal.png
uploadId: 794284

View File

@@ -0,0 +1,74 @@
fileFormatVersion: 2
guid: 2fb9975c379e44e44b7abcf981468c32
TextureImporter:
fileIDToRecycleName: {}
serializedVersion: 4
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
grayScaleToAlpha: 1
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: -1
maxTextureSize: 1024
textureSettings:
filterMode: 1
aniso: -1
mipBias: -1
wrapMode: 0
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spritePixelsToUnits: 100
alphaUsage: 2
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- buildTarget: DefaultTexturePlatform
maxTextureSize: 1024
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Robot
Kyle/Textures/TCP2_Demo Robot_Thickness.png
uploadId: 794284

View File

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

View File

@@ -0,0 +1,90 @@
// Toony Colors Pro+Mobile 2
// (c) 2014-2023 Jean Moreno
using System;
using UnityEngine;
using UnityEngine.UI;
namespace ToonyColorsPro
{
namespace Demo
{
public class TCP2_Demo_AnimateMaterial : MonoBehaviour
{
[Serializable]
public class AnimatedProperty
{
public enum MaterialPropertyType
{
Float,
Color,
Vector4
}
public string Name = "_Color";
public MaterialPropertyType Type = MaterialPropertyType.Float;
public AnimationCurve Curve = AnimationCurve.EaseInOut(0, 0, 1, 1);
public float Duration = 1;
[Space]
public float FloatFrom = 0;
public float FloatTo = 1;
[Space]
public Color ColorFrom = Color.black;
public Color ColorTo = Color.white;
[Space]
public Vector4 VectorFrom = Vector4.zero;
public Vector4 VectorTo = Vector4.one;
int propertyId;
public void Init()
{
this.propertyId = Shader.PropertyToID(this.Name);
}
public void Update(Material material)
{
float time = Curve.Evaluate((Time.time % Duration) / Duration);
switch (Type)
{
case MaterialPropertyType.Float:
material.SetFloat(propertyId, Mathf.Lerp(FloatFrom, FloatTo, time));
break;
case MaterialPropertyType.Color:
material.SetColor(propertyId, Color.Lerp(ColorFrom, ColorTo, time));
break;
case MaterialPropertyType.Vector4:
material.SetVector(propertyId, Vector4.Lerp(VectorFrom, VectorTo, time));
break;
}
}
}
public Material material;
public AnimatedProperty[] animatedProperties;
void Awake()
{
if (animatedProperties != null)
{
foreach (var animatedProp in animatedProperties)
{
animatedProp.Init();
}
}
}
void Update()
{
if (animatedProperties != null)
{
foreach (var animatedProp in animatedProperties)
{
animatedProp.Update(material);
}
}
}
}
}
}

View File

@@ -0,0 +1,19 @@
fileFormatVersion: 2
guid: 16c370a298a2b3d4aae8cad9e924898f
timeCreated: 1509119575
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Scripts/TCP2_Demo_AnimateMaterial.cs
uploadId: 794284

View File

@@ -0,0 +1,14 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class TCP2_Demo_AutoRotate : MonoBehaviour
{
public Vector3 axis = Vector3.up;
public float Speed = -50f;
void Update()
{
this.transform.Rotate(axis, Time.deltaTime * Speed);
}
}

View File

@@ -0,0 +1,19 @@
fileFormatVersion: 2
guid: f4b74aadd00d9d549a23e8f134fa334d
timeCreated: 1569920439
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Scripts/TCP2_Demo_AutoRotate.cs
uploadId: 794284

View File

@@ -0,0 +1,177 @@
// Toony Colors Pro+Mobile 2
// (c) 2014-2023 Jean Moreno
using UnityEngine;
using UnityEngine.EventSystems;
#if TCP2_NEW_INPUT_SYSTEM && ENABLE_INPUT_SYSTEM
using UnityEngine.InputSystem.UI;
#endif
namespace ToonyColorsPro
{
namespace Demo
{
public class TCP2_Demo_Camera : MonoBehaviour
{
//--------------------------------------------------------------------------------------------------
// PUBLIC INSPECTOR PROPERTIES
public Transform Pivot;
public Vector3 pivotOffset;
[Header("Orbit")]
public float OrbitStrg = 3f;
public float OrbitClamp = 50f;
[Header("Panning")]
public float PanStrgMin = 0.1f;
public float PanStrgMax = 0.5f;
[Header("Zooming")]
public float ZoomStrg = 40f;
public float ZoomClamp = 30f;
public float ZoomDistMin = 1f;
public float ZoomDistMax = 2f;
[Header("Misc")]
public float Decceleration = 8f;
public RectTransform ignoreMouseRect;
public EventSystem uiEventSystem;
Rect ignoreMouseActualRect;
//--------------------------------------------------------------------------------------------------
// PRIVATE PROPERTIES
Vector2 mouseDelta;
Vector2 lastMousePos;
Vector3 orbitAcceleration;
Vector3 panAcceleration;
Vector3 moveAcceleration;
float zoomAcceleration;
float zoomDistance;
const float XMax = 60;
const float XMin = 300;
Vector3 mResetCamPos, mResetPivotPos, mResetCamRot, mResetPivotRot;
//--------------------------------------------------------------------------------------------------
// UNITY EVENTS
void Awake()
{
mResetCamPos = transform.position;
mResetCamRot = transform.eulerAngles;
mResetPivotPos = Pivot.position;
mResetPivotRot = Pivot.eulerAngles;
if (uiEventSystem != null)
{
#if TCP2_NEW_INPUT_SYSTEM && ENABLE_INPUT_SYSTEM
uiEventSystem.gameObject.AddComponent<InputSystemUIInputModule>();
#else
uiEventSystem.gameObject.AddComponent<StandaloneInputModule>();
#endif
}
}
void OnEnable()
{
lastMousePos = InputAbstraction.Mouse_Position;
Vector2 size = Vector2.Scale(ignoreMouseRect.rect.size, ignoreMouseRect.lossyScale);
Rect rect = new Rect(ignoreMouseRect.position.x, ignoreMouseRect.position.y, size.x, size.y);
rect.x -= (ignoreMouseRect.pivot.x * size.x);
rect.y -= ((-ignoreMouseRect.pivot.y) * size.y);
ignoreMouseActualRect = rect;
}
void FixedUpdate()
{
var mousePos = InputAbstraction.Mouse_Position;
mouseDelta = mousePos - lastMousePos;
mouseDelta.x = Mathf.Clamp(mouseDelta.x, -150f, 150f);
mouseDelta.y = Mathf.Clamp(mouseDelta.y, -150f, 150f);
lastMousePos = mousePos;
}
void Update()
{
// mouseDelta = InputAbstraction.Mouse_Position - mouseDelta;
var ignoreMouse = ignoreMouseRect != null && ignoreMouseActualRect.Contains(InputAbstraction.Mouse_Position);
//Left Button held
if (!ignoreMouse && InputAbstraction.Mouse_LeftDown)
{
orbitAcceleration.x += Mathf.Clamp(mouseDelta.x * OrbitStrg, -OrbitClamp, OrbitClamp);
orbitAcceleration.y += Mathf.Clamp(-mouseDelta.y * OrbitStrg, -OrbitClamp, OrbitClamp);
}
//Middle/Right Button held
else if (!ignoreMouse && (InputAbstraction.Mouse_MiddleDown || InputAbstraction.Mouse_RightDown))
{
var str = Mathf.Lerp(PanStrgMin, PanStrgMax, Mathf.Clamp01((zoomDistance - ZoomDistMin) / (ZoomDistMax - ZoomDistMin)));
panAcceleration.x = -mouseDelta.x * str;
panAcceleration.y = -mouseDelta.y * str;
}
//Keyboard support
//orbitAcceleration.x += Input.GetKey(KeyCode.LeftArrow) ? 15 : (Input.GetKey(KeyCode.RightArrow) ? -15 : 0);
//orbitAcceleration.y += Input.GetKey(KeyCode.UpArrow) ? 15 : (Input.GetKey(KeyCode.DownArrow) ? -15 : 0);
if (InputAbstraction.KeyDown_R)
{
ResetView();
}
//X Angle Clamping
var angle = transform.localEulerAngles;
if (angle.x < 180 && angle.x >= XMax && orbitAcceleration.y > 0) orbitAcceleration.y = 0;
if (angle.x > 180 && angle.x <= XMin && orbitAcceleration.y < 0) orbitAcceleration.y = 0;
Vector3 pivotPlusOffset = Pivot.position + pivotOffset;
//Rotate
transform.RotateAround(pivotPlusOffset, transform.right, orbitAcceleration.y * Time.deltaTime);
transform.RotateAround(pivotPlusOffset, Vector3.up, orbitAcceleration.x * Time.deltaTime);
//Pan
pivotOffset += transform.TransformDirection(panAcceleration) * Time.deltaTime;
//Pivot.Translate(panAcceleration * Time.deltaTime, transform);
transform.Translate(panAcceleration * Time.deltaTime, transform);
//Zoom
var scrollWheel = InputAbstraction.Mouse_ScrollWheel;
scrollWheel = scrollWheel > 0 ? 0.1f : (scrollWheel < 0 ? -0.1f : 0);
zoomAcceleration += scrollWheel * ZoomStrg;
zoomAcceleration = Mathf.Clamp(zoomAcceleration, -ZoomClamp, ZoomClamp);
zoomDistance = Vector3.Distance(transform.position, pivotPlusOffset);
if ((zoomDistance >= ZoomDistMin && zoomAcceleration > 0) || (zoomDistance <= ZoomDistMax && zoomAcceleration < 0))
{
transform.Translate(Vector3.forward * (zoomAcceleration * Time.deltaTime), Space.Self);
}
//Decelerate
orbitAcceleration = Vector3.Lerp(orbitAcceleration, Vector3.zero, Decceleration * Time.deltaTime);
panAcceleration = Vector3.Lerp(panAcceleration, Vector3.zero, Decceleration * Time.deltaTime);
zoomAcceleration = Mathf.Lerp(zoomAcceleration, 0, Decceleration * Time.deltaTime);
moveAcceleration = Vector3.Lerp(moveAcceleration, Vector3.zero, Decceleration * Time.deltaTime);
// mouseDelta = InputAbstraction.Mouse_Position;
}
//--------------------------------------------------------------------------------------------------
// MISC
void ResetView()
{
moveAcceleration = Vector3.zero;
orbitAcceleration = Vector3.zero;
panAcceleration = Vector3.zero;
pivotOffset = Vector3.zero;
zoomAcceleration = 0f;
transform.position = mResetCamPos;
transform.eulerAngles = mResetCamRot;
Pivot.position = mResetPivotPos;
Pivot.eulerAngles = mResetPivotRot;
}
}
}
}

View File

@@ -0,0 +1,19 @@
fileFormatVersion: 2
guid: 879e454200e73ec4ebf2a93ad7829474
timeCreated: 1468667897
licenseType: Store
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Scripts/TCP2_Demo_Camera.cs
uploadId: 794284

View File

@@ -0,0 +1,357 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Rendering;
using UnityEngine.UI;
namespace ToonyColorsPro
{
namespace Demo
{
public class TCP2_Demo_Interactive : MonoBehaviour
{
public TCP2_Demo_Camera demoCamera;
new public Camera camera;
public Canvas canvas;
public CanvasScaler canvasScaler;
[Space]
public HorizontalLayoutGroup layoutGroup;
public ContentSizeFitter sizeFitter;
[Space]
public RectTransform textBox;
public Text text;
public Image line;
[Space]
public float camAnimDuration = 0.5f;
public float maxCamAnimDuration = 1.0f;
public bool camAnimBasedOnDistance = false;
public float uiAnimDuration = 0.5f;
[Space]
public Button envButtonTemplate;
Button[] envButtons;
public Text highlightLabel;
TCP2_Demo_Interactive_Content[] contents;
TCP2_Demo_Interactive_Content currentContent;
int index = -1;
TCP2_Demo_Interactive_Environment[] lightings;
int lightingIndex = 0;
Color envButtonColor;
Vector3 cameraResetPos;
Quaternion cameraResetQuat;
Transform resetPivot;
void Awake()
{
contents = this.GetComponentsInChildren<TCP2_Demo_Interactive_Content>();
lightings = this.GetComponentsInChildren<TCP2_Demo_Interactive_Environment>(true);
if (QualitySettings.activeColorSpace == ColorSpace.Gamma)
{
foreach (var lighting in lightings)
{
var lights = lighting.GetComponentsInChildren<Light>();
foreach (var light in lights)
{
light.intensity = light.intensity * 0.6f;
}
}
RenderSettings.ambientIntensity = 0.6f;
RenderSettings.reflectionIntensity = 0.6f;
}
envButtonColor = envButtonTemplate.GetComponent<Image>().color;
envButtons = new Button[lightings.Length];
for (int i = 0; i < lightings.Length; i++)
{
var btnGo = GameObject.Instantiate(envButtonTemplate.gameObject);
btnGo.name = envButtonTemplate.name + "_" + i;
btnGo.transform.SetParent(envButtonTemplate.transform.parent);
btnGo.transform.SetSiblingIndex(envButtonTemplate.transform.GetSiblingIndex());
var text = btnGo.GetComponentInChildren<Text>();
text.text = lightings[i].name;
var btn = btnGo.GetComponent<Button>();
int ci = i;
btn.onClick.AddListener(new UnityEngine.Events.UnityAction(() => { this.OnSelectLightingSettings(ci); }));
envButtons[i] = btn;
}
envButtonTemplate.gameObject.SetActive(false);
OnSelectLightingSettings(0);
cameraResetPos = camera.transform.position;
cameraResetQuat = camera.transform.rotation;
resetPivot = demoCamera.Pivot;
}
void LateUpdate()
{
HandleKeyboard();
if (index >= 0 && !coroutineActive)
{
UpdateViewToCurrentContent();
}
}
void HandleKeyboard()
{
if (InputAbstraction.KeyDown_Delete || InputAbstraction.KeyDown_H)
{
canvas.enabled = !canvas.enabled;
}
if (InputAbstraction.KeyDown_Escape)
{
ResetView();
}
if (InputAbstraction.KeyDown_RightArrow)
{
NextHighlight();
}
if (InputAbstraction.KeyDown_LeftArrow)
{
PrevHighlight();
}
if(InputAbstraction.KeyDown_Tab)
{
if (InputAbstraction.Key_LeftShift || InputAbstraction.Key_RightShift)
{
lightingIndex--;
if (lightingIndex < 0) lightingIndex = envButtons.Length - 1;
}
else
{
lightingIndex++;
if (lightingIndex >= envButtons.Length) lightingIndex = 0;
}
OnSelectLightingSettings(lightingIndex);
}
}
public void PrevHighlight()
{
index--;
if (index < 0) index = contents.Length - 1;
StopAllCoroutines();
StartCoroutine(CR_MoveToContent(contents[index]));
highlightLabel.text = contents[index].name;
}
public void NextHighlight()
{
index++;
if (index >= contents.Length) index = 0;
StopAllCoroutines();
StartCoroutine(CR_MoveToContent(contents[index]));
highlightLabel.text = contents[index].name;
}
void UpdateViewToCurrentContent(float lengthPercent = 1.0f)
{
var screenPos = camera.WorldToScreenPoint(currentContent.pivot.position);
var endPos = camera.WorldToScreenPoint(currentContent.textBox.position);
textBox.position = endPos;
var w2 = textBox.rect.width / 2.0f;
var h2 = textBox.rect.height / 2.0f;
// check if text box exceeds screen bounds
if (endPos.x - w2 < 0)
{
endPos.x = w2;
}
if (endPos.x + w2 > Screen.width)
{
endPos.x = Screen.width - w2;
}
if (endPos.y - h2 < 0)
{
endPos.y = h2;
}
if (endPos.y + h2 > Screen.height)
{
endPos.y = Screen.height - h2;
}
textBox.position = endPos;
PlaceLine(endPos, screenPos, lengthPercent);
}
void PlaceLine(Vector2 start, Vector2 end, float lengthPercentage)
{
line.rectTransform.position = start;
start.y = -start.y;
end.y = -end.y;
float angle = Vector2.SignedAngle((start - end).normalized, Vector2.up);
var r = line.rectTransform.localEulerAngles;
r.z = angle;
line.rectTransform.localEulerAngles = r;
// Need to find canvas ratio according to resolution for proper distance calculation
float ratio = canvasScaler.referenceResolution.x / Screen.width;
float dist = Vector2.Distance(start, end) * lengthPercentage;
dist *= ratio;
var sd = line.rectTransform.sizeDelta;
sd.y = dist;
line.rectTransform.sizeDelta = sd;
}
void ResetView()
{
canvas.enabled = false;
StopAllCoroutines();
StartCoroutine(CR_ResetCamPos());
highlightLabel.text = "...";
}
IEnumerator CR_ResetCamPos()
{
// --------------------------------
// Animate Camera
demoCamera.Pivot = resetPivot;
demoCamera.pivotOffset = Vector3.zero;
Vector3 startPos = camera.transform.position;
Vector3 endPos = cameraResetPos;
Quaternion startQuat = camera.transform.rotation;
Quaternion endQuat = cameraResetQuat;
float duration = camAnimBasedOnDistance ? Vector3.Distance(startPos, endPos) * camAnimDuration : camAnimDuration;
duration = Mathf.Min(duration, maxCamAnimDuration);
float time = duration;
while (time > 0)
{
time -= Time.deltaTime;
yield return null;
float delta = Mathf.SmoothStep(0, 1, 1 - Mathf.Clamp01(time/duration));
camera.transform.position = Vector3.Lerp(startPos, endPos, delta);
camera.transform.rotation = Quaternion.Slerp(startQuat, endQuat, delta);
}
}
bool coroutineActive;
IEnumerator CR_MoveToContent(TCP2_Demo_Interactive_Content content)
{
coroutineActive = true;
// Hide UI
canvas.enabled = false;
// --------------------------------
// Animate Camera
Vector3 startPos = camera.transform.position;
Vector3 endPos = content.transform.position;
Quaternion startQuat = camera.transform.rotation;
Quaternion endQuat = content.transform.rotation;
float duration = camAnimBasedOnDistance ? Vector3.Distance(startPos, endPos) * camAnimDuration : camAnimDuration;
duration = Mathf.Min(duration, maxCamAnimDuration);
float time = duration;
while (time > 0)
{
time -= Time.deltaTime;
yield return null;
float delta = Mathf.SmoothStep(0, 1, 1 - Mathf.Clamp01(time/duration));
camera.transform.position = Vector3.Lerp(startPos, endPos, delta);
camera.transform.rotation = Quaternion.Slerp(startQuat, endQuat, delta);
}
currentContent = contents[index];
camera.transform.position = currentContent.transform.position;
camera.transform.rotation = currentContent.transform.rotation;
demoCamera.Pivot = currentContent.pivot;
demoCamera.pivotOffset = Vector3.zero;
text.text = currentContent.Text;
UpdateViewToCurrentContent(0f);
yield return null;
UpdateViewToCurrentContent(0f);
yield return null;
UpdateViewToCurrentContent(0f);
// --------------------------------
// Resize the text box according to its content
layoutGroup.enabled = true;
sizeFitter.enabled = true;
yield return null;
// Disable text box resizing as content won't change
layoutGroup.enabled = false;
sizeFitter.enabled = false;
// Show UI
canvas.enabled = true;
// --------------------------------
// Animate UI
textBox.localScale = Vector3.zero;
duration = uiAnimDuration;
time = duration;
while (time > 0)
{
time -= Time.deltaTime;
yield return null;
float delta = Mathf.SmoothStep(0, 1, 1 - Mathf.Clamp01(time/duration));
// Text box
textBox.localScale = Vector3.Lerp(Vector3.zero, Vector3.one, delta);
line.rectTransform.localScale = new Vector3(1 / textBox.localScale.x, 1 / textBox.localScale.y, 1);
// Line length + repositioning
UpdateViewToCurrentContent(delta);
}
// --------------------------------
coroutineActive = false;
}
void OnSelectLightingSettings(int index)
{
lightingIndex = index;
lightings[index].ApplyEnvironment();
for (int i = 0; i < envButtons.Length; i++)
{
envButtons[i].GetComponent<Image>().color = (i == index) ? new Color(0.6f, 0.2f, 0.0f) : envButtonColor;
}
}
public GameObject infoBox;
public void HideInfoBox()
{
infoBox.SetActive(false);
}
}
}
}

View File

@@ -0,0 +1,18 @@
fileFormatVersion: 2
guid: 8f6df60f3f97ebb48a7f591ef70fa0aa
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Scripts/TCP2_Demo_Interactive.cs
uploadId: 794284

View File

@@ -0,0 +1,15 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
namespace ToonyColorsPro
{
public class TCP2_Demo_Interactive_Content : MonoBehaviour
{
public Transform pivot;
public Transform textBox;
[Space]
[TextArea] public string Text = "This is the text inside the text box.";
}
}

View File

@@ -0,0 +1,18 @@
fileFormatVersion: 2
guid: b6d2c78e07a965a4e9cbcf5cc621ae8b
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Scripts/TCP2_Demo_Interactive_Content.cs
uploadId: 794284

View File

@@ -0,0 +1,63 @@
using UnityEngine;
#if UNITY_EDITOR
using UnityEditor;
#endif
namespace ToonyColorsPro
{
namespace Demo
{
public class TCP2_Demo_Interactive_Environment : MonoBehaviour
{
public Material skybox;
public void ApplyEnvironment()
{
var root = this.transform.parent;
var envs = root.GetComponentsInChildren<TCP2_Demo_Interactive_Environment>();
foreach (var env in envs)
{
env.gameObject.SetActive(false);
}
this.gameObject.SetActive(true);
RenderSettings.skybox = this.skybox;
#if UNITY_2022_1_OR_NEWER
RenderSettings.customReflectionTexture =
#else
RenderSettings.customReflection =
#endif
(Cubemap)this.skybox.GetTexture("_Tex");
if (Application.isPlaying)
{
DynamicGI.UpdateEnvironment();
}
}
}
}
}
#if UNITY_EDITOR
namespace ToonyColorsPro
{
namespace Demo
{
[CustomEditor(typeof(TCP2_Demo_Interactive_Environment))]
public class TCP2_Demo_Interactive_Environment_Editor : Editor
{
public override void OnInspectorGUI()
{
base.OnInspectorGUI();
GUILayout.Space(8);
if (GUILayout.Button("Apply Environment"))
{
(target as TCP2_Demo_Interactive_Environment).ApplyEnvironment();
}
}
}
}
}
#endif

View File

@@ -0,0 +1,18 @@
fileFormatVersion: 2
guid: 99f02dbbf381c2b41808c7cb34a2e351
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Scripts/TCP2_Demo_Interactive_Environment.cs
uploadId: 794284

View File

@@ -0,0 +1,16 @@
using UnityEngine;
using UnityEngine.Rendering;
using UnityEngine.UI;
public class TCP2_Demo_InvertedMaskImage : Image
{
public override Material materialForRendering
{
get
{
Material mat = new Material(base.materialForRendering);
mat.SetInt("_StencilComp", (int)CompareFunction.NotEqual);
return mat;
}
}
}

View File

@@ -0,0 +1,18 @@
fileFormatVersion: 2
guid: b616f70aa69ad394ba0a7f1adf7f89bf
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Scripts/TCP2_Demo_InvertedMaskImage.cs
uploadId: 794284

View File

@@ -0,0 +1,20 @@
using UnityEngine;
using UnityEngine.Rendering;
[ExecuteInEditMode]
public class TCP2_Demo_PipelineMaterial : MonoBehaviour
{
public Material material;
public Shader birpShader;
public Shader urpShader;
void OnEnable()
{
if (material == null || birpShader == null || urpShader == null)
return;
RenderPipelineAsset srp = GraphicsSettings.currentRenderPipeline;
bool isURP = srp != null && srp.GetType().ToString().Contains("Universal");
material.shader = isURP ? urpShader : birpShader;
}
}

View File

@@ -0,0 +1,18 @@
fileFormatVersion: 2
guid: bf050e82f5d90c24d857544a423e7e6d
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Scripts/TCP2_Demo_PipelineShader.cs
uploadId: 794284

View File

@@ -0,0 +1,58 @@
using UnityEngine;
#if TCP2_NEW_INPUT_SYSTEM
using UnityEngine.InputSystem;
#endif
namespace ToonyColorsPro
{
namespace Demo
{
static class InputAbstraction
{
#if TCP2_NEW_INPUT_SYSTEM && ENABLE_INPUT_SYSTEM
// New Input System
internal static bool KeyDown_Delete => Keyboard.current != null && Keyboard.current.deleteKey.wasPressedThisFrame;
internal static bool KeyDown_Escape => Keyboard.current != null && Keyboard.current.escapeKey.wasPressedThisFrame;
internal static bool KeyDown_RightArrow => Keyboard.current != null && Keyboard.current.rightArrowKey.wasPressedThisFrame;
internal static bool KeyDown_LeftArrow => Keyboard.current != null && Keyboard.current.leftArrowKey.wasPressedThisFrame;
internal static bool KeyDown_Tab => Keyboard.current != null && Keyboard.current.tabKey.wasPressedThisFrame;
internal static bool KeyDown_H => Keyboard.current != null && Keyboard.current.hKey.wasPressedThisFrame;
internal static bool KeyDown_R => Keyboard.current != null && Keyboard.current.rKey.wasPressedThisFrame;
internal static bool Key_LeftShift => Keyboard.current != null && Keyboard.current.leftShiftKey.isPressed;
internal static bool Key_RightShift => Keyboard.current != null && Keyboard.current.rightShiftKey.isPressed;
internal static Vector2 Mouse_Position => Mouse.current != null ? Mouse.current.position.value : Vector2.zero;
internal static float Mouse_ScrollWheel => Mouse.current != null ? Mouse.current.scroll.y.value : 0;
internal static bool Mouse_LeftDown => Mouse.current != null && Mouse.current.leftButton.isPressed;
internal static bool Mouse_RightDown => Mouse.current != null && Mouse.current.rightButton.isPressed;
internal static bool Mouse_MiddleDown => Mouse.current != null && Mouse.current.middleButton.isPressed;
#else
// Legacy Input System
internal static bool KeyDown_Delete => Input.GetKeyDown(KeyCode.Delete);
internal static bool KeyDown_Escape => Input.GetKeyDown(KeyCode.Escape);
internal static bool KeyDown_RightArrow => Input.GetKeyDown(KeyCode.RightArrow);
internal static bool KeyDown_LeftArrow => Input.GetKeyDown(KeyCode.LeftArrow);
internal static bool KeyDown_Tab => Input.GetKeyDown(KeyCode.Tab);
internal static bool KeyDown_H => Input.GetKeyDown(KeyCode.H);
internal static bool KeyDown_R => Input.GetKeyDown(KeyCode.R);
internal static bool KeyDown_1 => Input.GetKeyDown(KeyCode.Keypad1) || Input.GetKeyDown(KeyCode.Alpha1);
internal static bool KeyDown_2 => Input.GetKeyDown(KeyCode.Keypad2) || Input.GetKeyDown(KeyCode.Alpha2);
internal static bool KeyDown_3 => Input.GetKeyDown(KeyCode.Keypad3) || Input.GetKeyDown(KeyCode.Alpha3);
internal static bool KeyDown_4 => Input.GetKeyDown(KeyCode.Keypad4) || Input.GetKeyDown(KeyCode.Alpha4);
internal static bool KeyDown_5 => Input.GetKeyDown(KeyCode.Keypad5) || Input.GetKeyDown(KeyCode.Alpha5);
internal static bool KeyDown_6 => Input.GetKeyDown(KeyCode.Keypad6) || Input.GetKeyDown(KeyCode.Alpha6);
internal static bool Key_LeftShift => Input.GetKey(KeyCode.LeftShift);
internal static bool Key_RightShift => Input.GetKey(KeyCode.RightShift);
internal static Vector2 Mouse_Position => Input.mousePosition;
internal static float Mouse_ScrollWheel => Input.GetAxis("Mouse ScrollWheel");
internal static bool Mouse_LeftDown => Input.GetMouseButton(0);
internal static bool Mouse_RightDown => Input.GetMouseButton(1);
internal static bool Mouse_MiddleDown => Input.GetMouseButton(2);
#endif
}
}
}

View File

@@ -0,0 +1,18 @@
fileFormatVersion: 2
guid: 989bfe72390c3fc42b9e8e8394dc58e4
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/Scripts/TCP2_InputAbstraction.cs
uploadId: 794284

View File

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

Binary file not shown.

After

Width:  |  Height:  |  Size: 165 B

View File

@@ -0,0 +1,128 @@
fileFormatVersion: 2
guid: 386e3883d86efd849b91a0a69340c434
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 9
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -100
wrapU: 1
wrapV: 1
wrapW: -1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 2, y: 2, z: 2, w: 2}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- serializedVersion: 2
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: WebGL
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 3abe761fdcbecb340bb00d1a641ed508
vertices: []
indices:
edges: []
weights: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/UI/TCP2_Demo_Line.png
uploadId: 794284

Binary file not shown.

After

Width:  |  Height:  |  Size: 390 B

View File

@@ -0,0 +1,128 @@
fileFormatVersion: 2
guid: ca1d4943e72db4e4bba15c8457c1a404
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 9
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -100
wrapU: 1
wrapV: 1
wrapW: -1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 0
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 5, y: 5, z: 5, w: 5}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- serializedVersion: 2
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: WebGL
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 0
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: f21b6a25f3c8be04ca39fa7598e23ec9
vertices: []
indices:
edges: []
weights: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Common Demo Assets/UI/TCP2_Demo_TextBox.png
uploadId: 794284

View File

@@ -0,0 +1,14 @@
fileFormatVersion: 2
guid: 8c2d4c983c09b0149a006f1b3eb4fd7d
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 8105
packageName: Toony Colors Pro 2
packageVersion: 2.9.20
assetPath: Assets/JMO Assets/Toony Colors Pro/Demo TCP2/Demo TCP2 Hybrid Shader.unity
uploadId: 794284

View File

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

Some files were not shown because too many files have changed in this diff Show More