nel - ryzom/ryzomcore GitHub Wiki


title: NeL, the Nevrax Library description: Game Engine published: true date: 2023-03-25T03:30:46.912Z tags: editor: markdown dateCreated: 2019-11-24T11:54:30.698Z

The Nevrax Library (NeL) is an open source game engine. It was originally developed by Nevrax from 2000 to 2007, and historically targets OpenGL 1.x and Direct3D 9. Between 2007 and 2010, the project was carried on by the community, under the name OpenNeL. The project scope was expanded in 2010, with the publishing of the Ryzom source code, merging the OpenNeL project and the commercial Ryzom game into the Ryzom Core project. In 2014, Winch Gate introduced the Ryzom Forge project, refocusing on the commercial game. The Ryzom Core project is maintained independently by community.

Getting Started

Documentation

Libraries

  • NeL Misc: General library handling system abstraction. Implements threading, file serialization, general utility classes specific to game development, and other common features.
  • NeL Net: Network messaging library for distributed services.
  • NeL Web: Web technologies utility library. HTTP, patch system, etc.
  • NeL 3D: The 3D engine. Landscape, LOD, clusters, etc.
  • NeL GUI: In-game GUI system, with XML interface description and supporting texture atlas.
  • NeL PACS: Graph-based 2.5D collision detection library.
  • NeL Sound: Sound engine. 3D sound positioning, portals and clusters, filters and reverb effects, etc.
  • NeL Georges: Leveldesign data sheet editing library.
  • NeL Ligo: Leveldesign landscape placement library.

Services

Plugins

  • NeL CEGUI: Allows using CEGUI as a GUI engine using the NeL 3D library.

Contributing

Development Philosophy

We believe that any cutting edge interactive entertainment product needs a technology platform that is tuned to its specific requirements. NeL is intended to be considered as a library of components that can be added to, adapted or extended to meet the specific requirements of the products that are based on it.

It is not a complete out-of-the-box solution for absolutely any game that can be imagined. However, it is clear that "look-alike" products that use the complete set or a sub-set of the features from an existing NeL product (such as Ryzom) may get away with no extra technology development work at all.

Any technology developed for new NeL-based products should be fed back into NeL to allow the library to evolve and to stay at the leading edge.

The NeL developers work closely with product development teams to ensure that the solutions provided by NeL are perfectly adapted to the requirements of their product. In the case of Ryzom, for example, the product contains animated characters walking around and interacting with each other in indoor and outdoor environments.

What's included with the NeL engine

  • 3D engine
  • Sound engine
  • Network engine
  • Collision engine
  • Tools
  • Documentation (this Wiki)

What might a game developer need to implement

  • AI systems
  • Game rules services
  • Player management services
  • Billing systems
  • Game master and customer support tools
  • Client application
  • Audio-visual assets, level design, AI and other such game data
  • Client/Server communication solution
  • Localization systems (as required)
  • Patching system to update the client
  • Systems for determining which player should receive what information
  • Backup system to store persistent information
  • Systems for distributing data across the shard services (as required)

Developer Notes

See Also