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.4.0.tar.gz (452.8 kB 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.4.0-py3-none-any.whl (3.7 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for skelform_pygame-0.4.0.tar.gz
Algorithm Hash digest
SHA256 a8b89d23e387fdefe1e187e56619e5957a75a7c1c2bd97cc28bd02cafa982fb4
MD5 e159f44261089afe92125ca63b58d478
BLAKE2b-256 03cbf983f4248bb57049154884e284d05b83a236375635ec6be1642fcc2be5d6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for skelform_pygame-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e7fcece983c73a2b0864f40921c34a02978d907d76aecaf2e1c0a74dbed65667
MD5 dd8341a1e3d07221c1b10db74c74a319
BLAKE2b-256 1dd6a49f0a68b7220028ef3f1aa4c84993706735ed583509d56ffc779985a726

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