├── .github └── ISSUE_TEMPLATE │ ├── bug_report.md │ └── feature_request.md ├── CHANGELOG.md ├── CHANGELOG.md.meta ├── Contents.meta ├── Contents ├── face_mesh_face_model.zbin ├── face_mesh_face_model.zbin.meta ├── face_mesh_full_head_simplified_model.zbin ├── face_mesh_full_head_simplified_model.zbin.meta ├── face_tracking_model.zbin ├── face_tracking_model.zbin.meta ├── ic64.png └── ic64.png.meta ├── Documentation~ └── com.zappar.uar.md ├── Editor.meta ├── Editor ├── BuildPostProcess.cs ├── BuildPostProcess.cs.meta ├── CameraSourcesListPopupDrawer.cs ├── CameraSourcesListPopupDrawer.cs.meta ├── ImageTrain.meta ├── ImageTrain │ ├── ZImageTrainer.cs │ └── ZImageTrainer.cs.meta ├── PackageImportSettings.cs ├── PackageImportSettings.cs.meta ├── TargetFileListPopupDrawer.cs ├── TargetFileListPopupDrawer.cs.meta ├── ZAssistant.cs ├── ZAssistant.cs.meta ├── Zappar.UAR.Editor.asmdef ├── Zappar.UAR.Editor.asmdef.meta ├── ZapparARScene.cs ├── ZapparARScene.cs.meta ├── ZapparFaceLandmarkEditor.cs ├── ZapparFaceLandmarkEditor.cs.meta ├── ZapparFaceMeshTargetEditor.cs ├── ZapparFaceMeshTargetEditor.cs.meta ├── ZapparFaceTrackingTargetEditor.cs ├── ZapparFaceTrackingTargetEditor.cs.meta ├── ZapparGyroCameraEditor.cs ├── ZapparGyroCameraEditor.cs.meta ├── ZapparImageTrackingTargetEditor.cs ├── ZapparImageTrackingTargetEditor.cs.meta ├── ZapparInstantTrackingTargetEditor.cs ├── ZapparInstantTrackingTargetEditor.cs.meta ├── ZapparMenu.cs ├── ZapparMenu.cs.meta ├── ZapparMultiFaceTrackingTargetEditor.cs ├── ZapparMultiFaceTrackingTargetEditor.cs.meta ├── ZapparUARSettingsProvider.cs ├── ZapparUARSettingsProvider.cs.meta ├── ZapparUtilities.cs └── ZapparUtilities.cs.meta ├── LICENSE.md ├── LICENSE.md.meta ├── Materials.meta ├── Materials ├── CameraMaterial.mat ├── CameraMaterial.mat.meta ├── Default.mat ├── Default.mat.meta ├── Depth Mask.mat ├── Depth Mask.mat.meta ├── InvertedSurface.mat ├── InvertedSurface.mat.meta ├── Transparent.mat ├── Transparent.mat.meta ├── TransparentGlass.mat ├── TransparentGlass.mat.meta ├── URP.meta ├── URP │ ├── Default.mat │ ├── Default.mat.meta │ ├── Depth Mask.mat │ ├── Depth Mask.mat.meta │ ├── Transparent.mat │ ├── Transparent.mat.meta │ ├── TransparentGlass.mat │ ├── TransparentGlass.mat.meta │ ├── UV.mat │ └── UV.mat.meta ├── UV.mat ├── UV.mat.meta ├── uv-map.jpg └── uv-map.jpg.meta ├── Plugins.meta ├── Plugins ├── Android.meta ├── Android │ ├── ZCVAndroidRenderPlugin.h │ ├── ZCVAndroidRenderPlugin.h.meta │ ├── libs.meta │ ├── libs │ │ ├── arm64-v8a.meta │ │ ├── arm64-v8a │ │ │ ├── libZCVAndroidRenderPlugin.so │ │ │ └── libZCVAndroidRenderPlugin.so.meta │ │ ├── armeabi-v7a.meta │ │ ├── armeabi-v7a │ │ │ ├── libZCVAndroidRenderPlugin.so │ │ │ └── libZCVAndroidRenderPlugin.so.meta │ │ ├── x86.meta │ │ ├── x86 │ │ │ ├── libZCVAndroidRenderPlugin.so │ │ │ └── libZCVAndroidRenderPlugin.so.meta │ │ ├── x86_64.meta │ │ └── x86_64 │ │ │ ├── libZCVAndroidRenderPlugin.so │ │ │ └── libZCVAndroidRenderPlugin.so.meta │ ├── zcv.aar │ └── zcv.aar.meta ├── WebGL.meta ├── WebGL │ ├── zcv.jslib │ └── zcv.jslib.meta ├── Windows.meta ├── Windows │ ├── ImageTraining.dll │ ├── ImageTraining.dll.meta │ ├── zcv.dll │ └── zcv.dll.meta ├── Zappar.UAR.asmref ├── Zappar.UAR.asmref.meta ├── iOS.meta ├── iOS │ ├── ZCV.bundle.meta │ ├── ZCV.bundle │ │ ├── Contents.meta │ │ └── Contents │ │ │ ├── Resources.meta │ │ │ └── Resources │ │ │ ├── face_mesh_face_model.zbin │ │ │ ├── face_mesh_face_model.zbin.meta │ │ │ ├── face_mesh_full_head_simplified_model.zbin │ │ │ ├── face_mesh_full_head_simplified_model.zbin.meta │ │ │ ├── face_tracking_model.zbin │ │ │ └── face_tracking_model.zbin.meta │ ├── libzcv.a │ ├── libzcv.a.meta │ ├── zappar-unity.h │ ├── zappar-unity.h.meta │ ├── zappar-unity.mm │ └── zappar-unity.mm.meta ├── macOS.meta ├── macOS │ ├── ImageTraining.bundle.meta │ ├── ImageTraining.bundle │ │ └── Contents │ │ │ ├── CodeResources │ │ │ ├── Info.plist │ │ │ ├── MacOS │ │ │ └── ImageTraining │ │ │ └── _CodeSignature │ │ │ └── CodeResources │ ├── ZCV-macos.bundle.meta │ └── ZCV-macos.bundle │ │ └── Contents │ │ ├── CodeResources │ │ ├── Info.plist │ │ ├── MacOS │ │ └── ZCV │ │ └── _CodeSignature │ │ └── CodeResources ├── zappar.h ├── zappar.h.meta ├── zcv.cpp └── zcv.cpp.meta ├── README.md ├── README.md.meta ├── Resources.meta ├── Resources ├── Shaders.meta ├── Shaders │ ├── CameraBackgroundShader.shader │ ├── CameraBackgroundShader.shader.meta │ ├── DepthMask.shader │ ├── DepthMask.shader.meta │ ├── InvertedSurface.shader │ ├── InvertedSurface.shader.meta │ ├── ZUnlitTextureUV.shader │ └── ZUnlitTextureUV.shader.meta ├── User.meta └── User │ ├── ZapparUARSettings.asset │ └── ZapparUARSettings.asset.meta ├── Runtime.meta ├── Runtime ├── Interfaces.meta ├── Interfaces │ ├── ICameraListener.cs │ └── ICameraListener.cs.meta ├── Utilities.meta ├── Utilities │ ├── CameraSourcesListPopupAttribute.cs │ ├── CameraSourcesListPopupAttribute.cs.meta │ ├── LogManager.cs │ ├── LogManager.cs.meta │ ├── Singleton.cs │ ├── Singleton.cs.meta │ ├── SingletonMono.cs │ ├── SingletonMono.cs.meta │ ├── TargetFileListPopupAttribute.cs │ ├── TargetFileListPopupAttribute.cs.meta │ ├── ZapparUARSettings.cs │ └── ZapparUARSettings.cs.meta ├── Z.cs ├── Z.cs.meta ├── ZPermissions.cs ├── ZPermissions.cs.meta ├── Zappar.UAR.asmdef ├── Zappar.UAR.asmdef.meta ├── ZapparBaseCamera.cs ├── ZapparBaseCamera.cs.meta ├── ZapparBaseCameraBackground.cs ├── ZapparBaseCameraBackground.cs.meta ├── ZapparCamera.cs ├── ZapparCamera.cs.meta ├── ZapparCameraBackground.cs ├── ZapparCameraBackground.cs.meta ├── ZapparFaceDepthMask.cs ├── ZapparFaceDepthMask.cs.meta ├── ZapparFaceLandmark.cs ├── ZapparFaceLandmark.cs.meta ├── ZapparFaceMesh.cs ├── ZapparFaceMesh.cs.meta ├── ZapparFaceMeshTarget.cs ├── ZapparFaceMeshTarget.cs.meta ├── ZapparFaceTrackingAnchor.cs ├── ZapparFaceTrackingAnchor.cs.meta ├── ZapparFaceTrackingTarget.cs ├── ZapparFaceTrackingTarget.cs.meta ├── ZapparFullHeadModel.cs ├── ZapparFullHeadModel.cs.meta ├── ZapparGyroCamera.cs ├── ZapparGyroCamera.cs.meta ├── ZapparGyroCameraBackground.cs ├── ZapparGyroCameraBackground.cs.meta ├── ZapparImageTrackingTarget.cs ├── ZapparImageTrackingTarget.cs.meta ├── ZapparInstantTrackingTarget.cs ├── ZapparInstantTrackingTarget.cs.meta ├── ZapparMultiFaceTrackingTarget.cs ├── ZapparMultiFaceTrackingTarget.cs.meta ├── ZapparReflectionProbe.cs ├── ZapparReflectionProbe.cs.meta ├── ZapparTrackingTarget.cs └── ZapparTrackingTarget.cs.meta ├── SamplesSRP~ ├── Examples.meta └── Examples │ ├── FaceLandmark.unity │ ├── FaceLandmark.unity.meta │ ├── FaceMesh.unity │ ├── FaceMesh.unity.meta │ ├── FaceMeshSettings.lighting │ ├── FaceMeshSettings.lighting.meta │ ├── FaceTracker.unity │ ├── FaceTracker.unity.meta │ ├── ImageTracker.unity │ ├── ImageTracker.unity.meta │ ├── InstantTracker.unity │ ├── InstantTracker.unity.meta │ ├── MultiFaceTracker.unity │ ├── MultiFaceTracker.unity.meta │ ├── MultiImageTracker.unity │ ├── MultiImageTracker.unity.meta │ ├── Scripts.meta │ ├── Scripts │ ├── RandomColor.cs │ └── RandomColor.cs.meta │ ├── Zappar.UAR.asmref │ └── Zappar.UAR.asmref.meta ├── Samples~ ├── Examples.meta └── Examples │ ├── FaceLandmark.unity │ ├── FaceLandmark.unity.meta │ ├── FaceMesh.unity │ ├── FaceMesh.unity.meta │ ├── FaceTracker.unity │ ├── FaceTracker.unity.meta │ ├── ImageTracker.unity │ ├── ImageTracker.unity.meta │ ├── InstantTracker.unity │ ├── InstantTracker.unity.meta │ ├── MultiFaceTracker.unity │ ├── MultiFaceTracker.unity.meta │ ├── MultiImageTracker.unity │ ├── MultiImageTracker.unity.meta │ ├── Scripts.meta │ ├── Scripts │ ├── RandomColor.cs │ └── RandomColor.cs.meta │ ├── Zappar.UAR.asmref │ └── Zappar.UAR.asmref.meta ├── Temp~ ├── awe22_uar.jpg ├── camera.jpg ├── conical.png ├── editor_menu.jpg ├── face_landmark.jpg ├── face_mesh.jpg ├── face_track.jpg ├── img_track.jpg ├── img_train.jpg ├── instant_track.jpg ├── package_win.jpg ├── real_ref.jpg ├── reflect.jpg ├── uar_settings.jpg └── unity_srp.jpg ├── WebGLTemplates.meta ├── WebGLTemplates ├── Zappar.meta ├── Zappar │ ├── favicon.ico │ ├── favicon.ico.meta │ ├── index.html │ └── index.html.meta ├── Zappar2019.meta └── Zappar2019 │ ├── favicon.ico │ ├── favicon.ico.meta │ ├── index.html │ └── index.html.meta ├── ZapparResources~ ├── generated_1.zpt └── rocks.zpt ├── package.json └── package.json.meta /.github/ISSUE_TEMPLATE/bug_report.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Bug report 3 | about: Create a report to help us improve 4 | title: '' 5 | labels: '' 6 | assignees: '' 7 | 8 | --- 9 | 10 | **Describe the bug** 11 | A clear and concise description of what the bug is. 12 | 13 | **To Reproduce** 14 | Steps to reproduce the behavior: 15 | 1. Used UAR version '...' 16 | 2. With Unity version '....' using SRP (Yes/No) and build platform as '...' 17 | 3. Describe the unity scene setup - cameras, objects, prefabs, etc. 18 | 4. See error 19 | 20 | **Expected behavior** 21 | A clear and concise description of what you expected to happen. 22 | 23 | **Screenshots** 24 | If applicable, add screenshots to help explain your problem. 25 | 26 | **Desktop (please complete the following information):** 27 | - OS: [e.g. iOS] 28 | - Browser [e.g. chrome, safari] 29 | - Version [e.g. 22] 30 | 31 | **Smartphone (please complete the following information):** 32 | - Device: [e.g. iPhone6] 33 | - OS: [e.g. iOS8.1] 34 | - Browser [e.g. stock browser, safari] 35 | - Version [e.g. 22] 36 | 37 | **Additional context** 38 | Add any other context about the problem here. 39 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Feature request 3 | about: Suggest an idea for this project 4 | title: '' 5 | labels: '' 6 | assignees: '' 7 | 8 | --- 9 | 10 | **Is your feature request related to a problem? Please describe.** 11 | A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] 12 | 13 | **Describe the solution you'd like** 14 | A clear and concise description of what you want to happen. 15 | 16 | **Describe alternatives you've considered** 17 | A clear and concise description of any alternative solutions or features you've considered. 18 | 19 | **Additional context** 20 | Add any other context or screenshots about the feature request here. 21 | -------------------------------------------------------------------------------- /CHANGELOG.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f928fbc79bed7ae46a4e6c88d4098e54 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Contents.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7b593e37ba62e114e9c5a9aee3cfd5f2 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Contents/face_mesh_face_model.zbin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Contents/face_mesh_face_model.zbin -------------------------------------------------------------------------------- /Contents/face_mesh_face_model.zbin.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: adfe3dd7dc03e4a539a615e32b23c907 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Contents/face_mesh_full_head_simplified_model.zbin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Contents/face_mesh_full_head_simplified_model.zbin -------------------------------------------------------------------------------- /Contents/face_mesh_full_head_simplified_model.zbin.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 32eed3b6ac3d940a9bea2872a4e265f0 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Contents/face_tracking_model.zbin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Contents/face_tracking_model.zbin -------------------------------------------------------------------------------- /Contents/face_tracking_model.zbin.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5d3cd897b47ff4eff9a76459b7f21bd4 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Contents/ic64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Contents/ic64.png -------------------------------------------------------------------------------- /Contents/ic64.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e29fa016255c115409571c1af33e27ed 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 0 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | vTOnly: 0 27 | grayScaleToAlpha: 0 28 | generateCubemap: 6 29 | cubemapConvolution: 0 30 | seamlessCubemap: 0 31 | textureFormat: 1 32 | maxTextureSize: 2048 33 | textureSettings: 34 | serializedVersion: 2 35 | filterMode: 1 36 | aniso: 1 37 | mipBias: 0 38 | wrapU: 1 39 | wrapV: 1 40 | wrapW: 0 41 | nPOTScale: 0 42 | lightmap: 0 43 | compressionQuality: 50 44 | spriteMode: 1 45 | spriteExtrude: 1 46 | spriteMeshType: 1 47 | alignment: 0 48 | spritePivot: {x: 0.5, y: 0.5} 49 | spritePixelsToUnits: 100 50 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 51 | spriteGenerateFallbackPhysicsShape: 0 52 | alphaUsage: 1 53 | alphaIsTransparency: 1 54 | spriteTessellationDetail: -1 55 | textureType: 8 56 | textureShape: 1 57 | singleChannelComponent: 0 58 | flipbookRows: 1 59 | flipbookColumns: 1 60 | maxTextureSizeSet: 0 61 | compressionQualitySet: 0 62 | textureFormatSet: 0 63 | ignorePngGamma: 0 64 | applyGammaDecoding: 0 65 | platformSettings: 66 | - serializedVersion: 3 67 | buildTarget: DefaultTexturePlatform 68 | maxTextureSize: 32 69 | resizeAlgorithm: 0 70 | textureFormat: -1 71 | textureCompression: 1 72 | compressionQuality: 50 73 | crunchedCompression: 0 74 | allowsAlphaSplitting: 0 75 | overridden: 0 76 | androidETC2FallbackOverride: 0 77 | forceMaximumCompressionQuality_BC6H_BC7: 0 78 | - serializedVersion: 3 79 | buildTarget: Standalone 80 | maxTextureSize: 32 81 | resizeAlgorithm: 0 82 | textureFormat: -1 83 | textureCompression: 1 84 | compressionQuality: 50 85 | crunchedCompression: 0 86 | allowsAlphaSplitting: 0 87 | overridden: 0 88 | androidETC2FallbackOverride: 0 89 | forceMaximumCompressionQuality_BC6H_BC7: 0 90 | - serializedVersion: 3 91 | buildTarget: Android 92 | maxTextureSize: 32 93 | resizeAlgorithm: 0 94 | textureFormat: -1 95 | textureCompression: 1 96 | compressionQuality: 50 97 | crunchedCompression: 0 98 | allowsAlphaSplitting: 0 99 | overridden: 0 100 | androidETC2FallbackOverride: 0 101 | forceMaximumCompressionQuality_BC6H_BC7: 0 102 | - serializedVersion: 3 103 | buildTarget: WebGL 104 | maxTextureSize: 32 105 | resizeAlgorithm: 0 106 | textureFormat: -1 107 | textureCompression: 1 108 | compressionQuality: 50 109 | crunchedCompression: 0 110 | allowsAlphaSplitting: 0 111 | overridden: 0 112 | androidETC2FallbackOverride: 0 113 | forceMaximumCompressionQuality_BC6H_BC7: 0 114 | spriteSheet: 115 | serializedVersion: 2 116 | sprites: [] 117 | outline: [] 118 | physicsShape: [] 119 | bones: [] 120 | spriteID: 5e97eb03825dee720800000000000000 121 | internalID: 0 122 | vertices: [] 123 | indices: 124 | edges: [] 125 | weights: [] 126 | secondaryTextures: [] 127 | spritePackingTag: 128 | pSDRemoveMatte: 0 129 | pSDShowRemoveMatteOption: 0 130 | userData: 131 | assetBundleName: 132 | assetBundleVariant: 133 | -------------------------------------------------------------------------------- /Documentation~/com.zappar.uar.md: -------------------------------------------------------------------------------- 1 | # About 2 | 3 | Read more at : https://docs.zap.works/universal-ar/ 4 | -------------------------------------------------------------------------------- /Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2316b1b256249483e888d25cdcd6a2ce 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/BuildPostProcess.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5a8146834d56a4196b6fcc7f15417544 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/CameraSourcesListPopupDrawer.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using UnityEditor; 5 | 6 | namespace Zappar.Editor 7 | { 8 | [ExecuteInEditMode] 9 | [CustomPropertyDrawer(typeof(CameraSourcesListPopupAttribute))] 10 | public class CameraSourcesListPopupDrawer : PropertyDrawer 11 | { 12 | private static DateTime lastFileCheck = new DateTime(); 13 | private static List sources; 14 | private static Dictionary idsByName; 15 | 16 | private static void UpdateList() 17 | { 18 | if (DateTime.Now.Second <= (lastFileCheck.Second + 1)) return; 19 | 20 | sources = new List(); 21 | idsByName = new Dictionary(); 22 | try 23 | { 24 | for (int i = 0; i < Z.CameraCount(); i++) 25 | { 26 | string name = Z.CameraName(i); 27 | if (idsByName.ContainsKey(name)) 28 | { 29 | name = Z.CameraName(i) + " (" + Z.CameraId(i) + ")"; 30 | } 31 | sources.Add(name); 32 | idsByName.Add(name, Z.CameraId(i)); 33 | } 34 | } 35 | catch (Exception e) 36 | { 37 | Debug.LogError("Unable to check camera list: " + e.Message); 38 | } 39 | lastFileCheck = DateTime.Now; 40 | } 41 | 42 | public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) 43 | { 44 | UpdateList(); 45 | CameraSourcesListPopupAttribute atb = attribute as CameraSourcesListPopupAttribute; 46 | 47 | if (sources != null && sources.Count != 0) 48 | { 49 | int index = Mathf.Max(sources.IndexOf(property.stringValue), 0); 50 | index = EditorGUI.Popup(position, property.name, index, sources.ToArray()); 51 | property.stringValue = sources[index]; 52 | } 53 | else 54 | { 55 | EditorGUI.PropertyField(position, property, label); 56 | } 57 | } 58 | } 59 | } -------------------------------------------------------------------------------- /Editor/CameraSourcesListPopupDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b995d0c83dfb04a43b5efc8a1129e5e5 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/ImageTrain.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0c6950330e1ea0f409e8010d7efbaa72 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Editor/ImageTrain/ZImageTrainer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b749f50cd339c3844bb52069c63b7e57 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/PackageImportSettings.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.IO; 3 | using UnityEngine; 4 | using UnityEditor; 5 | 6 | namespace Zappar.Editor 7 | { 8 | [InitializeOnLoad] 9 | public class PackageImportSettings 10 | { 11 | static PackageImportSettings() 12 | { 13 | RefreshPackage(); 14 | } 15 | 16 | public static void RefreshPackage() 17 | { 18 | if (Application.isPlaying) return; 19 | 20 | //Copy WebGL templates from package to project 21 | string srcDir = "Packages/com.zappar.uar/WebGLTemplates"; 22 | string destDir = Application.dataPath + "/WebGLTemplates"; 23 | Utils.ZUtils.DirectoryCopy(srcDir, destDir, true); 24 | 25 | //Copy test zpt 26 | srcDir = "Packages/com.zappar.uar/ZapparResources~"; 27 | destDir = Application.streamingAssetsPath; 28 | Utils.ZUtils.DirectoryCopy(srcDir, destDir, false); 29 | 30 | //Cache UARSettings in local asset database 31 | ZapparUARSettingsProvider.GetOrCreateSettings(); 32 | 33 | #if !UNITY_2021_3_OR_NEWER 34 | //C++11 or above required for compiling advanced mesh plugins with EMC 35 | if (!PlayerSettings.WebGL.emscriptenArgs.Contains("-std")) 36 | { 37 | PlayerSettings.WebGL.emscriptenArgs += " -std=c++11"; 38 | Debug.Log("Updated WebGL emscripten arguments: " + PlayerSettings.WebGL.emscriptenArgs); 39 | } 40 | #endif 41 | } 42 | } 43 | } -------------------------------------------------------------------------------- /Editor/PackageImportSettings.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4810efcb2614d6a40b186ca7330e5fa3 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/TargetFileListPopupDrawer.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.IO; 3 | using System.Collections.Generic; 4 | using UnityEngine; 5 | using UnityEditor; 6 | 7 | namespace Zappar.Editor 8 | { 9 | [ExecuteInEditMode] 10 | [CustomPropertyDrawer(typeof(TargetFileListPopupAttribute))] 11 | public class TargetFileListPopupDrawer : PropertyDrawer 12 | { 13 | private DateTime m_lastFileCheck = new DateTime(); 14 | List m_zptFiles = new List(); 15 | 16 | private void UpdateFiles() 17 | { 18 | m_zptFiles.Clear(); 19 | try 20 | { 21 | DirectoryInfo directory = new DirectoryInfo(Application.streamingAssetsPath); 22 | FileInfo[] files = directory.GetFiles("*.zpt"); 23 | foreach (FileInfo file in files) 24 | { 25 | m_zptFiles.Add(file.Name); 26 | } 27 | } 28 | catch (Exception e) 29 | { 30 | // Unable to check streaming assets path 31 | Debug.LogError("Unable to check streaming assets path: " + e.Message); 32 | } 33 | m_lastFileCheck = DateTime.Now; 34 | } 35 | 36 | public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) 37 | { 38 | if (DateTime.Now.Second > (m_lastFileCheck.Second + 1)) 39 | { 40 | UpdateFiles(); 41 | } 42 | 43 | TargetFileListPopupAttribute atb = attribute as TargetFileListPopupAttribute; 44 | 45 | if (m_zptFiles != null && m_zptFiles.Count > 0) 46 | { 47 | int index = Mathf.Max(m_zptFiles.IndexOf(property.stringValue), 0); 48 | index = EditorGUI.Popup(position, property.name, index, m_zptFiles.ToArray()); 49 | property.stringValue = m_zptFiles[index]; 50 | } 51 | else 52 | { 53 | EditorGUI.PropertyField(position, property, label); 54 | } 55 | } 56 | } 57 | } -------------------------------------------------------------------------------- /Editor/TargetFileListPopupDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9372a7188b73a104887199c4bd4545fa 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/ZAssistant.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9fad7eacb6cd7b04c979d854cbb2024a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/Zappar.UAR.Editor.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Zappar.UAR.Editor", 3 | "references": [ 4 | "GUID:139c618766f367b4280b650efb618b72", 5 | "GUID:478a2357cc57436488a56e564b08d223", 6 | "GUID:15fc0a57446b3144c949da3e2b9737a9" 7 | ], 8 | "includePlatforms": [ 9 | "Editor" 10 | ], 11 | "excludePlatforms": [], 12 | "allowUnsafeCode": false, 13 | "overrideReferences": false, 14 | "precompiledReferences": [], 15 | "autoReferenced": true, 16 | "defineConstraints": [], 17 | "versionDefines": [], 18 | "noEngineReferences": false 19 | } -------------------------------------------------------------------------------- /Editor/Zappar.UAR.Editor.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dc781a6e2c95568428e7cca5e3a3f657 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Editor/ZapparARScene.cs: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | using UnityEditor.SceneManagement; 3 | using UnityEngine; 4 | using UnityEngine.Rendering; 5 | using UnityEngine.SceneManagement; 6 | 7 | namespace Zappar.Editor 8 | { 9 | [InitializeOnLoad] 10 | internal class ZapparARScene : UnityEditor.Editor 11 | { 12 | static ZapparARScene() 13 | { 14 | EditorSceneManager.newSceneCreated += EditorSceneManager_newSceneCreated; 15 | } 16 | 17 | private static void EditorSceneManager_newSceneCreated(Scene scene, NewSceneSetup setup, NewSceneMode mode) 18 | { 19 | if (!ZapparMenu.CreateNewARScene) return; 20 | ZapparMenu.CreateNewARScene = false; 21 | 22 | GameObject cam = Camera.main.gameObject; 23 | DestroyImmediate(cam); 24 | ZapparMenu.ZapparCreateCamera(); //create rear facing camera 25 | 26 | RenderSettings.skybox = null; 27 | RenderSettings.ambientIntensity = 0f; 28 | RenderSettings.ambientMode = AmbientMode.Flat; 29 | RenderSettings.ambientLight = new Color(150f / 255f, 150f / 255f, 150f / 255f); //ambientIntensity=0 30 | Lightmapping.bakedGI = false; 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Editor/ZapparARScene.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b81a72f58333ea84db9c446d928ce32c 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/ZapparFaceLandmarkEditor.cs: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | using UnityEngine; 3 | 4 | namespace Zappar.Editor 5 | { 6 | [CustomEditor(typeof(ZapparFaceLandmark))] 7 | public class ZapparFaceLandmarkEditor : UnityEditor.Editor 8 | { 9 | private ZapparFaceLandmark m_target = null; 10 | private ZapparFaceLandmark.Face_Landmark_Name m_landmarkName = ZapparFaceLandmark.Face_Landmark_Name.LeftEye; 11 | 12 | private readonly Vector3[] m_landmarkPositions = { 13 | new Vector3(0.23f,0.18f,-0.7f), //left eye 14 | new Vector3(-0.23f,0.18f,-0.7f), //right eye 15 | new Vector3(0.54f,0.2f,-0.24f), //left ear 16 | new Vector3(-0.54f,0.2f,-0.24f), //right ear 17 | new Vector3(0,0.18f,-0.85f), //nose bridge 18 | new Vector3(0,-0.03f,-1f), //nose tip 19 | new Vector3(0,-0.14f,-0.8f), //nose base 20 | new Vector3(0,-0.26f,-0.8f), //lip top 21 | new Vector3(0,-0.36f,-0.8f), //lip botton 22 | new Vector3(0,-0.3f,-0.8f), //mouth center 23 | new Vector3(0,-0.59f,-0.8f), //chin 24 | new Vector3(0.23f,0.35f,-0.8f), //left eyebrow 25 | new Vector3(-0.23f,0.35f,-0.8f) //right eyebrow 26 | }; 27 | 28 | private void OnEnable() 29 | { 30 | if (Application.isPlaying) return; 31 | 32 | m_target = (ZapparFaceLandmark)target; 33 | if (m_target.FaceTrackingAnchor == null) 34 | { 35 | Debug.Log("Assign Face tracking anchor for this face landmark"); 36 | return; 37 | } 38 | m_landmarkName = m_target.LandmarkName; 39 | } 40 | 41 | public override void OnInspectorGUI() 42 | { 43 | base.OnInspectorGUI(); 44 | 45 | if (Application.isPlaying) return; 46 | 47 | m_target = (ZapparFaceLandmark)target; 48 | 49 | if (m_target.FaceTrackingAnchor != null && m_target.LandmarkName != m_landmarkName) 50 | { 51 | m_landmarkName = m_target.LandmarkName; 52 | m_target.transform.localPosition = m_landmarkPositions[(int)m_landmarkName]; 53 | } 54 | } 55 | } 56 | } -------------------------------------------------------------------------------- /Editor/ZapparFaceLandmarkEditor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c1bfea85a8f6323498dcf29913366011 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/ZapparFaceMeshTargetEditor.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | 4 | namespace Zappar.Editor 5 | { 6 | [CustomEditor(typeof(ZapparFaceMeshTarget))] 7 | [DisallowMultipleComponent] 8 | public class ZapparFaceMeshTargetEditor : UnityEditor.Editor 9 | { 10 | private bool m_usingFullHead; 11 | 12 | private ZapparFaceMeshTarget m_target = null; 13 | 14 | private void OnEnable() 15 | { 16 | m_target = (ZapparFaceMeshTarget)target; 17 | if (m_target.FaceTrackingAnchor == null) 18 | { 19 | Debug.Log("Assign Face tracking anchor for this face mesh"); 20 | return; 21 | } 22 | m_usingFullHead = m_target.UseDefaultFullHead; 23 | 24 | if(!m_target.HaveInitializedFaceMesh) 25 | { 26 | m_target.CreateMesh(); 27 | } 28 | } 29 | 30 | private void CheckForHeadMeshUpdate() 31 | { 32 | if (m_usingFullHead != m_target.UseDefaultFullHead) 33 | { 34 | m_target.CreateMesh(true); 35 | m_usingFullHead = m_target.UseDefaultFullHead; 36 | } 37 | } 38 | 39 | public override void OnInspectorGUI() 40 | { 41 | base.OnInspectorGUI(); 42 | 43 | if(GUI.changed) 44 | { 45 | CheckForHeadMeshUpdate(); 46 | } 47 | } 48 | 49 | } 50 | } 51 | -------------------------------------------------------------------------------- /Editor/ZapparFaceMeshTargetEditor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e04da175dd80e8b4c8f70f187e3c90ac 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/ZapparFaceTrackingTargetEditor.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | 4 | namespace Zappar.Obsolete.Editor 5 | { 6 | [CustomEditor(typeof(ZapparFaceTrackingTarget))] 7 | [DisallowMultipleComponent] 8 | public class ZapparFaceTrackingTargetEditor : UnityEditor.Editor 9 | { 10 | private ZapparFaceTrackingTarget m_target = null; 11 | private int m_maxTrackerAllowed = 1; 12 | private GUIContent m_idGui; 13 | 14 | private void OnEnable() 15 | { 16 | if (Application.isPlaying) return; 17 | 18 | var settings = AssetDatabase.LoadAssetAtPath(ZapparUARSettings.MySettingsPathInPackage); 19 | m_target = (ZapparFaceTrackingTarget)target; 20 | m_maxTrackerAllowed = settings.ConcurrentFaceTrackerCount; 21 | 22 | m_idGui = new GUIContent("Face Number", "Unique id for face tracker [0-" + (m_maxTrackerAllowed - 1) + "]"); 23 | } 24 | 25 | public override void OnInspectorGUI() 26 | { 27 | base.OnInspectorGUI(); 28 | if (Application.isPlaying) return; 29 | 30 | int id = EditorGUILayout.IntField(m_idGui, m_target.FaceTrackingId); 31 | if (id < 0 || id >= m_maxTrackerAllowed) { Debug.Log("Please update UAR settings to fit the range!"); } 32 | else if (id != m_target.FaceTrackingId) { m_target.FaceTrackingId = id; EditorUtility.SetDirty(m_target.gameObject); } 33 | } 34 | } 35 | } -------------------------------------------------------------------------------- /Editor/ZapparFaceTrackingTargetEditor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b73fc68a949c19b4989d437f50c88d44 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/ZapparGyroCameraEditor.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using UnityEditor; 5 | 6 | namespace Zappar.Editor 7 | { 8 | [CustomEditor(typeof(ZapparGyroCamera))] 9 | public class ZapparGyroCameraEditor : UnityEditor.Editor 10 | { 11 | class Styles 12 | { 13 | public static GUIContent CameraBackground = new GUIContent("Camera Background", "Use rear camera feed as scene background"); 14 | public static GUIContent CameraId = new GUIContent("Editor Camera", "Camera to use when in Play mode."); 15 | } 16 | 17 | private ZapparGyroCamera m_target; 18 | private List m_editorCams = new List(); 19 | private Dictionary m_editorIdCams = new Dictionary(); 20 | private int m_camIndx = -1; 21 | 22 | private void OnEnable() 23 | { 24 | if (Application.isPlaying) 25 | return; 26 | 27 | UpdateCamList(); 28 | m_target = (ZapparGyroCamera)target; 29 | if (string.IsNullOrEmpty(m_target.EditorCameraId) && m_editorCams.Count > 0) 30 | { 31 | m_camIndx = 0; 32 | (target as ZapparGyroCamera).EditorCameraId = m_editorCams[0]; 33 | } 34 | else 35 | { 36 | m_camIndx = m_editorCams.IndexOf(m_target.EditorCameraId); 37 | } 38 | } 39 | 40 | private void UpdateCamList() 41 | { 42 | try 43 | { 44 | for (int i = 0; i < Z.CameraCount(); ++i) 45 | { 46 | string cam = Z.CameraName(i); 47 | string id = Z.CameraId(i); 48 | 49 | if (m_editorIdCams.ContainsKey(id)) continue; 50 | 51 | if (m_editorCams.Contains(cam)) 52 | { 53 | cam += " (" + id + ")"; 54 | } 55 | m_editorCams.Add(cam); 56 | m_editorIdCams.Add(id, cam); 57 | } 58 | } 59 | catch (Exception e) 60 | { 61 | Debug.LogError("Failed checking camera list. Exception: " + e.Message); 62 | } 63 | } 64 | 65 | public override void OnInspectorGUI() 66 | { 67 | EditorGUILayout.HelpBox("The camera will remain at the origin of your scene, but rotate according to the device's orientation in 3D space", MessageType.Info); 68 | 69 | if (Application.isPlaying) 70 | return; 71 | 72 | m_target = (ZapparGyroCamera)target; 73 | bool m_camBackground = EditorGUILayout.Toggle(Styles.CameraBackground, m_target.UseCameraBackground); 74 | 75 | if ( m_camBackground!= m_target.UseCameraBackground) 76 | { 77 | ZapparGyroCameraBackground zcb = m_target.transform.GetComponentInChildren(); 78 | if(m_camBackground && zcb==null) 79 | { 80 | UpdateCamList(); 81 | m_target.UseCameraBackground = true; 82 | Camera main = m_target.transform.GetComponent(); 83 | main.clearFlags = CameraClearFlags.Nothing; 84 | main.depth = 1; 85 | GameObject child = new GameObject("Zappar Camera Background", new[] { typeof(Camera), typeof(ZapparGyroCameraBackground) }); 86 | child.GetComponent().cullingMask = 0; 87 | child.transform.SetParent(m_target.transform); 88 | }else if(!m_camBackground && zcb!= null) 89 | { 90 | m_target.UseCameraBackground = false; 91 | m_target.EditorCameraId = ""; 92 | m_editorIdCams.Clear(); 93 | m_editorCams.Clear(); 94 | DestroyImmediate(zcb.transform.gameObject); 95 | Camera main = m_target.transform.GetComponent(); 96 | main.clearFlags = CameraClearFlags.Skybox; 97 | main.depth = 0; 98 | } 99 | 100 | m_target.UseCameraBackground = m_camBackground; 101 | EditorUtility.SetDirty(m_target.gameObject); 102 | } 103 | 104 | if(m_target.UseCameraBackground) 105 | { 106 | int ind = EditorGUILayout.Popup(Styles.CameraId, m_camIndx, m_editorCams.ToArray()); 107 | if (m_editorCams.Count > ind && ind != m_camIndx) 108 | { 109 | m_camIndx = ind; 110 | m_target.EditorCameraId = m_editorCams[ind]; 111 | EditorUtility.SetDirty(m_target.gameObject); 112 | } 113 | } 114 | } 115 | } 116 | } -------------------------------------------------------------------------------- /Editor/ZapparGyroCameraEditor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e6d5bf86b95157c4595dbcb8f9500e11 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/ZapparImageTrackingTargetEditor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bc999d5238eb0584bbf4cf1c7136e3a2 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/ZapparInstantTrackingTargetEditor.cs: -------------------------------------------------------------------------------- 1 | using UnityEditor; 2 | using UnityEngine; 3 | 4 | namespace Zappar.Editor 5 | { 6 | [CustomEditor(typeof(ZapparInstantTrackingTarget)), DisallowMultipleComponent] 7 | public class ZapparInstantTrackingTargetEditor : UnityEditor.Editor 8 | { 9 | class Styles 10 | { 11 | public static GUIContent ZCamera = new GUIContent("Camera","Zappar camera that provides device orientation for Z placement"); 12 | public static GUIContent MinZDistance = new GUIContent("Min Z","Minimum Z distance away from camera"); 13 | public static GUIContent MaxZDistance = new GUIContent("Max Z", "Maximum Z distance away from camera"); 14 | public static Color Background = new Color(1f, 1f, 1f, 0.05f); 15 | } 16 | 17 | ZapparInstantTrackingTarget m_target; 18 | 19 | public override void OnInspectorGUI() 20 | { 21 | base.OnInspectorGUI(); 22 | 23 | m_target = (ZapparInstantTrackingTarget)target; 24 | 25 | if (m_target.MoveAnchorOnZ) 26 | { 27 | Rect adParam = EditorGUILayout.BeginVertical(EditorStyles.inspectorDefaultMargins); 28 | 29 | EditorGUILayout.PropertyField(serializedObject.FindProperty("m_zCamera"), Styles.ZCamera); 30 | 31 | Rect scale = GUILayoutUtility.GetLastRect(); 32 | EditorGUILayout.BeginHorizontal(new GUILayoutOption[] { GUILayout.ExpandWidth(true) }); 33 | 34 | var minZ = serializedObject.FindProperty("m_minZDistance"); 35 | var maxZ = serializedObject.FindProperty("m_maxZDistance"); 36 | EditorGUIUtility.labelWidth = scale.width / 3f; 37 | 38 | minZ.floatValue = EditorGUILayout.FloatField(Styles.MinZDistance, minZ.floatValue); 39 | maxZ.floatValue = EditorGUILayout.FloatField(Styles.MaxZDistance, maxZ.floatValue); 40 | EditorGUILayout.EndHorizontal(); 41 | 42 | EditorGUILayout.EndVertical(); 43 | EditorGUI.DrawRect(adParam, Styles.Background); 44 | } 45 | 46 | serializedObject.ApplyModifiedProperties(); 47 | } 48 | } 49 | } -------------------------------------------------------------------------------- /Editor/ZapparInstantTrackingTargetEditor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 214adf3ab04d0b1468cf8cb875b8e58e 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/ZapparMenu.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c865da35a17894f4cbdadacb7c8d5611 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/ZapparMultiFaceTrackingTargetEditor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 45668c99a13788747994815aca30a3c6 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/ZapparUARSettingsProvider.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dd4e4f10d90263d42af16baaa5992a82 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Editor/ZapparUtilities.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2450f24f978d0ca43a9c65f055c27ded 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- 1 | Copyright (c) Zappar 2 | All rights reserved. 3 | 4 | Redistribution and use in source and binary forms, with or without modification, 5 | are permitted provided that the following conditions are met 6 | 7 | 1. Redistributions of source code must retain the above copyright notice, this 8 | list of conditions and the following disclaimer. 9 | 10 | 2. Redistributions in binary form must reproduce the above copyright notice, 11 | this list of conditions and the following disclaimer in the documentation andor 12 | other materials provided with the distribution. 13 | 14 | 3. Neither the name of the copyright holder nor the names of its contributors 15 | may be used to endorse or promote products derived from this software without 16 | specific prior written permission. 17 | 18 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS AS IS AND 19 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 20 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 21 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR 22 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 23 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 24 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 25 | ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 27 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -------------------------------------------------------------------------------- /LICENSE.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c716c4976cee9634e95ba59466a8ff96 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Materials.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b600454c3387f4afc849547c097a1b39 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Materials/CameraMaterial.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInstance: {fileID: 0} 9 | m_PrefabAsset: {fileID: 0} 10 | m_Name: CameraMaterial 11 | m_Shader: {fileID: 4800000, guid: 8e4847a0db59e4d8fbb60533bd04f617, type: 3} 12 | m_ShaderKeywords: 13 | m_LightmapFlags: 4 14 | m_EnableInstancingVariants: 0 15 | m_DoubleSidedGI: 0 16 | m_CustomRenderQueue: -1 17 | stringTagMap: {} 18 | disabledShaderPasses: [] 19 | m_SavedProperties: 20 | serializedVersion: 3 21 | m_TexEnvs: 22 | - _BumpMap: 23 | m_Texture: {fileID: 0} 24 | m_Scale: {x: 1, y: 1} 25 | m_Offset: {x: 0, y: 0} 26 | - _DetailAlbedoMap: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | - _DetailMask: 31 | m_Texture: {fileID: 0} 32 | m_Scale: {x: 1, y: 1} 33 | m_Offset: {x: 0, y: 0} 34 | - _DetailNormalMap: 35 | m_Texture: {fileID: 0} 36 | m_Scale: {x: 1, y: 1} 37 | m_Offset: {x: 0, y: 0} 38 | - _EmissionMap: 39 | m_Texture: {fileID: 0} 40 | m_Scale: {x: 1, y: 1} 41 | m_Offset: {x: 0, y: 0} 42 | - _MainTex: 43 | m_Texture: {fileID: 0} 44 | m_Scale: {x: 1, y: 1} 45 | m_Offset: {x: 0, y: 0} 46 | - _MetallicGlossMap: 47 | m_Texture: {fileID: 0} 48 | m_Scale: {x: 1, y: 1} 49 | m_Offset: {x: 0, y: 0} 50 | - _OcclusionMap: 51 | m_Texture: {fileID: 0} 52 | m_Scale: {x: 1, y: 1} 53 | m_Offset: {x: 0, y: 0} 54 | - _ParallaxMap: 55 | m_Texture: {fileID: 0} 56 | m_Scale: {x: 1, y: 1} 57 | m_Offset: {x: 0, y: 0} 58 | m_Floats: 59 | - _BumpScale: 1 60 | - _Cutoff: 0.5 61 | - _DetailNormalMapScale: 1 62 | - _DstBlend: 0 63 | - _GlossMapScale: 1 64 | - _Glossiness: 0.5 65 | - _GlossyReflections: 1 66 | - _Metallic: 0 67 | - _Mode: 0 68 | - _OcclusionStrength: 1 69 | - _Parallax: 0.02 70 | - _SmoothnessTextureChannel: 0 71 | - _SpecularHighlights: 1 72 | - _SrcBlend: 1 73 | - _UVSec: 0 74 | - _ZWrite: 1 75 | m_Colors: 76 | - _Color: {r: 1, g: 1, b: 1, a: 1} 77 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 78 | -------------------------------------------------------------------------------- /Materials/CameraMaterial.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b4422c06513484cf6ada3af57f8d8f65 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Materials/Default.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &-8049897676910438573 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 11 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} 13 | m_Name: 14 | m_EditorClassIdentifier: 15 | version: 2 16 | --- !u!21 &2100000 17 | Material: 18 | serializedVersion: 6 19 | m_ObjectHideFlags: 0 20 | m_CorrespondingSourceObject: {fileID: 0} 21 | m_PrefabInstance: {fileID: 0} 22 | m_PrefabAsset: {fileID: 0} 23 | m_Name: Default 24 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} 25 | m_ShaderKeywords: _GLOSSINESS_FROM_BASE_ALPHA _SPECULARHIGHLIGHTS_OFF _SPECULAR_COLOR 26 | m_LightmapFlags: 4 27 | m_EnableInstancingVariants: 0 28 | m_DoubleSidedGI: 0 29 | m_CustomRenderQueue: -1 30 | stringTagMap: {} 31 | disabledShaderPasses: [] 32 | m_SavedProperties: 33 | serializedVersion: 3 34 | m_TexEnvs: 35 | - _BaseMap: 36 | m_Texture: {fileID: 0} 37 | m_Scale: {x: 1, y: 1} 38 | m_Offset: {x: 0, y: 0} 39 | - _BumpMap: 40 | m_Texture: {fileID: 0} 41 | m_Scale: {x: 1, y: 1} 42 | m_Offset: {x: 0, y: 0} 43 | - _DetailAlbedoMap: 44 | m_Texture: {fileID: 0} 45 | m_Scale: {x: 1, y: 1} 46 | m_Offset: {x: 0, y: 0} 47 | - _DetailMask: 48 | m_Texture: {fileID: 0} 49 | m_Scale: {x: 1, y: 1} 50 | m_Offset: {x: 0, y: 0} 51 | - _DetailNormalMap: 52 | m_Texture: {fileID: 0} 53 | m_Scale: {x: 1, y: 1} 54 | m_Offset: {x: 0, y: 0} 55 | - _EmissionMap: 56 | m_Texture: {fileID: 0} 57 | m_Scale: {x: 1, y: 1} 58 | m_Offset: {x: 0, y: 0} 59 | - _MainTex: 60 | m_Texture: {fileID: 0} 61 | m_Scale: {x: 1, y: 1} 62 | m_Offset: {x: 0, y: 0} 63 | - _MetallicGlossMap: 64 | m_Texture: {fileID: 0} 65 | m_Scale: {x: 1, y: 1} 66 | m_Offset: {x: 0, y: 0} 67 | - _OcclusionMap: 68 | m_Texture: {fileID: 0} 69 | m_Scale: {x: 1, y: 1} 70 | m_Offset: {x: 0, y: 0} 71 | - _ParallaxMap: 72 | m_Texture: {fileID: 0} 73 | m_Scale: {x: 1, y: 1} 74 | m_Offset: {x: 0, y: 0} 75 | - _SpecGlossMap: 76 | m_Texture: {fileID: 0} 77 | m_Scale: {x: 1, y: 1} 78 | m_Offset: {x: 0, y: 0} 79 | m_Floats: 80 | - _AlphaClip: 0 81 | - _Blend: 0 82 | - _BumpScale: 1 83 | - _Cull: 2 84 | - _Cutoff: 0.5 85 | - _DetailNormalMapScale: 1 86 | - _DstBlend: 0 87 | - _GlossMapScale: 1 88 | - _Glossiness: 0.5 89 | - _GlossinessSource: 0 90 | - _GlossyReflections: 1 91 | - _Metallic: 0 92 | - _Mode: 0 93 | - _OcclusionStrength: 1 94 | - _Parallax: 0.02 95 | - _QueueOffset: 0 96 | - _ReceiveShadows: 1 97 | - _Shininess: 0 98 | - _Smoothness: 0 99 | - _SmoothnessSource: 1 100 | - _SmoothnessTextureChannel: 0 101 | - _SpecSource: 0 102 | - _SpecularHighlights: 0 103 | - _SrcBlend: 1 104 | - _Surface: 0 105 | - _UVSec: 0 106 | - _ZWrite: 1 107 | m_Colors: 108 | - _BaseColor: {r: 1, g: 1, b: 1, a: 0} 109 | - _Color: {r: 1, g: 1, b: 1, a: 1} 110 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 111 | - _SpecColor: {r: 0.5, g: 0.5, b: 0.5, a: 0.5} 112 | -------------------------------------------------------------------------------- /Materials/Default.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cbd70f60829534dccb2c61cddc91e3e5 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Materials/Depth Mask.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInstance: {fileID: 0} 9 | m_PrefabAsset: {fileID: 0} 10 | m_Name: Depth Mask 11 | m_Shader: {fileID: 4800000, guid: b53e6fe10b38643a7bee6938e7cb0e24, type: 3} 12 | m_ShaderKeywords: 13 | m_LightmapFlags: 4 14 | m_EnableInstancingVariants: 0 15 | m_DoubleSidedGI: 0 16 | m_CustomRenderQueue: -1 17 | stringTagMap: {} 18 | disabledShaderPasses: [] 19 | m_SavedProperties: 20 | serializedVersion: 3 21 | m_TexEnvs: 22 | - _BumpMap: 23 | m_Texture: {fileID: 0} 24 | m_Scale: {x: 1, y: 1} 25 | m_Offset: {x: 0, y: 0} 26 | - _DetailAlbedoMap: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | - _DetailMask: 31 | m_Texture: {fileID: 0} 32 | m_Scale: {x: 1, y: 1} 33 | m_Offset: {x: 0, y: 0} 34 | - _DetailNormalMap: 35 | m_Texture: {fileID: 0} 36 | m_Scale: {x: 1, y: 1} 37 | m_Offset: {x: 0, y: 0} 38 | - _EmissionMap: 39 | m_Texture: {fileID: 0} 40 | m_Scale: {x: 1, y: 1} 41 | m_Offset: {x: 0, y: 0} 42 | - _MainTex: 43 | m_Texture: {fileID: 0} 44 | m_Scale: {x: 1, y: 1} 45 | m_Offset: {x: 0, y: 0} 46 | - _MetallicGlossMap: 47 | m_Texture: {fileID: 0} 48 | m_Scale: {x: 1, y: 1} 49 | m_Offset: {x: 0, y: 0} 50 | - _OcclusionMap: 51 | m_Texture: {fileID: 0} 52 | m_Scale: {x: 1, y: 1} 53 | m_Offset: {x: 0, y: 0} 54 | - _ParallaxMap: 55 | m_Texture: {fileID: 0} 56 | m_Scale: {x: 1, y: 1} 57 | m_Offset: {x: 0, y: 0} 58 | m_Floats: 59 | - _BumpScale: 1 60 | - _Cutoff: 0.5 61 | - _DetailNormalMapScale: 1 62 | - _DstBlend: 0 63 | - _GlossMapScale: 1 64 | - _Glossiness: 0.5 65 | - _GlossyReflections: 1 66 | - _Metallic: 0 67 | - _Mode: 0 68 | - _OcclusionStrength: 1 69 | - _Parallax: 0.02 70 | - _SmoothnessTextureChannel: 0 71 | - _SpecularHighlights: 1 72 | - _SrcBlend: 1 73 | - _UVSec: 0 74 | - _ZWrite: 1 75 | m_Colors: 76 | - _Color: {r: 1, g: 1, b: 1, a: 1} 77 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 78 | -------------------------------------------------------------------------------- /Materials/Depth Mask.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e26aaf9b92a214ddeadf1af0c4f8eeff 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Materials/InvertedSurface.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInstance: {fileID: 0} 9 | m_PrefabAsset: {fileID: 0} 10 | m_Name: InvertedSurface 11 | m_Shader: {fileID: 4800000, guid: 65d45bf3370a27c4db13680c1fbb9732, type: 3} 12 | m_ShaderKeywords: 13 | m_LightmapFlags: 4 14 | m_EnableInstancingVariants: 0 15 | m_DoubleSidedGI: 0 16 | m_CustomRenderQueue: -1 17 | stringTagMap: {} 18 | disabledShaderPasses: [] 19 | m_SavedProperties: 20 | serializedVersion: 3 21 | m_TexEnvs: 22 | - _MainTex: 23 | m_Texture: {fileID: 2800000, guid: dffef66376be4fa480fb02b19edbe903, type: 3} 24 | m_Scale: {x: 1, y: 1} 25 | m_Offset: {x: 0, y: 0} 26 | m_Floats: [] 27 | m_Colors: [] 28 | m_BuildTextureStacks: [] 29 | -------------------------------------------------------------------------------- /Materials/InvertedSurface.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bfdc5da46ae647f4cad762eb99f4f2dc 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Materials/Transparent.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &-3775479765360290507 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 11 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} 13 | m_Name: 14 | m_EditorClassIdentifier: 15 | version: 2 16 | --- !u!21 &2100000 17 | Material: 18 | serializedVersion: 6 19 | m_ObjectHideFlags: 0 20 | m_CorrespondingSourceObject: {fileID: 0} 21 | m_PrefabInstance: {fileID: 0} 22 | m_PrefabAsset: {fileID: 0} 23 | m_Name: Transparent 24 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} 25 | m_ShaderKeywords: _ALPHAPREMULTIPLY_ON _SPECULARHIGHLIGHTS_OFF _SPECULAR_COLOR 26 | m_LightmapFlags: 4 27 | m_EnableInstancingVariants: 0 28 | m_DoubleSidedGI: 0 29 | m_CustomRenderQueue: 3000 30 | stringTagMap: 31 | RenderType: Transparent 32 | disabledShaderPasses: 33 | - SHADOWCASTER 34 | m_SavedProperties: 35 | serializedVersion: 3 36 | m_TexEnvs: 37 | - _BaseMap: 38 | m_Texture: {fileID: 0} 39 | m_Scale: {x: 1, y: 1} 40 | m_Offset: {x: 0, y: 0} 41 | - _BumpMap: 42 | m_Texture: {fileID: 0} 43 | m_Scale: {x: 1, y: 1} 44 | m_Offset: {x: 0, y: 0} 45 | - _DetailAlbedoMap: 46 | m_Texture: {fileID: 0} 47 | m_Scale: {x: 1, y: 1} 48 | m_Offset: {x: 0, y: 0} 49 | - _DetailMask: 50 | m_Texture: {fileID: 0} 51 | m_Scale: {x: 1, y: 1} 52 | m_Offset: {x: 0, y: 0} 53 | - _DetailNormalMap: 54 | m_Texture: {fileID: 0} 55 | m_Scale: {x: 1, y: 1} 56 | m_Offset: {x: 0, y: 0} 57 | - _DetailTex: 58 | m_Texture: {fileID: 0} 59 | m_Scale: {x: 1, y: 1} 60 | m_Offset: {x: 0, y: 0} 61 | - _EmissionMap: 62 | m_Texture: {fileID: 0} 63 | m_Scale: {x: 1, y: 1} 64 | m_Offset: {x: 0, y: 0} 65 | - _MainTex: 66 | m_Texture: {fileID: 0} 67 | m_Scale: {x: 1, y: 1} 68 | m_Offset: {x: 0, y: 0} 69 | - _MetallicGlossMap: 70 | m_Texture: {fileID: 0} 71 | m_Scale: {x: 1, y: 1} 72 | m_Offset: {x: 0, y: 0} 73 | - _MetallicMap: 74 | m_Texture: {fileID: 0} 75 | m_Scale: {x: 1, y: 1} 76 | m_Offset: {x: 0, y: 0} 77 | - _NormalMap: 78 | m_Texture: {fileID: 0} 79 | m_Scale: {x: 1, y: 1} 80 | m_Offset: {x: 0, y: 0} 81 | - _OcclusionMap: 82 | m_Texture: {fileID: 0} 83 | m_Scale: {x: 1, y: 1} 84 | m_Offset: {x: 0, y: 0} 85 | - _ParallaxMap: 86 | m_Texture: {fileID: 0} 87 | m_Scale: {x: 1, y: 1} 88 | m_Offset: {x: 0, y: 0} 89 | - _SpecGlossMap: 90 | m_Texture: {fileID: 0} 91 | m_Scale: {x: 1, y: 1} 92 | m_Offset: {x: 0, y: 0} 93 | m_Floats: 94 | - _AlphaClip: 0 95 | - _AtmosphereThickness: 1 96 | - _Blend: 0 97 | - _BumpScale: 1 98 | - _Cull: 2 99 | - _Cutoff: 0.5 100 | - _DetailBumpScale: 1 101 | - _DetailNormalMapScale: 1 102 | - _DstBlend: 10 103 | - _EnvironmentReflections: 1 104 | - _Exposure: 1.3 105 | - _GlossMapScale: 1 106 | - _Glossiness: 0.5 107 | - _GlossinessSource: 0 108 | - _GlossyReflections: 1 109 | - _Metallic: 0 110 | - _Mode: 3 111 | - _OcclusionStrength: 1 112 | - _Parallax: 0.02 113 | - _ParallaxStrength: 0 114 | - _QueueOffset: 0 115 | - _ReceiveShadows: 1 116 | - _Shininess: 0 117 | - _Smoothness: 0 118 | - _SmoothnessSource: 1 119 | - _SmoothnessTextureChannel: 0 120 | - _SpecSource: 0 121 | - _SpecularHighlights: 0 122 | - _SrcBlend: 1 123 | - _SunDisk: 2 124 | - _SunSize: 0.04 125 | - _SunSizeConvergence: 5 126 | - _Surface: 1 127 | - _UVSec: 0 128 | - _WireframeSmoothing: 1 129 | - _WireframeThickness: 1 130 | - _WorkflowMode: 1 131 | - _ZWrite: 0 132 | m_Colors: 133 | - _BaseColor: {r: 1, g: 1, b: 1, a: 0.1764706} 134 | - _Color: {r: 1, g: 1, b: 1, a: 0.19215687} 135 | - _Emission: {r: 0, g: 0, b: 0, a: 1} 136 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 137 | - _GroundColor: {r: 0.369, g: 0.349, b: 0.341, a: 1} 138 | - _SkyTint: {r: 0.5, g: 0.5, b: 0.5, a: 1} 139 | - _SpecColor: {r: 0.5, g: 0.5, b: 0.5, a: 0} 140 | - _WireframeColor: {r: 0, g: 0, b: 0, a: 1} 141 | -------------------------------------------------------------------------------- /Materials/Transparent.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 57302a68427ce47c6b1ac522a4e90f82 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Materials/TransparentGlass.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInstance: {fileID: 0} 9 | m_PrefabAsset: {fileID: 0} 10 | m_Name: TransparentGlass 11 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} 12 | m_ShaderKeywords: _ALPHAPREMULTIPLY_ON _GLOSSYREFLECTIONS_OFF _SPECULARHIGHLIGHTS_OFF 13 | m_LightmapFlags: 4 14 | m_EnableInstancingVariants: 0 15 | m_DoubleSidedGI: 0 16 | m_CustomRenderQueue: 3000 17 | stringTagMap: 18 | RenderType: Transparent 19 | disabledShaderPasses: [] 20 | m_SavedProperties: 21 | serializedVersion: 3 22 | m_TexEnvs: 23 | - _BumpMap: 24 | m_Texture: {fileID: 0} 25 | m_Scale: {x: 1, y: 1} 26 | m_Offset: {x: 0, y: 0} 27 | - _DetailAlbedoMap: 28 | m_Texture: {fileID: 0} 29 | m_Scale: {x: 1, y: 1} 30 | m_Offset: {x: 0, y: 0} 31 | - _DetailMask: 32 | m_Texture: {fileID: 0} 33 | m_Scale: {x: 1, y: 1} 34 | m_Offset: {x: 0, y: 0} 35 | - _DetailNormalMap: 36 | m_Texture: {fileID: 0} 37 | m_Scale: {x: 1, y: 1} 38 | m_Offset: {x: 0, y: 0} 39 | - _EmissionMap: 40 | m_Texture: {fileID: 0} 41 | m_Scale: {x: 1, y: 1} 42 | m_Offset: {x: 0, y: 0} 43 | - _MainTex: 44 | m_Texture: {fileID: 2800000, guid: 5c9c43a6e0d91a94e98704803411c2ec, type: 3} 45 | m_Scale: {x: 1, y: 1} 46 | m_Offset: {x: 0, y: 0} 47 | - _MetallicGlossMap: 48 | m_Texture: {fileID: 0} 49 | m_Scale: {x: 1, y: 1} 50 | m_Offset: {x: 0, y: 0} 51 | - _OcclusionMap: 52 | m_Texture: {fileID: 0} 53 | m_Scale: {x: 1, y: 1} 54 | m_Offset: {x: 0, y: 0} 55 | - _ParallaxMap: 56 | m_Texture: {fileID: 0} 57 | m_Scale: {x: 1, y: 1} 58 | m_Offset: {x: 0, y: 0} 59 | m_Floats: 60 | - _BumpScale: 1 61 | - _Cutoff: 0.5 62 | - _DetailNormalMapScale: 1 63 | - _DstBlend: 10 64 | - _GlossMapScale: 1 65 | - _Glossiness: 0.5 66 | - _GlossyReflections: 0 67 | - _Metallic: 0 68 | - _Mode: 3 69 | - _OcclusionStrength: 1 70 | - _Parallax: 0.02 71 | - _SmoothnessTextureChannel: 0 72 | - _SpecularHighlights: 0 73 | - _SrcBlend: 1 74 | - _UVSec: 0 75 | - _ZWrite: 0 76 | m_Colors: 77 | - _Color: {r: 0.26160488, g: 0.08085619, b: 0.745283, a: 0.8235294} 78 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 79 | -------------------------------------------------------------------------------- /Materials/TransparentGlass.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f72d4ce6571357f44bf37fc9cfeced0f 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Materials/URP.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 41a27e69b9adf5c48bb9289a86117547 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Materials/URP/Default.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &-4901617288111480104 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 11 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} 13 | m_Name: 14 | m_EditorClassIdentifier: 15 | version: 4 16 | --- !u!21 &2100000 17 | Material: 18 | serializedVersion: 6 19 | m_ObjectHideFlags: 0 20 | m_CorrespondingSourceObject: {fileID: 0} 21 | m_PrefabInstance: {fileID: 0} 22 | m_PrefabAsset: {fileID: 0} 23 | m_Name: Default 24 | m_Shader: {fileID: 4800000, guid: 8d2bb70cbf9db8d4da26e15b26e74248, type: 3} 25 | m_ShaderKeywords: _GLOSSINESS_FROM_BASE_ALPHA _SPECULAR_COLOR 26 | m_LightmapFlags: 4 27 | m_EnableInstancingVariants: 0 28 | m_DoubleSidedGI: 0 29 | m_CustomRenderQueue: 2000 30 | stringTagMap: 31 | RenderType: Opaque 32 | disabledShaderPasses: [] 33 | m_SavedProperties: 34 | serializedVersion: 3 35 | m_TexEnvs: 36 | - _BaseMap: 37 | m_Texture: {fileID: 0} 38 | m_Scale: {x: 1, y: 1} 39 | m_Offset: {x: 0, y: 0} 40 | - _BumpMap: 41 | m_Texture: {fileID: 0} 42 | m_Scale: {x: 1, y: 1} 43 | m_Offset: {x: 0, y: 0} 44 | - _DetailAlbedoMap: 45 | m_Texture: {fileID: 0} 46 | m_Scale: {x: 1, y: 1} 47 | m_Offset: {x: 0, y: 0} 48 | - _DetailMask: 49 | m_Texture: {fileID: 0} 50 | m_Scale: {x: 1, y: 1} 51 | m_Offset: {x: 0, y: 0} 52 | - _DetailNormalMap: 53 | m_Texture: {fileID: 0} 54 | m_Scale: {x: 1, y: 1} 55 | m_Offset: {x: 0, y: 0} 56 | - _EmissionMap: 57 | m_Texture: {fileID: 0} 58 | m_Scale: {x: 1, y: 1} 59 | m_Offset: {x: 0, y: 0} 60 | - _MainTex: 61 | m_Texture: {fileID: 0} 62 | m_Scale: {x: 1, y: 1} 63 | m_Offset: {x: 0, y: 0} 64 | - _MetallicGlossMap: 65 | m_Texture: {fileID: 0} 66 | m_Scale: {x: 1, y: 1} 67 | m_Offset: {x: 0, y: 0} 68 | - _OcclusionMap: 69 | m_Texture: {fileID: 0} 70 | m_Scale: {x: 1, y: 1} 71 | m_Offset: {x: 0, y: 0} 72 | - _ParallaxMap: 73 | m_Texture: {fileID: 0} 74 | m_Scale: {x: 1, y: 1} 75 | m_Offset: {x: 0, y: 0} 76 | - _SpecGlossMap: 77 | m_Texture: {fileID: 0} 78 | m_Scale: {x: 1, y: 1} 79 | m_Offset: {x: 0, y: 0} 80 | - unity_Lightmaps: 81 | m_Texture: {fileID: 0} 82 | m_Scale: {x: 1, y: 1} 83 | m_Offset: {x: 0, y: 0} 84 | - unity_LightmapsInd: 85 | m_Texture: {fileID: 0} 86 | m_Scale: {x: 1, y: 1} 87 | m_Offset: {x: 0, y: 0} 88 | - unity_ShadowMasks: 89 | m_Texture: {fileID: 0} 90 | m_Scale: {x: 1, y: 1} 91 | m_Offset: {x: 0, y: 0} 92 | m_Floats: 93 | - _AlphaClip: 0 94 | - _Blend: 0 95 | - _BumpScale: 1 96 | - _Cull: 2 97 | - _Cutoff: 0.5 98 | - _DetailNormalMapScale: 1 99 | - _DstBlend: 0 100 | - _GlossMapScale: 1 101 | - _Glossiness: 0.5 102 | - _GlossinessSource: 0 103 | - _GlossyReflections: 0 104 | - _Metallic: 0 105 | - _Mode: 0 106 | - _OcclusionStrength: 1 107 | - _Parallax: 0.02 108 | - _QueueOffset: 0 109 | - _ReceiveShadows: 1 110 | - _Shininess: 0 111 | - _Smoothness: 0 112 | - _SmoothnessSource: 1 113 | - _SmoothnessTextureChannel: 0 114 | - _SpecSource: 0 115 | - _SpecularHighlights: 0 116 | - _SrcBlend: 1 117 | - _Surface: 0 118 | - _UVSec: 0 119 | - _ZWrite: 1 120 | m_Colors: 121 | - _BaseColor: {r: 1, g: 1, b: 1, a: 0} 122 | - _Color: {r: 1, g: 1, b: 1, a: 1} 123 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 124 | - _SpecColor: {r: 0.5, g: 0.5, b: 0.5, a: 0.5} 125 | m_BuildTextureStacks: [] 126 | -------------------------------------------------------------------------------- /Materials/URP/Default.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e06d494c94abd7e489308b8c2b4ac452 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Materials/URP/Depth Mask.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_CorrespondingSourceObject: {fileID: 0} 8 | m_PrefabInstance: {fileID: 0} 9 | m_PrefabAsset: {fileID: 0} 10 | m_Name: Depth Mask 11 | m_Shader: {fileID: 4800000, guid: b53e6fe10b38643a7bee6938e7cb0e24, type: 3} 12 | m_ShaderKeywords: 13 | m_LightmapFlags: 4 14 | m_EnableInstancingVariants: 0 15 | m_DoubleSidedGI: 0 16 | m_CustomRenderQueue: -1 17 | stringTagMap: {} 18 | disabledShaderPasses: [] 19 | m_SavedProperties: 20 | serializedVersion: 3 21 | m_TexEnvs: 22 | - _BumpMap: 23 | m_Texture: {fileID: 0} 24 | m_Scale: {x: 1, y: 1} 25 | m_Offset: {x: 0, y: 0} 26 | - _DetailAlbedoMap: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | - _DetailMask: 31 | m_Texture: {fileID: 0} 32 | m_Scale: {x: 1, y: 1} 33 | m_Offset: {x: 0, y: 0} 34 | - _DetailNormalMap: 35 | m_Texture: {fileID: 0} 36 | m_Scale: {x: 1, y: 1} 37 | m_Offset: {x: 0, y: 0} 38 | - _EmissionMap: 39 | m_Texture: {fileID: 0} 40 | m_Scale: {x: 1, y: 1} 41 | m_Offset: {x: 0, y: 0} 42 | - _MainTex: 43 | m_Texture: {fileID: 0} 44 | m_Scale: {x: 1, y: 1} 45 | m_Offset: {x: 0, y: 0} 46 | - _MetallicGlossMap: 47 | m_Texture: {fileID: 0} 48 | m_Scale: {x: 1, y: 1} 49 | m_Offset: {x: 0, y: 0} 50 | - _OcclusionMap: 51 | m_Texture: {fileID: 0} 52 | m_Scale: {x: 1, y: 1} 53 | m_Offset: {x: 0, y: 0} 54 | - _ParallaxMap: 55 | m_Texture: {fileID: 0} 56 | m_Scale: {x: 1, y: 1} 57 | m_Offset: {x: 0, y: 0} 58 | m_Floats: 59 | - _BumpScale: 1 60 | - _Cutoff: 0.5 61 | - _DetailNormalMapScale: 1 62 | - _DstBlend: 0 63 | - _GlossMapScale: 1 64 | - _Glossiness: 0.5 65 | - _GlossyReflections: 1 66 | - _Metallic: 0 67 | - _Mode: 0 68 | - _OcclusionStrength: 1 69 | - _Parallax: 0.02 70 | - _SmoothnessTextureChannel: 0 71 | - _SpecularHighlights: 1 72 | - _SrcBlend: 1 73 | - _UVSec: 0 74 | - _ZWrite: 1 75 | m_Colors: 76 | - _Color: {r: 1, g: 1, b: 1, a: 1} 77 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 78 | m_BuildTextureStacks: [] 79 | -------------------------------------------------------------------------------- /Materials/URP/Depth Mask.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a4d5d344c057d8342a4615de9f81e32a 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Materials/URP/Transparent.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &-3775479765360290507 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 11 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} 13 | m_Name: 14 | m_EditorClassIdentifier: 15 | version: 4 16 | --- !u!21 &2100000 17 | Material: 18 | serializedVersion: 6 19 | m_ObjectHideFlags: 0 20 | m_CorrespondingSourceObject: {fileID: 0} 21 | m_PrefabInstance: {fileID: 0} 22 | m_PrefabAsset: {fileID: 0} 23 | m_Name: Transparent 24 | m_Shader: {fileID: 4800000, guid: 8d2bb70cbf9db8d4da26e15b26e74248, type: 3} 25 | m_ShaderKeywords: _SPECULAR_COLOR 26 | m_LightmapFlags: 4 27 | m_EnableInstancingVariants: 0 28 | m_DoubleSidedGI: 0 29 | m_CustomRenderQueue: 3000 30 | stringTagMap: 31 | RenderType: Transparent 32 | disabledShaderPasses: 33 | - SHADOWCASTER 34 | m_SavedProperties: 35 | serializedVersion: 3 36 | m_TexEnvs: 37 | - _BaseMap: 38 | m_Texture: {fileID: 0} 39 | m_Scale: {x: 1, y: 1} 40 | m_Offset: {x: 0, y: 0} 41 | - _BumpMap: 42 | m_Texture: {fileID: 0} 43 | m_Scale: {x: 1, y: 1} 44 | m_Offset: {x: 0, y: 0} 45 | - _DetailAlbedoMap: 46 | m_Texture: {fileID: 0} 47 | m_Scale: {x: 1, y: 1} 48 | m_Offset: {x: 0, y: 0} 49 | - _DetailMask: 50 | m_Texture: {fileID: 0} 51 | m_Scale: {x: 1, y: 1} 52 | m_Offset: {x: 0, y: 0} 53 | - _DetailNormalMap: 54 | m_Texture: {fileID: 0} 55 | m_Scale: {x: 1, y: 1} 56 | m_Offset: {x: 0, y: 0} 57 | - _DetailTex: 58 | m_Texture: {fileID: 0} 59 | m_Scale: {x: 1, y: 1} 60 | m_Offset: {x: 0, y: 0} 61 | - _EmissionMap: 62 | m_Texture: {fileID: 0} 63 | m_Scale: {x: 1, y: 1} 64 | m_Offset: {x: 0, y: 0} 65 | - _MainTex: 66 | m_Texture: {fileID: 0} 67 | m_Scale: {x: 1, y: 1} 68 | m_Offset: {x: 0, y: 0} 69 | - _MetallicGlossMap: 70 | m_Texture: {fileID: 0} 71 | m_Scale: {x: 1, y: 1} 72 | m_Offset: {x: 0, y: 0} 73 | - _MetallicMap: 74 | m_Texture: {fileID: 0} 75 | m_Scale: {x: 1, y: 1} 76 | m_Offset: {x: 0, y: 0} 77 | - _NormalMap: 78 | m_Texture: {fileID: 0} 79 | m_Scale: {x: 1, y: 1} 80 | m_Offset: {x: 0, y: 0} 81 | - _OcclusionMap: 82 | m_Texture: {fileID: 0} 83 | m_Scale: {x: 1, y: 1} 84 | m_Offset: {x: 0, y: 0} 85 | - _ParallaxMap: 86 | m_Texture: {fileID: 0} 87 | m_Scale: {x: 1, y: 1} 88 | m_Offset: {x: 0, y: 0} 89 | - _SpecGlossMap: 90 | m_Texture: {fileID: 0} 91 | m_Scale: {x: 1, y: 1} 92 | m_Offset: {x: 0, y: 0} 93 | - unity_Lightmaps: 94 | m_Texture: {fileID: 0} 95 | m_Scale: {x: 1, y: 1} 96 | m_Offset: {x: 0, y: 0} 97 | - unity_LightmapsInd: 98 | m_Texture: {fileID: 0} 99 | m_Scale: {x: 1, y: 1} 100 | m_Offset: {x: 0, y: 0} 101 | - unity_ShadowMasks: 102 | m_Texture: {fileID: 0} 103 | m_Scale: {x: 1, y: 1} 104 | m_Offset: {x: 0, y: 0} 105 | m_Floats: 106 | - _AlphaClip: 0 107 | - _AtmosphereThickness: 1 108 | - _Blend: 0 109 | - _BumpScale: 1 110 | - _Cull: 2 111 | - _Cutoff: 0.5 112 | - _DetailBumpScale: 1 113 | - _DetailNormalMapScale: 1 114 | - _DstBlend: 10 115 | - _EnvironmentReflections: 1 116 | - _Exposure: 1.3 117 | - _GlossMapScale: 1 118 | - _Glossiness: 0.5 119 | - _GlossinessSource: 0 120 | - _GlossyReflections: 1 121 | - _Metallic: 0 122 | - _Mode: 3 123 | - _OcclusionStrength: 1 124 | - _Parallax: 0.02 125 | - _ParallaxStrength: 0 126 | - _QueueOffset: 0 127 | - _ReceiveShadows: 1 128 | - _Shininess: 0 129 | - _Smoothness: 0 130 | - _SmoothnessSource: 1 131 | - _SmoothnessTextureChannel: 0 132 | - _SpecSource: 0 133 | - _SpecularHighlights: 0 134 | - _SrcBlend: 5 135 | - _SunDisk: 2 136 | - _SunSize: 0.04 137 | - _SunSizeConvergence: 5 138 | - _Surface: 1 139 | - _UVSec: 0 140 | - _WireframeSmoothing: 1 141 | - _WireframeThickness: 1 142 | - _WorkflowMode: 1 143 | - _ZWrite: 0 144 | m_Colors: 145 | - _BaseColor: {r: 1, g: 1, b: 1, a: 0.1764706} 146 | - _Color: {r: 1, g: 1, b: 1, a: 0.19215687} 147 | - _Emission: {r: 0, g: 0, b: 0, a: 1} 148 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 149 | - _GroundColor: {r: 0.369, g: 0.349, b: 0.341, a: 1} 150 | - _SkyTint: {r: 0.5, g: 0.5, b: 0.5, a: 1} 151 | - _SpecColor: {r: 0.5, g: 0.5, b: 0.5, a: 0} 152 | - _WireframeColor: {r: 0, g: 0, b: 0, a: 1} 153 | m_BuildTextureStacks: [] 154 | -------------------------------------------------------------------------------- /Materials/URP/Transparent.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6827186fe9299cd45924aa38dd869544 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Materials/URP/TransparentGlass.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &-1786093594762011703 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 11 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} 13 | m_Name: 14 | m_EditorClassIdentifier: 15 | version: 4 16 | --- !u!21 &2100000 17 | Material: 18 | serializedVersion: 6 19 | m_ObjectHideFlags: 0 20 | m_CorrespondingSourceObject: {fileID: 0} 21 | m_PrefabInstance: {fileID: 0} 22 | m_PrefabAsset: {fileID: 0} 23 | m_Name: TransparentGlass 24 | m_Shader: {fileID: 4800000, guid: 8d2bb70cbf9db8d4da26e15b26e74248, type: 3} 25 | m_ShaderKeywords: _SPECULAR_COLOR 26 | m_LightmapFlags: 4 27 | m_EnableInstancingVariants: 0 28 | m_DoubleSidedGI: 0 29 | m_CustomRenderQueue: 3000 30 | stringTagMap: 31 | RenderType: Transparent 32 | disabledShaderPasses: 33 | - SHADOWCASTER 34 | m_SavedProperties: 35 | serializedVersion: 3 36 | m_TexEnvs: 37 | - _BaseMap: 38 | m_Texture: {fileID: 0} 39 | m_Scale: {x: 1, y: 1} 40 | m_Offset: {x: 0, y: 0} 41 | - _BumpMap: 42 | m_Texture: {fileID: 0} 43 | m_Scale: {x: 1, y: 1} 44 | m_Offset: {x: 0, y: 0} 45 | - _DetailAlbedoMap: 46 | m_Texture: {fileID: 0} 47 | m_Scale: {x: 1, y: 1} 48 | m_Offset: {x: 0, y: 0} 49 | - _DetailMask: 50 | m_Texture: {fileID: 0} 51 | m_Scale: {x: 1, y: 1} 52 | m_Offset: {x: 0, y: 0} 53 | - _DetailNormalMap: 54 | m_Texture: {fileID: 0} 55 | m_Scale: {x: 1, y: 1} 56 | m_Offset: {x: 0, y: 0} 57 | - _EmissionMap: 58 | m_Texture: {fileID: 0} 59 | m_Scale: {x: 1, y: 1} 60 | m_Offset: {x: 0, y: 0} 61 | - _MainTex: 62 | m_Texture: {fileID: 0} 63 | m_Scale: {x: 1, y: 1} 64 | m_Offset: {x: 0, y: 0} 65 | - _MetallicGlossMap: 66 | m_Texture: {fileID: 0} 67 | m_Scale: {x: 1, y: 1} 68 | m_Offset: {x: 0, y: 0} 69 | - _OcclusionMap: 70 | m_Texture: {fileID: 0} 71 | m_Scale: {x: 1, y: 1} 72 | m_Offset: {x: 0, y: 0} 73 | - _ParallaxMap: 74 | m_Texture: {fileID: 0} 75 | m_Scale: {x: 1, y: 1} 76 | m_Offset: {x: 0, y: 0} 77 | - _SpecGlossMap: 78 | m_Texture: {fileID: 0} 79 | m_Scale: {x: 1, y: 1} 80 | m_Offset: {x: 0, y: 0} 81 | - unity_Lightmaps: 82 | m_Texture: {fileID: 0} 83 | m_Scale: {x: 1, y: 1} 84 | m_Offset: {x: 0, y: 0} 85 | - unity_LightmapsInd: 86 | m_Texture: {fileID: 0} 87 | m_Scale: {x: 1, y: 1} 88 | m_Offset: {x: 0, y: 0} 89 | - unity_ShadowMasks: 90 | m_Texture: {fileID: 0} 91 | m_Scale: {x: 1, y: 1} 92 | m_Offset: {x: 0, y: 0} 93 | m_Floats: 94 | - _AlphaClip: 0 95 | - _Blend: 0 96 | - _BumpScale: 1 97 | - _Cull: 2 98 | - _Cutoff: 0.5 99 | - _DetailNormalMapScale: 1 100 | - _DstBlend: 10 101 | - _GlossMapScale: 1 102 | - _Glossiness: 0.5 103 | - _GlossinessSource: 0 104 | - _GlossyReflections: 0 105 | - _Metallic: 0 106 | - _Mode: 3 107 | - _OcclusionStrength: 1 108 | - _Parallax: 0.02 109 | - _QueueOffset: 0 110 | - _ReceiveShadows: 1 111 | - _Shininess: 0 112 | - _Smoothness: 0 113 | - _SmoothnessSource: 1 114 | - _SmoothnessTextureChannel: 0 115 | - _SpecSource: 0 116 | - _SpecularHighlights: 0 117 | - _SrcBlend: 5 118 | - _Surface: 1 119 | - _UVSec: 0 120 | - _ZWrite: 0 121 | m_Colors: 122 | - _BaseColor: {r: 0.26160488, g: 0.08085619, b: 0.745283, a: 0.8235294} 123 | - _Color: {r: 0.26160488, g: 0.08085619, b: 0.745283, a: 0.8235294} 124 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 125 | - _SpecColor: {r: 0.5, g: 0.5, b: 0.5, a: 0} 126 | m_BuildTextureStacks: [] 127 | -------------------------------------------------------------------------------- /Materials/URP/TransparentGlass.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 236e9aa724c712d439fe81fe9cfb1cd9 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Materials/URP/UV.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &-1017492614556211928 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 11 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} 13 | m_Name: 14 | m_EditorClassIdentifier: 15 | version: 4 16 | --- !u!21 &2100000 17 | Material: 18 | serializedVersion: 6 19 | m_ObjectHideFlags: 0 20 | m_CorrespondingSourceObject: {fileID: 0} 21 | m_PrefabInstance: {fileID: 0} 22 | m_PrefabAsset: {fileID: 0} 23 | m_Name: UV 24 | m_Shader: {fileID: 4800000, guid: 8d2bb70cbf9db8d4da26e15b26e74248, type: 3} 25 | m_ShaderKeywords: _GLOSSINESS_FROM_BASE_ALPHA _SPECULAR_COLOR 26 | m_LightmapFlags: 4 27 | m_EnableInstancingVariants: 0 28 | m_DoubleSidedGI: 0 29 | m_CustomRenderQueue: 2000 30 | stringTagMap: 31 | RenderType: Opaque 32 | disabledShaderPasses: [] 33 | m_SavedProperties: 34 | serializedVersion: 3 35 | m_TexEnvs: 36 | - _BaseMap: 37 | m_Texture: {fileID: 2800000, guid: 088e7cb7261304a22b3986a1ee0f6a19, type: 3} 38 | m_Scale: {x: 1, y: 1} 39 | m_Offset: {x: 0, y: 0} 40 | - _BumpMap: 41 | m_Texture: {fileID: 0} 42 | m_Scale: {x: 1, y: 1} 43 | m_Offset: {x: 0, y: 0} 44 | - _DetailAlbedoMap: 45 | m_Texture: {fileID: 0} 46 | m_Scale: {x: 1, y: 1} 47 | m_Offset: {x: 0, y: 0} 48 | - _DetailMask: 49 | m_Texture: {fileID: 0} 50 | m_Scale: {x: 1, y: 1} 51 | m_Offset: {x: 0, y: 0} 52 | - _DetailNormalMap: 53 | m_Texture: {fileID: 0} 54 | m_Scale: {x: 1, y: 1} 55 | m_Offset: {x: 0, y: 0} 56 | - _EmissionMap: 57 | m_Texture: {fileID: 0} 58 | m_Scale: {x: 1, y: 1} 59 | m_Offset: {x: 0, y: 0} 60 | - _MainTex: 61 | m_Texture: {fileID: 2800000, guid: 088e7cb7261304a22b3986a1ee0f6a19, type: 3} 62 | m_Scale: {x: 1, y: 1} 63 | m_Offset: {x: 0, y: 0} 64 | - _MetallicGlossMap: 65 | m_Texture: {fileID: 0} 66 | m_Scale: {x: 1, y: 1} 67 | m_Offset: {x: 0, y: 0} 68 | - _OcclusionMap: 69 | m_Texture: {fileID: 0} 70 | m_Scale: {x: 1, y: 1} 71 | m_Offset: {x: 0, y: 0} 72 | - _ParallaxMap: 73 | m_Texture: {fileID: 0} 74 | m_Scale: {x: 1, y: 1} 75 | m_Offset: {x: 0, y: 0} 76 | - _SpecGlossMap: 77 | m_Texture: {fileID: 0} 78 | m_Scale: {x: 1, y: 1} 79 | m_Offset: {x: 0, y: 0} 80 | - unity_Lightmaps: 81 | m_Texture: {fileID: 0} 82 | m_Scale: {x: 1, y: 1} 83 | m_Offset: {x: 0, y: 0} 84 | - unity_LightmapsInd: 85 | m_Texture: {fileID: 0} 86 | m_Scale: {x: 1, y: 1} 87 | m_Offset: {x: 0, y: 0} 88 | - unity_ShadowMasks: 89 | m_Texture: {fileID: 0} 90 | m_Scale: {x: 1, y: 1} 91 | m_Offset: {x: 0, y: 0} 92 | m_Floats: 93 | - _AlphaClip: 0 94 | - _Blend: 0 95 | - _BumpScale: 1 96 | - _Cull: 2 97 | - _Cutoff: 0.5 98 | - _DetailNormalMapScale: 1 99 | - _DstBlend: 0 100 | - _EnvironmentReflections: 1 101 | - _GlossMapScale: 1 102 | - _Glossiness: 0.5 103 | - _GlossinessSource: 0 104 | - _GlossyReflections: 1 105 | - _Metallic: 0 106 | - _Mode: 0 107 | - _OcclusionStrength: 1 108 | - _Parallax: 0.02 109 | - _QueueOffset: 0 110 | - _ReceiveShadows: 1 111 | - _SampleGI: 0 112 | - _Shininess: 0 113 | - _Smoothness: 0 114 | - _SmoothnessSource: 1 115 | - _SmoothnessTextureChannel: 0 116 | - _SpecSource: 0 117 | - _SpecularHighlights: 0 118 | - _SrcBlend: 1 119 | - _Surface: 0 120 | - _UVSec: 0 121 | - _WorkflowMode: 1 122 | - _ZWrite: 1 123 | m_Colors: 124 | - _BaseColor: {r: 1, g: 1, b: 1, a: 0} 125 | - _Color: {r: 1, g: 1, b: 1, a: 1} 126 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 127 | - _SpecColor: {r: 0.5, g: 0.5, b: 0.5, a: 0.5} 128 | m_BuildTextureStacks: [] 129 | -------------------------------------------------------------------------------- /Materials/URP/UV.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e47e1d5ba7e0ee0468de6e1032370fc5 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Materials/UV.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &-1017492614556211928 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 11 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3} 13 | m_Name: 14 | m_EditorClassIdentifier: 15 | version: 2 16 | --- !u!21 &2100000 17 | Material: 18 | serializedVersion: 6 19 | m_ObjectHideFlags: 0 20 | m_CorrespondingSourceObject: {fileID: 0} 21 | m_PrefabInstance: {fileID: 0} 22 | m_PrefabAsset: {fileID: 0} 23 | m_Name: UV 24 | m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} 25 | m_ShaderKeywords: _GLOSSINESS_FROM_BASE_ALPHA _SPECULARHIGHLIGHTS_OFF _SPECULAR_COLOR 26 | m_LightmapFlags: 4 27 | m_EnableInstancingVariants: 0 28 | m_DoubleSidedGI: 0 29 | m_CustomRenderQueue: -1 30 | stringTagMap: {} 31 | disabledShaderPasses: [] 32 | m_SavedProperties: 33 | serializedVersion: 3 34 | m_TexEnvs: 35 | - _BaseMap: 36 | m_Texture: {fileID: 2800000, guid: 088e7cb7261304a22b3986a1ee0f6a19, type: 3} 37 | m_Scale: {x: 1, y: 1} 38 | m_Offset: {x: 0, y: 0} 39 | - _BumpMap: 40 | m_Texture: {fileID: 0} 41 | m_Scale: {x: 1, y: 1} 42 | m_Offset: {x: 0, y: 0} 43 | - _DetailAlbedoMap: 44 | m_Texture: {fileID: 0} 45 | m_Scale: {x: 1, y: 1} 46 | m_Offset: {x: 0, y: 0} 47 | - _DetailMask: 48 | m_Texture: {fileID: 0} 49 | m_Scale: {x: 1, y: 1} 50 | m_Offset: {x: 0, y: 0} 51 | - _DetailNormalMap: 52 | m_Texture: {fileID: 0} 53 | m_Scale: {x: 1, y: 1} 54 | m_Offset: {x: 0, y: 0} 55 | - _EmissionMap: 56 | m_Texture: {fileID: 0} 57 | m_Scale: {x: 1, y: 1} 58 | m_Offset: {x: 0, y: 0} 59 | - _MainTex: 60 | m_Texture: {fileID: 2800000, guid: 088e7cb7261304a22b3986a1ee0f6a19, type: 3} 61 | m_Scale: {x: 1, y: 1} 62 | m_Offset: {x: 0, y: 0} 63 | - _MetallicGlossMap: 64 | m_Texture: {fileID: 0} 65 | m_Scale: {x: 1, y: 1} 66 | m_Offset: {x: 0, y: 0} 67 | - _OcclusionMap: 68 | m_Texture: {fileID: 0} 69 | m_Scale: {x: 1, y: 1} 70 | m_Offset: {x: 0, y: 0} 71 | - _ParallaxMap: 72 | m_Texture: {fileID: 0} 73 | m_Scale: {x: 1, y: 1} 74 | m_Offset: {x: 0, y: 0} 75 | - _SpecGlossMap: 76 | m_Texture: {fileID: 0} 77 | m_Scale: {x: 1, y: 1} 78 | m_Offset: {x: 0, y: 0} 79 | m_Floats: 80 | - _AlphaClip: 0 81 | - _Blend: 0 82 | - _BumpScale: 1 83 | - _Cull: 2 84 | - _Cutoff: 0.5 85 | - _DetailNormalMapScale: 1 86 | - _DstBlend: 0 87 | - _GlossMapScale: 1 88 | - _Glossiness: 0.5 89 | - _GlossinessSource: 0 90 | - _GlossyReflections: 1 91 | - _Metallic: 0 92 | - _Mode: 0 93 | - _OcclusionStrength: 1 94 | - _Parallax: 0.02 95 | - _QueueOffset: 0 96 | - _ReceiveShadows: 1 97 | - _SampleGI: 0 98 | - _Shininess: 0 99 | - _Smoothness: 0 100 | - _SmoothnessSource: 1 101 | - _SmoothnessTextureChannel: 0 102 | - _SpecSource: 0 103 | - _SpecularHighlights: 0 104 | - _SrcBlend: 1 105 | - _Surface: 0 106 | - _UVSec: 0 107 | - _ZWrite: 1 108 | m_Colors: 109 | - _BaseColor: {r: 1, g: 1, b: 1, a: 0} 110 | - _Color: {r: 1, g: 1, b: 1, a: 1} 111 | - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} 112 | - _SpecColor: {r: 0.5, g: 0.5, b: 0.5, a: 0.5} 113 | -------------------------------------------------------------------------------- /Materials/UV.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 47f7c83f984f9494ab3ffa3ac1550e6f 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Materials/uv-map.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Materials/uv-map.jpg -------------------------------------------------------------------------------- /Materials/uv-map.jpg.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 088e7cb7261304a22b3986a1ee0f6a19 3 | TextureImporter: 4 | internalIDToNameTable: [] 5 | externalObjects: {} 6 | serializedVersion: 11 7 | mipmaps: 8 | mipMapMode: 0 9 | enableMipMap: 1 10 | sRGBTexture: 1 11 | linearTexture: 0 12 | fadeOut: 0 13 | borderMipMap: 0 14 | mipMapsPreserveCoverage: 0 15 | alphaTestReferenceValue: 0.5 16 | mipMapFadeDistanceStart: 1 17 | mipMapFadeDistanceEnd: 3 18 | bumpmap: 19 | convertToNormalMap: 0 20 | externalNormalMap: 0 21 | heightScale: 0.25 22 | normalMapFilter: 0 23 | isReadable: 0 24 | streamingMipmaps: 0 25 | streamingMipmapsPriority: 0 26 | vTOnly: 0 27 | ignoreMasterTextureLimit: 0 28 | grayScaleToAlpha: 0 29 | generateCubemap: 6 30 | cubemapConvolution: 0 31 | seamlessCubemap: 0 32 | textureFormat: 1 33 | maxTextureSize: 2048 34 | textureSettings: 35 | serializedVersion: 2 36 | filterMode: 1 37 | aniso: 1 38 | mipBias: 0 39 | wrapU: 0 40 | wrapV: 0 41 | wrapW: 0 42 | nPOTScale: 1 43 | lightmap: 0 44 | compressionQuality: 50 45 | spriteMode: 0 46 | spriteExtrude: 1 47 | spriteMeshType: 1 48 | alignment: 0 49 | spritePivot: {x: 0.5, y: 0.5} 50 | spritePixelsToUnits: 100 51 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 52 | spriteGenerateFallbackPhysicsShape: 1 53 | alphaUsage: 1 54 | alphaIsTransparency: 0 55 | spriteTessellationDetail: -1 56 | textureType: 0 57 | textureShape: 1 58 | singleChannelComponent: 0 59 | flipbookRows: 1 60 | flipbookColumns: 1 61 | maxTextureSizeSet: 0 62 | compressionQualitySet: 0 63 | textureFormatSet: 0 64 | ignorePngGamma: 0 65 | applyGammaDecoding: 1 66 | platformSettings: 67 | - serializedVersion: 3 68 | buildTarget: DefaultTexturePlatform 69 | maxTextureSize: 512 70 | resizeAlgorithm: 0 71 | textureFormat: -1 72 | textureCompression: 1 73 | compressionQuality: 50 74 | crunchedCompression: 0 75 | allowsAlphaSplitting: 0 76 | overridden: 0 77 | androidETC2FallbackOverride: 0 78 | forceMaximumCompressionQuality_BC6H_BC7: 0 79 | - serializedVersion: 3 80 | buildTarget: Standalone 81 | maxTextureSize: 2048 82 | resizeAlgorithm: 0 83 | textureFormat: -1 84 | textureCompression: 1 85 | compressionQuality: 50 86 | crunchedCompression: 0 87 | allowsAlphaSplitting: 0 88 | overridden: 0 89 | androidETC2FallbackOverride: 0 90 | forceMaximumCompressionQuality_BC6H_BC7: 0 91 | - serializedVersion: 3 92 | buildTarget: Server 93 | maxTextureSize: 2048 94 | resizeAlgorithm: 0 95 | textureFormat: -1 96 | textureCompression: 1 97 | compressionQuality: 50 98 | crunchedCompression: 0 99 | allowsAlphaSplitting: 0 100 | overridden: 0 101 | androidETC2FallbackOverride: 0 102 | forceMaximumCompressionQuality_BC6H_BC7: 0 103 | - serializedVersion: 3 104 | buildTarget: Android 105 | maxTextureSize: 2048 106 | resizeAlgorithm: 0 107 | textureFormat: -1 108 | textureCompression: 1 109 | compressionQuality: 50 110 | crunchedCompression: 0 111 | allowsAlphaSplitting: 0 112 | overridden: 0 113 | androidETC2FallbackOverride: 0 114 | forceMaximumCompressionQuality_BC6H_BC7: 0 115 | - serializedVersion: 3 116 | buildTarget: WebGL 117 | maxTextureSize: 512 118 | resizeAlgorithm: 0 119 | textureFormat: 45 120 | textureCompression: 1 121 | compressionQuality: 50 122 | crunchedCompression: 0 123 | allowsAlphaSplitting: 0 124 | overridden: 1 125 | androidETC2FallbackOverride: 0 126 | forceMaximumCompressionQuality_BC6H_BC7: 0 127 | spriteSheet: 128 | serializedVersion: 2 129 | sprites: [] 130 | outline: [] 131 | physicsShape: [] 132 | bones: [] 133 | spriteID: 134 | internalID: 0 135 | vertices: [] 136 | indices: 137 | edges: [] 138 | weights: [] 139 | secondaryTextures: [] 140 | nameFileIdTable: {} 141 | spritePackingTag: 142 | pSDRemoveMatte: 0 143 | pSDShowRemoveMatteOption: 0 144 | userData: 145 | assetBundleName: 146 | assetBundleVariant: 147 | -------------------------------------------------------------------------------- /Plugins.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ee26170cc21e1274493c4dc268cdddf3 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Plugins/Android.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 83b8aaa7f74254c218ff690f5ce504c1 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Plugins/Android/ZCVAndroidRenderPlugin.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "Unity/IUnityGraphics.h" 4 | #include "zappar.h" 5 | 6 | static void UNITY_INTERFACE_API OnNativeGLRenderEvent(int eventID); 7 | extern "C" UnityRenderingEvent UNITY_INTERFACE_EXPORT UNITY_INTERFACE_API zappar_upload_callback_native_gl(); 8 | 9 | extern "C" void zappar_pipeline_set(zappar_pipeline_t pipeline); 10 | 11 | // Face mesh vertex buffer 12 | extern "C" void UNITY_INTERFACE_EXPORT UNITY_INTERFACE_API zappar_set_face_mesh_buffers_from_unity(zappar_face_mesh_t faceMesh, void* vertexBufferHandle, int vertexCount); 13 | extern "C" void UNITY_INTERFACE_EXPORT UNITY_INTERFACE_API zappar_clear_face_mesh_buffers_from_unity(zappar_face_mesh_t faceMesh); 14 | extern "C" int UNITY_INTERFACE_EXPORT UNITY_INTERFACE_API zappar_get_unity_face_mesh_buffers_count(); 15 | extern "C" UnityRenderingEvent UNITY_INTERFACE_EXPORT UNITY_INTERFACE_API zappar_update_face_mesh_buffer_callback_native_gl(); -------------------------------------------------------------------------------- /Plugins/Android/ZCVAndroidRenderPlugin.h.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b37c05e8679b745208e4fd849ea45ed4 3 | PluginImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | iconMap: {} 7 | executionOrder: {} 8 | defineConstraints: [] 9 | isPreloaded: 0 10 | isOverridable: 0 11 | isExplicitlyReferenced: 0 12 | validateReferences: 1 13 | platformData: 14 | - first: 15 | Android: Android 16 | second: 17 | enabled: 1 18 | settings: {} 19 | - first: 20 | Any: 21 | second: 22 | enabled: 0 23 | settings: {} 24 | - first: 25 | Editor: Editor 26 | second: 27 | enabled: 0 28 | settings: 29 | DefaultValueInitialized: true 30 | userData: 31 | assetBundleName: 32 | assetBundleVariant: 33 | -------------------------------------------------------------------------------- /Plugins/Android/libs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e151aad6d9e2340058714efe5ba43d63 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Plugins/Android/libs/arm64-v8a.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 294d846fc07574571909f079c0e647a2 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Plugins/Android/libs/arm64-v8a/libZCVAndroidRenderPlugin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Plugins/Android/libs/arm64-v8a/libZCVAndroidRenderPlugin.so -------------------------------------------------------------------------------- /Plugins/Android/libs/arm64-v8a/libZCVAndroidRenderPlugin.so.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4b383890bdb27d643b680c0752ebcd58 3 | PluginImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | iconMap: {} 7 | executionOrder: {} 8 | defineConstraints: [] 9 | isPreloaded: 0 10 | isOverridable: 0 11 | isExplicitlyReferenced: 0 12 | validateReferences: 1 13 | platformData: 14 | - first: 15 | Android: Android 16 | second: 17 | enabled: 1 18 | settings: 19 | CPU: ARM64 20 | - first: 21 | Any: 22 | second: 23 | enabled: 0 24 | settings: {} 25 | - first: 26 | Editor: Editor 27 | second: 28 | enabled: 0 29 | settings: 30 | DefaultValueInitialized: true 31 | userData: 32 | assetBundleName: 33 | assetBundleVariant: 34 | -------------------------------------------------------------------------------- /Plugins/Android/libs/armeabi-v7a.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 59c6edf52d3d441c48c0cbcd0d81d85f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Plugins/Android/libs/armeabi-v7a/libZCVAndroidRenderPlugin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Plugins/Android/libs/armeabi-v7a/libZCVAndroidRenderPlugin.so -------------------------------------------------------------------------------- /Plugins/Android/libs/armeabi-v7a/libZCVAndroidRenderPlugin.so.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e35c2fd281959844bb3e113965a20f12 3 | PluginImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | iconMap: {} 7 | executionOrder: {} 8 | defineConstraints: [] 9 | isPreloaded: 0 10 | isOverridable: 0 11 | isExplicitlyReferenced: 0 12 | validateReferences: 1 13 | platformData: 14 | - first: 15 | Android: Android 16 | second: 17 | enabled: 1 18 | settings: 19 | CPU: ARMv7 20 | - first: 21 | Any: 22 | second: 23 | enabled: 0 24 | settings: {} 25 | - first: 26 | Editor: Editor 27 | second: 28 | enabled: 0 29 | settings: 30 | DefaultValueInitialized: true 31 | userData: 32 | assetBundleName: 33 | assetBundleVariant: 34 | -------------------------------------------------------------------------------- /Plugins/Android/libs/x86.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 88a69090b341f4b498d566bec92266bc 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Plugins/Android/libs/x86/libZCVAndroidRenderPlugin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Plugins/Android/libs/x86/libZCVAndroidRenderPlugin.so -------------------------------------------------------------------------------- /Plugins/Android/libs/x86/libZCVAndroidRenderPlugin.so.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 48f9d815becb75849ac8dd7d4a538590 3 | PluginImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | iconMap: {} 7 | executionOrder: {} 8 | defineConstraints: [] 9 | isPreloaded: 0 10 | isOverridable: 0 11 | isExplicitlyReferenced: 0 12 | validateReferences: 1 13 | platformData: 14 | - first: 15 | Android: Android 16 | second: 17 | enabled: 1 18 | settings: 19 | CPU: x86 20 | - first: 21 | Any: 22 | second: 23 | enabled: 0 24 | settings: {} 25 | - first: 26 | Editor: Editor 27 | second: 28 | enabled: 0 29 | settings: 30 | DefaultValueInitialized: true 31 | userData: 32 | assetBundleName: 33 | assetBundleVariant: 34 | -------------------------------------------------------------------------------- /Plugins/Android/libs/x86_64.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 21f51595c035d475993ae155b87fe16a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Plugins/Android/libs/x86_64/libZCVAndroidRenderPlugin.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Plugins/Android/libs/x86_64/libZCVAndroidRenderPlugin.so -------------------------------------------------------------------------------- /Plugins/Android/libs/x86_64/libZCVAndroidRenderPlugin.so.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7f5036ed53e5c4441802cd2fce682617 3 | PluginImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | iconMap: {} 7 | executionOrder: {} 8 | defineConstraints: [] 9 | isPreloaded: 0 10 | isOverridable: 0 11 | isExplicitlyReferenced: 0 12 | validateReferences: 1 13 | platformData: 14 | - first: 15 | Android: Android 16 | second: 17 | enabled: 0 18 | settings: {} 19 | - first: 20 | Any: 21 | second: 22 | enabled: 0 23 | settings: {} 24 | - first: 25 | Editor: Editor 26 | second: 27 | enabled: 0 28 | settings: 29 | DefaultValueInitialized: true 30 | userData: 31 | assetBundleName: 32 | assetBundleVariant: 33 | -------------------------------------------------------------------------------- /Plugins/Android/zcv.aar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Plugins/Android/zcv.aar -------------------------------------------------------------------------------- /Plugins/Android/zcv.aar.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 88f53860d93cc47478cea2326811297b 3 | PluginImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | iconMap: {} 7 | executionOrder: {} 8 | defineConstraints: [] 9 | isPreloaded: 0 10 | isOverridable: 1 11 | isExplicitlyReferenced: 0 12 | validateReferences: 1 13 | platformData: 14 | - first: 15 | Android: Android 16 | second: 17 | enabled: 1 18 | settings: {} 19 | - first: 20 | Any: 21 | second: 22 | enabled: 0 23 | settings: {} 24 | - first: 25 | Editor: Editor 26 | second: 27 | enabled: 0 28 | settings: 29 | DefaultValueInitialized: true 30 | userData: 31 | assetBundleName: 32 | assetBundleVariant: 33 | -------------------------------------------------------------------------------- /Plugins/WebGL.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f6b3eb870129de741aa3bc71ca744d4a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Plugins/WebGL/zcv.jslib.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3adc92a4ca348436fbe308bec577bedd 3 | PluginImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | iconMap: {} 7 | executionOrder: {} 8 | defineConstraints: [] 9 | isPreloaded: 0 10 | isOverridable: 0 11 | isExplicitlyReferenced: 0 12 | validateReferences: 1 13 | platformData: 14 | - first: 15 | Any: 16 | second: 17 | enabled: 0 18 | settings: {} 19 | - first: 20 | Editor: Editor 21 | second: 22 | enabled: 0 23 | settings: 24 | DefaultValueInitialized: true 25 | - first: 26 | WebGL: WebGL 27 | second: 28 | enabled: 1 29 | settings: {} 30 | userData: 31 | assetBundleName: 32 | assetBundleVariant: 33 | -------------------------------------------------------------------------------- /Plugins/Windows.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3e2c8f2ff5ab74feeb4a9f064e8ea84f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Plugins/Windows/ImageTraining.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Plugins/Windows/ImageTraining.dll -------------------------------------------------------------------------------- /Plugins/Windows/ImageTraining.dll.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fba5a0e5319b6b640896582c7ade75a8 3 | PluginImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | iconMap: {} 7 | executionOrder: {} 8 | defineConstraints: [] 9 | isPreloaded: 0 10 | isOverridable: 1 11 | isExplicitlyReferenced: 0 12 | validateReferences: 1 13 | platformData: 14 | - first: 15 | : Any 16 | second: 17 | enabled: 0 18 | settings: 19 | Exclude Android: 1 20 | Exclude Editor: 0 21 | Exclude Linux64: 1 22 | Exclude OSXUniversal: 1 23 | Exclude WebGL: 1 24 | Exclude Win: 1 25 | Exclude Win64: 1 26 | - first: 27 | Android: Android 28 | second: 29 | enabled: 0 30 | settings: 31 | CPU: ARMv7 32 | - first: 33 | Any: 34 | second: 35 | enabled: 0 36 | settings: {} 37 | - first: 38 | Editor: Editor 39 | second: 40 | enabled: 1 41 | settings: 42 | CPU: AnyCPU 43 | DefaultValueInitialized: true 44 | OS: AnyOS 45 | - first: 46 | Standalone: Linux64 47 | second: 48 | enabled: 0 49 | settings: 50 | CPU: None 51 | - first: 52 | Standalone: OSXUniversal 53 | second: 54 | enabled: 0 55 | settings: 56 | CPU: None 57 | - first: 58 | Standalone: Win 59 | second: 60 | enabled: 0 61 | settings: 62 | CPU: None 63 | - first: 64 | Standalone: Win64 65 | second: 66 | enabled: 0 67 | settings: 68 | CPU: None 69 | userData: 70 | assetBundleName: 71 | assetBundleVariant: 72 | -------------------------------------------------------------------------------- /Plugins/Windows/zcv.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Plugins/Windows/zcv.dll -------------------------------------------------------------------------------- /Plugins/Windows/zcv.dll.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3af32d945027e6242a076f124301cc66 3 | PluginImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | iconMap: {} 7 | executionOrder: {} 8 | defineConstraints: [] 9 | isPreloaded: 0 10 | isOverridable: 0 11 | isExplicitlyReferenced: 0 12 | validateReferences: 1 13 | platformData: 14 | - first: 15 | : Any 16 | second: 17 | enabled: 0 18 | settings: 19 | Exclude Android: 1 20 | Exclude Editor: 0 21 | Exclude Linux64: 0 22 | Exclude OSXUniversal: 0 23 | Exclude WebGL: 1 24 | Exclude Win: 0 25 | Exclude Win64: 0 26 | Exclude iOS: 1 27 | - first: 28 | Android: Android 29 | second: 30 | enabled: 0 31 | settings: 32 | CPU: ARMv7 33 | - first: 34 | Any: 35 | second: 36 | enabled: 0 37 | settings: {} 38 | - first: 39 | Editor: Editor 40 | second: 41 | enabled: 1 42 | settings: 43 | CPU: AnyCPU 44 | DefaultValueInitialized: true 45 | OS: Windows 46 | - first: 47 | Standalone: Linux64 48 | second: 49 | enabled: 1 50 | settings: 51 | CPU: AnyCPU 52 | - first: 53 | Standalone: OSXUniversal 54 | second: 55 | enabled: 1 56 | settings: 57 | CPU: x86_64 58 | - first: 59 | Standalone: Win 60 | second: 61 | enabled: 1 62 | settings: 63 | CPU: x86 64 | - first: 65 | Standalone: Win64 66 | second: 67 | enabled: 1 68 | settings: 69 | CPU: x86_64 70 | - first: 71 | iPhone: iOS 72 | second: 73 | enabled: 0 74 | settings: 75 | AddToEmbeddedBinaries: false 76 | CPU: AnyCPU 77 | CompileFlags: 78 | FrameworkDependencies: 79 | userData: 80 | assetBundleName: 81 | assetBundleVariant: 82 | -------------------------------------------------------------------------------- /Plugins/Zappar.UAR.asmref: -------------------------------------------------------------------------------- 1 | { 2 | "reference": "GUID:139c618766f367b4280b650efb618b72" 3 | } -------------------------------------------------------------------------------- /Plugins/Zappar.UAR.asmref.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 30f5ee81f423c6d4683661b91fd927e2 3 | AssemblyDefinitionReferenceImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Plugins/iOS.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5a398ee35aca6874ea892ceb000224cc 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Plugins/iOS/ZCV.bundle.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c7e1e49cf2a82472f8e89b840df17e54 3 | folderAsset: yes 4 | PluginImporter: 5 | externalObjects: {} 6 | serializedVersion: 2 7 | iconMap: {} 8 | executionOrder: {} 9 | defineConstraints: [] 10 | isPreloaded: 0 11 | isOverridable: 1 12 | isExplicitlyReferenced: 0 13 | validateReferences: 1 14 | platformData: 15 | - first: 16 | : Any 17 | second: 18 | enabled: 0 19 | settings: 20 | Exclude Editor: 1 21 | Exclude Linux64: 1 22 | Exclude OSXUniversal: 1 23 | Exclude WebGL: 1 24 | Exclude Win: 1 25 | Exclude Win64: 1 26 | Exclude iOS: 1 27 | - first: 28 | Any: 29 | second: 30 | enabled: 0 31 | settings: {} 32 | - first: 33 | Editor: Editor 34 | second: 35 | enabled: 0 36 | settings: 37 | CPU: AnyCPU 38 | DefaultValueInitialized: true 39 | OS: AnyOS 40 | - first: 41 | Standalone: Linux64 42 | second: 43 | enabled: 0 44 | settings: 45 | CPU: None 46 | - first: 47 | Standalone: OSXUniversal 48 | second: 49 | enabled: 0 50 | settings: 51 | CPU: None 52 | - first: 53 | Standalone: Win 54 | second: 55 | enabled: 0 56 | settings: 57 | CPU: None 58 | - first: 59 | Standalone: Win64 60 | second: 61 | enabled: 0 62 | settings: 63 | CPU: None 64 | - first: 65 | iPhone: iOS 66 | second: 67 | enabled: 0 68 | settings: 69 | AddToEmbeddedBinaries: false 70 | CPU: AnyCPU 71 | CompileFlags: 72 | FrameworkDependencies: 73 | userData: 74 | assetBundleName: 75 | assetBundleVariant: 76 | -------------------------------------------------------------------------------- /Plugins/iOS/ZCV.bundle/Contents.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d76c74ad389b1428a8214bd5b7b8bc43 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Plugins/iOS/ZCV.bundle/Contents/Resources.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c0564d55e9207430296b1fd2d136a72b 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Plugins/iOS/ZCV.bundle/Contents/Resources/face_mesh_face_model.zbin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Plugins/iOS/ZCV.bundle/Contents/Resources/face_mesh_face_model.zbin -------------------------------------------------------------------------------- /Plugins/iOS/ZCV.bundle/Contents/Resources/face_mesh_face_model.zbin.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fbf47c754ebc64ee19ab9a1885a0c32b 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Plugins/iOS/ZCV.bundle/Contents/Resources/face_mesh_full_head_simplified_model.zbin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Plugins/iOS/ZCV.bundle/Contents/Resources/face_mesh_full_head_simplified_model.zbin -------------------------------------------------------------------------------- /Plugins/iOS/ZCV.bundle/Contents/Resources/face_mesh_full_head_simplified_model.zbin.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 01434f535e6aa4f1d8d57fdd7dabf18f 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Plugins/iOS/ZCV.bundle/Contents/Resources/face_tracking_model.zbin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Plugins/iOS/ZCV.bundle/Contents/Resources/face_tracking_model.zbin -------------------------------------------------------------------------------- /Plugins/iOS/ZCV.bundle/Contents/Resources/face_tracking_model.zbin.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 08be0de58738f4524a0fd28d4f7c50ee 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Plugins/iOS/libzcv.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Plugins/iOS/libzcv.a -------------------------------------------------------------------------------- /Plugins/iOS/libzcv.a.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a67b91be422be49c2bae6afedb91a903 3 | PluginImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | iconMap: {} 7 | executionOrder: {} 8 | defineConstraints: [] 9 | isPreloaded: 0 10 | isOverridable: 1 11 | isExplicitlyReferenced: 0 12 | validateReferences: 1 13 | platformData: 14 | - first: 15 | : Any 16 | second: 17 | enabled: 0 18 | settings: 19 | Exclude Android: 1 20 | Exclude Editor: 1 21 | Exclude Linux64: 1 22 | Exclude OSXUniversal: 1 23 | Exclude WebGL: 1 24 | Exclude Win: 1 25 | Exclude Win64: 1 26 | Exclude iOS: 0 27 | - first: 28 | Android: Android 29 | second: 30 | enabled: 0 31 | settings: 32 | CPU: ARMv7 33 | - first: 34 | Any: 35 | second: 36 | enabled: 0 37 | settings: {} 38 | - first: 39 | Editor: Editor 40 | second: 41 | enabled: 0 42 | settings: 43 | CPU: AnyCPU 44 | DefaultValueInitialized: true 45 | OS: AnyOS 46 | - first: 47 | Standalone: Linux64 48 | second: 49 | enabled: 0 50 | settings: 51 | CPU: None 52 | - first: 53 | Standalone: OSXUniversal 54 | second: 55 | enabled: 0 56 | settings: 57 | CPU: None 58 | - first: 59 | Standalone: Win 60 | second: 61 | enabled: 0 62 | settings: 63 | CPU: None 64 | - first: 65 | Standalone: Win64 66 | second: 67 | enabled: 0 68 | settings: 69 | CPU: None 70 | - first: 71 | iPhone: iOS 72 | second: 73 | enabled: 1 74 | settings: 75 | AddToEmbeddedBinaries: false 76 | CPU: AnyCPU 77 | CompileFlags: 78 | FrameworkDependencies: 79 | userData: 80 | assetBundleName: 81 | assetBundleVariant: 82 | -------------------------------------------------------------------------------- /Plugins/iOS/zappar-unity.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "IUnityGraphics.h" 4 | #include "IUnityGraphicsMetal.h" 5 | #include "zappar.h" 6 | 7 | #define ZAPPAR_METAL_SUPPORT // Comment out this line if you _do not_ want to include support for Metal. 8 | 9 | extern "C" void UNITY_INTERFACE_EXPORT UNITY_INTERFACE_API UnityPluginLoad(IUnityInterfaces* unityInterfaces); 10 | extern "C" void UNITY_INTERFACE_EXPORT UNITY_INTERFACE_API UnityPluginUnload(); 11 | 12 | static void UNITY_INTERFACE_API OnNativeGLRenderEvent(int eventID); 13 | extern "C" UnityRenderingEvent UNITY_INTERFACE_EXPORT UNITY_INTERFACE_API zappar_upload_callback_native_gl(); 14 | 15 | static void UNITY_INTERFACE_API OnNativeMetalRenderEvent(int eventID); 16 | extern "C" UnityRenderingEvent UNITY_INTERFACE_EXPORT UNITY_INTERFACE_API zappar_upload_callback_native_metal(); 17 | 18 | extern "C" void zappar_pipeline_set(zappar_pipeline_t pipeline_id); 19 | extern "C" void zappar_analytics_project_id_set(const char* id); 20 | 21 | extern "C" void UNITY_INTERFACE_EXPORT UNITY_INTERFACE_API zappar_set_face_mesh_buffers_from_unity(zappar_face_mesh_t faceMesh, void* vertexBufferHandle, int vertexCount); 22 | extern "C" void UNITY_INTERFACE_EXPORT UNITY_INTERFACE_API zappar_clear_face_mesh_buffers_from_unity(zappar_face_mesh_t faceMesh); 23 | extern "C" int UNITY_INTERFACE_EXPORT UNITY_INTERFACE_API zappar_get_unity_face_mesh_buffers_count(); 24 | extern "C" UnityRenderingEvent UNITY_INTERFACE_EXPORT UNITY_INTERFACE_API zappar_update_face_mesh_buffer_callback_native_gl(); 25 | #if defined(ZAPPAR_METAL_SUPPORT) 26 | extern "C" UnityRenderingEvent UNITY_INTERFACE_EXPORT UNITY_INTERFACE_API zappar_update_face_mesh_buffer_callback_native_metal(); 27 | #endif -------------------------------------------------------------------------------- /Plugins/iOS/zappar-unity.h.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: efeb69d078c0a4f21a0082d810920932 3 | PluginImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | iconMap: {} 7 | executionOrder: {} 8 | defineConstraints: [] 9 | isPreloaded: 0 10 | isOverridable: 0 11 | isExplicitlyReferenced: 0 12 | validateReferences: 1 13 | platformData: 14 | - first: 15 | Any: 16 | second: 17 | enabled: 0 18 | settings: {} 19 | - first: 20 | Editor: Editor 21 | second: 22 | enabled: 0 23 | settings: 24 | DefaultValueInitialized: true 25 | - first: 26 | iPhone: iOS 27 | second: 28 | enabled: 1 29 | settings: 30 | AddToEmbeddedBinaries: false 31 | userData: 32 | assetBundleName: 33 | assetBundleVariant: 34 | -------------------------------------------------------------------------------- /Plugins/iOS/zappar-unity.mm.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 499b2e43953624e42ad9c3798c868ba5 3 | PluginImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | iconMap: {} 7 | executionOrder: {} 8 | defineConstraints: [] 9 | isPreloaded: 0 10 | isOverridable: 0 11 | isExplicitlyReferenced: 0 12 | validateReferences: 1 13 | platformData: 14 | - first: 15 | Any: 16 | second: 17 | enabled: 0 18 | settings: {} 19 | - first: 20 | Editor: Editor 21 | second: 22 | enabled: 0 23 | settings: 24 | DefaultValueInitialized: true 25 | - first: 26 | iPhone: iOS 27 | second: 28 | enabled: 1 29 | settings: 30 | AddToEmbeddedBinaries: false 31 | userData: 32 | assetBundleName: 33 | assetBundleVariant: 34 | -------------------------------------------------------------------------------- /Plugins/macOS.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f15216c7f51fb4314afcea7ada0a8458 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Plugins/macOS/ImageTraining.bundle.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0bc033e5de66c40ffa453e6453638e28 3 | folderAsset: yes 4 | PluginImporter: 5 | externalObjects: {} 6 | serializedVersion: 2 7 | iconMap: {} 8 | executionOrder: {} 9 | defineConstraints: [] 10 | isPreloaded: 1 11 | isOverridable: 1 12 | isExplicitlyReferenced: 0 13 | validateReferences: 1 14 | platformData: 15 | - first: 16 | : Any 17 | second: 18 | enabled: 0 19 | settings: 20 | Exclude Editor: 0 21 | Exclude Linux64: 1 22 | Exclude OSXUniversal: 1 23 | Exclude WebGL: 1 24 | Exclude Win: 1 25 | Exclude Win64: 1 26 | - first: 27 | Any: 28 | second: 29 | enabled: 0 30 | settings: {} 31 | - first: 32 | Editor: Editor 33 | second: 34 | enabled: 1 35 | settings: 36 | CPU: AnyCPU 37 | DefaultValueInitialized: true 38 | OS: OSX 39 | - first: 40 | Standalone: Linux64 41 | second: 42 | enabled: 0 43 | settings: 44 | CPU: None 45 | - first: 46 | Standalone: OSXUniversal 47 | second: 48 | enabled: 0 49 | settings: 50 | CPU: AnyCPU 51 | - first: 52 | Standalone: Win 53 | second: 54 | enabled: 0 55 | settings: 56 | CPU: None 57 | - first: 58 | Standalone: Win64 59 | second: 60 | enabled: 0 61 | settings: 62 | CPU: None 63 | userData: 64 | assetBundleName: 65 | assetBundleVariant: 66 | -------------------------------------------------------------------------------- /Plugins/macOS/ImageTraining.bundle/Contents/CodeResources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Plugins/macOS/ImageTraining.bundle/Contents/CodeResources -------------------------------------------------------------------------------- /Plugins/macOS/ImageTraining.bundle/Contents/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 21F79 7 | CFBundleDevelopmentRegion 8 | English 9 | CFBundleExecutable 10 | ImageTraining 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleLongVersionString 14 | 15 | CFBundlePackageType 16 | APPL 17 | CFBundleSignature 18 | ???? 19 | CFBundleSupportedPlatforms 20 | 21 | MacOSX 22 | 23 | CSResourcesFileMapped 24 | 25 | DTCompiler 26 | com.apple.compilers.llvm.clang.1_0 27 | DTPlatformBuild 28 | 13F100 29 | DTPlatformName 30 | macosx 31 | DTPlatformVersion 32 | 12.3 33 | DTSDKBuild 34 | 21E226 35 | DTSDKName 36 | macosx12.3 37 | DTXcode 38 | 1341 39 | DTXcodeBuild 40 | 13F100 41 | LSMinimumSystemVersion 42 | 10.14 43 | NSHumanReadableCopyright 44 | 45 | 46 | 47 | -------------------------------------------------------------------------------- /Plugins/macOS/ImageTraining.bundle/Contents/MacOS/ImageTraining: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Plugins/macOS/ImageTraining.bundle/Contents/MacOS/ImageTraining -------------------------------------------------------------------------------- /Plugins/macOS/ImageTraining.bundle/Contents/_CodeSignature/CodeResources: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | files 6 | 7 | files2 8 | 9 | rules 10 | 11 | ^Resources/ 12 | 13 | ^Resources/.*\.lproj/ 14 | 15 | optional 16 | 17 | weight 18 | 1000 19 | 20 | ^Resources/.*\.lproj/locversion.plist$ 21 | 22 | omit 23 | 24 | weight 25 | 1100 26 | 27 | ^Resources/Base\.lproj/ 28 | 29 | weight 30 | 1010 31 | 32 | ^version.plist$ 33 | 34 | 35 | rules2 36 | 37 | .*\.dSYM($|/) 38 | 39 | weight 40 | 11 41 | 42 | ^(.*/)?\.DS_Store$ 43 | 44 | omit 45 | 46 | weight 47 | 2000 48 | 49 | ^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/ 50 | 51 | nested 52 | 53 | weight 54 | 10 55 | 56 | ^.* 57 | 58 | ^Info\.plist$ 59 | 60 | omit 61 | 62 | weight 63 | 20 64 | 65 | ^PkgInfo$ 66 | 67 | omit 68 | 69 | weight 70 | 20 71 | 72 | ^Resources/ 73 | 74 | weight 75 | 20 76 | 77 | ^Resources/.*\.lproj/ 78 | 79 | optional 80 | 81 | weight 82 | 1000 83 | 84 | ^Resources/.*\.lproj/locversion.plist$ 85 | 86 | omit 87 | 88 | weight 89 | 1100 90 | 91 | ^Resources/Base\.lproj/ 92 | 93 | weight 94 | 1010 95 | 96 | ^[^/]+$ 97 | 98 | nested 99 | 100 | weight 101 | 10 102 | 103 | ^embedded\.provisionprofile$ 104 | 105 | weight 106 | 20 107 | 108 | ^version\.plist$ 109 | 110 | weight 111 | 20 112 | 113 | 114 | 115 | 116 | -------------------------------------------------------------------------------- /Plugins/macOS/ZCV-macos.bundle.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a41eb7a7b08364e1991e06cee2dbca87 3 | folderAsset: yes 4 | PluginImporter: 5 | externalObjects: {} 6 | serializedVersion: 2 7 | iconMap: {} 8 | executionOrder: {} 9 | defineConstraints: [] 10 | isPreloaded: 0 11 | isOverridable: 1 12 | isExplicitlyReferenced: 0 13 | validateReferences: 1 14 | platformData: 15 | - first: 16 | : Any 17 | second: 18 | enabled: 0 19 | settings: 20 | Exclude Android: 1 21 | Exclude Editor: 0 22 | Exclude Linux64: 1 23 | Exclude OSXUniversal: 0 24 | Exclude WebGL: 1 25 | Exclude Win: 1 26 | Exclude Win64: 1 27 | Exclude iOS: 1 28 | - first: 29 | Android: Android 30 | second: 31 | enabled: 0 32 | settings: 33 | CPU: ARMv7 34 | - first: 35 | Any: 36 | second: 37 | enabled: 0 38 | settings: {} 39 | - first: 40 | Editor: Editor 41 | second: 42 | enabled: 1 43 | settings: 44 | CPU: AnyCPU 45 | DefaultValueInitialized: true 46 | OS: OSX 47 | - first: 48 | Standalone: Linux64 49 | second: 50 | enabled: 0 51 | settings: 52 | CPU: AnyCPU 53 | - first: 54 | Standalone: OSXUniversal 55 | second: 56 | enabled: 1 57 | settings: 58 | CPU: AnyCPU 59 | - first: 60 | Standalone: Win 61 | second: 62 | enabled: 0 63 | settings: 64 | CPU: x86 65 | - first: 66 | Standalone: Win64 67 | second: 68 | enabled: 0 69 | settings: 70 | CPU: x86_64 71 | - first: 72 | iPhone: iOS 73 | second: 74 | enabled: 0 75 | settings: 76 | AddToEmbeddedBinaries: false 77 | CPU: AnyCPU 78 | CompileFlags: 79 | FrameworkDependencies: 80 | userData: 81 | assetBundleName: 82 | assetBundleVariant: 83 | -------------------------------------------------------------------------------- /Plugins/macOS/ZCV-macos.bundle/Contents/CodeResources: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Plugins/macOS/ZCV-macos.bundle/Contents/CodeResources -------------------------------------------------------------------------------- /Plugins/macOS/ZCV-macos.bundle/Contents/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 21F79 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | ZCV 11 | CFBundleIdentifier 12 | com.zappar.ZCV 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ZCV 17 | CFBundlePackageType 18 | BNDL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSupportedPlatforms 22 | 23 | MacOSX 24 | 25 | CFBundleVersion 26 | 1 27 | DTCompiler 28 | com.apple.compilers.llvm.clang.1_0 29 | DTPlatformBuild 30 | 13F100 31 | DTPlatformName 32 | macosx 33 | DTPlatformVersion 34 | 12.3 35 | DTSDKBuild 36 | 21E226 37 | DTSDKName 38 | macosx12.3 39 | DTXcode 40 | 1341 41 | DTXcodeBuild 42 | 13F100 43 | LSMinimumSystemVersion 44 | 10.14 45 | NSHumanReadableCopyright 46 | Copyright © 2020 Zappar. All rights reserved. 47 | 48 | 49 | -------------------------------------------------------------------------------- /Plugins/macOS/ZCV-macos.bundle/Contents/MacOS/ZCV: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Plugins/macOS/ZCV-macos.bundle/Contents/MacOS/ZCV -------------------------------------------------------------------------------- /Plugins/macOS/ZCV-macos.bundle/Contents/_CodeSignature/CodeResources: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | files 6 | 7 | files2 8 | 9 | rules 10 | 11 | ^Resources/ 12 | 13 | ^Resources/.*\.lproj/ 14 | 15 | optional 16 | 17 | weight 18 | 1000 19 | 20 | ^Resources/.*\.lproj/locversion.plist$ 21 | 22 | omit 23 | 24 | weight 25 | 1100 26 | 27 | ^Resources/Base\.lproj/ 28 | 29 | weight 30 | 1010 31 | 32 | ^version.plist$ 33 | 34 | 35 | rules2 36 | 37 | .*\.dSYM($|/) 38 | 39 | weight 40 | 11 41 | 42 | ^(.*/)?\.DS_Store$ 43 | 44 | omit 45 | 46 | weight 47 | 2000 48 | 49 | ^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/ 50 | 51 | nested 52 | 53 | weight 54 | 10 55 | 56 | ^.* 57 | 58 | ^Info\.plist$ 59 | 60 | omit 61 | 62 | weight 63 | 20 64 | 65 | ^PkgInfo$ 66 | 67 | omit 68 | 69 | weight 70 | 20 71 | 72 | ^Resources/ 73 | 74 | weight 75 | 20 76 | 77 | ^Resources/.*\.lproj/ 78 | 79 | optional 80 | 81 | weight 82 | 1000 83 | 84 | ^Resources/.*\.lproj/locversion.plist$ 85 | 86 | omit 87 | 88 | weight 89 | 1100 90 | 91 | ^Resources/Base\.lproj/ 92 | 93 | weight 94 | 1010 95 | 96 | ^[^/]+$ 97 | 98 | nested 99 | 100 | weight 101 | 10 102 | 103 | ^embedded\.provisionprofile$ 104 | 105 | weight 106 | 20 107 | 108 | ^version\.plist$ 109 | 110 | weight 111 | 20 112 | 113 | 114 | 115 | 116 | -------------------------------------------------------------------------------- /Plugins/zappar.h.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6ade7dc651a784255990d8fa78620a2e 3 | PluginImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | iconMap: {} 7 | executionOrder: {} 8 | defineConstraints: [] 9 | isPreloaded: 0 10 | isOverridable: 0 11 | isExplicitlyReferenced: 0 12 | validateReferences: 1 13 | platformData: 14 | - first: 15 | Any: 16 | second: 17 | enabled: 1 18 | settings: {} 19 | - first: 20 | Editor: Editor 21 | second: 22 | enabled: 0 23 | settings: 24 | DefaultValueInitialized: true 25 | userData: 26 | assetBundleName: 27 | assetBundleVariant: 28 | -------------------------------------------------------------------------------- /Plugins/zcv.cpp.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: afc81adf0ae274102a6e35c7ce116f1e 3 | PluginImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | iconMap: {} 7 | executionOrder: {} 8 | defineConstraints: [] 9 | isPreloaded: 0 10 | isOverridable: 0 11 | isExplicitlyReferenced: 0 12 | validateReferences: 1 13 | platformData: 14 | - first: 15 | Any: 16 | second: 17 | enabled: 1 18 | settings: {} 19 | - first: 20 | Editor: Editor 21 | second: 22 | enabled: 0 23 | settings: 24 | DefaultValueInitialized: true 25 | userData: 26 | assetBundleName: 27 | assetBundleVariant: 28 | -------------------------------------------------------------------------------- /README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9cac3db2ad2396944aad45bc8966f968 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Resources.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ef05c012fef464a9d8206c084298bc0c 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Resources/Shaders.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 43e16e9dcf6f64ad88a3fae383e2f7b3 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Resources/Shaders/CameraBackgroundShader.shader: -------------------------------------------------------------------------------- 1 | Shader "Zappar/CameraBackgroundShader" 2 | { 3 | Properties 4 | { 5 | _MainTex ("Texture", 2D) = "white" {} 6 | } 7 | SubShader 8 | { 9 | Tags { "RenderType"="Opaque" } 10 | LOD 100 11 | 12 | Pass 13 | { 14 | CGPROGRAM 15 | #pragma vertex vert 16 | #pragma fragment frag 17 | #pragma multi_compile_fog 18 | 19 | #include "UnityCG.cginc" 20 | 21 | struct appdata 22 | { 23 | float4 vertex : POSITION; 24 | float2 uv : TEXCOORD0; 25 | }; 26 | 27 | struct v2f 28 | { 29 | float2 uv : TEXCOORD0; 30 | float4 vertex : SV_POSITION; 31 | }; 32 | 33 | sampler2D _MainTex; 34 | float4 _MainTex_ST; 35 | float4x4 _nativeTextureMatrix; 36 | 37 | v2f vert (appdata v) 38 | { 39 | v2f o; 40 | 41 | o.vertex = UnityObjectToClipPos(v.vertex); 42 | o.uv = mul(_nativeTextureMatrix, float4(v.uv,0,1)).xy; 43 | 44 | return o; 45 | } 46 | 47 | fixed4 frag (v2f i) : SV_Target 48 | { 49 | fixed4 col = tex2D(_MainTex, i.uv); 50 | return col; 51 | } 52 | ENDCG 53 | } 54 | } 55 | } 56 | -------------------------------------------------------------------------------- /Resources/Shaders/CameraBackgroundShader.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8e4847a0db59e4d8fbb60533bd04f617 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | nonModifiableTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Resources/Shaders/DepthMask.shader: -------------------------------------------------------------------------------- 1 | Shader "Zappar/DepthMask" 2 | { 3 | Properties 4 | { 5 | } 6 | SubShader 7 | { 8 | Tags 9 | { 10 | "RenderType" = "Opaque" 11 | "Queue" = "Geometry-1" 12 | } 13 | Pass 14 | { 15 | ColorMask 0 16 | ZWrite On 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /Resources/Shaders/DepthMask.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b53e6fe10b38643a7bee6938e7cb0e24 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | nonModifiableTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Resources/Shaders/InvertedSurface.shader: -------------------------------------------------------------------------------- 1 | Shader "Zappar/Unlit/InvertedSurface" 2 | { 3 | Properties 4 | { 5 | _MainTex ("Texture", 2D) = "white" {} 6 | } 7 | SubShader 8 | { 9 | Tags { "RenderType"="Opaque" } 10 | LOD 100 11 | Cull Front 12 | 13 | Pass 14 | { 15 | CGPROGRAM 16 | #pragma vertex vert 17 | #pragma fragment frag 18 | 19 | #include "UnityCG.cginc" 20 | 21 | struct appdata 22 | { 23 | float4 vertex : POSITION; 24 | float2 uv : TEXCOORD0; 25 | }; 26 | 27 | struct v2f 28 | { 29 | float2 uv : TEXCOORD0; 30 | float4 vertex : SV_POSITION; 31 | }; 32 | 33 | sampler2D _MainTex; 34 | float4 _MainTex_ST; 35 | float4x4 _nativeTextureMatrix; 36 | 37 | v2f vert (appdata v) 38 | { 39 | v2f o; 40 | o.vertex = UnityObjectToClipPos(v.vertex); 41 | o.uv = mul(_nativeTextureMatrix, float4(v.uv, 0, 1)).xy; 42 | //o.uv = TRANSFORM_TEX(v.uv, _MainTex); 43 | // For mirroring image to inside of the sphere 44 | //o.uv.x = 1.0 - o.uv.x; 45 | //o.uv.y = 1.0 - o.uv.y; 46 | return o; 47 | } 48 | 49 | fixed4 frag (v2f i) : SV_Target 50 | { 51 | return tex2D(_MainTex, i.uv); 52 | } 53 | ENDCG 54 | } 55 | } 56 | } 57 | -------------------------------------------------------------------------------- /Resources/Shaders/InvertedSurface.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 65d45bf3370a27c4db13680c1fbb9732 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | nonModifiableTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Resources/Shaders/ZUnlitTextureUV.shader: -------------------------------------------------------------------------------- 1 | Shader "Zappar/UnlitTextureUV" 2 | { 3 | Properties 4 | { 5 | [NoScaleOffset]_MainTex ("Texture", 2D) = "white" {} 6 | [Toggle(FlipTexU)] 7 | _FlipTexX ("Flip U", float) = 0 8 | [Toggle(FlipTexV)] 9 | _FlipTexY ("Flip V", float) = 0 10 | [Enum(Off,0,Front,1,Back,2)] _Culling("Cull", Int) = 2 11 | } 12 | SubShader 13 | { 14 | Tags { "RenderType"="Opaque" } 15 | LOD 100 16 | Cull[_Culling] 17 | 18 | Pass 19 | { 20 | CGPROGRAM 21 | #pragma vertex vert 22 | #pragma fragment frag 23 | 24 | #pragma shader_feature FlipTexU 25 | #pragma shader_feature FlipTexV 26 | 27 | struct appdata 28 | { 29 | float4 vertex : POSITION; // vertex position 30 | float2 uv : TEXCOORD0; // texture coordinate 31 | }; 32 | 33 | struct v2f 34 | { 35 | float2 uv : TEXCOORD0; // texture coordinate 36 | float4 vertex : SV_POSITION; // clip space position 37 | }; 38 | 39 | sampler2D _MainTex; 40 | 41 | v2f vert (appdata v) 42 | { 43 | v2f o; 44 | o.vertex = UnityObjectToClipPos(v.vertex); 45 | o.uv = v.uv; 46 | #if FlipTexU 47 | o.uv = float2(1-o.uv[0],o.uv[1]); 48 | #endif 49 | #if FlipTexV 50 | o.uv = float2(o.uv[0],1-o.uv[1]); 51 | #endif 52 | return o; 53 | } 54 | 55 | fixed4 frag (v2f i) : SV_Target 56 | { 57 | // sample the texture 58 | fixed4 col = tex2D(_MainTex, i.uv); 59 | return col; 60 | } 61 | ENDCG 62 | } 63 | } 64 | } 65 | -------------------------------------------------------------------------------- /Resources/Shaders/ZUnlitTextureUV.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: afc85657244d94368b426e3747346f0a 3 | ShaderImporter: 4 | externalObjects: {} 5 | defaultTextures: [] 6 | nonModifiableTextures: [] 7 | preprocessorOverride: 0 8 | userData: 9 | assetBundleName: 10 | assetBundleVariant: 11 | -------------------------------------------------------------------------------- /Resources/User.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 91b56c78f034a684f8c519ad9d57638f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Resources/User/ZapparUARSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 11500000, guid: 125ea67139dd3d74bac38e53a61e91fb, type: 3} 13 | m_Name: ZapparUARSettings 14 | m_EditorClassIdentifier: 15 | m_packageVersion: 3.2.10-preview.1 16 | m_enableImageTargetPreview: 1 17 | m_excludeZPTFromBuild: 0 18 | m_concurrentFaceTrackerCount: 2 19 | m_permissionRequestUI: 1 20 | m_enableRealtimeReflections: 0 21 | m_debugMode: 2 22 | m_logLevel: 2 23 | -------------------------------------------------------------------------------- /Resources/User/ZapparUARSettings.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 384a645ca7d65b64c95b35e0e77fe3bd 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Runtime.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 51f407e50e5627e4f88c9058848bfe03 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Runtime/Interfaces.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 48e84d689fad1404da659240e619b41a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Runtime/Interfaces/ICameraListener.cs: -------------------------------------------------------------------------------- 1 | namespace Zappar 2 | { 3 | public interface ICameraListener 4 | { 5 | /// 6 | /// On new Zappar pipeline created 7 | /// 8 | void OnZapparInitialized(System.IntPtr pipeline); 9 | 10 | /// 11 | /// Zappar camera source paused(pause=true) started(pause=false) 12 | /// 13 | void OnZapparCameraPaused(bool pause); 14 | 15 | /// 16 | /// Camera mirroring changed/set 17 | /// 18 | void OnMirroringUpdate(bool mirrored); 19 | } 20 | } -------------------------------------------------------------------------------- /Runtime/Interfaces/ICameraListener.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 891e6e8e3e3b7894fa04340a9747ad7a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/Utilities.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 996913cd8970ec845be0d27f2aea1e1b 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Runtime/Utilities/CameraSourcesListPopupAttribute.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Zappar 4 | { 5 | [ExecuteInEditMode] 6 | public class CameraSourcesListPopupAttribute : PropertyAttribute 7 | { 8 | public CameraSourcesListPopupAttribute() 9 | { 10 | 11 | } 12 | } 13 | } -------------------------------------------------------------------------------- /Runtime/Utilities/CameraSourcesListPopupAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 65199bbfa1e60b24bb413791c439f2f4 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/Utilities/LogManager.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Zappar 4 | { 5 | public class LogManager : SingletonMono 6 | { 7 | #if UNITY_EDITOR_OSX || UNITY_EDITOR_WIN 8 | private Z.DebugMode m_debugMode = Z.DebugMode.UnityLog; 9 | private Z.LogLevel m_logLevel = Z.LogLevel.WARNING; 10 | 11 | 12 | public static event Z.DebugLogDelegate OnDebugLog = DebugLog; 13 | public static event Z.DebugLogDelegate OnDebugErr = DebugErr; 14 | [AOT.MonoPInvokeCallback(typeof(Z.DebugLogDelegate))] 15 | private static void DebugLog(string msg) { Debug.Log(msg); } 16 | [AOT.MonoPInvokeCallback(typeof(Z.DebugLogDelegate))] 17 | private static void DebugErr(string msg) { Debug.LogError(msg); } 18 | 19 | 20 | private void Awake() 21 | { 22 | RegisterInstanceOnDestroy(this); 23 | } 24 | 25 | private void Start() 26 | { 27 | DontDestroyOnLoad(this); 28 | 29 | var settings = ZSettings.UARSettings; 30 | if (settings != null) 31 | { 32 | m_debugMode = settings.DebugMode; 33 | m_logLevel = settings.LogLevel; 34 | } 35 | else 36 | { 37 | Debug.LogError("ZapparUARSettings not found"); 38 | } 39 | Z.SetDebugMode(m_debugMode, m_logLevel); 40 | 41 | } 42 | 43 | private void OnEnable() 44 | { 45 | Z.SetLogFunc(OnDebugLog); 46 | Z.SetErrorFunc(OnDebugErr); 47 | } 48 | 49 | private void OnDisable() 50 | { 51 | Z.SetLogFunc(null); 52 | Z.SetErrorFunc(null); 53 | } 54 | #endif 55 | } 56 | } -------------------------------------------------------------------------------- /Runtime/Utilities/LogManager.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4d2be52e0b905cd40abe2e2a17fb45d8 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/Utilities/Singleton.cs: -------------------------------------------------------------------------------- 1 | namespace Zappar 2 | { 3 | public class Singleton where T : new() 4 | { 5 | private static T s_Instance; 6 | public static T Instance 7 | { 8 | get 9 | { 10 | if(s_Instance==null) 11 | { 12 | s_Instance = new T(); 13 | } 14 | return s_Instance; 15 | } 16 | } 17 | 18 | public static bool Initialized => s_Instance != null; 19 | } 20 | } -------------------------------------------------------------------------------- /Runtime/Utilities/Singleton.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 968151ec0912a2442a8e84ab43368305 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/Utilities/SingletonMono.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Zappar 4 | { 5 | public class SingletonMono : MonoBehaviour where T : MonoBehaviour 6 | { 7 | private static T s_Instance; 8 | public static T Instance 9 | { 10 | get 11 | { 12 | if(s_Instance==null) 13 | { 14 | s_Instance = FindObjectOfType(); 15 | if(s_Instance==null) 16 | { 17 | GameObject go = new GameObject("ZSingletonMono", typeof(T)); 18 | s_Instance = go.GetComponent(); 19 | } 20 | } 21 | return s_Instance; 22 | } 23 | } 24 | 25 | protected void RegisterInstanceOnDestroy(T instance) 26 | { 27 | if(s_Instance==null) 28 | { 29 | s_Instance = instance; 30 | }else if(s_Instance != this) 31 | { 32 | Destroy(instance); 33 | } 34 | } 35 | 36 | public static bool Initialized => s_Instance != null; 37 | } 38 | } -------------------------------------------------------------------------------- /Runtime/Utilities/SingletonMono.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 61ef9e8ae2025564a90e371c0724b8df 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/Utilities/TargetFileListPopupAttribute.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Zappar 4 | { 5 | [ExecuteInEditMode] 6 | public class TargetFileListPopupAttribute : PropertyAttribute 7 | { 8 | public TargetFileListPopupAttribute() 9 | { 10 | 11 | } 12 | } 13 | 14 | } -------------------------------------------------------------------------------- /Runtime/Utilities/TargetFileListPopupAttribute.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2d52a40404fbc46729bd43bfd15b321d 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/Utilities/ZapparUARSettings.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Zappar 4 | { 5 | public class ZapparUARSettings : ScriptableObject 6 | { 7 | public const string MySettingsPath = "User/ZapparUARSettings.asset"; 8 | public const string MySettingsPathInPackage = "Packages/com.zappar.uar/Resources/" + MySettingsPath; 9 | 10 | [SerializeField] 11 | private string m_packageVersion = "na"; 12 | public string PackageVersion 13 | { 14 | get { return m_packageVersion; } 15 | set { m_packageVersion = value; } 16 | } 17 | 18 | [SerializeField] 19 | private bool m_enableImageTargetPreview = false; 20 | public bool ImageTargetPreviewEnabled 21 | { 22 | get { return m_enableImageTargetPreview; } 23 | set { m_enableImageTargetPreview = value; } 24 | } 25 | 26 | [SerializeField] 27 | private bool m_excludeZPTFromBuild = false; 28 | public bool ExcludeZPTFromBuild 29 | { 30 | get { return m_excludeZPTFromBuild; } 31 | set { m_excludeZPTFromBuild = value; } 32 | } 33 | 34 | [SerializeField] 35 | private int m_concurrentFaceTrackerCount = 2; 36 | public int ConcurrentFaceTrackerCount 37 | { 38 | get { return m_concurrentFaceTrackerCount; } 39 | set { m_concurrentFaceTrackerCount = (value > 0 ? value : 2); } 40 | } 41 | 42 | [SerializeField] 43 | private bool m_permissionRequestUI = true; 44 | public bool PermissionRequestUI 45 | { 46 | get { return m_permissionRequestUI; } 47 | set { m_permissionRequestUI = value; } 48 | } 49 | 50 | [SerializeField] 51 | private bool m_enableRealtimeReflections = false; 52 | public bool EnableRealtimeReflections 53 | { 54 | get { return m_enableRealtimeReflections; } 55 | set { m_enableRealtimeReflections = value; } 56 | } 57 | 58 | [SerializeField] 59 | private Z.DebugMode m_debugMode = Z.DebugMode.UnityLog; 60 | public Z.DebugMode DebugMode 61 | { 62 | get { return m_debugMode; } 63 | set { m_debugMode = value; } 64 | } 65 | 66 | [SerializeField] 67 | private Z.LogLevel m_logLevel = Z.LogLevel.WARNING; 68 | public Z.LogLevel LogLevel 69 | { 70 | get { return m_logLevel; } 71 | set { m_logLevel = value; } 72 | } 73 | 74 | } 75 | } -------------------------------------------------------------------------------- /Runtime/Utilities/ZapparUARSettings.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 125ea67139dd3d74bac38e53a61e91fb 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: -150 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/Z.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 296d1409a262f4473a3d92ea718bb137 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/ZPermissions.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Zappar 4 | { 5 | public static class ZPermissions 6 | { 7 | public static bool PermissionGrantedAll { get; private set; } 8 | 9 | public static void CheckAllPermissions() 10 | { 11 | if (PermissionGrantedAll) return; 12 | PermissionGrantedAll = Z.PermissionGrantedAll(); 13 | } 14 | 15 | public static void RequestPermission() 16 | { 17 | if (ZSettings.UARSettings.PermissionRequestUI) 18 | Z.PermissionRequestUi(); 19 | else 20 | Z.PermissionRequestAll(); 21 | } 22 | } 23 | 24 | public static class ZSettings 25 | { 26 | private static ZapparUARSettings s_settings; 27 | 28 | public static ZapparUARSettings UARSettings 29 | { 30 | get 31 | { 32 | if (s_settings == null) 33 | s_settings = LoadUARSettings(); 34 | return s_settings; 35 | } 36 | } 37 | 38 | private static ZapparUARSettings LoadUARSettings() 39 | { 40 | string path = ZapparUARSettings.MySettingsPath; 41 | 42 | var settings = Resources.Load(path.Substring(0, path.IndexOf(".asset"))); 43 | 44 | if (settings == null) 45 | { 46 | Debug.LogError("No UAR settings found at: " + path); 47 | } 48 | else 49 | { 50 | #if !UNITY_EDITOR 51 | Debug.Log("UAR Unity SDK version:" + settings.PackageVersion); 52 | #endif 53 | } 54 | 55 | return settings; 56 | } 57 | } 58 | } -------------------------------------------------------------------------------- /Runtime/ZPermissions.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 60c4516791ebff44b82dc2a7104f32b6 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/Zappar.UAR.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Zappar.UAR", 3 | "references": [], 4 | "includePlatforms": [], 5 | "excludePlatforms": [], 6 | "allowUnsafeCode": false, 7 | "overrideReferences": false, 8 | "precompiledReferences": [], 9 | "autoReferenced": true, 10 | "defineConstraints": [], 11 | "versionDefines": [], 12 | "noEngineReferences": false 13 | } -------------------------------------------------------------------------------- /Runtime/Zappar.UAR.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 139c618766f367b4280b650efb618b72 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Runtime/ZapparBaseCamera.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 265fc6c7426236b4f94e2ab09def8728 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/ZapparBaseCameraBackground.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c426c6946421cac46ac264ace6334b32 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/ZapparCamera.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Zappar 4 | { 5 | /// Wrapper around a single Pipeline example 6 | [RequireComponent(typeof(Camera))] 7 | public class ZapparCamera : ZapparBaseCamera 8 | { 9 | 10 | public static ZapparCamera Instance { get; private set; } 11 | 12 | #region Editor_Params 13 | 14 | [Tooltip("Place anchor/target at origin for tracking")] 15 | public ZapparTrackingTarget AnchorOrigin; 16 | 17 | [Tooltip("Selection between Front/Rear camera at runtime. Not applicable for Editor mode")] 18 | public bool UseFrontFacingCamera; 19 | 20 | [Tooltip("Fix camera position at origin but apply rotation w.r.t device orientation. Leave " + nameof(AnchorOrigin) + " (above) as 'None' for this setting.")] 21 | public bool CameraAttitudeFromGyro; 22 | 23 | [Tooltip("Mirror the device camera stream")] 24 | public bool MirrorCamera = false; 25 | 26 | [CameraSourcesListPopup] 27 | [Tooltip("Select camera to use when in Play mode.")] 28 | public string EditorCamera; 29 | 30 | #endregion 31 | 32 | public override ZapparTrackingTarget TrackerAtOrigin { get => AnchorOrigin; set => AnchorOrigin = value; } 33 | public override Camera UnityCamera { get => m_unityCamera; } 34 | public override bool FrontFacingCamera { get => UseFrontFacingCamera; set => UseFrontFacingCamera = value; } 35 | public override bool UseGyroForCameraAttitude { get => CameraAttitudeFromGyro; set => CameraAttitudeFromGyro = value; } 36 | public override bool MirrorCameraFeed { get => MirrorCamera; set => MirrorCamera = value; } 37 | 38 | #if UNITY_EDITOR 39 | public override string EditorCameraId { get => EditorCamera; set => EditorCamera = value; } 40 | #endif 41 | 42 | private Camera m_unityCamera; 43 | 44 | #region Unity_Methods 45 | 46 | public override void Awake() 47 | { 48 | if (Instance == null) 49 | { 50 | Instance = this; 51 | } 52 | else 53 | { 54 | Debug.Log("Please ensure there's only one zappar camera active in scene!"); 55 | gameObject.SetActive(false); 56 | return; 57 | } 58 | 59 | base.Awake(); 60 | } 61 | 62 | public override void Start() 63 | { 64 | m_unityCamera = GetComponent(); 65 | base.Start(); 66 | } 67 | 68 | #endregion 69 | 70 | } 71 | } -------------------------------------------------------------------------------- /Runtime/ZapparCamera.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 37677d5322c344b439d86a6630bd7a6a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: -80 8 | icon: {fileID: 2800000, guid: e29fa016255c115409571c1af33e27ed, type: 3} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/ZapparCameraBackground.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Zappar 4 | { 5 | [RequireComponent(typeof(Camera))] 6 | public class ZapparCameraBackground : ZapparBaseCameraBackground 7 | { 8 | public override void Start() 9 | { 10 | if (ZapparCamera.Instance != null) 11 | ZapparCamera.Instance.RegisterCameraListener(this, true); 12 | 13 | if (ZapparCamera.Instance.CameraSourceInitialized && !m_hasInitialized) 14 | { 15 | OnMirroringUpdate(ZapparCamera.Instance.MirrorCamera); 16 | OnZapparCameraPaused(ZapparCamera.Instance.CameraSourcePaused); 17 | OnZapparInitialized(ZapparCamera.Instance.GetPipeline); 18 | } 19 | base.Start(); 20 | } 21 | 22 | } 23 | } -------------------------------------------------------------------------------- /Runtime/ZapparCameraBackground.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cf107aa5ece594fe1aa6c80028ab66ac 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {fileID: 2800000, guid: e29fa016255c115409571c1af33e27ed, type: 3} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/ZapparFaceDepthMask.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using UnityEngine; 3 | 4 | namespace Zappar 5 | { 6 | [RequireComponent(typeof(MeshFilter), typeof(MeshRenderer))] 7 | public class ZapparFaceDepthMask : ZapparFaceMesh 8 | { 9 | public Material FaceMaterial; 10 | public ZapparFaceTrackingAnchor FaceTrackingAnchor; 11 | 12 | private void Start() 13 | { 14 | InitFaceMeshOnStart(); 15 | } 16 | 17 | public override ZapparFaceTrackingAnchor GetFaceTrackingAnchor() 18 | { 19 | return (FaceTrackingAnchor == null) ? GetComponentInParent() : FaceTrackingAnchor; 20 | } 21 | 22 | public override void UpdateMaterial() 23 | { 24 | if (FaceMaterial != null) 25 | gameObject.GetComponent().sharedMaterial = FaceMaterial; 26 | } 27 | } 28 | } -------------------------------------------------------------------------------- /Runtime/ZapparFaceDepthMask.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 582e641d5244241d1b4dd1498c523505 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: -15 8 | icon: {fileID: 2800000, guid: e29fa016255c115409571c1af33e27ed, type: 3} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/ZapparFaceLandmark.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using UnityEngine; 3 | 4 | namespace Zappar 5 | { 6 | public class ZapparFaceLandmark : MonoBehaviour 7 | { 8 | public enum Face_Landmark_Name 9 | { 10 | LeftEye = 0, 11 | RightEye, 12 | LeftEar, 13 | RightEar, 14 | NoseBridge, 15 | NoseTip, 16 | NoseBase, 17 | LipTop, 18 | LipBottom, 19 | MouthCenter, 20 | Chin, 21 | LeftEyebrow, 22 | RightEyebrow 23 | }; 24 | 25 | [Tooltip("Face tracking anchor that this landmark should use. Also parent this object under the respective anchor for correct pose update.")] 26 | public ZapparFaceTrackingAnchor FaceTrackingAnchor; 27 | 28 | public Face_Landmark_Name LandmarkName; 29 | 30 | private Face_Landmark_Name m_currentLandmark; 31 | private bool m_isMirrored; 32 | private IntPtr? m_faceLandmarkPtr = null; 33 | 34 | private void Start() 35 | { 36 | if (FaceTrackingAnchor == null) 37 | { 38 | FaceTrackingAnchor = transform.GetComponentInParent(); 39 | if (FaceTrackingAnchor == null) 40 | { 41 | Debug.LogError("Missing face tracking anchor reference!"); 42 | gameObject.SetActive(false); 43 | return; 44 | } 45 | } 46 | 47 | FaceTrackingAnchor.RegisterPipelineInitCallback(OnFaceTrackingPipelineInitialised, true); 48 | 49 | if (FaceTrackingAnchor.FaceTrackingTarget.HasInitialized && m_faceLandmarkPtr == null) 50 | OnFaceTrackingPipelineInitialised(FaceTrackingAnchor.FaceTrackingTarget.FaceTrackerPipeline.Value, FaceTrackingAnchor.FaceTrackingTarget.IsMirrored); 51 | } 52 | 53 | private void Update() 54 | { 55 | if (m_faceLandmarkPtr == null || !FaceTrackingAnchor.FaceIsVisible) return; 56 | 57 | if (LandmarkName != m_currentLandmark) 58 | InitFaceLandmark(); 59 | 60 | Z.FaceLandmarkUpdate(m_faceLandmarkPtr.Value, FaceTrackingAnchor.Identity, FaceTrackingAnchor.Expression, m_isMirrored); 61 | 62 | var matrix = Z.ConvertToUnityPose(Z.FaceLandmarkAnchorPose(m_faceLandmarkPtr.Value)); 63 | transform.localPosition = Z.GetPosition(matrix); 64 | transform.localRotation = Z.GetRotation(matrix); 65 | } 66 | 67 | private void OnDestroy() 68 | { 69 | if (m_faceLandmarkPtr != null) 70 | Z.FaceLandmarkDestroy(m_faceLandmarkPtr.Value); 71 | m_faceLandmarkPtr = null; 72 | FaceTrackingAnchor.RegisterPipelineInitCallback(OnFaceTrackingPipelineInitialised, false); 73 | } 74 | 75 | public void OnFaceTrackingPipelineInitialised(IntPtr pipeline, bool mirrored) 76 | { 77 | if (FaceTrackingAnchor == null) 78 | { 79 | Debug.LogError("The face landmark will not work unless a Face Tracker is assigned."); 80 | return; 81 | } 82 | 83 | InitFaceLandmark(); 84 | m_isMirrored = mirrored; 85 | } 86 | 87 | private void InitFaceLandmark() 88 | { 89 | if (m_faceLandmarkPtr != null) 90 | { 91 | Z.FaceLandmarkDestroy(m_faceLandmarkPtr.Value); 92 | } 93 | m_faceLandmarkPtr = Z.FaceLandmarkCreate((uint)LandmarkName); 94 | m_currentLandmark = LandmarkName; 95 | } 96 | } 97 | } -------------------------------------------------------------------------------- /Runtime/ZapparFaceLandmark.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1a788ac161a144bac9b5b4db6abb4988 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {fileID: 2800000, guid: e29fa016255c115409571c1af33e27ed, type: 3} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/ZapparFaceMesh.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f5624f45560687f4787575045740adb1 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/ZapparFaceMeshTarget.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using UnityEngine; 3 | 4 | namespace Zappar 5 | { 6 | [RequireComponent(typeof(MeshFilter), typeof(MeshRenderer))] 7 | public class ZapparFaceMeshTarget : ZapparFaceMesh 8 | { 9 | [Tooltip("The face material this mesh should use.")] 10 | public Material FaceMaterial; 11 | [Tooltip("Face tracking anchor that this landmark should use. Also parent this object under the respective anchor for correct pose update.")] 12 | public ZapparFaceTrackingAnchor FaceTrackingAnchor; 13 | 14 | private void Start() 15 | { 16 | InitFaceMeshOnStart(); 17 | } 18 | 19 | public override ZapparFaceTrackingAnchor GetFaceTrackingAnchor() 20 | { 21 | return (FaceTrackingAnchor == null) ? GetComponentInParent() : FaceTrackingAnchor; 22 | } 23 | 24 | public override void UpdateMaterial() 25 | { 26 | if (FaceMaterial != null) 27 | gameObject.GetComponent().sharedMaterial = FaceMaterial; 28 | } 29 | } 30 | } -------------------------------------------------------------------------------- /Runtime/ZapparFaceMeshTarget.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6f81032ecc0be4721b2a2ffa0b0a813e 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: -10 8 | icon: {fileID: 2800000, guid: e29fa016255c115409571c1af33e27ed, type: 3} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/ZapparFaceTrackingAnchor.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using UnityEngine.Events; 5 | 6 | namespace Zappar 7 | { 8 | public class ZapparFaceTrackingAnchor : ZapparTrackingTarget 9 | { 10 | [HideInInspector, SerializeField] 11 | public ZapparMultiFaceTrackingTarget FaceTrackingTarget = null; 12 | 13 | public UnityEvent OnSeenEvent; 14 | public UnityEvent OnNotSeenEvent; 15 | 16 | public delegate void FaceTrackerInitialized(IntPtr faceTrackingPipeline, bool isMirrored); 17 | private readonly List m_initListeners = new List(); 18 | 19 | [HideInInspector] 20 | public int AnchorId = 0; 21 | 22 | public float[] Identity => m_identity; 23 | public float[] Expression => m_expression; 24 | 25 | public const int NumIdentityCoefficients = 50; 26 | public const int NumExpressionCoefficients = 29; 27 | 28 | private float[] m_identity = new float[NumIdentityCoefficients]; 29 | private float[] m_expression = new float[NumExpressionCoefficients]; 30 | 31 | [HideInInspector, SerializeField] 32 | private int m_faceNumber = 0; 33 | 34 | private bool m_isVisible = false; 35 | 36 | public int FaceTrackerIndex 37 | { 38 | get { return m_faceNumber; } 39 | set { m_faceNumber = (value < 0 ? 0 : value); } 40 | } 41 | 42 | public bool FaceIsVisible => m_isVisible; 43 | 44 | public void RegisterPipelineInitCallback(FaceTrackerInitialized method, bool add) 45 | { 46 | if (add && !m_initListeners.Contains(method)) 47 | { 48 | m_initListeners.Add(method); 49 | } 50 | else if (!add && m_initListeners.Contains(method)) 51 | { 52 | m_initListeners.Remove(method); 53 | } 54 | } 55 | 56 | public void InitFaceTracker() 57 | { 58 | InitCoeffs(); 59 | foreach(var listener in m_initListeners) 60 | { 61 | listener?.Invoke(FaceTrackingTarget.FaceTrackerPipeline.Value, FaceTrackingTarget.IsMirrored); 62 | } 63 | } 64 | 65 | private void InitCoeffs() 66 | { 67 | m_identity = (m_identity == null || m_identity.Length < NumIdentityCoefficients) ? new float[NumIdentityCoefficients] : m_identity; 68 | m_expression = (m_expression == null || m_expression.Length < NumExpressionCoefficients) ? new float[NumExpressionCoefficients] : m_expression; 69 | for (int i = 0; i < NumIdentityCoefficients; ++i) m_identity[i] = 0.0f; 70 | for (int i = 0; i < NumExpressionCoefficients; ++i) m_expression[i] = 0.0f; 71 | } 72 | 73 | public void UpdateAnchor(bool isTracked) 74 | { 75 | if(isTracked) 76 | { 77 | if (!m_isVisible) 78 | { 79 | m_isVisible = true; 80 | OnSeenEvent?.Invoke(); 81 | } 82 | Z.FaceTrackerAnchorUpdateIdentityCoefficients(FaceTrackingTarget.FaceTrackerPipeline.Value, AnchorId, ref m_identity); 83 | Z.FaceTrackerAnchorUpdateExpressionCoefficients(FaceTrackingTarget.FaceTrackerPipeline.Value, AnchorId, ref m_expression); 84 | UpdateAnchorPose(); 85 | } 86 | else 87 | { 88 | if (m_isVisible) 89 | { 90 | m_isVisible = false; 91 | OnNotSeenEvent?.Invoke(); 92 | } 93 | } 94 | } 95 | 96 | private void UpdateAnchorPose() 97 | { 98 | Matrix4x4 cameraPose = ZapparCamera.Instance.CameraPose; 99 | Matrix4x4 facePose = Z.FaceTrackerAnchorPose(FaceTrackingTarget.FaceTrackerPipeline.Value, AnchorId, cameraPose, FaceTrackingTarget.IsMirrored); 100 | Matrix4x4 targetPose = Z.ConvertToUnityPose(facePose); 101 | 102 | transform.localPosition = Z.GetPosition(targetPose); 103 | transform.localRotation = Z.GetRotation(targetPose); 104 | transform.localScale = Z.GetScale(targetPose); 105 | } 106 | 107 | public override Matrix4x4 AnchorPoseCameraRelative() 108 | { 109 | if (m_isVisible) 110 | return Z.FaceTrackerAnchorPoseCameraRelative(FaceTrackingTarget.FaceTrackerPipeline.Value, AnchorId, FaceTrackingTarget.IsMirrored); 111 | 112 | return Matrix4x4.identity; 113 | } 114 | 115 | } 116 | } -------------------------------------------------------------------------------- /Runtime/ZapparFaceTrackingAnchor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6aaa77c67994b1444b718f22e0757d49 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: -18 8 | icon: {fileID: 2800000, guid: e29fa016255c115409571c1af33e27ed, type: 3} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/ZapparFaceTrackingTarget.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 80cec4a253660466fae4c7b898cdaaa7 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {fileID: 2800000, guid: e29fa016255c115409571c1af33e27ed, type: 3} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/ZapparFullHeadModel.cs: -------------------------------------------------------------------------------- 1 | #if UNITY_EDITOR 2 | 3 | using System; 4 | using UnityEngine; 5 | 6 | namespace Zappar 7 | { 8 | [ExecuteInEditMode] 9 | [RequireComponent(typeof(MeshFilter), typeof(MeshRenderer))] 10 | public class ZapparFullHeadModel : MonoBehaviour 11 | { 12 | public Material HeadMaterial; 13 | 14 | private IntPtr? m_faceMesh = null; 15 | private const int NumIdentityCoefficients = 50; 16 | private const int NumExpressionCoefficients = 29; 17 | 18 | private void Start() 19 | { 20 | // We want to run in the editor but not in Play Mode. 21 | if (Application.isPlaying) 22 | { 23 | gameObject.SetActive(false); 24 | return; 25 | } 26 | 27 | if(m_faceMesh == null) 28 | { 29 | //Create new head model 30 | m_faceMesh = Z.FaceMeshCreate(); 31 | 32 | MeshFilter filter = gameObject.GetComponent(); 33 | filter.sharedMesh = new Mesh(); 34 | 35 | string filename = Z.FaceMeshFullHeadSimplifiedModelPath(); 36 | byte[] data = Z.LoadRawBytes(filename); 37 | 38 | float[] identity = new float[NumIdentityCoefficients]; 39 | float[] expression = new float[NumExpressionCoefficients]; 40 | for (int i = 0; i < NumIdentityCoefficients; ++i) identity[i] = 0.0f; 41 | for (int i = 0; i < NumExpressionCoefficients; ++i) expression[i] = 0.0f; 42 | 43 | Z.FaceMeshLoadFromMemory(m_faceMesh.Value, data, false, false, false, true); 44 | Z.FaceMeshUpdate(m_faceMesh.Value, identity, expression, true); 45 | 46 | filter.sharedMesh.vertices = Z.UpdateFaceMeshVerticesForUnity(Z.FaceMeshVertices(m_faceMesh.Value)); 47 | filter.sharedMesh.normals = Z.UpdateFaceMeshNormalsForUnity(Z.FaceMeshNormals(m_faceMesh.Value)); 48 | filter.sharedMesh.triangles = Z.UpdateFaceMeshTrianglesForUnity(Z.FaceMeshIndices(m_faceMesh.Value)); 49 | filter.sharedMesh.uv = Z.UpdateFaceMeshUVsForUnity(Z.FaceMeshUvs(m_faceMesh.Value)); 50 | filter.sharedMesh.name = "ZHeadModel"; 51 | } 52 | 53 | if (HeadMaterial != null) 54 | gameObject.GetComponent().sharedMaterial = HeadMaterial; 55 | } 56 | } 57 | } 58 | #endif // UNITY_EDITOR -------------------------------------------------------------------------------- /Runtime/ZapparFullHeadModel.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7d3deb3198921491185ad99484b1fea5 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {fileID: 2800000, guid: e29fa016255c115409571c1af33e27ed, type: 3} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/ZapparGyroCamera.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Zappar 4 | { 5 | /// 6 | /// Fix camera position at origin and apply rotation w.r.t devices' orientation 7 | /// 8 | [RequireComponent(typeof(Camera))] 9 | public class ZapparGyroCamera : ZapparBaseCamera 10 | { 11 | public static ZapparGyroCamera Instance { get; private set; } 12 | 13 | [SerializeField, HideInInspector] 14 | public bool UseCameraBackground = false; 15 | 16 | public override ZapparTrackingTarget TrackerAtOrigin { get => null; set => Debug.Log("Gyro camera doesn't track any target"); } 17 | public override Camera UnityCamera { get => m_unityCamera; } 18 | public override bool FrontFacingCamera { get => false; set => Debug.Log("Rear by default"); } 19 | public override bool UseGyroForCameraAttitude { get => true; set => Debug.Log("Always true"); } 20 | public override bool MirrorCameraFeed { get => false; set => Debug.Log("Always false"); } 21 | 22 | #if UNITY_EDITOR 23 | [HideInInspector] 24 | public string EditorCamera = ""; 25 | public override string EditorCameraId { get => EditorCamera; set => EditorCamera = value; } 26 | #endif 27 | private Camera m_unityCamera; 28 | private const float InitialDelay = 0.9f; //delay first pose update 29 | private bool m_disablePoseUpdate = false; 30 | 31 | public override void Awake() 32 | { 33 | if (Instance == null) 34 | { 35 | Instance = this; 36 | } 37 | else 38 | { 39 | Debug.Log("Please ensure there's only one zappar camera active in scene!"); 40 | gameObject.SetActive(false); 41 | return; 42 | } 43 | 44 | base.Awake(); 45 | 46 | transform.localPosition = Vector3.zero; 47 | #if UNITY_WEBGL && !UNITY_EDITOR 48 | m_disablePoseUpdate = true; 49 | Invoke(nameof(EnablePoseUpdate),InitialDelay); 50 | #endif 51 | } 52 | private void EnablePoseUpdate() 53 | { 54 | m_disablePoseUpdate = false; 55 | } 56 | 57 | public override void Start() 58 | { 59 | m_unityCamera = GetComponent(); 60 | base.Start(); 61 | } 62 | 63 | protected override void PipelineFrameUpdate(bool updateUnityCam = true, bool uploadCameraFrame = true) 64 | { 65 | base.PipelineFrameUpdate(UseCameraBackground, UseCameraBackground); 66 | } 67 | 68 | public override bool SwitchToFrontCameraMode(bool mirror = true) => false; 69 | public override bool SwitchToRearCameraMode(bool mirror = false) => false; 70 | 71 | protected override void UpdatePose() 72 | { 73 | CameraPose = Z.PipelineCameraPoseWithAttitude(GetPipeline, false); 74 | 75 | if (m_disablePoseUpdate) return; 76 | 77 | Matrix4x4 cameraPoseUnity = Z.ConvertToUnityPose(CameraPose); 78 | transform.localPosition = Z.GetPosition(cameraPoseUnity); 79 | transform.localRotation = Z.GetRotation(cameraPoseUnity); 80 | transform.localScale = Z.GetScale(cameraPoseUnity); 81 | } 82 | 83 | } 84 | } -------------------------------------------------------------------------------- /Runtime/ZapparGyroCamera.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b7ce42c4b6263c34aaf14cb3897d6b3f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: -50 8 | icon: {fileID: 2800000, guid: e29fa016255c115409571c1af33e27ed, type: 3} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/ZapparGyroCameraBackground.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Zappar 4 | { 5 | [RequireComponent(typeof(Camera))] 6 | public class ZapparGyroCameraBackground : ZapparBaseCameraBackground 7 | { 8 | public override void Start() 9 | { 10 | if (ZapparGyroCamera.Instance != null) 11 | ZapparGyroCamera.Instance.RegisterCameraListener(this, true); 12 | 13 | if (ZapparGyroCamera.Instance.CameraSourceInitialized && !m_hasInitialized) 14 | { 15 | OnZapparCameraPaused(ZapparGyroCamera.Instance.CameraSourcePaused); 16 | OnZapparInitialized(ZapparGyroCamera.Instance.GetPipeline); 17 | } 18 | base.Start(); 19 | } 20 | } 21 | } -------------------------------------------------------------------------------- /Runtime/ZapparGyroCameraBackground.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2678bfdbe702e3b469f5af6253a9e27a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {fileID: 2800000, guid: e29fa016255c115409571c1af33e27ed, type: 3} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/ZapparImageTrackingTarget.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using UnityEngine; 3 | using UnityEngine.Events; 4 | 5 | namespace Zappar 6 | { 7 | public class ZapparImageTrackingTarget : ZapparTrackingTarget, ICameraListener 8 | { 9 | public enum PlaneOrientation 10 | { 11 | Flat, 12 | Vertical 13 | } 14 | 15 | public IntPtr? ImageTrackerPtr { get; private set; } = null; 16 | 17 | private bool m_hasInitialized = false; 18 | private bool m_isMirrored = false; 19 | private bool m_isPaused = false; 20 | 21 | [SerializeField, HideInInspector] 22 | public string Target; 23 | 24 | [SerializeField, HideInInspector] 25 | public PlaneOrientation Orientation = PlaneOrientation.Flat; 26 | 27 | [HideInInspector] 28 | public GameObject PreviewImageObject = null; 29 | 30 | public UnityEvent OnSeenEvent; 31 | public UnityEvent OnNotSeenEvent; 32 | private bool m_isVisible = false; 33 | private const int TrackIndx = 0; 34 | 35 | private void Start() 36 | { 37 | if (ZapparCamera.Instance != null) 38 | ZapparCamera.Instance.RegisterCameraListener(this, true); 39 | 40 | if (ZapparCamera.Instance.CameraSourceInitialized && !m_hasInitialized) 41 | { 42 | OnMirroringUpdate(ZapparCamera.Instance.MirrorCamera); 43 | OnZapparCameraPaused(ZapparCamera.Instance.CameraSourcePaused); 44 | OnZapparInitialized(ZapparCamera.Instance.GetPipeline); 45 | } 46 | } 47 | 48 | public void OnZapparInitialized(IntPtr pipeline) 49 | { 50 | if (!gameObject.activeInHierarchy) 51 | { 52 | Debug.Log("Could not start LoadZPTTarget Coroutine as gameobject is inactive."); 53 | return; 54 | } 55 | m_hasInitialized = true; 56 | ImageTrackerPtr = Z.ImageTrackerCreate(pipeline); 57 | 58 | string filename = Target; 59 | StartCoroutine(Z.LoadZPTTarget(filename, TargetDataAvailableCallback)); 60 | } 61 | 62 | public void OnZapparCameraPaused(bool pause) { m_isPaused = pause; } 63 | 64 | public void OnMirroringUpdate(bool mirrored) 65 | { 66 | m_isMirrored = mirrored; 67 | } 68 | 69 | void UpdateTargetPose() 70 | { 71 | Matrix4x4 cameraPose = ZapparCamera.Instance.CameraPose; 72 | Matrix4x4 imagePose = Z.ImageTrackerAnchorPose(ImageTrackerPtr.Value, TrackIndx, cameraPose, m_isMirrored); 73 | Matrix4x4 targetPose = Z.ConvertToUnityPose(imagePose); 74 | transform.localPosition = Z.GetPosition(targetPose); 75 | 76 | // Offset rotations based on dropdown provided by inspector properties 77 | Quaternion rotation = Orientation == PlaneOrientation.Flat ? Z.GetRotation(targetPose) * Quaternion.Euler(Vector3.left * 90) : Z.GetRotation(targetPose); 78 | transform.localRotation = rotation; 79 | 80 | transform.localScale = Z.GetScale(targetPose); 81 | } 82 | 83 | private void Update() 84 | { 85 | if (!m_hasInitialized || ImageTrackerPtr == null || m_isPaused) 86 | { 87 | return; 88 | } 89 | 90 | if (Z.ImageTrackerAnchorCount(ImageTrackerPtr.Value) > TrackIndx) 91 | { 92 | if (!m_isVisible) 93 | { 94 | m_isVisible = true; 95 | OnSeenEvent?.Invoke(); 96 | } 97 | UpdateTargetPose(); 98 | } 99 | else 100 | { 101 | if (m_isVisible) 102 | { 103 | m_isVisible = false; 104 | OnNotSeenEvent?.Invoke(); 105 | } 106 | } 107 | } 108 | 109 | private void TargetDataAvailableCallback(byte[] data) 110 | { 111 | Z.ImageTrackerTargetLoadFromMemory(ImageTrackerPtr.Value, data); 112 | } 113 | 114 | private void OnDestroy() 115 | { 116 | if (m_hasInitialized) 117 | { 118 | if (ImageTrackerPtr != null) 119 | { 120 | Z.ImageTrackerDestroy(ImageTrackerPtr.Value); 121 | ImageTrackerPtr = null; 122 | } 123 | } 124 | if (ZapparCamera.Instance != null) 125 | ZapparCamera.Instance.RegisterCameraListener(this, false); 126 | } 127 | 128 | public override Matrix4x4 AnchorPoseCameraRelative() 129 | { 130 | if (Z.ImageTrackerAnchorCount(ImageTrackerPtr.Value) > TrackIndx) 131 | { 132 | return Z.ImageTrackerAnchorPoseCameraRelative(ImageTrackerPtr.Value, TrackIndx, m_isMirrored); 133 | } 134 | return Matrix4x4.identity; 135 | } 136 | 137 | } 138 | } -------------------------------------------------------------------------------- /Runtime/ZapparImageTrackingTarget.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 53a46277bb2e24858882d73be7e2e0a4 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {fileID: 2800000, guid: e29fa016255c115409571c1af33e27ed, type: 3} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/ZapparInstantTrackingTarget.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2a7c067e774884e3fb23c00a74bd6040 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {fileID: 2800000, guid: e29fa016255c115409571c1af33e27ed, type: 3} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/ZapparMultiFaceTrackingTarget.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections; 3 | using System.Collections.Generic; 4 | using UnityEngine; 5 | 6 | namespace Zappar 7 | { 8 | public class ZapparMultiFaceTrackingTarget : ZapparTrackingTarget, ICameraListener 9 | { 10 | public int NumberOfAnchors => FaceAnchors.Count; 11 | public bool HasInitialized { get; private set; } 12 | public bool IsMirrored { get; private set; } 13 | public bool IsPaused { get; private set; } 14 | 15 | private IntPtr? m_faceTrackingPipeline = null; 16 | 17 | [SerializeField] 18 | public List FaceAnchors = new List(); 19 | private List m_trackerIsTracked = new List(); 20 | 21 | public IntPtr? FaceTrackerPipeline 22 | { 23 | get { return m_faceTrackingPipeline; } 24 | private set 25 | { 26 | m_faceTrackingPipeline = value; 27 | } 28 | } 29 | 30 | public void OnZapparInitialized(IntPtr pipeline) 31 | { 32 | IntPtr faceTracker = Z.FaceTrackerCreate(pipeline); 33 | Z.FaceTrackerMaxFacesSet(faceTracker, NumberOfAnchors); 34 | 35 | #if UNITY_EDITOR 36 | byte[] faceTrackerData = Z.LoadRawBytes(Z.FaceTrackingModelPath()); 37 | Z.FaceTrackerModelLoadFromMemory(faceTracker, faceTrackerData); 38 | #else 39 | Z.FaceTrackerModelLoadDefault(faceTracker); 40 | #endif 41 | FaceTrackerPipeline = faceTracker; 42 | HasInitialized = true; 43 | 44 | foreach (var anchor in FaceAnchors) 45 | { 46 | anchor?.InitFaceTracker(); 47 | m_trackerIsTracked.Add(false); 48 | } 49 | } 50 | 51 | public void OnZapparCameraPaused(bool pause) { IsPaused = pause; } 52 | 53 | public void OnMirroringUpdate(bool mirrored) 54 | { 55 | IsMirrored = mirrored; 56 | } 57 | 58 | private void Start() 59 | { 60 | if (ZapparCamera.Instance != null) 61 | ZapparCamera.Instance.RegisterCameraListener(this, true); 62 | 63 | if (ZapparCamera.Instance.CameraSourceInitialized && !HasInitialized) 64 | { 65 | OnMirroringUpdate(ZapparCamera.Instance.MirrorCamera); 66 | OnZapparCameraPaused(ZapparCamera.Instance.CameraSourcePaused); 67 | OnZapparInitialized(ZapparCamera.Instance.GetPipeline); 68 | } 69 | 70 | StartCoroutine(UpdateEndOfFrame()); 71 | } 72 | 73 | private void Update() 74 | { 75 | if (!HasInitialized || FaceTrackerPipeline == null || IsPaused) 76 | return; 77 | 78 | int count = Z.FaceTrackerAnchorCount(FaceTrackerPipeline.Value); 79 | 80 | for (int i = 0; i < count; ++i) 81 | { 82 | if (Int32.TryParse(Z.FaceTrackerAnchorId(FaceTrackerPipeline.Value, i), out int id)) 83 | { 84 | var anchor = FaceAnchors.Find(ent => ent.FaceTrackerIndex == id); 85 | if (anchor != null) 86 | { 87 | anchor.AnchorId = i; 88 | m_trackerIsTracked[id] = true; 89 | } 90 | } 91 | } 92 | 93 | for (int i = 0; i < NumberOfAnchors; ++i) 94 | { 95 | FaceAnchors[i].UpdateAnchor(m_trackerIsTracked[i]); 96 | m_trackerIsTracked[i] = false; 97 | } 98 | } 99 | 100 | private IEnumerator UpdateEndOfFrame() 101 | { 102 | while (true) 103 | { 104 | yield return new WaitForEndOfFrame(); 105 | 106 | if (!HasInitialized) continue; 107 | 108 | Z.FaceMeshUpdateVertexBuffer(); 109 | } 110 | } 111 | 112 | private void OnDestroy() 113 | { 114 | if(HasInitialized) 115 | { 116 | if (FaceTrackerPipeline != null) 117 | { 118 | Z.FaceTrackerDestroy(FaceTrackerPipeline.Value); 119 | FaceTrackerPipeline = null; 120 | } 121 | HasInitialized = false; 122 | } 123 | 124 | StopCoroutine(UpdateEndOfFrame()); 125 | } 126 | 127 | public void RegisterAnchor(ZapparFaceTrackingAnchor anchor, bool add) 128 | { 129 | if (add && !FaceAnchors.Contains(anchor)) 130 | { 131 | FaceAnchors.Add(anchor); 132 | } 133 | else if(!add && FaceAnchors.Contains(anchor)) 134 | { 135 | FaceAnchors.Remove(anchor); 136 | } 137 | } 138 | 139 | public override Matrix4x4 AnchorPoseCameraRelative() 140 | { 141 | if (FaceAnchors.Count > 0) 142 | return FaceAnchors[0].AnchorPoseCameraRelative(); 143 | 144 | return Matrix4x4.identity; 145 | } 146 | 147 | } 148 | } -------------------------------------------------------------------------------- /Runtime/ZapparMultiFaceTrackingTarget.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d439f73ae18deb147a07db96fda83b77 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: -25 8 | icon: {fileID: 2800000, guid: e29fa016255c115409571c1af33e27ed, type: 3} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/ZapparReflectionProbe.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fafdbbbaf3d33a54a911fe3eb0ad4e01 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {fileID: 2800000, guid: e29fa016255c115409571c1af33e27ed, type: 3} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Runtime/ZapparTrackingTarget.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace Zappar 4 | { 5 | public abstract class ZapparTrackingTarget : MonoBehaviour 6 | { 7 | 8 | // All tracking targets must implement this in order 9 | // to drive the camera pose. 10 | public abstract Matrix4x4 AnchorPoseCameraRelative(); 11 | } 12 | } -------------------------------------------------------------------------------- /Runtime/ZapparTrackingTarget.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2bb29641dc2944c0d9c597556a0ffce9 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /SamplesSRP~/Examples.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 82f5edb6bcb1acb4e8420b3ae84fe640 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /SamplesSRP~/Examples/FaceLandmark.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0f85f55409956594599e8f8c5e3cd939 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /SamplesSRP~/Examples/FaceMesh.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ac135d1d453c4054abdaad6429d62d75 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /SamplesSRP~/Examples/FaceMeshSettings.lighting: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!850595691 &4890085278179872738 4 | LightingSettings: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_Name: FaceMeshSettings 10 | serializedVersion: 3 11 | m_GIWorkflowMode: 1 12 | m_EnableBakedLightmaps: 1 13 | m_EnableRealtimeLightmaps: 0 14 | m_RealtimeEnvironmentLighting: 1 15 | m_BounceScale: 1 16 | m_AlbedoBoost: 1 17 | m_IndirectOutputScale: 1 18 | m_UsingShadowmask: 0 19 | m_BakeBackend: 1 20 | m_LightmapMaxSize: 256 21 | m_BakeResolution: 40 22 | m_Padding: 2 23 | m_TextureCompression: 1 24 | m_AO: 0 25 | m_AOMaxDistance: 1 26 | m_CompAOExponent: 1 27 | m_CompAOExponentDirect: 0 28 | m_ExtractAO: 0 29 | m_MixedBakeMode: 1 30 | m_LightmapsBakeMode: 1 31 | m_FilterMode: 1 32 | m_LightmapParameters: {fileID: 15204, guid: 0000000000000000f000000000000000, type: 0} 33 | m_ExportTrainingData: 0 34 | m_TrainingDataDestination: TrainingData 35 | m_RealtimeResolution: 2 36 | m_ForceWhiteAlbedo: 0 37 | m_ForceUpdates: 0 38 | m_FinalGather: 0 39 | m_FinalGatherRayCount: 256 40 | m_FinalGatherFiltering: 1 41 | m_PVRCulling: 1 42 | m_PVRSampling: 1 43 | m_PVRDirectSampleCount: 32 44 | m_PVRSampleCount: 512 45 | m_PVREnvironmentSampleCount: 256 46 | m_PVREnvironmentReferencePointCount: 2048 47 | m_LightProbeSampleCountMultiplier: 4 48 | m_PVRBounces: 2 49 | m_PVRMinBounces: 2 50 | m_PVREnvironmentMIS: 1 51 | m_PVRFilteringMode: 1 52 | m_PVRDenoiserTypeDirect: 1 53 | m_PVRDenoiserTypeIndirect: 1 54 | m_PVRDenoiserTypeAO: 1 55 | m_PVRFilterTypeDirect: 0 56 | m_PVRFilterTypeIndirect: 0 57 | m_PVRFilterTypeAO: 0 58 | m_PVRFilteringGaussRadiusDirect: 1 59 | m_PVRFilteringGaussRadiusIndirect: 5 60 | m_PVRFilteringGaussRadiusAO: 2 61 | m_PVRFilteringAtrousPositionSigmaDirect: 0.5 62 | m_PVRFilteringAtrousPositionSigmaIndirect: 2 63 | m_PVRFilteringAtrousPositionSigmaAO: 1 64 | -------------------------------------------------------------------------------- /SamplesSRP~/Examples/FaceMeshSettings.lighting.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 28505afdeaa0edb4aaf82e923c3f1b50 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 4890085278179872738 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /SamplesSRP~/Examples/FaceTracker.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9d8a42d61632d0346ab67ee742de47d9 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /SamplesSRP~/Examples/ImageTracker.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3d9e6f1d982945844901fc4dc8a76c02 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /SamplesSRP~/Examples/InstantTracker.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 28b11bf9491a1b743b22dfb5ced41819 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /SamplesSRP~/Examples/MultiFaceTracker.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 11c990bb92d8ca44397634a4c760fa17 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /SamplesSRP~/Examples/MultiImageTracker.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 16d6ae2a25cfea543ba0fde39489369b 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /SamplesSRP~/Examples/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3f691bce984f1264bba141a9632ee29d 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /SamplesSRP~/Examples/Scripts/RandomColor.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | namespace Zappar.Examples 6 | { 7 | public class RandomColor : MonoBehaviour 8 | { 9 | private Material m_Mat; 10 | 11 | void OnEnable() 12 | { 13 | m_Mat = transform.GetComponent()?.material; 14 | } 15 | 16 | public void OnMouseDown() 17 | { 18 | if(m_Mat!=null) 19 | { 20 | m_Mat.color = new Color(Random.Range(0f, 1f), Random.Range(0f, 1f), Random.Range(0f, 1f)); 21 | } 22 | } 23 | } 24 | } -------------------------------------------------------------------------------- /SamplesSRP~/Examples/Scripts/RandomColor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2fcdf72feeaba1444a1f0d4871ca7f53 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /SamplesSRP~/Examples/Zappar.UAR.asmref: -------------------------------------------------------------------------------- 1 | { 2 | "reference": "GUID:139c618766f367b4280b650efb618b72" 3 | } -------------------------------------------------------------------------------- /SamplesSRP~/Examples/Zappar.UAR.asmref.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4973b59d881cd0b4fa3d638c765fc18b 3 | AssemblyDefinitionReferenceImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Samples~/Examples.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0d0d94809e86a7646816fcac08a25b10 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Samples~/Examples/FaceLandmark.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 327767f1acd932a4cb5a76eb9cc493e2 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Samples~/Examples/FaceMesh.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 90c93dece33d1984899fc66d14d6edc8 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Samples~/Examples/FaceTracker.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b1385c120b7dc67468ed55e634612a56 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Samples~/Examples/ImageTracker.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f30d047eeed11304ebbed1d9ca0edf80 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Samples~/Examples/InstantTracker.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9362b7cea9fa2994994090d72bb20163 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Samples~/Examples/MultiFaceTracker.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0e83710c017de3744883a119c5def942 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Samples~/Examples/MultiImageTracker.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d38890af6d765a6498711be1b5d731c7 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Samples~/Examples/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 765bbfbe9d4fa8641bb24b36336e2a3e 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Samples~/Examples/Scripts/RandomColor.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | namespace Zappar.Examples 6 | { 7 | public class RandomColor : MonoBehaviour 8 | { 9 | private Material m_Mat; 10 | 11 | void OnEnable() 12 | { 13 | m_Mat = transform.GetComponent()?.material; 14 | } 15 | 16 | public void OnMouseDown() 17 | { 18 | if(m_Mat!=null) 19 | { 20 | m_Mat.color = new Color(Random.Range(0f, 1f), Random.Range(0f, 1f), Random.Range(0f, 1f)); 21 | } 22 | } 23 | } 24 | } -------------------------------------------------------------------------------- /Samples~/Examples/Scripts/RandomColor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 55af8d343a1e50c4ca7c9bbc192febe5 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Samples~/Examples/Zappar.UAR.asmref: -------------------------------------------------------------------------------- 1 | { 2 | "reference": "GUID:139c618766f367b4280b650efb618b72" 3 | } -------------------------------------------------------------------------------- /Samples~/Examples/Zappar.UAR.asmref.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 19846ace3922d924799df1cc37ddeb2c 3 | AssemblyDefinitionReferenceImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /Temp~/awe22_uar.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Temp~/awe22_uar.jpg -------------------------------------------------------------------------------- /Temp~/camera.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Temp~/camera.jpg -------------------------------------------------------------------------------- /Temp~/conical.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Temp~/conical.png -------------------------------------------------------------------------------- /Temp~/editor_menu.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Temp~/editor_menu.jpg -------------------------------------------------------------------------------- /Temp~/face_landmark.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Temp~/face_landmark.jpg -------------------------------------------------------------------------------- /Temp~/face_mesh.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Temp~/face_mesh.jpg -------------------------------------------------------------------------------- /Temp~/face_track.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Temp~/face_track.jpg -------------------------------------------------------------------------------- /Temp~/img_track.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Temp~/img_track.jpg -------------------------------------------------------------------------------- /Temp~/img_train.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Temp~/img_train.jpg -------------------------------------------------------------------------------- /Temp~/instant_track.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Temp~/instant_track.jpg -------------------------------------------------------------------------------- /Temp~/package_win.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Temp~/package_win.jpg -------------------------------------------------------------------------------- /Temp~/real_ref.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Temp~/real_ref.jpg -------------------------------------------------------------------------------- /Temp~/reflect.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Temp~/reflect.jpg -------------------------------------------------------------------------------- /Temp~/uar_settings.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Temp~/uar_settings.jpg -------------------------------------------------------------------------------- /Temp~/unity_srp.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/Temp~/unity_srp.jpg -------------------------------------------------------------------------------- /WebGLTemplates.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 92ab67cce68ab4a4787a2758e6d27e7f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /WebGLTemplates/Zappar.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ec3d3a49ecb2a40c9a093ff69a4eec87 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /WebGLTemplates/Zappar/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/WebGLTemplates/Zappar/favicon.ico -------------------------------------------------------------------------------- /WebGLTemplates/Zappar/favicon.ico.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: daca5a2a6c6df46549796a7b31a4c511 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /WebGLTemplates/Zappar/index.html.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1398dda69b8764289bb11fc150937862 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /WebGLTemplates/Zappar2019.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 99e2bebf693d34276a7b4386418ab796 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /WebGLTemplates/Zappar2019/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/WebGLTemplates/Zappar2019/favicon.ico -------------------------------------------------------------------------------- /WebGLTemplates/Zappar2019/favicon.ico.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c0042239da19745cc8a08768edbf82ff 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /WebGLTemplates/Zappar2019/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | %UNITY_WEB_NAME% 11 | 76 | 77 | 78 | 79 | 80 | 81 |
82 |
83 |
84 |
85 |
86 |
87 | 88 | 89 | 125 | 126 | 127 | -------------------------------------------------------------------------------- /WebGLTemplates/Zappar2019/index.html.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 56aeedb46fafb451c97351f6a9356cc6 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /ZapparResources~/generated_1.zpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/ZapparResources~/generated_1.zpt -------------------------------------------------------------------------------- /ZapparResources~/rocks.zpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zappar-xr/universal-ar-unity/1c682ec0d12a9616930a6a26deb583bb85ab166e/ZapparResources~/rocks.zpt -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "com.zappar.uar", 3 | "version": "3.2.10", 4 | "displayName": "Universal AR", 5 | "description": "Zappar's best in class Universal AR SDK for face tracking, image tracking, and instant world tracking, targeted for Web and mobile platforms.", 6 | "documentationUrl" : "https://docs.zap.works/universal-ar/unity/", 7 | "unity": "2019.1", 8 | "unityRelease": "3f1", 9 | "dependencies": { 10 | "com.unity.editorcoroutines": "1.0.0" 11 | }, 12 | "samples": [ 13 | { 14 | "displayName": "Examples", 15 | "description": "Tracking sample scenes", 16 | "path": "Samples~/Examples" 17 | }, 18 | { 19 | "displayName": "Examples (Scriptable Pipeline)", 20 | "description": "Tracking sample scenes", 21 | "path": "SamplesSRP~/Examples" 22 | } 23 | ], 24 | "keywords": [ 25 | "UniversalAR", 26 | "Zappar", 27 | "ZCV" 28 | ], 29 | "author": { 30 | "name": "Zappar", 31 | "email": "shubham@zappar.com" 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /package.json.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f0672ae7c09cdae48b0f974fbf58c46c 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | --------------------------------------------------------------------------------