Skip to main content

SkelForm runtime for Pygame. Uses the generic runtime

Project description

Library for running SkelForm animations in Pygame.

import skelform_pygame as skf_pg

Basic Setup

  • skf_pg.load() - loads .skf file and returns armature & textures, to be used later
  • skf_pg.animate() - transforms the armature's bones based on the animation(s)
  • skf_pg.construct() - provides the bones from this armature that are ready for use
  • skf_pg.draw() - draws the bones on-screen, with the provided style(s)

1. Load:

(armature, textures) = skf_pg.load("skellina.skf")

This should only be called once (eg; before main game loop), and armature and textures should be kept for later use.

2. Animate:

# use `skf_pg.time_frame()` to get the animation frame based on time (1000 = 1 second)
time = 2000
frame = skf_pg.time_frame(time, armature.animations[0], False, True)

print(frame) # will be at the 2 second mark of the animation

armature.bones = skf_pg.animate(armature, [armature.animations[0]], [0], [0])

Note: not needed if armature is statilc

3. Construct:

center = pygame.Vector2(screen.get_width()/2, screen.get_height()/2)

final_bones = skf_pg.construct(
    armature,
    screen,
    skf_pg.AnimOptions(
      pos=center
    )
)

Modifications to the armature (eg; aiming at cursor) may be done before or after construction.

4. Draw:

skf_pg.draw(final_bones, armature.styles, textures, screen)

Limitations

  • Mesh deformation not supported

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

skelform_pygame-0.6.0.tar.gz (16.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

skelform_pygame-0.6.0-py3-none-any.whl (652.0 kB view details)

Uploaded Python 3

File details

Details for the file skelform_pygame-0.6.0.tar.gz.

File metadata

  • Download URL: skelform_pygame-0.6.0.tar.gz
  • Upload date:
  • Size: 16.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for skelform_pygame-0.6.0.tar.gz
Algorithm Hash digest
SHA256 509128f52aab9185cc3685e11ef99babf82b13966e41a57de5f90fb8e1235e1b
MD5 278b17347c357a2ec0a80df10241428e
BLAKE2b-256 2b99210287efb2e1d07bbc61ea23d1113f895b183bf99f89c6d80e6cd638a1a4

See more details on using hashes here.

File details

Details for the file skelform_pygame-0.6.0-py3-none-any.whl.

File metadata

File hashes

Hashes for skelform_pygame-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2e81db9e62768ee9cbcb70ba4a3e7a3d9c6582e631dc6e46b77347f3cec0c66b
MD5 ba154def529c59313f3f44fed7f4376a
BLAKE2b-256 9b9781d321a8520bd91a322e28fe01692d86f25f453faee6a14a7e85fe24c785

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page