OSS Scripting System for Game Development in Rust - Inria - Institut national de recherche en sciences et technologies du numérique
Communication Dans Un Congrès Année : 2021

OSS Scripting System for Game Development in Rust

Pablo Silva
  • Fonction : Auteur
  • PersonId : 1101500
Rodrigo Oliveira Campos
  • Fonction : Auteur
  • PersonId : 1101501
Carla Rocha
  • Fonction : Auteur
  • PersonId : 1101502

Résumé

Software development for electronic games has remarkable performance and portability requirements, and the system and low-level languages usually provide those. This ecosystem became homogeneous at commercial levels around C and C++, both for open source or proprietary solutions. However, innovations brought other possibilities that are still growing in this area, including Rust and other system languages. Rust has low-level language properties and modern security guarantees in access to memory, concurrency, dependency management, and portability. The Open Source game engine Amethyst has become a reference solution for game development in Rust, has a large and active community, and endeavors in being an alternative to current solutions. Amethyst brings parallelism and performance optimizations, with the advantages of the Rust language. This paper presents scripting concepts that allow the game logic to be implemented in an external interpreted language. We present a scripting module called Legion Script that was implemented for the entity and component system (ECS) called Legion, part of the Amethyst organization. As a Proof-of-Concept (POC), we perform the Python code interpretation using the Rust Foreign Function Interface (FFI) with CPython. This POC added scripting capabilities to Legion. We also discuss the benefit of using the alternative strategy of developing a POC before contributing to OSS communities in emergent technologies.
Fichier principal
Vignette du fichier
scripting-system-rust-preprint.pdf (199.85 Ko) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)

Dates et versions

hal-03254065 , version 1 (08-06-2021)

Licence

Identifiants

Citer

Pablo Silva, Rodrigo Oliveira Campos, Carla Rocha. OSS Scripting System for Game Development in Rust. 17th IFIP International Conference on Open Source Systems (OSS), May 2021, Lathi/virtual event, Finland. pp.51-58, ⟨10.1007/978-3-030-75251-4_5⟩. ⟨hal-03254065⟩
149 Consultations
294 Téléchargements

Altmetric

Partager

More