Fantasy Adventure Environment Documentation

Fantasy Adventure Environment
Author: jonathan
Version: 1.0
Dated: 30 May 2017

1.Fantasy Adventure Environment #

 

Thank you for purchasing the Fantasy Adventure Environment!

Please consider rating the package through your download list or leave a review at the store page once you’re familiar with it.

Your feedback is instrumental to the future of this package!

Rate     Review

Feedback and suggestions can be made in the forum thread:

https://forum.unity3d.com/threads/486102/

This manual is intended to clarify the use of the package.

This minimum supported version at this time is Unity 5.4

Yes No Suggest edit
Last updated on August 15, 2017
0 of 0 users found this section helpful

2.Getting started #

  1. Import the Unity package through the Asset Store download manager (Found under Window->Asset Store)
  2. The asset prefabs can be found in the /Prefabs folder

Open up the included demo scene, which is intended to demonstrate the practical uses of the assets.

The objects parented under the “NOT_INCLUDED” object were used to create the package’s promotional materials. So certain assets or script will be missing for users.

Yes No Suggest edit
Last updated on July 31, 2017
0 of 0 users found this section helpful

3.Support #

Should you run into any issues or have questions/feedback, please do not hesitate to reach out! I will do my best to respond as soon as I can.

Unity forums thread: https://forum.unity3d.com/threads/submitted-fantasy-adventure-environment-a-stylized-asset-pack.486102/

E-mail: contact@staggart.xyz

Twitter: @JonnyIO

Yes No Suggest edit
Last updated on August 1, 2017
0 of 0 users found this section helpful

4.Features #

Yes No Suggest edit
Last updated on May 30, 2017
0 of 0 users found this section helpful

4.1.Wind controller #

The shaders used for both the trees and the vegetation utilize a custom wind animation method. In order to control this effect a “FAE_WindController” script component must be active in the scene. You can find a preconfigured prefab under the Prefabs/Effects/ folder.

See the scripts section for detailed information about this script.

Yes No Suggest edit
Last updated on August 7, 2017
0 of 0 users found this section helpful

4.2.Foliage bending #

The shader found under “FAE/Foliage” supports basic player interaction. In order to enable this, the “FoliageBender” script component must be attached to a GameObject in the scene.

You can grab the “FoliageBender” prefab found under Prefabs/Effects/.

Materials using the foliage shaders feature a “BendingInfluence” parameter which determines how much influence the Grassbender has on the material.

Note: This functionality is currently limited to one transform.

Yes No Suggest edit
Last updated on August 7, 2017
0 of 0 users found this section helpful

4.3.Fog sheet #

The fog sheet is a quad mesh which fades out/in based on its distance from the camera. It can be used to highlight certain areas (push/pull concept) or to enunciate a silhouette.

The shader has an optional texture slot, to add, for instance, a cloud texture.

You can see how it’s being used in ABZU in the following GDC talk: http://www.gdcvault.com/play/1024409/Creating-the-Art-of-ABZU (17:57 mark)

Yes No Suggest edit
Last updated on August 7, 2017
1 of 1 users found this section helpful

5.Polycount and LODs #

Many users might like to know the polycount of the various assets before purchasing, hence this list containing the polycount and consequent LOD polycounts.

Trees

Asset name LOD0 LOD1 LOD2
Tree_A  2497 1871 930
Tree_B 1912 1472 752
Tree_C 2321 1737 952
Birch_A 1539 1251 891
Birch_B 661 370 164
Birch_C 961 347 167
Spruce_A 1240 900 320
Spruce_B 1124 732 264
Spruce_C 1076 708 248
Pine_A 967 596 436
Palm_A 692 372 198

Cliffs

Asset name LOD0 LOD1 LOD2
Cliff_A 3994 1996 796
Cliff_B 3994 1996 796
Cliff_C 3994 1996 796
Cliff_D 1994 996 396
Cliff_E 996 496 246
Cliff_F 1994 996 496
RockCluster_A 1160 572 278
RockCluster_B 336 160
RockCluster_C 268
RockCluster_D 156

Vegetation

These items have few to no LODs as the polycount is already low. Flowers are around 12 polygons, whereas their clustered counterparts are around 60 polygons

Yes No Suggest edit
Last updated on August 12, 2017
0 of 0 users found this section helpful

6.Customizing assets #

Branch colors

  1. Navigate to the “Substance” folder and expand the “FAE_Trees” Substance container.
  2. Select the branch material you’d like to edit and modify the parameters in the inspector

Grass appearance

  1. Navigate to the “Substance” folder and expand the “FAE_Vegetation” Substance container.
  2. Select the GrassAtlas material and edit its properties.

Terrain textures

In the Fantasy Adventure Environment/Terrain/Substance folder you will find the Substance materials used to generate the terrain textures. Since the Unity terrain system does not support to use Substance outputs directly on the terrain, they must be exported to bitmap files first.

When having a Substance material selected, click on the gear icon and select “Export bitmaps (Original alpha channels)”.

This will prompt you to save the files in a certain location.

After doing so, press CTRL+R to refresh the asset database and they will show up as .TGA files, which you’ll be able to use on the terrain.

Yes No Suggest edit
Last updated on July 31, 2017
0 of 0 users found this section helpful

7.Optimal environment settings #

In order to recreate its environmental settings the following steps must be taken:

  • Set the Ambient Source to a white color in the Lighting tab found under Window/Lighting.
  • Enable Fog, set to Exponential with a value of 0.007
  • Assign the FAE_Skybox material to the Skybox field.
  • On your directional light, assign the FAE_Lensflare asset in the Flare field if you wish.
  • Control the intensity of the sun shaft effects through the Directional Light’s color’s alpha channel
  • Grab the Post Processing Stack package and use the FAE_PostProcessingProfile is you wish.
  • Add a WindController object to your scene, for the wind animations on the trees and vegetation to work. For ease of use, you can find a prefab for this in the Fantasy Adventure Environment/Prefabs/Effects folder.
Yes No Suggest edit
Last updated on August 7, 2017
0 of 0 users found this section helpful

8.Performance Guidelines #

This environment pack was produced for desktop platforms, as such the visual fidelity does not come very cheap. Development was done on a laptop with an i7-4700HQ and a GTX765M (comparable to a desktop GTX650) where it performed around 40-70fps. On machine powered by a GTX960 it performed around the 120fps range.

It’s important to know that Static Batching has been disabled on the tree prefabs. This is so that each tree has its own random wind motion speed. Since when models are batched they all share the same Transform. And the shaders utilize the model’s scale to add an offset to the wind speed.

If you find this negatively impacts your performance, you can enable Static Batching on the prefabs:

It might be beneficial to set the Trunk Wind Weight value to 0 on your WindController after doing so. Or all trees will move in unison.

Also note how in the demo scene the line of sight is broken at several points:

This is beneficial for Occlusion Culling, which avoids rendering objects that aren’t visible. Thus, reducing the rendering overhead.

https://docs.unity3d.com/Manual/OcclusionCulling.html

Yes No Suggest edit
Last updated on August 17, 2017
0 of 0 users found this section helpful

9.Using the shaders with custom assets #

Should you like to use the FAE/Branch shader on a tree outside of this package it must conform to a requirement, namely the Ambient Occlusion. Which must be baked into the mesh’s vertex colors. This is used for shading and animation purposes.

Currently the AO is baked into the RGB channels, but only the Red channel is accessed in the shader. The Green and Blue channels might be overwritten and utilized for different purposes in the future.

The vertex color’s alpha channel holds the tree’s stiffness, which is used for its global wind motion. This information was baked using a proprietary tool, which is not available to users.

For vegetation assets using the FAE/Foliage shader much of the same holds true. Where the AO information is used to determine which parts are not affected by wind or player interaction. As well as several shading functions.

 

Yes No Suggest edit
Last updated on July 31, 2017
0 of 0 users found this section helpful

10.Scripts #

All scripts are in the “FAE” namespace.

Yes No Suggest edit
Last updated on July 31, 2017
0 of 0 users found this section helpful

10.1.CliffAppearance #

Used to modify the shader properties of the FAE/Cliff shader across multiple materials.

Attach this script to any object in your scene and assign the materials using the FAE/Cliff shader. The values set in the inspector are applied as you change them, or whenever the object is enabled.

For ease of use, you can find a prefab for this in the Fantasy Adventure Environment/Prefabs folder.

This could be used to, for instance, load different settings based on the scene. You could save the object as a prefab to use it as sort of a preset.

Yes No Suggest edit
Last updated on August 7, 2017
0 of 0 users found this section helpful

10.2.FoliageBender #

Tells the FAE/Foliage shader from which position in the world it should bend away from, and by which strength/radius.

Attach this script to any empty GameObject, parented to your player, and move it to the feet.

Currently, you can only use one of these.

Yes No Suggest edit
Last updated on July 31, 2017
0 of 0 users found this section helpful

10.3.PigmentMapGenerator #

Generates a color map texture (pigment map) and heightmap for the FAE/Foliage shader (see shaders section). Which can be utilized in the material to tint the grass by the terrain’s color and have the height taper off where there is no grass.

Attaching this script to your terrain will load it’s pigment map on startup. So it’s possible to be used in multiple scenes.

This information is derived from the terrain’s splatmap, so the color is limited to the first 4 textures used on the terrain. As is the height information, which is limited to a single texture.

If you’re workflow deviates from these requirements it’s best not use this functionality.

Yes No Suggest edit
Last updated on August 18, 2017
0 of 0 users found this section helpful

10.4.WindController #

The shaders used for both the trees and the vegetation utilize a custom wind animation method. In order to control this effect a “FAE_WindController” script component must be active in the scene. You can find a preconfigured prefab under the Prefabs/Effects/ folder.

It is required to have an object in the scene which has this script attached to it. For ease of use, you can find a prefab for this in the Fantasy Adventure Environment/Prefabs/Effects folder.

By keeping this object in the scene, it is possible to have different wind settings per scene.

Parameter Function
Wind Substance This must always be set to the FAE_Windvectors Substance material
Visualize Vectors Toggles a visual representation of the wind information
Wind Direction Self-explanatory
Wind Speed Self-explanatory
Wind Strength Self-explanatory
Wind Amplitude Self-explanatory
Trunk Wind Speed The speed at which the trees sway
Trunk Wind Weight The amount of sway they have
Trunk Wind Swinging A higher value makes the trees move back against the wind
Yes No Suggest edit
Last updated on July 31, 2017
0 of 0 users found this section helpful

11.Shaders #

All shaders, except the sunshaft shaders, have been made using Amplify Shader Editor, and thus can be modified using it. Please make sure you are using the latest version from http://amplify.pt/download/ as this can avoid a lot of headaches.

Please note that modified shaders are not subject to support.

Yes No Suggest edit
Last updated on August 1, 2017
0 of 0 users found this section helpful

11.1.Cliff #

Features a tri-planar projected color map, and detail normals.

Yes No Suggest edit
Last updated on July 31, 2017
0 of 0 users found this section helpful

11.2.FogSheet #

Opacity is controlled by a distance factor from the surface, to the camera. Optional texture slot.

Yes No Suggest edit
Last updated on July 31, 2017
0 of 0 users found this section helpful

11.3.Foliage #

Used by the vegetation, and namely, the grass. Features color variation through wind. Light transmission and pigment- and heightmap functionality.

Yes No Suggest edit
Last updated on July 31, 2017
0 of 0 users found this section helpful

11.4.Sunshaft #

Used with the Sunshaft/Long and Sunshaft/Short assets.

Cross-pans a sun shaft texture horizontally. And features distance and intersection fading. The Directional Light’s color’s alpha channel controls the intensity of the effect.

Yes No Suggest edit
Last updated on July 31, 2017
0 of 0 users found this section helpful

11.5.SunshaftParticle #

Does much of the same as the Sunshaft shader but is tailored to be used with a ParticleSystem. Where the “Color over lifetime” feature can be used to fade out the sunshaft through the alpha channel.

The Directional Light’s color’s alpha channel controls the intensity of the effect.

Yes No Suggest edit
Last updated on July 31, 2017
0 of 0 users found this section helpful

11.6.TreeBranch #

Shader used on the tree branches, which enables wind animation and stylized rendering.

The alpha channels of the Variation Color and Transmission Color parameters control its intensity.

Yes No Suggest edit
Last updated on August 7, 2017
0 of 0 users found this section helpful

11.7.TreeTrunk #

Simple PBR shader, uses the Albedo map’s alpha channel for the roughness.

This shader is required on a tree for the global wind motion to work.

Yes No Suggest edit
Last updated on July 31, 2017
0 of 0 users found this section helpful

11.8.Water #

A simplified version of the Stylized Water Shader, considered to be a “lite” version of the complete package. Limited in functionality and customization.

Yes No Suggest edit
Last updated on August 7, 2017
0 of 0 users found this section helpful

12.Troubleshooting #

Lightmapping

You might experience some issues with lightmaps, such as black spots. Though, this is not directly attributed to the asset. Since LOD1 and up do not support lightmaps, but are rather lit by light probes you may notice visible popping.

It is recommended to not bake lighting but use precomputed GI instead.

Black objects appear to have a red glow

This is an artifact caused by the LUT color grading texture. I’m not sure what causes this right now.

Cliffs turn black when re-importing the package

Ugh, this is such a bummer, I can’t quite pinpoint what is causing this. For now, there is a workaround:

Go to the FAE_RockDetail Substance material and toggle the “Generate all outputs” checkbox.

Yes No Suggest edit
Last updated on August 1, 2017
0 of 0 users found this section helpful

13.Refunds #

Please refer to our refund policy

Yes No Suggest edit
Last updated on May 30, 2017
0 of 0 users found this section helpful

14.Substance materials #

The behavior of all Substance material has been configured to bake the Substance to texture when you build your project. So they will not incur a loading time, as they would have to be generated otherwise.

All Substance materials can be found under Fantasy Adventure Environment/Resources/Substances.

Source files (.sbs) for the Substances will not be made available.

Yes No Suggest edit
Last updated on August 7, 2017
0 of 0 users found this section helpful

14.1.Lensflare #

Composes a lensflare atlas texture. You can modify the intensity of the individual components.

If you’d like to change settings such as the size or the colors, go to the actual lensflare asset found under Fantasy Adventure Environment/Resources/Effects/Materials.

Yes No Suggest edit
Last updated on July 31, 2017
0 of 0 users found this section helpful

14.2.Particles #

Used to generate particle sprites, limited options available.

Yes No Suggest edit
Last updated on July 31, 2017
0 of 0 users found this section helpful

14.3.PigmentMap #

Used by the PigmentMapGenerator script to generate a pigment map. You don’t actually have to do anything with this Substance as it is called upon programmatically.

Yes No Suggest edit
Last updated on July 31, 2017
0 of 0 users found this section helpful

14.4.RockDetails #

Generates the global color- and detail normal map for the cliffs. This might be expanded in the future with more kinds of maps.

Yes No Suggest edit
Last updated on July 31, 2017
0 of 0 users found this section helpful

14.5.Trees #

Holds all the texture outputs for the tree branches and trunks. This is where you can modify the colors of the trees.

The snow functionality is a little gimmicky at this point, but I saw no harm in leaving it in 😉

Yes No Suggest edit
Last updated on July 31, 2017
0 of 0 users found this section helpful

14.6.Water #

Outputs the maps needed for the water and waterfall. Please do note that the waterfall asset is not officially included, but only produced for the demo scene.

Yes No Suggest edit
Last updated on July 31, 2017
0 of 0 users found this section helpful

14.7.WindMap #

Generates the wind direction vectors. The WindController script drives its parameters, so no need to fiddle with this Substance.

Yes No Suggest edit
Last updated on July 31, 2017
0 of 0 users found this section helpful
Help Guide Powered by Documentor
Suggest Edit