luxlabs header browser preview


@class NSString, SCNNode, CAAnimation, AVTPupilReflectionCorrectionDescriptor, NSMutableArray, AVTPhysicsController, SCNAnimationPlayer, AVTPresentationConfiguration, AVTEyeSkinningDescriptor;

@interface AVTAvatar : NSObject <AVTPhysicsControllerDelegate, NSCopying, NSSecureCoding> {
    SCNNode *_avatarNode;
    SCNNode *_skeleton;
    SCNNode *_headNode;
    SCNNode *_leftEye;
    SCNNode *_rightEye;
    SCNNode *_neckNode;
    SCNNode *_rootJointNode;
    struct { id x0; id x1; long long x2; BOOL x3; } *_morphInfoFromARKitBlendShapeIndex;
    struct { id x0; id x1; long long x2; BOOL x3; } *_friendlyPoseMorphInfos;
    unsigned long long _friendlyPoseMorphInfoCount;
    struct { float morphWeight; BOOL isEnabled; } _friendlyPoseMorphInfoProxy;
    AVTPresentationConfiguration *_presentationConfiguration;
    SCNNode *_portalPresentationConfigurationNode;
    int _transitionCount;
    BOOL _optimizedForSnapshot;
    AVTPhysicsController *_physicsController;
    NSMutableArray *_clipsPlaying;
    void /* unknown type, empty encoding */ _lookAt;
    NSMutableArray *_physicalizedMorpherDescriptors;
    NSMutableArray *_physicalizedSkeletonDescriptors;
    NSMutableArray *_morpherDrivenMaterialDescriptors;
    AVTPupilReflectionCorrectionDescriptor *_pupilReflectionCorrectionDescriptor;
    AVTEyeSkinningDescriptor *_eyeSkinningDescriptor;
    void /* unknown type, empty encoding */ _arOffset;
    float _arScale;
    double _physicsScaleFactor;
    double _lastRenderTime;
    CAAnimation *_bakedAnimation;
    SCNAnimationPlayer *_bakedAnimationPlayer_lazy;
}

@property (class, readonly) BOOL supportsSecureCoding;

@property (nonatomic) BOOL arMode;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;

+ (id)avatarWithDataRepresentation:(id)a0 error:(id *)a1;
+ (struct { })applyGazeCorrectionWithInputAngle:(SEL)a0 translation:(struct { })a1;
+ (id)avatarWithDataRepresentation:(id)a0 usageIntent:(unsigned long long)a1 error:(id *)a2;
+ (id)avatarWithDescriptor:(id)a0 usageIntent:(unsigned long long)a1 error:(id *)a2;
+ (BOOL)canLoadDataRepresentation:(id)a0;
+ (void)preloadAvatar:(id)a0;

- (float)opacity;
- (id)dataRepresentation;
- (id)init;
- (void)setOpacity:(float)a0;
- (void)dealloc;
- (void)update;
- (BOOL)isTransitioning;
- (void).cxx_destruct;
- (id)snapshotWithSize:(struct CGSize { double x0; double x1; })a0 scale:(double)a1 options:(id)a2;
- (id)copyWithZone:(struct _NSZone { } *)a0;
- (id)pose;
- (void)setPose:(id)a0;
- (void)stopTransitionAnimation;
- (void)transitionFromPose:(id)a0 toPose:(id)a1 duration:(double)a2 delay:(double)a3 completionHandler:(id /* block */)a4;
- (id)physicsState;
- (void)renderer:(id)a0 didApplyAnimationsAtTime:(double)a1;
- (void)lookAt:(SEL)a0;
- (float)arScale;
- (id)avatarNodeForPhysicsController:(id)a0;
- (void)setBakedAnimationReferenceTime:(double)a0;
- (void)_applyBlendShapes:(const float *)a0 parameters:(const float *)a1;
- (void)evaluatePhysicalizedDescriptors;
- (void)_applyBlendShapesWithTrackingData:(const struct { double x0; BOOL x1; float x2[51]; float x3[51]; float x4[1]; float x5[1]; } *)a0;
- (void)_applyHeadPoseWithTrackingData:(const struct { double x0; BOOL x1; float x2[51]; float x3[51]; float x4[1]; float x5[1]; } *)a0 gazeCorrection:(BOOL)a1 pointOfView:(id)a2;
- (void)_avatarNodeAndHeadNodeAreNowAvailable;
- (id)_cachePresentationConfigurationShaderModifiersForMaterial:(id)a0 cacheKey:(id)a1 shaderModifiersBuilder:(id /* block */)a2;
- (id)_objectsInDescriptors:(id)a0 andHierarchy:(id)a1 passingTest:(id /* block */)a2;
- (void)_preparePrePass:(BOOL)a0;
- (void)_resetFaceToRandomPosition;
- (void)_restoreOriginalShaderModifiersOfMaterial:(id)a0;
- (void)_transitionFromPose:(id)a0 toPose:(id)a1 bakedAnimationBlendFactor:(double)a2 duration:(double)a3 delay:(double)a4 timingFunction:(id)a5 timingAnimation:(id)a6 completionHandler:(id /* block */)a7;
- (void)_updateARModeShaderModifiersForMaterial:(id)a0 withOnTopMask:(BOOL)a1;
- (void)addCustomBehavioursInHierarchy:(id)a0 forBodyParts:(unsigned long long)a1;
- (void)addMorpherDrivenMaterialsInHierarchy:(id)a0;
- (void)addMorphingSkinningControllersInHierarchy:(id)a0;
- (void)addPhysicalizedDescriptorsInHierarchy:(id)a0 ignoringUpperNodes:(id)a1;
- (void)animatePhysicsScaleFactor:(double)a0 duration:(double)a1;
- (void)applyBlendShapesWithTrackingInfo:(id)a0;
- (void)applyHeadPoseWithTrackingInfo:(id)a0;
- (void)applyHeadPoseWithTrackingInfo:(id)a0 gazeCorrection:(BOOL)a1;
- (void)applyHeadPoseWithTrackingInfo:(id)a0 gazeCorrection:(BOOL)a1 pointOfView:(id)a2;
- (void /* unknown type, empty encoding */)arOffset;
- (void)avatarCommonInit;
- (id)avatarNode;
- (id)bakedAnimationCopy;
- (id)bakedAnimationPlayer;
- (long long)blendShapeIndexForARKitBlendShapeName:(id)a0;
- (id)blendShapeNameForARKitBlendShapeIndex:(unsigned long long)a0;
- (id)cameraNode;
- (void)configureForBestAnimationQuality;
- (id)copyWithUsageIntent:(unsigned long long)a0;
- (void /* unknown type, empty encoding */)currentLookAt;
- (id)debugPoseJSONRepresentation;
- (void)didAddToScene:(id)a0;
- (void)disabledBlendshapesSpecializationSettingsDidChange;
- (id)effectiveMorphedNodeForTargetName:(id)a0 candidateNode:(id)a1;
- (void)enumerateMorphInfoForCustomBlendShapeName:(id)a0 usingBlock:(id /* block */)a1;
- (id)headNode;
- (id)lightingNode;
- (void)lookAt:(SEL)a0 withDuration:(double)a1;
- (struct { id x0; id x1; long long x2; BOOL x3; })morphInfoForARKitBlendShapeIndex:(unsigned long long)a0;
- (id)neckNode;
- (id)newDescriptor;
- (BOOL)optimizeForSnapshot;
- (void)pauseBakedAnimation;
- (double)physicsController:(id)a0 downforceForNodeNamed:(id)a1;
- (double)physicsDownforceForNodeNamed:(id)a0;
- (void)physicsSpecializationSettingsDidChange;
- (void)removeCustomBehavioursInHierarchy:(id)a0 forBodyParts:(unsigned long long)a1;
- (void)removeMorpherDrivenMaterialsInHierarchy:(id)a0;
- (void)removeMorphingSkinningControllersInHierarchy:(id)a0;
- (void)removePhysicalizedDescriptorsInHierarchy:(id)a0;
- (void)removePresentationConfigurationBehavioursInHierarchy:(id)a0 forBodyParts:(unsigned long long)a1;
- (void)resetCustomBehaviours;
- (void)resetMorpherDrivenMaterials;
- (void)resetMorphingSkinningControllers;
- (void)resetPhysicalizedDescriptors;
- (void)resetPresentationConfigurationBehavioursInHierarchy:(id)a0 forBodyParts:(unsigned long long)a1;
- (void)resetToPhysicsState:(id)a0 assumeRestStateIfNil:(BOOL)a1;
- (void)resumeBakedAnimation;
- (id)rootJointNode;
- (void)rotateHead:(double)a0;
- (void)setOptimizeForSnapshot:(BOOL)a0;
- (void)setPhysicsScaleFactor:(double)a0;
- (void)setPresentationConfiguration:(id)a0;
- (void)setupEyeOrientationAndReflections;
- (void)setupFaceTracking;
- (void)setupMorphInfo;
- (void)setupMorphInfoForChangeInSubHierarchy;
- (id)stickerPhysicsStateIdentifier;
- (void)stopTransitionAnimationWithBlendOutDuration:(double)a0;
- (void)transitionFromPose:(id)a0 duration:(double)a1 delay:(double)a2 completionHandler:(id /* block */)a3;
- (void)transitionFromPose:(id)a0 toPose:(id)a1 duration:(double)a2 delay:(double)a3 timingAnimation:(id)a4 completionHandler:(id /* block */)a5;
- (void)transitionFromPose:(id)a0 toPose:(id)a1 duration:(double)a2 delay:(double)a3 timingFunction:(id)a4 completionHandler:(id /* block */)a5;
- (void)transitionToPose:(id)a0 duration:(double)a1 delay:(double)a2 completionHandler:(id /* block */)a3;
- (void)updateAfterAnimationsEvaluatedAtTime:(double)a0 renderer:(id)a1;
- (void)updateBindings;
- (void)updateBindingsOfNode:(id)a0;
- (void)updateEyeOrientationAndReflections;
- (void)updateMorpherDrivenMaterialsWithDeltaTime:(double)a0;
- (void)updatePoseWithCVAFaceTrackingAnimationDictionary:(SEL)a0 neckPosition:(id)a1 neckOrientation:(struct { })a2 applySmoothing:(BOOL)a3;
- (void)updatePoseWithFaceTrackingData:(id)a0 applySmoothing:(BOOL)a1;
- (void)updatePoseWithPoseProvider:(id)a0 applySmoothing:(BOOL)a1;
- (id)upperNodesIgnoredByPhysicalizedDescriptors;
- (unsigned long long)usageIntent;
- (BOOL)usesSkinningForEyeOrientation;
- (void)willRemoveFromScene:(id)a0;

@end