Skip to content

Create a Landmarks compatible Environment from scratch

Michael Starrett edited this page Jul 29, 2019 · 44 revisions

Objective: Recreate the SimpleSample_50x50.unity scene from a New Scene using only the Unity Editor

1. From the Unity editor window, select File > New Scene

2. Delete everything from the scene's hierarchy (Main Camera and Directional Light)

3. Drag and drop the _Landmarks_ prefab (Assets/Landmarks/Prefabs/) into the hierarchy

4. Locate the LM_Environment GameObject, a child of our new _Landmarks_ GameObject, and expand it to view children

5. Populate the environment with filler props

 * #### Right click the `filler_props` GameObject. Select "Create Empty" and rename this new child of `filler_props` to "NonTargetProps"

      * Right click our new `NonTargetProps` GameObject and select "3D Object > Cube"

           * Click on our new `Cube` GameObject and, under the Transform component, set the Position (-12.5, 5, 13.8) and Scale (5, 10, 5)

      * Right click the `Cube` object we just created and select "Duplicate" (repeat this process until there are 5 copies)

      * In the inspector, under Transform, set the Position of each cube GameObject (functionally, these GameObjects can be located anywhere in the environment)

      * In the project window, navigate to Assets/Landmarks/Materials/ then drag and drop the SimpleSample_Pillar material onto each cube that we just created

 
 * Right click the `filler_props` GameObject. Select "Create Empty" and rename this new child of filler_props to "Walls"
      * Right click our new `Walls` GameObject, select "3D Object > Cube", and change the name of this GameObject to "C"
           * In the inspector window, under Transform, set the Position (0.5, 3.05, 24.5), Rotation (0, 0, 0), and Scale (49, 6, 1)
           * In the project window, navigate to Assets/Landmarks/Materials/ then drag and drop the `SimpleSample_CyanWall` material onto the GameObject that we just created

      * Right click the Walls GameObject again, select "3D Object > Cube", and change the name of this GameObject to "M"
           * In the inspector window, under Transform, set the Position (25.5, 3.05, 0), Rotation (0, 90, 0), and Scale (50, 6, 1)
           * In the project window, navigate to Assets/Landmarks/Materials/ then drag and drop the `SimpleSample_MagentaWall` material onto the GameObject that we just created

      * Right click the Walls GameObject again, select "3D Object > Cube", and change the name of this GameObject to "Y"
           * In the inspector window, under Transform, set the Position (-24.5, 3.05, 0), Rotation (0, 90, 0), and Scale (50, 6, 1)
           * In the project window, navigate to Assets/Landmarks/Materials/ then drag and drop the `SimpleSample_YellowWall` material onto the GameObject that we just created

      * Right click the Walls GameObject again, select "3D Object > Cube", and change the name of this GameObject to "K"
           * In the inspector window, under Transform, set the Position (0.5, 3.05, -24.5), Rotation (0, 0, 0), and Scale (49, 6, 1)
           * In the project window, navigate to Assets/Landmarks/Materials/ then drag and drop the `SimpleSample_BlackWall` material onto the GameObject that we just created

 
 * Right click the filler_props GameObject. Select "3D Object > Cube" and rename this new child of filler_props to "terrain"
      * Click on our new `terrain` GameObject and, under the Transform component, set the Scale (50, 0.01, 50)
      * In the project window, navigate to Assets/Landmarks/Materials/ then drag and drop the `SimpleSample_MarbleFloor` material onto the terrain GameObject we just created.
  1. Create target objects for navigation and other tasks

  2. Specify the possible locations for target objects within the environment (random assignment of target locations to target objects, if desired)

  3. Create a row of placeholder objects (Facilitates any task where target objects are removed from the environment and placed outside it, such as TASK_Mappit)

  4. Specify locations in the environment where the player will be spawned (i.e., starting locations)

Clone this wiki locally