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.1.tar.gz (14.0 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.4.1-py3-none-any.whl (446.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: skelform_pygame-0.4.1.tar.gz
  • Upload date:
  • Size: 14.0 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.4.1.tar.gz
Algorithm Hash digest
SHA256 95e42dcaef08e705026ced4a1033767f225fdd50994f5309c47bdac2db9c4847
MD5 c2bcd5619bc3407a211a8adc1854ae0d
BLAKE2b-256 cd129d2755c1ccc768ea9825117436d375f798fea349588a0364da5d4defe0f6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for skelform_pygame-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d7bd35689ea017fcfc33e48a7c273398c700f5ad544e85e8070cee74af60cec1
MD5 db292ab3e49b9da90ce352d3085d44e0
BLAKE2b-256 b621aaf2a6f490b00c7c0ea9666a19912d1b65c38a5dadcbe06588350c21aea1

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