Component-based game engine written in Common Lisp
Virality Engine provides a system and workflow that helps describe the elements needed to write 2D or 3D games. It was designed with several domain specific languages that make it easier to describe, manipulate, and use assets commonly found in game making. Such assets include (but are not limited to) textures, materials, shader programs, and scene trees of actors that are available for instantiation. Virality Engine also knows how to accept input from keyboards and most joysticks and gamepads.
The component system is a hybrid model between an ECS and an object model. The components are defined similar to CLOS defclass, and regular generic methods can be used with them. Components are added to Actors which represent game concepts like players, scenery, effects, etc. We define a component protocol invoked by Virality Engine to move your components to the next state and render them each frame.
- Versions: 0.3.0-1.cdc19cc
- Website: https://github.com/bufferswap/ViralityEngine
- Licenses: Expat
- Package source: gnu/packages/lisp-xyz.scm
- Builds: See build status
- Issues: See known issues
Install the latest version of
cl-virality as follows:
guix install cl-virality
Or install a particular version:
guix install email@example.com
You can also install packages in augmented, pure or containerized environments for development or simply to try them out without polluting your user profile. See the
guix shell documentation for more information.