Detailed Setup

Step 1: Tags and layers setup:

  • FPSController:

    • Tag: "Player"

    • Layer: "Ignore Raycast" - If you have raycasting detection issues

  • MainCamera:

    • Tag: "MainCamera"

    • Layer: "PostProcessing"

Step 2: Setup for Post Processing:

  • My system uses a post processing profile EXCLUSIVELY for the Gas Mask effects, as it changes profiles at runtime. This can help you have your own effects for normal gameplay and then a Gas Mask profile that ONLY activates when you entire the gas OR put on a gas mask. It's up to you whether you'd like to have both profiles very similar so there isn't a massive break in gameplay visuals.

Make sure to IMPORT the post processing package from the Window > Package Manager > Unity Registry > Search 'post' into your project.

  • Main Camera:

    • Add a "Post-process layer" component

      • Set the layer to "PostProcess"

      • The Trigger should be your "MainCamera"

  • Create an Empty GameObject or use my "PostProcessingVolume" object:

    • Add the "Post-process Volume" script

    • Set the "IsGlobal" to true

    • Weight = 1

    • Add the "OriginalPostProcessing" profile or one you would use normally for your game

NOTE: I have a spare post processing profile called "GasMaskPostProcessing" - You can edit this to be similar to your current post processing but also needs to have Vignette and DoF as per my settings:

  • Vignette:

    • Disabled By default

    • Intensity: 0.45

  • Depth Of Field:

    • Disabled By Default

    • Focus Distance: 0.1

Do you want to remove post processing or use that in a slightly different way? Check the page below for more instructions on how to edit and change these settings in script!

Step 3: Add an FPSController

  1. You can add this from the "Prefabs" folder or you can use your own FPSController for these purposes

  2. Make sure this has a tag of "Player" and a layer of "Ignore Raycast"

  3. On the MainCamera: Tag "Main Camera".

  4. Make sure the main camera has a "GMRayast" script and a "Post-process Layer"

  5. Set the "Post-Process layer" dropdown to "PostProcess"

If you need to use a different FPSController or edit the values from the current one check out my page below:

Step 4: Add collectable Objects to your scene

  1. Add a "Gas Mask" from the prefabs folder, this should have a "Box Collider" and "GMItem" script attached.

    1. Set the "GMItem" type to "Gas Mask"

  2. Add the number of "Gas Mask Filters" to your scene from the prefabs folder. Make sure this has a "Box Collider".

    1. Set the "GMItem" type to "Filter"

Step 5: Add a Gas Area (Particle Effect)

  1. Add the "GreenGasDamage" prefab or any effect you'd like

  2. Make sure this has a "Box Collider" set this to "IsTrigger"

  3. Make sure this has a "Gas Damage" script attached

Step 6: Adding each of the Managers and their setup

  • Add each of the managers to your scene and you can look at each of the pages below to see all of the settings with explanations of how to use them!

    • GMCanvasContainer

  • GMHealthManager

  • GMController

  • GMAudioManager

  • GMInputManager

  • GMUIManager

Last updated