tigerfb

{tigerfb} provides a cross-platform GUI window for display - based on the public domain TiGr library

This display window includes keyboard and mouse events.

The name {tigerfb} is derived from the parent TiGr library name, and is a loose acronym for “TIny Graphics Engine for an R Frame Buffer”

The suggested way to use {tigerfb} is to combine it with {nara}[https://cran.r-project.org/package=nara] - i.e

  1. Use nara as the rendering buffer to prepare an image
  2. Show this image on screen using tigerfb::fb_updatd(window, image)
  3. Repeat steps (1) and (2) fast enough to look good.

What’s in the box

Installation

You can install from GitHub with:

# install.packages('pak')
install.packages('nara') # from CRAN
# pak::pkg_install('coolbutuseless/tigerfb')
install.packages("tigerfb", repos = c('https://coolbutuseless.r-universe.dev', 'https://cloud.r-project.org'))

# A collection of demonstrations of capabilities if `tigerfb`
pak::pkg_install('coolbutuseless/tigerdemos')

Included demo: fb_demo()

The fb_demo() command runs a colorful simulation of a bubble universe.

library(tigerfb)

fb_demo()

Demos: {rdoom} and {tigerdemos}

{rdoom} is the game Doom running in R with interactive keyboard/mouse control and sound effects.

{tigerdemos} includes a number of smaller demonstrations

This is tigerdemos::particles() where particles swarm around the mouse location:

https://github.com/user-attachments/assets/87afff12-e780-4350-b0f8-a5a5adc77d98

Related Software