Astra Unity 2.6.6
Astra Unity Plugin
All Classes Namespaces Functions Variables Enumerations Enumerator Properties Events Pages
Changelog

Version 2.6.6 - 09/16/22

  • Eye modifiers in the AvatarItem inspector panel now correctly work in URP and HDRP pipelines
  • EasyStandard color tints now work in URP
  • Fixed IL2CPP astra_resource_remove linker error
  • Fixed rigs being out-of-sync when two avatars shared the same meshes but one had a morphable with a rig target
  • Fixed texture references from Morphables with MaterialTargets staying referenced
  • CompoundItem.AITextureGuids and CompoundItem.AISubmeshTextureMap were migrated to CompoundItem.AISubmeshTexMap
  • Improved startup sequence (normalized) of Astra in Unity Editor
  • Astra will now remember your configuration details upon project relaunch if Astra configuration was initialized in edit mode
  • Configuration has an option for scene serialization that will strip Astra textures from the scene during save. This is an experimental feature.
  • MorphableItem.InjectedBlendshapes is now MorphableItem.InjectedMeshTargets
  • Added several Astra.Job examples
  • Moved example JPG graphics to PNGs
  • Jobs should now use Astra.Job.IsSuccessful method instead of isSuccessful property
  • Hid additional 3rd party symbols for linux symbols
  • DecimateAvatar now properly handles entire AvatarItem
  • Thawed jobs now print job info when a job is bad
  • Improved prefab generation of AvatarItems
  • Resolved decimation race condition
  • Fixed IL2CPP error for missing astra_resource_remove symbol
  • Resolved serialization with Primitive class
  • Resolved sampler state issue for 2021+
  • Added support for decals when generating prefabs
  • Improved object load when handling bad assets
  • Added support for parsing JSON strings using interop C++/C# for use in IL2CPP targets
  • Added support to load JSON recipes when using IL2CPP
  • Fixed occasional decal dirty states
  • Added HDRP Diffusion Profile injection via reflection
  • Fixed race issue with DecalManager when removing items that don't yet exist
  • Added Astra/Help window for first time in project use
  • Fixed incorrect rendering of the wet layer in arcade eyes in HDRP
  • Fixed alpha handling of the skin in HDRP when using post processing volumes
  • Added experimental serialization in the configuration for textures (improves scene saving when using avatars in edit mode)
  • Auto installs Astra's skin diffusion profile on first launch if detected that you're using HDRP
  • Quieted and combined some noisy logging
  • Loading assets via the Astra editor tools in edit mode now marks scene as dirty
  • Fixed improper result of a Pool.Reference when not found
  • Configuration files are auto saved even if editor does not have auto refresh enabled
  • Asset Search now filters avatars by name if specified
  • Resolved sampler limit issues on Skin shadergraph

Version 2.6.5 - 01/25/22

Version 2.6.4 - 01/03/22

Version 2.6.3 - 12/24/21

  • Misc typos and grammatical errors corrected in documentation
  • Updated native binaries
  • Cleaned up boot process and standardized it
  • Added Astra.Logger.LogTrace and Astra.Logger.LogDebug
  • Fixed ping API
  • Fixed occasional boot problem on mobile targets
  • Properly records more asset load histories in the Astra/Asset/Load tool
  • Removed obsolete native libraries
  • Moved some tools out of public such as the Texture Transfer Tool
  • Min texture sizes are always at least 4x4 instead of occasionally 2x2
  • Reduced noise of logs
  • SerializableDictionary now reindexes on reads instead of writes to work around non main thread serialization issues
  • Fixed crash on prefab generation
  • Fixed CameraController demos
  • Fixed various Decal sync and loading problems
  • Standardized compatibility handling
  • Standardized Awake/ref calls for Astra.Asset.CompoundItems
  • Some tools now prompt for config initialization such as Search and Load
  • Standardized modifiers
  • Fixed and updated various older examples such as AstraApp
  • Removed internal developer tools from menus
  • Improved overall API documentation
  • Removed company guid calls (obsolete API)
  • Reduced lock pressure on job queue inserts

Version 2.6.2 - 11/23/21

  • Swapped UnityEngine.Debug.LogXYZ to Astra.Logger.LogXYZ allowing filtering by the developer
  • Improved render pipeline guessing
  • Ported StandardColorCustomize shader to HDRP
  • Fixed misc HDRP transparency issues
  • Quieted misc logs such as AvatarItem lookups
  • Fixed Unity 2020+ serialization issues
  • Log levels are synced between C# and C++ now
  • Deleting avatars now yields a Job
  • Fixed serialization issue with rigging and animations
  • No longer prefers BC7 and ASTC textures by default (will be re-defaulted later when the server is updated)
  • Fixes MaterialVariation order loading
  • Added misc examples like Catalog querying
  • Moved from ProjectConfiguration configs to JSON
  • Added MaterialManager API
  • JobQueue now will attempt to run during the main AstraManager.Update loop
  • Jobs now help yield errors when freezing and thawing improperly
  • Fixed various avatar load thumbnail conversions

Version 2.6.1 - 09/29/21

  • Various android fixes
  • Ensures BodyManager is ready when generating AI masks
  • Assets are hidden by default during loading
  • Fixed DecalItem issues with MaterialVariations
  • Reduced contention in InterOp manager
  • Improved native interop process handling between both dynamic and static library loading (apple issue)
  • Added error handling for corrupt PartItem loading
  • Properly handles platforms that don't support runtime texture compression for avatar thumbnails
  • Split large download requests into batches to prevent 5XX errors on server
  • Added tvOS support (unofficially supported)
  • Added macOS arm64 support
  • Cleaned up PoseItem API to be more consistent and make more sense
  • Added new documentation for EventBus
  • Refreshing the catalog updates both Avatars and Assets now
  • Added RigItem.SetInBindPose
  • Removed product_options as a requirement when removing a product from a cart
  • Added Content Creation guide
  • Fixed misc serialization issues
  • ResyncAllMorphables now syncs children as well
  • Added AvatarItem.GetRecipe
  • Added Loader.LoadAvatarFromRecipe

Version 2.6 - 08/01/21

  • Standardized AvatarLoadOptions to have the same casing
  • Added support for Gen8 base figure (no content)
  • Material Variations appear in search results
  • Improved documentation for filtering assets
  • Resolved seriazliation issue in rare cases for avatars
  • Added 2019+ support for advanced eye shader
  • Added EventBus for managing events
  • Prevents flashes of color during mesh loading until material is complete
  • Adds support for versionsed texture authoring allowing for more optimized normal maps
  • Adds support for runtime texture processing via c++ library
  • Adds support for macOS arm (m1/Apple Silicon)
  • Adds support for non-avx macOS (used for x86_64 rosetta emulation or older macOS)
  • Adds support for older macOS 10.11 (El Capitain)
  • Adds support for tVOS (10.0+)
  • Finalized support for iOS (64bit 10.0+) now works without special instructions
  • Adds armv8-a android support (64bit)
  • Fixed race condition with ai mask regeneration
  • Adds support for embedding libAstra as static library (c++) into Unity
  • Added ecommerce support for google play store
  • Fixed bug with mask generation when using XR
  • Updated PoseItem logic (Drive/Apply vs older RestorePrevious/Deactivate)
  • Extended examples for authentication
  • Authoring assets is officially supported (cloth, hair, moprhables (mesh target only), decals)
  • Added authoring documentation and example assets
  • Fixed refreshing avatar list when using catalog of assetutility
  • Standardized AvatarLoadOptions
  • Improved job queue reliability
  • Improved job queue latency
  • Improved play/stop barrier in unity
  • Improved task queue for c++ events
  • Fixed serialization of AvatarItem managers
  • Added ability to delete assets
  • Fixed crash when streaming multiple requests over the network
  • Can now query AssetCategories via API
  • Resolved PartItem loading
  • Adds support for versioned authored content
  • Adds resource compression support
  • Resolved issues with height adjustments
  • Can now install multiple MRs at one time in editor
  • Fixed offscreen smr binding

Version 2.5 - 03/15/21

  • Added lighting example and documentation
  • Added support for using a precache file for better first time launch performance
  • Namespace overhaul for better organization
  • Additional information about UV channels when inspecting a MeshItem
  • Support for translating bones from target to source
  • Overhaul of Item loaders to use the new Loader API instead of instantiating classes, better consisitency with other APIs
  • Added support for URP rendering
  • Innitial support for Genesis8
  • New procedural eye shader Astra/EyesAdvanced
  • Performance updates (averaging 200-400% speed ups in load and computation times, and 25-50% memory reductions for most operations)
  • Improvements to job queue for better handling
  • Many performance improvements, specifically targeted around reducing how long it takes to load avatars
  • A couple new APIs for batch-applying assets to an Avatar: ApplyAssets function on an AvatarItem, AllowProjection parameter for AvatarLoadOptions, which allows you to delay the expensive projection operation until after assets are all applied, and a ResyncAllMorphables function on an AvatarItem's MorphManager to trigger the projection.
  • A new example showing techniques to speed up Avatar loading.
  • MaterialVariation support (a faster and more efficient way to manage many materials for one shared mesh)
  • Support for installing pre-compressed pre-optimized packages (faster install times)
  • Support for texture and mesh version information (this allows more efficient loading for updated textures packs and backwards compatible handling of old assets)
  • Textures now support mipmapping
  • New texture sizes: 256 and 128
  • New texture formats: ASTC, BC7, BASISU
  • Textures are now properly optimized when no alpha channel is used (DXT5 textures are converted to DXT1)
  • NOTE: 2.5 databases are not compatible with prior databases, you will need to delete your old db
  • New part subtypes such as Nose

Version 2.4 - 10/07/20

  • Addition of multiple camera scripts imitating the camera setup for Max, Blender, Maya, Substance, Zbrush, or Unity
  • Extensive SDK documentation
  • Support for setting up a rig to apply animations to
  • Fixes to be able to set position and rotation for the rig
  • Overhaul of shop API to make it more intuitive and better documented
  • Additional API additions to support an end to end avatar editor application
  • Fixes to some AvatarItem APIs
  • Crash fix for projection
  • Memory leak fixes, supports loading 1000 avatars back to back with reduced leaks
  • Bone mapping support for assets
  • Cleanup of Editor Astra menu tooling to be better organized, paring out features that aren't supported
  • Improvements to make it easier to load assets
  • Addition of Catalog APIs to make it easier to filter content

Version 2.3 - 08/01/20

  • Code documentation across Item classes for use in the IDE
  • Obsolete classes removed
  • Renamed all Loaders to indicate their purpose better (ie the Avatar class was renamed AvatarLoader)
  • Fix for serialization and jobs
  • Fixes for the samples
  • Additions/Improvements to APIs which support an end to end avatar editor application

Version 2.2 - 07/23/20

  • Split up AvatarItem into reasonably sized manager classes, accessible from the AvatarItem
  • Managers include: BodyManager: Holds functionality for operating on the AvatarItem’s body, including accessing the rig and figure and adjusting the avatar height. AnimationManager: Holds functionality to set the AvatarItem’s pose or animations. CompoundManager: Holds functionality to access and adjust CompoundItems, which are the bulk of the types of assets applied to avatars (including clothing, hair, etc) MorphableManager: Holds functionality to access and adjust MorphItems, which are used to adjust the shape of the avatar, such as alien or zombie body shapes. DecalManager: Holds functionality to access and adjust DecalItems, which are textures like face paint and tattoos. AlphaMaskManager: Holds functionality to calculate the AvatarItem’s alpha texture, which is needed as items are applied and removed from the AvatarItem.
  • Tweaks to some AvatarItem functionality for consistency, as well as removal of some unsupported methods.
  • Additions to the Catalog API: SearchForHair and SearchForDecals
  • Setup a pool for textures
  • Support for quads
  • Fixes for searching MorphableItems through Catalog

Version 2.1 - 07/01/20

  • Set up the Auth, Shop, and Tracking APIs
  • Work across the SDK to provide correct access levels. Public methods are all what are planned to be supported.
  • Support for supplemental bones for assets
  • Support for clearing the cache
  • SDK, Native versioning set up
  • Setup of Mesh and Morphable pools, for ensuring only a single instance of each item of a given ID loaded
  • Initial set of example projects