Skip to content

Releases: Hampo/LuaP3DLib

v2.3

13 Jul 10:36
7a9587a

Choose a tag to compare

What's Changed

  • Added AddEntry method to ATC (7bf2d5e)
  • Updated ATCP3DChunk:AddEntry method to return the new index (11741fe)
  • Added P3D.BreakableObjectP3DChunk.Indexes enum (9a602a1)
  • Added local P3D references for efficiency (f6916ed)
  • Added P3D.LocatorP3DChunk.Types enum (f67dc0a)
  • Updated shader param chunks to assert on invalid FourCC param (c4f0a4c)
  • Added SetColourParameter, SetFloatParameter, SetIntegerParameter and SetTextureParameter methods to Shader (c4f0a4c)
  • Fixed FollowCameraData and WalkerCameraData having the wrong class name (9fae122)
  • Renamed chunk files to match their class name (929daf0)
    • Note: If upgrading from 2.2, it is advised to delete the existing Chunks folder to handle these renames
  • Added an assert to each chunk to prevent duplicates (5978028)
  • Added BigEndian support (6e2b48d afa2301 1e4e23d)
  • Improved Locator data handling (8d282b6)
  • Fixed the Replace method (924fc46)
  • Added CompressedQuaternionChannel2 chunk (596f007 635e689)
  • Fixed ChannelInterpolationMode incorrectly reading Interpolate as an UInt32 instead of Int32 (cbcc8f2)
  • Fixed IntegerChannel incorrectly reading the values as UInt32 instead of Int32 (b9b329d)
  • Added optional Name argument to GetChunk functions (32cfde3)
  • Improved GetChunk functions (3637603)
  • Fixed a bug in ATCP3DChunk:AddEntry method (02457b5 5a753c6)
  • Fixed a bug in ShaderP3DChunk:SetXParameter where existing paramters where incorrectly searched for by Name instead of Param (5dd1a36 941c04d)
  • Fixed P3D.Vector2:__mul (ae65311)
  • Added P3D.P3DFile:LoadFromData (dd9aa7f 766ba59)
  • Replaced math.atan2 with math.atan (01e2e21)
  • Added P3D.CollisionEffectP3DChunk.ClassTypes enum (8afbeb7)
  • Added ToArgb and FromArgb methods to P3D.Colour (722833b 83a7e7d)
  • Added NewOnDoesntExist argument to LoadP3DFile (9c725ba)
  • Minor P3D.FrontendLanguageP3DChunk:GetNameHash improvement (61f4d44)
  • Updated LoadP3DFile file doesn't exist error to include file path (89f72b2)
  • Various minor Lua efficiency improvements (5f9d785)
  • Added ToHSL and FromHSL methods to P3D.Colour (b99acfc)
  • Fixed Light constructor not assigning the Version, Type, Colour, Constant, Linear, Squard and Enabled values (edbb216)
  • Updated MultiController2 to auto calculate NumTracks (efbc31e)
  • Updated AnimationGroupList to correctly calculate number of animation groups, instead of blindly using the chunk count (dbb9020)
  • Cleaned up OldPrimitiveGroup (29f2659)
  • Fixed FrontendLayer constructor not assigning the Visible and Editable values (38d66ad)
  • Fixed MultiController2 incorrectly requiring a NumTracks in its constructor (8e7d473)
  • Updated OldExpressionOffsets to auto calculate NumPrimGroups and NumOffsetLists (4ae85f5)
    • This has a side effect of changing the constructor arguments - PrimGroupIndices is now argument 1
  • Fixed StatePropCallbackData incorrectly reading EventEnum as a Int32 instead of UInt32 (ec3b62f)
  • Updated StatePropStateDataV1 to auto calculate NumDrawable, NumFrameControllers, NumEvents and NumCallbacks (da687f7)
    • This has a side effect of changing the constructor arguments - OutFrame is now argument 4
  • Updated FrontendScreen to clean the PageNames (1b6ff03)

Full Changelog: v2.2...v2.3

v2.2

23 Mar 03:40
bb5e799

Choose a tag to compare

What's Changed

  • Updating example mod Meta.ini
  • Fixed the constructors of CollisionObjectP3DChunk and CollisionVectorP3DChunk
  • Fixing typo in LocatorP3DChunk constructor
  • Added __pairs metamethod to P3DChunk class to only output properties if a known chunk, and ValueStr if unknown
  • Improved __pairs metamethod implementation for P3DChunk class
  • Improved P3D.DecompressBlock
  • Added Path to invalid P3D file error
  • Replaced slow table_pack with faster {}
  • Added local reference to tostring for faster building
  • Minor optimisation to FrontendLanguage class
  • Added a missing assert in FrontendLanguageP3DChunk:GetNameHash
  • Added Clone method to P3DFile and P3DChunk
  • Remove redundant comment
  • Fixed a bug in :GetChunks and :GetChunksIndexed where it looked at chunksN instead of chunkN
  • Fixed :Clone() incorrectly cloning the metatable too. Should use the standard metatable of the chunk type.
  • Added :Match(Filters)
  • Added :Find(Filters, Backwards)
  • Added :FindFirst(Filters, Backwards)
  • Added :Replace(NewChunk)
  • Fixed a bug in Mesh constructor
  • Improved OldPrimitiveGroupP3DChunk UV List handling
  • Fixed a bug in OldPrimitiveGroupP3DChunk constructor
  • Improved OldPrimitiveGroupP3DChunk GetVertexType()
  • Fixed a bug in FrontendLanguageP3DChunk:SetValue
  • Fixed a bug in OldIndexOffsetListP3DChunk:__tostring()
  • Started implementation of Vector maths
  • Fixed a typo in Float2ChannelP3DChunk (Thanks @mazexz7 for pointing it out)
  • Fixed a bug when adding a chunk by index to the end of the chunk list

Full Changelog: v2.1...v2.2

v2.1

12 Aug 20:56
3872556

Choose a tag to compare

  • Complete VertexMask in OldPrimitiveGroupP3DChunk
  • Improved error on FrontendLanguageP3DChunk:GetValueFromName
  • Removed unused data from RoadP3DChunk
  • Updated RoadP3DChunk to use x instead of B with hardcoded 0
  • Removed unused chunks
  • Fixed __call in P3DChunk
  • Updated print to include source
  • Added basic implementation of P3D.Vector2, P3D.Vector3, P3D.SymmetricMatrix3x3, P3D.Quaternion, P3D.Matrix and P3D.Colour
  • Fixed child chunks not having chunk functions
  • Added a version print on load
  • Updated Example to v2.1
  • Fixed an error in constructor of ImageDataP3DChunk
  • Fixed ImageCount not auto calculating in SpriteP3DChunk
  • Fixed a grammatical error in P3D.LoadChunks

v2.0

30 Jul 21:26

Choose a tag to compare

First release of new structure
Contains all SHAR chunks