Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
210 changes: 209 additions & 1 deletion Assets/Scenes/Main.unity
Original file line number Diff line number Diff line change
Expand Up @@ -785,6 +785,81 @@ Transform:
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &238760728
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 238760729}
- component: {fileID: 238760730}
m_Layer: 0
m_Name: JesusCamera
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &238760729
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 238760728}
serializedVersion: 2
m_LocalRotation: {x: 0, y: -0.9974045, z: 0.07200225, w: 0}
m_LocalPosition: {x: 0, y: 1.32, z: 7}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 1946048952}
m_LocalEulerAnglesHint: {x: 8.258, y: -180, z: 0}
--- !u!114 &238760730
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 238760728}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f9dfa5b682dcd46bda6128250e975f58, type: 3}
m_Name:
m_EditorClassIdentifier:
Priority:
Enabled: 0
m_Value: 0
OutputChannel: 1
StandbyUpdate: 0
m_StreamingVersion: 20241001
m_LegacyPriority: 0
Target:
TrackingTarget: {fileID: 0}
LookAtTarget: {fileID: 0}
CustomLookAtTarget: 0
Lens:
FieldOfView: 20
OrthographicSize: 10
NearClipPlane: 0.1
FarClipPlane: 5000
Dutch: 0
ModeOverride: 0
PhysicalProperties:
GateFit: 2
SensorSize: {x: 21.946, y: 16.002}
LensShift: {x: 0, y: 0}
FocusDistance: 10
Iso: 200
ShutterSpeed: 0.005
Aperture: 16
BladeCount: 5
Curvature: {x: 2, y: 11}
BarrelClipping: 0.25
Anamorphism: 0
BlendHint: 0
--- !u!1 &410087039
GameObject:
m_ObjectHideFlags: 0
Expand Down Expand Up @@ -1473,7 +1548,7 @@ MonoBehaviour:
facialFeaturesMat: {fileID: 2100000, guid: 640484c930a9c425791b434dd2094bff, type: 2}
configuratorController: {fileID: 3845507387249961957}
previewController: {fileID: 1667190199235124708}
debugUrl: ?mode=configurator&username=miha
debugUrl: ?mode=jesus&profile=0x04E77bA608Cc78aD8aEFfBc60a2Ea47ABdaEA7BA
--- !u!4 &983774208
Transform:
m_ObjectHideFlags: 0
Expand All @@ -1489,6 +1564,130 @@ Transform:
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1243316494
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1243316495}
- component: {fileID: 1243316497}
- component: {fileID: 1243316496}
m_Layer: 0
m_Name: JesusVFX
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 0
--- !u!4 &1243316495
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1243316494}
serializedVersion: 2
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: -0.02}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 1
m_Children: []
m_Father: {fileID: 7613730345039360970}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!73398921 &1243316496
VFXRenderer:
serializedVersion: 1
m_ObjectHideFlags: 2
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1243316494}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 0
m_LightProbeUsage: 0
m_ReflectionProbeUsage: 0
m_RayTracingMode: 0
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_ForceMeshLod: -1
m_MeshLodSelectionBias: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_GlobalIlluminationMeshLod: 0
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_MaskInteraction: 0
--- !u!2083052967 &1243316497
VisualEffect:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1243316494}
m_Enabled: 1
m_Asset: {fileID: 8926484042661614526, guid: 369c77ad093b4f3499e2d9e57cca2bad, type: 3}
m_InitialEventName:
m_InitialEventNameOverriden: 1
m_StartSeed: 0
m_ResetSeedOnPlay: 1
m_AllowInstancing: 1
m_ResourceVersion: 1
m_PropertySheet:
m_Float:
m_Array: []
m_Vector2f:
m_Array: []
m_Vector3f:
m_Array: []
m_Vector4f:
m_Array:
- m_Value: {x: 1.3567125, y: 42.544434, z: 95.87453, w: 0}
m_Name: Particles Color
m_Overridden: 0
m_Uint:
m_Array: []
m_Int:
m_Array: []
m_Matrix4x4f:
m_Array: []
m_AnimationCurve:
m_Array: []
m_Gradient:
m_Array: []
m_NamedObject:
m_Array:
- m_Value: {fileID: 1620652238}
m_Name: Skinned Mesh Renderer
m_Overridden: 1
m_Bool:
m_Array: []
--- !u!1 &1248428039
GameObject:
m_ObjectHideFlags: 0
Expand Down Expand Up @@ -1783,6 +1982,11 @@ Transform:
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!137 &1620652238 stripped
SkinnedMeshRenderer:
m_CorrespondingSourceObject: {fileID: -440673046031751957, guid: 5b63cb074d2b1474882caf59b30c3739, type: 3}
m_PrefabInstance: {fileID: 979165174}
m_PrefabAsset: {fileID: 0}
--- !u!137 &1715398135 stripped
SkinnedMeshRenderer:
m_CorrespondingSourceObject: {fileID: -440673046031751957, guid: 5b63cb074d2b1474882caf59b30c3739, type: 3}
Expand Down Expand Up @@ -1927,6 +2131,7 @@ Transform:
- {fileID: 543892822}
- {fileID: 1248428040}
- {fileID: 2096491903}
- {fileID: 238760729}
- {fileID: 2125300648}
m_Father: {fileID: 7613730345039360970}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
Expand Down Expand Up @@ -2350,6 +2555,7 @@ MonoBehaviour:
marketplaceWearableCamera: {fileID: 1248428041}
marketplaceAvatarCamera: {fileID: 543892823}
builderCamera: {fileID: 2125300649}
jesusCamera: {fileID: 238760730}
--- !u!1 &1411485568905184141
GameObject:
m_ObjectHideFlags: 0
Expand Down Expand Up @@ -2437,6 +2643,7 @@ MonoBehaviour:
wearableLoader: {fileID: 5537778323977382523}
wearableOffset: {x: -5, y: 0, z: 0}
emoteAnimationController: {fileID: 1373223117}
confirmationVFX: {fileID: 1243316497}
animationReference: {fileID: 5311886945900016938}
platform: {fileID: 1330754706}
wearablePadding: 0.15
Expand Down Expand Up @@ -4106,6 +4313,7 @@ Transform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 1243316495}
- {fileID: 7959537047933389600}
- {fileID: 2126498203402035751}
- {fileID: 6180915621169407461}
Expand Down
4 changes: 3 additions & 1 deletion Assets/Scripts/AangConfiguration.cs
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ public void SetMode(string value)
Mode = value switch
{
"profile" => PreviewMode.Profile,
"jesus" => PreviewMode.Jesus,
"authentication" => PreviewMode.Authentication,
"builder" => PreviewMode.Builder,
"configurator" => PreviewMode.Configurator,
Expand Down Expand Up @@ -365,5 +366,6 @@ public enum PreviewMode
Authentication,
Profile,
Builder,
Configurator
Configurator,
Jesus,
}
7 changes: 4 additions & 3 deletions Assets/Scripts/Configurator/ConfiguratorController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -260,9 +260,10 @@ private async Awaitable InitialLoad()
await ReloadPreview();

// Preload VFX hack
confirmationVFX.Play();
await Awaitable.NextFrameAsync();
confirmationVFX.Stop();
// TODO: Uncomment this if we put back the Jump In screen
// confirmationVFX.Play();
// await Awaitable.NextFrameAsync();
// confirmationVFX.Stop();

JSBridge.NativeCalls.OnLoadComplete();

Expand Down
4 changes: 4 additions & 0 deletions Assets/Scripts/Preview/PreviewCameraController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ public class PreviewCameraController : MonoBehaviour
[SerializeField] private CinemachineCamera marketplaceWearableCamera;
[SerializeField] private CinemachineCamera marketplaceAvatarCamera;
[SerializeField] private CinemachineCamera builderCamera;
[SerializeField] private CinemachineCamera jesusCamera;

private float _targetFOV;
private float _initialFOV;
Expand All @@ -41,6 +42,9 @@ public void SetMode(PreviewMode mode)
case PreviewMode.Profile:
authProfileCamera.Prioritize();
break;
case PreviewMode.Jesus:
jesusCamera.Prioritize();
break;
case PreviewMode.Builder:
builderCamera.Prioritize();
break;
Expand Down
12 changes: 10 additions & 2 deletions Assets/Scripts/Preview/PreviewController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
using Services;
using UnityEngine;
using UnityEngine.Assertions;
using UnityEngine.VFX;
using Utils;

namespace Preview
Expand All @@ -24,6 +25,7 @@ public class PreviewController : MonoBehaviour
[SerializeField] private Vector3 wearableOffset = new(-5, 0, 0);

[SerializeField] private EmoteAnimationController emoteAnimationController;
[SerializeField] private VisualEffect confirmationVFX;

[SerializeField] private GameObject animationReference;
[SerializeField] private GameObject platform;
Expand Down Expand Up @@ -121,6 +123,7 @@ private async Awaitable Reload()
mainCamera.orthographic = config.Projection == "orthographic";
previewUIPresenter.EnableLoader(!config.DisableLoader);
previewCameraController.SetMode(config.Mode);
confirmationVFX.gameObject.SetActive(config.Mode is PreviewMode.Jesus);

var hasEmoteOverride = false;
var hasWearableOverride = false;
Expand Down Expand Up @@ -165,6 +168,11 @@ private async Awaitable Reload()
showingAvatar = true;
await LoadForProfile(config.Profile, config.Emote);
break;
case PreviewMode.Jesus:
showingAvatar = true;
confirmationVFX.Play();
await LoadForProfile(config.Profile, "character/Particles_Anim", true);
break;
// case PreviewMode.Builder:
// await LoadForBuilder(config.BodyShape, config.EyeColor, config.HairColor, config.SkinColor,
// await GetUrns(config), config.Emote, config.Base64);
Expand Down Expand Up @@ -276,15 +284,15 @@ await avatarLoader.LoadAvatar(avatarBodyShape, wearables, emoteDefinition,
return (overrideDefinition.Type == EntityType.Emote, emoteAnimationController.HasAudio, hasValidRepresentation, avatarBodyShape);
}

private async Awaitable LoadForProfile(string profileID, string defaultEmote)
private async Awaitable LoadForProfile(string profileID, string defaultEmote, bool loop = false)
{
Assert.IsNotNull(profileID);

var avatar = await APIService.GetAvatar(profileID);
var entities = await EntityService.GetEntities(avatar.wearables);

await avatarLoader.LoadAvatar(avatar.GetBodyShape(), entities,
EntityDefinition.FromEmbeddedEmote(defaultEmote, false), avatar.forceRender, avatar.GetAvatarColors());
EntityDefinition.FromEmbeddedEmote(defaultEmote, loop), avatar.forceRender, avatar.GetAvatarColors());
}

private async Awaitable<List<string>> LoadUrns(AangConfiguration config)
Expand Down
Loading