In this video, we're going to learn how to build
a third-person fantasy RPG-style Scene
using content available on the Unity Asset Store.
Our goal is to create an interactive Scene,
in which a player can run around and explore an environment
with an animated third-person character.
For the environment, we will use three packages
from the Asset Store:
Gaia for terrain creation, Aquas for water,
and Enviro for sky and weather.
All three of these assets work really great together
to help us create our environment.
For the character, we will use the Third Person Shooter kit
for the controller and animation, and GOLEM for their model.
As you'll see, pulling a game prototype together
using these assets is not only quick and easy,
but also produces a really awesome looking result.
The basis for our game
will be the Third Person Shooter kit by Invector.
This kit includes a huge volume of stuff you can use
to get a game prototype going quickly,
including core mechanics like shooting,
health, stamina, weapons, and melée combat.
Since we want to keep this simple,
we'll start with a Basic Locomotion controller
to get our character running around our environment.
We'll begin by opening the v3rdPersonController-Demo Scene
found in Basic Locomotion > DemoScenes.
If we play this quickly and run around,
we can see that we have a really nice full-featured
and animated Character Controller
that can run, jump, bolt over objects,
and die with ragdoll effects.
This gets us off to a great start.
The first thing we want to do is replace the default Robot character
with our own model.
Because they both use the humanoid rig,
we can retarget the demo animations from the Third Person kit
and save a ton of time in creating
and configuring the animations and scripts for our character.
Let's grab the GOLEM_ROCK_PBR Prefab
from the HEROIC FANTASY CREATURES FULL PACK > DEMONIC CREATURES PACK
> PREFABS folder
and make it a child of the vBasicController GameObject
in the Hierarchy.
Next, we will disable the Mesh_LOD object,
which holds the Robot Meshes.
We’ll also scale down the GOLEM to "0.5" on all axes
so it's not so big.
We'll select the vBasicController GameObject,
and locate the Animator Controller.
We’ll use the circle select button to choose the GOLEM_ROCK
from the list of avatar assets.
Now, when we test our Scene, we can see that our character
can run around with the arrow keys, jump with space,
and roll by pressing the Q key.
We're off to a great start.
The next step is to place our character in an environment.
First, let's turn off some of the things we won't need.
Select the Light, UI, and Hive GameObjects,
and deactivate them.
Next, choose Window > Gaia > Show Gaia Manager.
Choose Create Terrain & Show Stamper.
Select the Create Spawners button,
choose Create Player, Wind, Water, and Screenshotter.
All we really want from this is the Wind Zone,
and it will throw two errors about the missing player
and water packages.
This is intentional
since we are using our own player controller
and water assets.
First, select the GameObject called Session Manage,
and enable the Random Terrain Generator option.
Click the Add Stamps button,
then click Play Session and accept the dialog that appears.
As you can see, Gaia automatically builds the procedural terrain Mesh.
When that's done, let's select our individual Spawner GameObjects,
and choose Spawn on each of them.
This process will take some time.
For a detailed walkthrough of this process,
please check out the tutorial link below
created by the developer of Gaia.
When this process is complete, we've got a terrain
we can run around in.
Let's enter Play mode and try running around.
This is a great start, but we can really improve
this Scene by integrating Aquas and Enviro.
All we need to do is open the Gaia Manager window
and navigate to the Gaia Extensions or GX tab.
Here, we find a list of compatible assets
that work together with Gaia, grouped by publisher.
We'll start with Aquas first.
All we need to do is open the Dogmatic tab,
and click Add Aquas to add it to our Scene.
Now we have some great looking performant water from Aquas.
Let's add Enviro, and then we can run around and test.
In the Gaia Manager we'll expand the group labelled Hendrik Haupt,
then Enviro - Sky and Weather, and choose Add Enviro Sky.
We'll also click Add Aquas Integration
to integrate Enviro and Aquas.
Great! Now we can have our character running around
and a nice-looking Scene,
including ambient audio, foliage, and a nice atmosphere.
Now let's set a mood for our Scene.
Select the EnviroSky for GAIA GameObject in the Hierarchy,
and click the Weather Controls option.
Now we can choose a weather preset.
Let's select Storm.
As you can see, we've now got a cool stormy feeling for our Scene.
Finally, for that last bit of polish,
let's add some post-processing effects.
We'll start with the Unity’s Post-processing Stack.
I've already created a preset behavior called Gaia Post FX 1,
so we'll just add a Post-Processing Behaviour
to the third-person camera.
Also, let's add a rain shader to the camera.
We’ll grab the Rain3 Prefab from the RaindropEffect2 package.
We'll dial down the Alpha on the Rain3 GameObject a bit
to blend it in a little more.
Now, when we play our Scene,
we can see that we've got a cool stormy landscape
we can run our character around in.
We could take this much further with the assets at hand.
The Third Person Shooter kit has much more functionality
for inventory, enemies, and all kinds of cool stuff.
Gaia, Enviro and Aquas all have extensive customization options.
But for a quick prototype, we're off to a good start.
For more information about all of these packages,
and to learn more about the Unity Asset Store,
please see the information linked below.