Difference between revisions of "Hpl2:Tutorials:level editor:outdoors"

From Frictional Wiki
Jump to navigation Jump to search
(Upload from wiki)
 
(Finished clean up)
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
= Creating Outdoor Levels =
+
=Creating Outdoor Levels=
  
This page contains more general guidelines about creating outdoor levels, rather than being a regular tutorial. It is assumed you already know your way around the Level Editor. Pictures to come!
+
This page contains general guidelines about creating outdoor levels, rather than being a step-by-step tutorial. It is assumed you already know your way around the Level Editor.  
  
<u>'''Before you start:'''</u> Make sure that all plant models which you place have disabled collision (if they are static objects, because their collision is very buggy). Alternatively, create collision-less entities for every plant you are going to use.
+
{{warning| Make sure that all used plant models have disabled collision (if they are static objects, because their collision is very buggy). Alternatively, create collision-less entities for every plant you are going to use.}}
== Nature ==
 
  
=== 1. Randomness ===
+
==About randomness==
 +
Objects in a nature scene are seemingly placed at random. Take a look at any photograph of woods, for example; chances are that you're not gonna see any regular patterns. This is the look one needs to achieve when creating a nature scene.
  
All that is created by nature happens randomly, in a way. Take a look at any photograph of woods, for example; chances are, you're not gonna see any regular patterns. This is the look one needs to achieve when creating a nature scene.
+
First, make sure you have at least a few different plant models. Plants rarely form one-species colonies, usually there's a mix of many different plants. In author's experience, 3-4 types of tree and 3-4 bush or weed models is enough (there are some very good tree models in ''Amnesia: the Machine for Pigs'').
  
Firstly, make sure you have at least a few different plant models. Plants rarely form one-species colonies, usually there's a mix of many different plants. In author's experience, 3-4 types of tree and 3-4 bush or weed models is enough (there are some very good tree models in Amnesia: the Machine for Pigs).<br />Secondly, and more importantly; Make sure that plants aren't forming any regular patterns and that every model is rotated differently. Using the Q/E rotation feature is enough, just make sure that plants rotated in the same direction are far enough not to notice it.
+
Second, and more importantly; Make sure that plants aren't forming any regular patterns and that every model is rotated differently. Using the Q/E rotation feature is enough, just make sure that plants rotated in the same direction are far enough from each other not to notice it.
  
=== 2. Ground ===
+
==Ground==
  
The absolute best method of creating the ground would be to get a custom terrain model. A more available, still good way to create the ground would be to 'sculpt' with retextured (e.g. as grass) ''dirt_pile'' models and leave a path texture underneath them:
+
The absolute best method of creating the ground would be to get a custom terrain model. A more available, still good way to create the ground would be to 'sculpt' with retextured (e.g. as grass) dirt_pile models and leave a path texture underneath them:  
 +
[[File:OutdoorsTutorial-GrassPath.jpg|thumb|left]] {{clr}}
  
[https://media.moddb.com/images/members/3/2982/2981770/profiletutorial/LevelEditor_2019-02-15_14-01-30-.jpg?nolink&565x314  ]
+
However, if that sounds too hard for you, you can use an alternative method: {{ExpandBox|Let's start with a plane. Depending on what you are trying to create, that might be dirt, grass, or maybe foliage mixed with wooden chips. Regardless of what you choose, you will need to create paths along which the player will walk. Of course you could leave those out, but usually when people live near nature, they form footpaths.
 
 
However if that sounds too hard for you, you can use the following method:<br /><br />Let's start with a plane. Depending on what you are trying to create, that might be dirt, grass, or maybe foliage mixed with wooden chips. Regardless of what you choose, you will need to create paths along which the player will walk. Of course you could leave those out, but usually when people live near nature, they form footpaths.
 
  
 
There are two approaches you might take for creating paths: The first is creating them with dirt decals on a grass plane, the second is using grass decals on a dirt plane. Since the first one is less time consuming and yields better results, we will focus on that one. Alternatively you can use custom terrain models instead of planes.
 
There are two approaches you might take for creating paths: The first is creating them with dirt decals on a grass plane, the second is using grass decals on a dirt plane. Since the first one is less time consuming and yields better results, we will focus on that one. Alternatively you can use custom terrain models instead of planes.
  
As you might have noticed, both the grass texture and decal which come with Amnesia are quite an eyesore. The fact that they look almost exactly the same as the dirt textures doesn't help either. This pretty much requires you to get a custom grass texture. Once you have it, create a big plain with it. We will leave the process of creating paths for later, since we first need to create an outline for the level.
+
As you might have noticed, both the grass texture and decal which come with Amnesia are quite an eyesore. The fact that they look almost exactly the same as the dirt textures doesn't help either. This pretty much requires you to get a custom grass texture. Once you have it, create a big plain with it. }}
 
 
=== 4. The outline ===
 
  
Unfortunately, due to HPL2's limitations, we cannot afford to create a wide expanse of trees which will serve as the background. Besides, we need to constrict the players movement in some way; after all, it's a videogame you're making. After multiple different approaches, I found this to be the best solution for making a tree border:
+
The process of crafting the path shape will be left for later, since an outline for the level is needed first.
  
Locate the tree backdrop texture ''static_objects/outside/ground/zimmerman_ground_forest.mat'', and create a vertical section which you will copy or extend. Now use that section to outline a rough parameter around your outdoor area. Make sure not to leave any narrow corridors, as you will be placing tree models by those textures. If there are any narrow indentations in the tree line, don't use this backdrop to create them - tree models will be enough. If you need a level transition which isn't an entrance to a building, create a corridor with a sharp turn, beyond which the player won't be able to see.
+
==The outline==
  
Now you're ready to start placing trees. Firstly, to finish the outline, densely place tree models just in front of the backdrop. Of course you could use other models, but Amnesia's lowpoly pine model (''static_objects/outside/tree/pine_lowpoly_2'') is great for this purpose (and it helps the performance as well). After covering the whole perimeter, start placing regular tree models a bit further from the backdrop (make sure to differentiate and rotate the models!). You can place some trees in the open as well. Since you should be disabling the collision of all of the trees, you need to recreate it using the ''block_box'' entity (unless you have a custom tree entity, of course).[https://media.moddb.com/images/members/3/2982/2981770/profiletutorial/LevelEditor_2019-02-15_14-12-40-.jpg?nolink&403x283  ][https://media.moddb.com/images/members/3/2982/2981770/profiletutorial/LevelEditor_2019-02-15_14-19-33-.jpg?nolink&393x281]
+
Unfortunately, due to HPL2's limitations, creating a wide expanse of trees which will serve as the background cannot be afforded. Besides, the player's movement needs to be constricted in some way. The following method of making a tree border is recommended due to visuals and good performace.
  
===  ===
+
Locate the tree backdrop texture ''static_objects/outside/ground/zimmerman_ground_forest.mat'', and create a vertical section which you will copy or extend. Now use that section to outline a rough parameter around your outdoor area.
  
[https://media.moddb.com/images/members/3/2982/2981770/profiletutorial/Amnesia_2019-02-15_14-34-31-15.jpg?nolink&640x360  ]
+
[[File:OutdoorsTutorial-Outline1.jpg|thumb|left]] {{clr}}
 +
Make sure not to leave any narrow corridors, as tree models will be placed inside those textures, and will block the passage unless they have enough room. If there are any narrow indentations in the tree line, don't use this backdrop to create them - tree models will be enough. To create a level transition which isn't an entrance to a building, make a corridor with a sharp turn, beyond which the player won't be able to see.
  
=== 5. Paths ===
+
Now you're ready to start placing trees. Firstly, to finish the outline, densely place tree models just in front of the backdrop. Of course you could use other models, but Amnesia's lowpoly pine model (''static_objects/outside/tree/pine_lowpoly_2'') is great for this purpose (and it helps the performance as well).  
  
Coming back to the topic of paths; having created the outline, we need to place paths, as they will be the basis upon which the details will be made. Select a decal of choice (I recommend the vanilla grass decal). Check the "Rotate randomly" option, and set the range from 0 to 360 degrees. Then set "Randomize scale" from, for example, ''1.0'' to ''1.25''. Setting a constant scale works as well, just make sure it's big enough to minimize the number of placed decals and that it's small enough not to look bad.
+
[[File:OutdoorsTutorial-Outline2.jpg|thumb|left|Adding lowpoly pines]] {{clr}}
 +
After covering the whole perimeter, start placing regular tree models a bit further from the backdrop (make sure to differentiate and rotate the models!). You can place some trees in the open as well. Since you should be disabling the collision of all of the trees, you need to recreate it using the ''block_box'' entity (unless you have a custom tree entity, of course).
  
[https://media.moddb.com/images/members/3/2982/2981770/profiletutorial/LevelEditor_2019-02-15_14-40-09-.jpg?nolink&202x282  ]
+
[[File:OutdoorsTutorial-Outline3.jpg|thumb|left|A look at the map after completing previous steps]] {{clr}}
 +
==Paths==
  
Start "drawing" the paths by placing the decals. Make sure that the path is rather irregular, jagged at the edges. To make the workflow faster, if the decal on your cursor doesn't fit, place it anywhere and hit ''Ctrl+Z'' in order for the decal at your cursor to change.
+
Let's get back to the topic of paths. Having created the outline, paths should be placed next, as they will be the basis upon which the details will be made.  
  
[https://media.moddb.com/images/members/3/2982/2981770/profiletutorial/LevelEditor_2019-02-15_14-40-12-.jpg?nolink&459x341  ]
+
The following only applies to the alternate method of making paths:
 +
Select a decal of choice (the vanilla grass decal actually does a great job of looking like grassy soil). Check the "Rotate randomly" option, and set the range from 0 to 360 degrees. Then set "Randomize scale" from, for example, ''1.0'' to ''1.25''. Setting a constant scale works as well, just make sure it's big enough to minimize the number of placed decals and that it's small enough not to look bad.
  
=== 6. Grass ===
+
[[File:OutdoorsTutorial-DecalSettings.jpg|thumb|left|Used decal settings]] {{clr}}
  
This step isn't necessary, but it makes for some great looks. Place the grass model all over the map, save for the places where you placed paths. '''Important! If you are using the static object grass, make sure to disable collision. ''' Alternatively, and more conveniently (it saves a lot of time), you can create a grass entity which doesn't have collision.
+
This applies to both methods:
 +
Start "drawing" the paths by placing the assets or decals. Make sure that the path is rather irregular, jagged at the edges.  
  
Make sure to scale the grass model up in order to lower the number of placed models. Depending if you want short or tall grass, use scale from ''1.25'' to ''1.75''.
+
{{tip|To make the decal workflow faster, if the currently selected decal doesn't fit, place it anywhere in order for the decal at the cursor to change and hit ''Ctrl+Z'' to remove the temporarily placed one.}}
  
[https://media.moddb.com/images/members/3/2982/2981770/profiletutorial/Amnesia_2019-02-15_14-48-25-37.jpg?nolink&601x337  ]
+
[[File:OutdoorsTutorial-Path.jpg|thumb|left|Alternate path technique]] {{clr}}
 +
==Grass==
  
Unfortunately the grass texture I chose doesn't blend in with the grass model very well, so take that into consideration when you're choosing one.
+
This step is optional, but will greatly improve the maps looks.
 +
Place the grass model all over the map, save for the places where paths are placed.  
  
=== 7. Details ===
+
'''Important! If using the static object grass, make sure to disable collision.'''
 +
Alternatively, and more conveniently (it saves a lot of time), a custom grass entity which doesn't have collision can be created.
  
Now, the level should look roughly fine. To add some flair to it, let's place details; Just randomly slap the following models all over the place: rocks from the debris folder (submerge them in the ground unless they're the flat ones), the gravel and puddles from entities (or static objects) /decals and bushes or other foliage models which you have. Just make sure not to overdo it, those models of the same kind should not be clustered together too much.
+
{{tip|The grass model can be scaled up in order to lower the number of placed models. Depending on the desired look (short or tall grass), use scale from '''1.25''' to '''1.75'''.}}
  
[https://media.moddb.com/images/members/3/2982/2981770/profiletutorial/Amnesia_2019-02-15_14-56-59-80.jpg?nolink&664x373  ]
+
[[File:OutdoorsTutorial-Grass.jpg|thumb|left|Placing grass models]] {{clr}}
  
=== 8. The backdrop ===
+
Unfortunately the default grass texture doesn't blend in with the used grass model very well, so take that into consideration when choosing a grass textures. Matching them with the grass model's texture will yield best results. Furthermore, a retextured grass model can be used.
  
What you have already is more than enough, but you can spice it up even more! You can place the dirt_pile model (scaled ~100 times) moderately far behind the backdrop textures to make them look like hills / mountains. To amplify the effect, place some trees on those hills. You can also place some cloud billboards, and perhaps a moon, if there isn't one on the skybox. Speaking of skyboxes, having one is pretty much necessary - a unitone sky doesn't look good at all.
+
==Details==
  
=== 9. Lighting ===
+
The level should look roughly fine by now. To add some flair to it, let's place details; Place the following models here and there:
 +
*Rocks from the debris folder (submerge them in the ground unless they're the flat ones)
 +
*The gravel and puddles from entities/decals (or static objects/decals)
 +
*Bushes or other foliage models which you have.
 +
Just make sure not to overdo it, models of the same kind should not be clustered together too much.
  
This is a topic for a whole different article, but here are some general tips.<br />Cover the whole level with a BoxLight. Make sure it isn't too bright (''>0.7''), because it will look bad even if you're making a day scene. If you need sharper lighting, you can place some SpotLights in the sky here and there. Enabling shadows on them looks great, but unfortunately can decrease the performance significantly, so use it with caution. Use PointLights in the more lit areas (e.g. between trees).
+
[[File:OutdoorsTutorial-Details.jpg|thumb|left|Details]] {{clr}}
 +
==The backdrop==
  
[https://media.moddb.com/images/members/3/2982/2981770/profiletutorial/Amnesia_2019-02-15_15-07-16-64.jpg?nolink&758x426  ]
+
What you have already is more than enough, but you can spice it up even more! You can place the dirt_pile model (scaled ~100 times) moderately far behind the backdrop textures to make them look like hills or mountains. To amplify the effect, place some trees on those hills. You can also place some cloud billboards, and perhaps a moon, if there isn't one on the skybox. Speaking of skyboxes, having one is pretty much necessary - a unitone sky doesn't look good at all.
  
Unfortunately, the MFP trees don't cast nice shadows, so I made a custom gobo from some asset I grabbed off the internet:
+
==Lighting==
  
[https://media.moddb.com/images/members/3/2982/2981770/profiletutorial/Amnesia_2019-02-15_15-18-13-42.jpg?nolink&739x416  ]
+
This is a topic for a whole different article, but here are some general tips.
  
You can download that gobo here:
+
Cover the whole level with a BoxLight. Make sure it isn't too bright (''>0.7''), because it will look bad even if you're making a day scene. If you need sharper lighting, you can place some SpotLights in the sky here and there. Enabling shadows on them looks great, but unfortunately can decrease the performance significantly, so use it with caution. Use PointLights in the more lit areas (e.g. between trees).
  
[https://www.moddb.com/addons/leaf-gobo [https://button.moddb.com/download/medium/174647.png?nolink&]]
+
[[File:OutdoorsTutorial-LightBase.jpg|thumb|left|Adding basic lighting and a skybox]] {{clr}}
  
=== 10. Summary ===
+
Unfortunately, the MFP trees don't cast nice shadows, so a custom gobo was made for this tutorial. It can be downloaded [https://button.moddb.com/download/medium/174647.png here].
  
You should be pretty much done by now. Of course the scene have even more things, like particles (I added everyone's favouorite ''particles/ps_light_dust_large.ps'' for that fairy look, but it isn't very visible on screenshots) or some things from the next section…
+
[[File:OutdoorsTutorial-LightGobo.jpg|frame|left|The map after adding SpotLights with custom gobos]] {{clr}}
 +
==Man made structures==
  
== Man made structures ==
+
So what about buildings? Except for making castles and shacks, some Machine For Pigs assets will be needed for regular buildings.
 +
If not using the MFP assets, here's some misc advice:
 +
*Rooftops can be created with upscaled planks
 +
*Make sure to work some windows into the building
 +
*Don't make the building a one solid brick; add balconies, protrusions etc.
  
So what about buildings ? Unless you want a castle, which Amnesia is well prepared for, you are best off using the Machine For Pigs building assets. If you don't have those, your best option is using dungeonbase or castlebase (or cisternbase for that matter, but it has way less assets). Rooftops can be created with upscaled planks. Make sure to work some windows into the building. Don't make the building a one solid brick; add balconies, protrusions etc.
+
But what about other structures ? You can create roads by elevating a texture above the grass and surrounding it with a curb; Those can be made using the railing from castlebase and submerging it into the ground. Not the best move resource-wise, but for small maps it will be fine. Generally, a lot of stuff can be made using planes and reusing models for something else. For example, here one of the square windows from castlebase is used to create a small fountain or a planter.
  
But what about other structures ? You can create roads by elevating a texture above the grass and surrounding it with a curb; I made my curbs using the railing from castlebase and submerging it into the ground. Not the best move resource-wise, but for small maps it's ok. Generally, you can make a lot of stuff using planes and reusing models for something else, e.g. Use one of the square windows from castlebase to create a small fountain or a planter.
+
[[File:OutdoorsTutorial-Fountain.jpg|thumb|left|A fountain made by reusing assets in a non-orthodox way]] {{clr}}
 +
==Closing statements==
  
[https://media.moddb.com/images/members/3/2982/2981770/profiletutorial/Amnesia_2019-02-15_15-40-59-24.jpg?nolink&662x372  ]
+
The level should be pretty much done by now. Of course the scene can have even more things, like fog, sound entities (there are even some fitting ones in the TDD assets), particles (e.g. everyone's favouorite ''ps_light_dust_large.ps'' fits well) or elements such as described in the previous section (e.g. lantern posts).

Latest revision as of 00:07, 24 July 2020

Creating Outdoor Levels

This page contains general guidelines about creating outdoor levels, rather than being a step-by-step tutorial. It is assumed you already know your way around the Level Editor.

Alert icon.png Warning: Make sure that all used plant models have disabled collision (if they are static objects, because their collision is very buggy). Alternatively, create collision-less entities for every plant you are going to use.

About randomness

Objects in a nature scene are seemingly placed at random. Take a look at any photograph of woods, for example; chances are that you're not gonna see any regular patterns. This is the look one needs to achieve when creating a nature scene.

First, make sure you have at least a few different plant models. Plants rarely form one-species colonies, usually there's a mix of many different plants. In author's experience, 3-4 types of tree and 3-4 bush or weed models is enough (there are some very good tree models in Amnesia: the Machine for Pigs).

Second, and more importantly; Make sure that plants aren't forming any regular patterns and that every model is rotated differently. Using the Q/E rotation feature is enough, just make sure that plants rotated in the same direction are far enough from each other not to notice it.

Ground

The absolute best method of creating the ground would be to get a custom terrain model. A more available, still good way to create the ground would be to 'sculpt' with retextured (e.g. as grass) dirt_pile models and leave a path texture underneath them:

OutdoorsTutorial-GrassPath.jpg

However, if that sounds too hard for you, you can use an alternative method:

The process of crafting the path shape will be left for later, since an outline for the level is needed first.

The outline

Unfortunately, due to HPL2's limitations, creating a wide expanse of trees which will serve as the background cannot be afforded. Besides, the player's movement needs to be constricted in some way. The following method of making a tree border is recommended due to visuals and good performace.

Locate the tree backdrop texture static_objects/outside/ground/zimmerman_ground_forest.mat, and create a vertical section which you will copy or extend. Now use that section to outline a rough parameter around your outdoor area.

OutdoorsTutorial-Outline1.jpg

Make sure not to leave any narrow corridors, as tree models will be placed inside those textures, and will block the passage unless they have enough room. If there are any narrow indentations in the tree line, don't use this backdrop to create them - tree models will be enough. To create a level transition which isn't an entrance to a building, make a corridor with a sharp turn, beyond which the player won't be able to see.

Now you're ready to start placing trees. Firstly, to finish the outline, densely place tree models just in front of the backdrop. Of course you could use other models, but Amnesia's lowpoly pine model (static_objects/outside/tree/pine_lowpoly_2) is great for this purpose (and it helps the performance as well).

Adding lowpoly pines

After covering the whole perimeter, start placing regular tree models a bit further from the backdrop (make sure to differentiate and rotate the models!). You can place some trees in the open as well. Since you should be disabling the collision of all of the trees, you need to recreate it using the block_box entity (unless you have a custom tree entity, of course).

A look at the map after completing previous steps

Paths

Let's get back to the topic of paths. Having created the outline, paths should be placed next, as they will be the basis upon which the details will be made.

The following only applies to the alternate method of making paths: Select a decal of choice (the vanilla grass decal actually does a great job of looking like grassy soil). Check the "Rotate randomly" option, and set the range from 0 to 360 degrees. Then set "Randomize scale" from, for example, 1.0 to 1.25. Setting a constant scale works as well, just make sure it's big enough to minimize the number of placed decals and that it's small enough not to look bad.

Used decal settings

This applies to both methods: Start "drawing" the paths by placing the assets or decals. Make sure that the path is rather irregular, jagged at the edges.

Icon tip.png Tip: To make the decal workflow faster, if the currently selected decal doesn't fit, place it anywhere in order for the decal at the cursor to change and hit Ctrl+Z to remove the temporarily placed one.
Alternate path technique

Grass

This step is optional, but will greatly improve the maps looks. Place the grass model all over the map, save for the places where paths are placed.

Important! If using the static object grass, make sure to disable collision. Alternatively, and more conveniently (it saves a lot of time), a custom grass entity which doesn't have collision can be created.

Icon tip.png Tip: The grass model can be scaled up in order to lower the number of placed models. Depending on the desired look (short or tall grass), use scale from 1.25 to 1.75.
Placing grass models

Unfortunately the default grass texture doesn't blend in with the used grass model very well, so take that into consideration when choosing a grass textures. Matching them with the grass model's texture will yield best results. Furthermore, a retextured grass model can be used.

Details

The level should look roughly fine by now. To add some flair to it, let's place details; Place the following models here and there:

  • Rocks from the debris folder (submerge them in the ground unless they're the flat ones)
  • The gravel and puddles from entities/decals (or static objects/decals)
  • Bushes or other foliage models which you have.

Just make sure not to overdo it, models of the same kind should not be clustered together too much.

Details

The backdrop

What you have already is more than enough, but you can spice it up even more! You can place the dirt_pile model (scaled ~100 times) moderately far behind the backdrop textures to make them look like hills or mountains. To amplify the effect, place some trees on those hills. You can also place some cloud billboards, and perhaps a moon, if there isn't one on the skybox. Speaking of skyboxes, having one is pretty much necessary - a unitone sky doesn't look good at all.

Lighting

This is a topic for a whole different article, but here are some general tips.

Cover the whole level with a BoxLight. Make sure it isn't too bright (>0.7), because it will look bad even if you're making a day scene. If you need sharper lighting, you can place some SpotLights in the sky here and there. Enabling shadows on them looks great, but unfortunately can decrease the performance significantly, so use it with caution. Use PointLights in the more lit areas (e.g. between trees).

Adding basic lighting and a skybox

Unfortunately, the MFP trees don't cast nice shadows, so a custom gobo was made for this tutorial. It can be downloaded here.

The map after adding SpotLights with custom gobos

Man made structures

So what about buildings? Except for making castles and shacks, some Machine For Pigs assets will be needed for regular buildings. If not using the MFP assets, here's some misc advice:

  • Rooftops can be created with upscaled planks
  • Make sure to work some windows into the building
  • Don't make the building a one solid brick; add balconies, protrusions etc.

But what about other structures ? You can create roads by elevating a texture above the grass and surrounding it with a curb; Those can be made using the railing from castlebase and submerging it into the ground. Not the best move resource-wise, but for small maps it will be fine. Generally, a lot of stuff can be made using planes and reusing models for something else. For example, here one of the square windows from castlebase is used to create a small fountain or a planter.

A fountain made by reusing assets in a non-orthodox way

Closing statements

The level should be pretty much done by now. Of course the scene can have even more things, like fog, sound entities (there are even some fitting ones in the TDD assets), particles (e.g. everyone's favouorite ps_light_dust_large.ps fits well) or elements such as described in the previous section (e.g. lantern posts).