panda3d-eventmapper

Simple utility to remap Panda3D events


Keywords
panda3d, gamedev
License
BSD-3-Clause
Install
pip install panda3d-eventmapper==0.3.0

Documentation

Build Status Package Versions Panda3D Versions License

Panda3D Event Mapper

A simple utility to remap Panda3D events.

Features

  • Remap events
  • Configure via PRC variables or an API
  • Handle keyboards, mice, and gamepads

Installation

Use pip to install the panda3d-eventmapper package:

pip install panda3d-eventmapper

Example

import sys

from direct.showbase.ShowBase import ShowBase
import panda3d.core as p3d

import eventmapper


p3d.load_prc_file_data(
    '',
    'event-map-item-quit escape q\n'
    'event-map-item-move-forward raw-w\n'
    'event-map-item-move-backward raw-s\n'
    'event-map-item-move-left raw-a\n'
    'event-map-item-move-right raw-d\n'
)


class GameApp(ShowBase):
    def __init__(self):
        super().__init__()

        self.eventmapper = eventmapper.EventMapper()
        self.accept('quit', sys.exit)
        self.accept('move-forward', print, ['move forward'])
        self.accept('move-backward', print, ['move backward'])
        self.accept('move-left', print, ['move left'])
        self.accept('move-right', print, ['move right'])

GameApp().run()

Running Tests

First install panda3d-simplepbr in editable mode along with test extras:

pip install -e .[test]

Then run the test suite with pytest:

pytest

Building Wheels

Install build:

pip install --upgrade build

and run:

python -m build

License

BSD