Releases: H-uru/libhsplasma
Releases · H-uru/libhsplasma
2025.11.04
- Fix a variety of compatibility issues with Python 3.10-3.13, and drop support for Python versions older than 3.7.
- Expose
plJPEGandplPNGutilities to Python API. - Expose
plMipmap's JPEG cache to Python API. - Expose modifier target properties to Python API.
- Explose more
plClothingItemproperties to Python and add index range checking. - Make
plKey::getObj()a template function that can cast the result to an expected subclass. - Add
plMipmap::CompressJPEG()to Python and C++. - Add
plVehicleModifier::kNumWheelsconstant. - Add getters and setters to several C++ classes.
- Improve support for reading and writing MQO PRP files.
- Fix handling of waveset bounding boxes in Drawable Spans.
- Fix
plEAXListenerMod.hto not depend on internal (non-installed) EFX headers. - Fix
plArmatureLODModwriting PRC Meshes tag twice. - Fix handling of
plMipmaplevels too small to be DXT compressed. - Fix ownership transfer issues in
pyGUIControlMod. - Fix DDS data erroneously appearing in PRC when it was flagged for exclusion.
- Fix PNG images being labelled as "DDS" in PRC.
- Fix
plMipmapJPEG decompression using the wrong channel for JPEG alpha. - Fix
plLocationencoding issues and add unit tests. - Tools: Fix prpgrep not matching some objects properly.
- Tools: Fix PrpPack not actually mapping .prd -> .prp and vice versa in constructed filenames.
- Tools: Fix prpmod crash when passing a creatable that is not an
hsKeyedObject
2024.03.07
- Add
ptAttribLayervalue support to plPythonFileMod parameters - Implement previously-unimplemented JPEG compression in plJPEG
- Add methods to load JPEG and PNG streams directly into a plMipmap
- Devirtualize
open(),close(),setVer()methods in the hsStream classes - Remove unused
destroy()method from hsThread - Fix: don't re-order object IDs when writing pages
- Fix cases where object IDs were not properly preserved on read, and expose the
preserveObjIdssetting on the ResManager to Python - Fix decompression of JPEG color data to match Plasma's expected BGRA format
- Fix incorrect base class for plLayerSDLAnimation
- Fix macro redefinition warnings in pnSocket.cpp
- CMake: Switch to FindPython module from CMake 3.12, and fix compatibility with Python 3.12
- CMake: Clean up library dependencies and add namespaced library exports (
HSPlasma::HSPlasmaandHSPlasma::HSPlasmaNet) for targets linking against libhsplasma libraries
2023.05.08
- Add some missing constants to PyHSPlasma bindings, and improve typing annotations for keys
- Fix
plResManager::ReadAgefailure when the first page listed in the.agefile doesn't exist (see H-uru/PlasmaShop#71)
2023.03.21
- Add a
hsWindowsStreamfor using low-level Win32 APIs for dealing with files - Add an option to plResManager to preserve Object IDs during saving/loading
- Python binding fixes/updates for
plClothingItem,plSpanTemplate.Vertex,plStereizer - Fix compatibility issues with Python 3.9 and later
- Fix default
hsQuatconstructor to produce a valid quaternion - Fix PRC parsing of Particle Source params
2022.05.19
- Fix major performance regression in 2022.05.16 release.
2022.05.16
- Drop Python 2.x support
- Update sample python scripts for Python 3.x compatibility
- Add support for waveset buoys
- Add some missing APIs to various Python wrapper objects
- Add EAX object python bindings
- HSPlasmaNet: Implement some missing Auth messages
- Fix Object ID issues when writing PRPs
- Fix incorrectly marking PRPs as optimized after they've been modified
- Fix EoA animation timing calculations
- Fix PRC parsing issues in plSpanTemplate
- Fix hsCompressedQuatKey64 reading and writing
- Fix incorrect object returned from
plLayerAnimation::getRuntimeCtl() - Fix a failure to decode ELF lines with non-UTF8 text
- Fix missing transform matrices in plGeometrySpan PRC
- Fix plSpan contents properties when adding/removing lights
- Fix plGBufferGroup.getVertices() returning incorrect values in Python
- Windows: Fix race condition in hsFileStream by avoiding libc File I/O APIs.
2021.06.08
This is the final release supporting Python 2.7
2020.08.30
Release 2020-08-30