ARFoundation Integration
This package is aimed at Unity developers using the ConjureKit packages with ARFoundation. This first release provides easy integration with Manna, starting from version 0.6.34, removing the need to write and keep updated the code needed to pass frames from the camera feed to Manna.
Example of usage (after instantiating Manna):
var frameFeeder = _manna.GetOrCreateFrameFeederComponent();
frameFeeder.AttachMannaInstance(_manna);
or alternatively, if you place the FrameFeederGPU
script yourself on ArCameraManager
gameobject:
var frameFeeder = arCameraManager.gameobject.GetComponent<FrameFeederBase>();
frameFeeder.AttachMannaInstance(_manna);
Make sure to call the AttachMannaInstance
before calling _conjureKit.Connect()
.
FrameFeederBase
provides a property to limit the frequency of frames being fed to Manna. You can set the property FeedInterval
and set it to the desired minimum interval (in seconds) between two subsequent frames being processed. By default (0), all frames from ARFoundation will be processed by Manna.
frameFeeder.FeedInterval = 1; // Scan every second;
Currently, the package includes a default GPU scanner implementation which can be found at Packages/Auki Labs ARFoundation Integration/Runtime/Manna/FrameFeederGPU
. You are also free to implement your own CustomFeeder
by inheriting from FrameFeederBase
and simply calling:
[SerializedField] private CustomFeeder frameFeeder;
frameFeeder.AttachMannaInstance(_manna);
or
var frameFeeder = _manna.GetOrCreateFrameFeederComponent<CustomFeeder>();