nn_skinl
nn_lb1

AvP2 Map Brush Detail Tutorial

avp2mapbrushdetailtutorial.zip

Description

Detail Level 0/1 Tutorial.

This tutorial and accompanying .ed file will explain how to set the correct Detail Levels for your AvP2 maps. Detail Level is important because it will allow the game engine to 'see' certain parts of the level, and not others - thus optimising processing time for the mapper; and will raise the speed and performance of your map for the Player.

Brushes, that are flagged as Detail Level 0 in the Brush Properties options will behave as 'Hull' Brushes and will attempt to block the engine's visibility.

Brushes that are flagged as Detail Level 1 will permit the engine to 'see through' Brushes flagged as such and possess no visibility optimisation ability.

When the engine draws the level, any Detail 1 Brushes present where the Player is located will be drawn. Any Detail 0 Brushes that form the immediate walls, floors and ceiling will also be drawn, but they will prevent engine visibility from drawing ANY Brushes beyond that location. (Not exactly true, but for the sake of understanding the nature of applying Detail Levels to your Brushes, it will suffice).

Think of the engine as treating the Detail 0 Brushes as Hulls inside which the details of your map (Detail 1 Brushes) will be drawn. A quick and easy analogy is to think of building a box of chocolates in DEdit. If you were able to stand inside the box, the Box would be flagged as Detail Level 0 and the little tasty treats you see inside with you would be flagged as Detail level 1.

nn_lb2

README

--------------------------
Detail Level 0/1 Tutorial.
--------------------------

This tutorial and accompanying .ed file will explain how to set the correct Detail Levels for your AvP2 maps.  Detail Level is important because it will allow the game engine to 'see' certain parts of the level, and not others - thus optimising processing time for the mapper; and will raise the speed and performance of your map for the Player.

Brushes, that are flagged as Detail Level 0 in the Brush Properties options will behave as 'Hull' Brushes and will attempt to block the engine's visibility.  

Brushes that are flagged as Detail Level 1 will permit the engine to 'see through' Brushes flagged as such and possess no visibility optimisation ability.

When the engine draws the level, any Detail 1 Brushes present where the Player is located will be drawn.  Any Detail 0 Brushes that form the immediate walls, floors and ceiling will also be drawn, but they will prevent engine visibility from drawing ANY Brushes beyond that location.  (Not exactly true, but for the sake of understanding the nature of applying Detail Levels to your Brushes, it will suffice).

Think of the engine as treating the Detail 0 Brushes as Hulls inside which the details of your map (Detail 1 Brushes) will be drawn.  A quick and easy analogy is to think of building a box of chocolates in DEdit.  If you were able to stand inside the box, the Box would be flagged as Detail Level 0 and the little tasty treats you see inside with you would be flagged as Detail level 1.


---------------------------
About the Accompanying Map.
---------------------------

*IMPORTANT!*

In order to Process this map you MUST include this line in your 'Extra Parameters' field when you open the Process Level dialogue:

-nosnapnocsg

Now, on with the 3 room tutorial map.  For the sake of this tutorial, the map is built using what is commonly referred to in the AvP2 mapping community as the 'NoSnap' method which uses Geometry Mode (Ctrl+G) extensively.   The same rules are applicable to maps built using Brush (or CSG) Mode (Ctrl+B).

Process and Run the map from DEdit and check it out:

Room1:
------
This room is empty.  The only features present here are the Player GameStartPoint and the WorldProperties Object.  You won't notice these, but you will notice straight away that the Hull of this empty room is entirely textured in black and yellow stripes.  For the sake of identifying how Detail 0 and Detail 1 Brushes relate to each other, all the Detail 0 Brushes have been textured in this manner.  Detail 1 Brushes will appear as red and white textured.

Now go open the door opposite and enter the next room.

Room2:
------
Woah!!! It's a bit of a mess in here!  That is because all the visible Detail 1 Brushes have been appropriately flagged as Detail Level 1 and textured in red and white stripes to differentiate them from the Detail 0 Hull.  Inspect them from within DEdit.  See how these red and white Detail 1 Brushes fit neatly against the walls of the Detail 0 Hull?  The Detail 1 Brushes perform no visibilty, occlusion or other special purpose other than provide, well, details to the environment.

...but wait a second, there are clearly features inside the centre of the room that are textured in black and yellow - shouldn't they be textured in red and white and treated as Detail Level 1 Brushes as well?  They are obviously NOT Hull Brushes so why are they flagged as Detail Level 0?

As always, there are exceptions, those Brushes are bound to Objects.  When a Brush is bound to any Object (Door, TWM, Volume, Hidden/Unhidden etc.) it MUST be flagged as Detail Level 0 otherwise unpredictable results may occur.  Most times a Detail 1 Brush bound to an Object will work fine, but occasionally, if flagged as such, it will create unwanted results.  Flagging these bound Brushes to Detail Level 0 will prevent such issues.

Room 3:
-------
Fully textured, this is the very same room as it actually intended to look like ingame.  A few additional Props, sound effects and lights help to create a sense of place.


----------
End Notes.
----------
1).  There are many other ways to improve (optimise) the speed and performance of your map.  These include:

HullMakers.
Dynamic HullMakers (Door Portals).
Draw distance.
Fog.

2).  How long does this map process on your machine?  It shouldn't take long.

3).  Feel free to use any prefabs in this map.  Please give me credit if you choose to do so.

4).  Please make better maps.  ;)



-Windebieste.

There are no comments yet. Be the first!

nn_skinr
nn_player