Hands-On Artificial Intelligence with Unreal Engine
上QQ阅读APP看书,第一时间看更新

Simple Links

Simple Links exists in the Point Links Array within the Nav Proxy Link, which means that multiple simple links in a single Nav Proxy Link are possible. To create another Simple Link, you can add an additional element to the array of Simple Nodes from the Details panel, as shown in the following screenshot:

Once we have more Simple Links, we can set the Start and End positions, like we did for the first one (by selecting them and moving them within the Viewport as any other actor). The following screenshot shows where I placed two Simple Links on the same Nav Proxy Link next to each other:

Every time we create a Nav Link Proxy, it comes with one Simple Link within the array.

For every Simple Link we have in the Point Links Array, we can access its settings by expanding the item. The following screenshot shows the Settings for the first Simple Link:

Let's understand these various settings:

  • Left and Right: The position of the Left and Right ends of the Link, respectively.
  • Left Project Height and Right Project Height: If this number is greater than zero, then the link will be projected down to the navigation geometry (using a trace with the maximum length specified by this number) for the Left and Right end of the Link, respectively. You can see this projected link in the following screenshot:
  • Direction: This specifies in which direction the link works. Also, the arrow in the Viewport will update accordingly. The possible options for this are as follows:
    • Both Ways: The link is bidirectional (remember that the AI needs to be equipped to traverse the Link in both directions; e.g. if we're going over a ledge, the agent needs to be able to fall from it (one direction of the link) and jump (the other direction of the link).
    • Left to Right: The link is only crossable from the Left end to the Right one (the agent still needs to have the ability to go in that link direction).
    • Right to Left: The link is only crossable from the Right end to the Left one (the agent still needs have the ability to go in that link direction).
  • Snap Radius and Height Radius: You may have noticed a cylinder that attaches the end of each link. These two settings control the Radius and the Height of that cylinder. Check Snap to Cheapest Area for more information about the use of this cylinder. The following screenshot shows that the first link has a bigger cylinder (both a bigger radius and higher):
  • Description: This is just a string in which you can insert a description for your convenience; it has no impact on the Navigation or on the Link.
  • Snap to Cheapest Area: If enabled, it will try to connect the link ends to the cheapest area among the available triangles within the cylinder that's specified by the Snap Radius and the Height Radius. For instance, if the cylinder intersects both the Default Nav Area and the BPJungle Nav Area (that we created earlier), the link will be connected directly to the Default Nav Area, rather than the jungle.
  • Area Class: The Link might have a cost to traverse, or be of a specific Nav Area. This parameter allows you to define which kind of Nav Area the Link is when traversed.

This concludes all the possibilities for the Simple Links. However, this is a very powerful tool that lets you shape the Nav Mesh and achieve amazing AI behavior. Now, let's dive into Smart Links.