Skip to main content

Changelog

iOS SDK version changelog

v5.6.7 - 2024/07/26

Added:

  • The SDK platform and version are now logged in console every time the SDK is initialized for easier debugging purposes in production.

Changed:

  • Don't use HDR pipeline when HDR is not needed - if environment map is not HDR or tone mapping is linear. This improves performance in some cases and improves backwards compatibility with older versions of PBR effects.

Fixed:

  • Tone-mapping not working properly on transmissive materials.
  • Fix setting unassigned textures when loading effects.
  • Environment map not loading when provided in switchEffect API.

v5.6.5 - 2024/06/12

Fixed:

  • Incorrect loading of PNGs of type grayscale with alpha.

v5.6.4 - 2024/05/16

No changes.

v5.6.3 - 2024/05/13

Added:

  • Loading support for grayscale and palette PNG images.
  • Loading support up to 16 bit PNG images.
  • Generating mipmaps for textures in runtime when effect is loaded.

Changed:

  • Bump internal SDK version for loading DeepAR effect to 4.

v5.6.2 - 2024/04/29

Added:

  • HDR support for glTF PBR materials
  • Added API setEnvironmentMap, setExposure, setToneMapping, setEnvironmentMapIntensity

v5.6.0 - 2024/03/15

Added:

  • Full support for glTF 2.0 PBR materials. List of supported extensions:
    • KHR_DRACO_MESH_COMPRESSION,
    • KHR_LIGHTS_PUNCTUAL,
    • KHR_MATERIALS_ANISOTROPY,
    • KHR_MATERIALS_CLEARCOAT,
    • KHR_MATERIALS_EMISSIVE_STRENGTH,
    • KHR_MATERIALS_IOR,
    • KHR_MATERIALS_IRIDESCENCE,
    • KHR_MATERIALS_SHEEN,
    • KHR_MATERIALS_SPECULAR,
    • KHR_MATERIALS_TRANSMISSION,
    • KHR_MATERIALS_UNLIT,
    • KHR_MATERIALS_VARIANTS,
    • KHR_MATERIALS_VOLUME,
    • KHR_TEXTURE_TRANSFORM,
    • EXT_TEXTURE_WEBP.
  • Draco decoding for DeepAR files.

v5.5.2 - 2024/01/19

Fixed:

  • Using backgroundBlur with front camera doesn't work as expected.

v5.5.1 - 2023/12/22

No changes.

v5.5.0 - 2023/12/21

No changes.

v5.4.4 - 2023/10/13

No changes.

v5.4.3 - 2023/09/21

No changes.

v5.4.2 - 2023/09/15

Fixed:

  • Offscreen rendering bug.
  • Priority inversion caused by bx::Thread.
  • Shutdown crash.

v5.4.1 - 2023/08/17

No changes.

v5.4.0 - 2023/08/11

No changes.

v5.3.0 - 2023/07/17

Added

  • DeepAR for iOS is now published on CocoaPods and Swift Packages.
  • glTF transmission support.
  • Background blur and background replacement API.
  • Mute/unmute all the sounds coming from DeepAR.
  • HDR textures support.

Changed

  • Audio can now be played from multiple animation controllers at the same time. Previously, only one sound could be active.

Fixed

  • Unloading effect from the unkwnown slot could break the currently loaded effect.
  • Crash caused by effects with scripting.
  • Audio not playing if part of initial node in animation controller.

v5.2.0 - 2023/05/23

Changed

  • Removed the polygon count limit in the scene which was ~100k before.
  • Improved rendering performance with regard to mesh instances.

Fixed

  • Simple pendulum direction not consistent for front and back camera.
  • Sound not playing if part of the first state.
  • Crashing when passing null to changeParameter API for the component parameter.

v5.1.1 - 2023/03/31

  • Fix front camera problems with beauty filters.
  • Fix meshes using bones (but not face bones) disappearing when face not visible.

v5.1.0 - 2023/03/24

  • Added version API DeepAR.sdkVersion.
  • Added scripting interop API.
  • Fix intermittent low FPS on video recordings issue.
  • Fix 2D face landmarks not being mirrored properly.
  • Fix multiple calles to changeParameterTexture crashes the app.
  • Fix blend-shapes are inverted on effects using 2D face landmarks like eyes and lips.
  • Fix effects with skin texture crashing.

v5.0.0 - 2023/03/15

  • No changes.

v4.1.0 - 2023/02/14

  • Added startCameraWithAudio to CameraController. Use this instead of startCamera to avoid dark fade-in effect when recording videos.

v4.0.3 - 2022/11/11

  • Render error message in case of too many polygons in effect.

v4.0.2 - 2022/10/26

  • Added texture size uniform that is updated every frame for every texture.
    • In shaders it is accessible with TEXTURE2D_SIZE(sampler_name) macro.

v4.0.1 - 2022/10/20

  • Updated the Scripting API:
    • Added the Face Position component class.
    • Added trigger events and functions.
    • Fixed Debug.renderText() default color parameters.
  • Fixed video texture support when video is placed in a subdirectory (with new DeepAR Studio).

v4.0.0 - 2022/09/16

v3.4.5 - 2022/09/08

  • No changes on iOS SDK

v3.4.4 - 2022/08/12

  • Added new Dynamic UVs options in SDK and Studio.
    • For dynamic UVs you can choose between face and real options.
    • face option's behaviour is the same as it was before - UVs are adjusted for sampling the person’s face from camera texture.
    • real option adjusts the UVs so that the camera texture is sampled based on the real positions of the mesh vertices.
  • Fixed dynamic UVs not working for nodes that are not in face space.
    • Dynamic UVs now work for everything:
      • Nodes in orthographic layers.
      • Nodes in perspective layers.
      • Nodes in face space.
      • Nodes in face space with parent or child node transformations.
      • Nodes not in face space.
  • Fixed eye position component mirroring.

v3.4.3 - 2022/07/28

  • Fix landmark2D camera mirror bug

v3.4.2 - 2022/02/24

  • Improved face tracking performance.

v3.4.1 - 2021/12/07

  • Fix for audio offset with prepare video recording.
  • Fix for switch effect with path and face parameter not working.
  • New video textures feature.

v3.3.0 - 2021/11/15

v3.2.0 - 2021/10/04

  • Improved touch handling.

v3.1.3 - 2021/09/20

  • No changes on iOS SDK

v3.1.2 - 2021/09/17

  • No changes on iOS SDK

v3.1.1 - 2021/09/15

  • Fixed crash when recording video and changing camera
  • Fixed scripting subsystem resource leaks
  • General refactoring and bugfixes

v3.1.0 - 2021/08/20

  • Want to add focus on touch or flash to your DeepAR camera? You can now use our Camera Controller implementation and modify it in any way you want. Check it out on our GitHub example.
  • DeepAR can stutter when starting to record a video. For this reason we have videoRecordingWarmupEnabled flag which you can use to avoid this issue. Check out our documentation on this feature.
  • Want to have more control over physics components in runtime? You can now enable/disable entire physics with enablePhysics method or show/hide physics colliders showColliders method. Also, you can change any physics component parameter through our ChangeParameter API, see documentation.
  • General refactoring and bugfixes

v3.0.0 - 2021/07/23

  • New API reference pages
  • News features: physics and scripting (check out our guides here)
  • Core Engine optimisations and refactor
  • Setting the name and location of a video recording is now possible
  • We are now bundling iOS SDK in XCFramework so that device and simulator frameworks are in one package

v2.4.1 - 2021/04/02

  • Improved audio/video sync for video recording (audio and video should now be perfectly synchronized).
  • Known issue: switching cameras while video recording causes audio/video to go out of sync (so you should disable the camera switching while video recording if the user is also recording audio).

v2.4.0 - 2021/03/26

  • bugfix: if CameraController started with the back camera, the image was flipped
  • added touchStart and touchEnd methods that work with new Hide on touch component of DeepAR Studio

v2.3.1 - 2021/02/19

  • bugfix: DeepAR crashing for feeding frames of non-standard aspect ratios

v2.3.0 - 2020/12/23

  • Custom image format for the output of DeepAR capture. When you call startCapture method, you will be served frames from the DeepAR through the frameAvaliable delegate method. Now you can choose the image format of that output frame.Supported image formats are:
    • RGBA (default)
    • BGRA
    • ARGB
    • ABGR
  • Black frames and flickering in video recording issue fixed
  • changeParameter method floatValue override fixed. There was a bug in this version of the method where the parameter would not be passed to the DeepAR. It was usually used to control Blend shapes of the effects.
  • Other smaller stability improvements and bugfixes

v2.2.1 - 2020/10/02

  • Added moveGameObject API method
  • Users can now change the additional game object and material properties with changeParameter API like enable animation, blend mode, culling mode, various material flags etc. Read more here.
  • Rendering engine optimizations providing better performance on lower-end iOS devices and faster background segmentation
  • Fixed bug where didStartVideoRecording delegate method was not called
  • Other various stability improvements and bugfixes

v2.2.0 - 2020/09/07

Major upgrade, check the API docs for more in detail features explanation

  • Frame-by-frame/Continuous rendering mode (live mode on/off) added
  • Off-screen/On-screen rendering mode added
  • Seamless switching between any rendering mode

API changes:

  • removed parameter orientation from processFrame
  • initializeWithWidth now takes a parameter of type CAEAGLLayer instead of a generic CALayer for the last parameter
  • added following new methods: initializeOffscreenWithWidth, switchToRenderingOffscreenWithWidth, switchToRenderingToViewWithFrame, changeLiveMode, processFrameAndReturn

Improvements

  • Video recording memory leaks fixed
  • Using native camera texture through enqueCameraFrame API
  • Various other stability and bug fixes

v.2.1.4 - 2020/08/27

  • Added support for 1920x1080 resolution
  • Computer vision only on/off mode added
  • Bugfixes and optimizations

v2.0.0 - 2020/07/22

  • Major upgrade
  • New segmentation model
  • Tracking improvements
  • Bugfixes and optimizations

v1.4.7 - 2020/03/19

  • The microphone permission is asked when starting to record instead of on launch
  • Fixed first black frame when recording the video

v1.4.6 - 2020/02/28

  • Bugfixes
  • Performance improvements
  • When the resolution change, frame output will reset

v1.4.5 - 2019/10/09

  • Bugfixes

v1.4.4 - 2019/10/04

  • Bugfixes
  • Support for changing textures at runtime
  • Game object transforms can now be changed at runtime
  • Textures can now be changed at runtime
  • Segmentation masks now work properly on the first frame
  • Color sampling now works properly on the first frame

v1.4.3 - 2020/07/02

  • Bugfixes
  • Minimum iOS version set to 11

v1.4.2 - 2020/04/23

  • Fixed frame output bug
  • Fixed audio sync error when recording with pause/resume

v1.4.1 - 2020/04/03

  • Bugfixes
  • Video API update

v1.4.0 - 2020/03/20

  • Image tracking support
  • Improved handling multiple faces
  • Foreground and Hair segmentation support

v1.3.0 - 2019/01/02

  • License key support

v1.2.6 - 2019/11/25

  • Reduced CPU usage

v1.2.5 - 2018/11/05

  • Support for hair segmentation (enabled on request)
  • Added didFinishShutdown to the ARViewDelegate

v1.2.4 - 2018/10/18

  • Added support for 1920x1080
  • Improved external camera handling
  • Added face detection sensitivity setting
  • Added face rect output

v1.2.3 - 2018/08/17

  • Added function to initialize DeepAR with the back camera
  • Added functions to change the focus and exposure points of interest
  • Improved how camera orientation changes
  • iPhone X now takes higher resolution screenshots
  • Bugfix: changing orientation while using the back camera
  • Other bugfixes

v1.2.2 - 2018/07/25

  • Bugfixes and performance improvements

v1.1.9 - 2018/05/25

  • Updated docs

v1.1.1 - 2018/01/04

  • Added API for getting the raw face data (face pose and landmark coordinates)

v1.0.25

  • Added possibility to record the video without audio

v1.0.24

  • Fixed issues with external camera handling

v1.0.23

  • Fixed issue when audio stops being recorded on camera switch

v1.0.22

  • Fixed issue with another OpenGL view while recording or frame output in progress

v1.0.21

  • Fixed issues with additional OpenGL view in the same screen

v1.0.20

  • Improved performance
  • Added option to use different camera resolution

v1.0.19

  • iPhone simulator build

v1.0.18

  • Added blink detection

v1.0.17

  • Added cancelSwitchEffect method

v1.0.16

  • Added simple physics simulation
  • Added panorama capabilities
  • Improved face tracking

v1.0.15

  • Added iMessage sample

v1.0.14

  • Fixed crash when shutdown is called shortly after prepare/start video recording.

v1.0.13

  • Fixed memory leaks

v1.0.12

  • Added cropMode setting

v1.0.11

  • Fixed bug when rendering is resumed on another screen on lock/unlock device

v1.0.10

  • Added method to prepare the video recording in advance
  • Fixed bug when sometimes the video recorded is black
  • Fixed bug when quickly shutting down the AR engine and then initializing it again

v1.0.9

  • Added the option of passing the video compression parameters
  • Reduced delay between the call of startVideoRecording and the actual start of video recording