pacs - ryzom/ryzomcore GitHub Wiki


title: NeL PACS description: published: true date: 2023-03-01T05:22:17.941Z tags: editor: markdown dateCreated: 2022-03-16T09:48:47.188Z

The NeL PACS library comprises world surface representations for content movement and collision management for both server and client applications.

Documentation

Todo. {.is-danger}

General features

  • Both landscape and enclosed spaces are supported.
  • PACS can either be linked to application as a library or run as a pair of stand-alone service.

Path Finding (not up to date)

  • Algorithm for determining (non-convex) surface list for a path
  • Surface border skirting algorithm for generating paths across surfaces

Collisions

  • There is support for both object-object collisions and object-scenery collisions.
  • Objects are divided into static solid objects, dynamic solid objects and dynamic 'ghost' objects that have no impact on the scenery
  • Both Logical collisions and Blocking collisions are supported
  • Blocking collisions may be treated as 'sticky', 'sliding' or 'bounce'
  • Object collision primitives include cylinders and cuboids.
  • PACS may maintain a collision space history which allows re-tracing of movement information received late, by the server, through the world as it was for lag management purposes.

Tools

  • Landscape scenery is converted directly to a surface representation by exported data re-processing utilities.
  • Streets and interiors must have explicit collision models (surface models) which are exported from 3ds Max and processed to generate the same surface representation.

Samples

  • shapes: This sample demonstrates creating and moving move primitives, colliding them with other primitives, collecting the triggers and managing world images.

See also

⚠️ **GitHub.com Fallback** ⚠️