--- VRTK/Assets/00.MAINSTREAM/Scripts/Manager/PlayInstructorManager.cs
+++ VRTK/Assets/00.MAINSTREAM/Scripts/Manager/PlayInstructorManager.cs
... | ... | @@ -26,8 +26,8 @@ |
26 | 26 |
get { return isOut; } |
27 | 27 |
} |
28 | 28 |
|
29 |
- [SerializeField] private Vector3 clickPos; |
|
30 |
- [SerializeField] private float scrollRectPosX = 0f; |
|
29 |
+ [SerializeField] private Vector3 clickPos; // 클릭 위치 포인터 |
|
30 |
+ [SerializeField] private float scrollRectPosX = 0f; // 강사 위치 틀 처음 위치 |
|
31 | 31 |
|
32 | 32 |
|
33 | 33 |
|
--- VRTK/Assets/00.MAINSTREAM/Scripts/Manager/PlayVRUIManager.cs
+++ VRTK/Assets/00.MAINSTREAM/Scripts/Manager/PlayVRUIManager.cs
... | ... | @@ -8,6 +8,10 @@ |
8 | 8 |
using System; |
9 | 9 |
using System.Collections; |
10 | 10 |
using System.Collections.Generic; |
11 |
+using System.Drawing.Text; |
|
12 |
+using System.IO; |
|
13 |
+using Unity.VisualScripting; |
|
14 |
+using UnityEditor.Localization.Plugins.XLIFF.V20; |
|
11 | 15 |
using UnityEngine; |
12 | 16 |
using UnityEngine.InputSystem; |
13 | 17 |
|
... | ... | @@ -34,7 +38,7 @@ |
34 | 38 |
[SerializeField] private UIMainView nowUIMainView; |
35 | 39 |
[SerializeField] private InputActionProperty backMenuButton; |
36 | 40 |
|
37 |
- |
|
41 |
+ private bool isDown = false; |
|
38 | 42 |
[SerializeField] private int nowSelectId; // 선택된 id |
39 | 43 |
public int NowSelectId{ |
40 | 44 |
get{ return nowSelectId; } |
... | ... | @@ -65,6 +69,7 @@ |
65 | 69 |
|
66 | 70 |
private List<GameObject> createInstructorObjs; // 만들어진 코치 오브젝트를 전부 보관하는 리스트 |
67 | 71 |
|
72 |
+ private List<AnimationClip> tkAnimClips; |
|
68 | 73 |
|
69 | 74 |
#region 00.Content |
70 | 75 |
[Header("00.Content")] |
... | ... | @@ -182,6 +187,7 @@ |
182 | 187 |
nowContent = Contents.None; // 아무것도 선택되지 않은 상태 |
183 | 188 |
popUp = transform.Find("Popup").gameObject; |
184 | 189 |
instructorObjs = new List<GameObject>(); |
190 |
+ tkAnimClips = new List<AnimationClip>(); |
|
185 | 191 |
UserDataRepo.Instance.VRUIManager = this; |
186 | 192 |
} |
187 | 193 |
|
... | ... | @@ -218,13 +224,20 @@ |
218 | 224 |
UserDataRepo.Instance.VRAnimController.ChangeAnimState(selectMode); |
219 | 225 |
UserDataRepo.Instance.VRAnimController.IsEffect = false; |
220 | 226 |
|
221 |
- //StartCoroutine(GetVRAssetBundle(NowSelectBundleName, NowSelectAnim)); |
|
227 |
+ StartCoroutine(GetVRAssetInstructor(NowSelectBundleName)); |
|
222 | 228 |
} // SetTkPlay |
223 | 229 |
|
224 |
- // bundleName은 모델명 이름이다 |
|
225 |
- IEnumerator GetVRAssetBundle(string bundleName, string clipName) |
|
230 |
+ |
|
231 |
+ /// <summary> |
|
232 |
+ /// 강사 에셋번들을 가져오는 코루틴 |
|
233 |
+ /// </summary> |
|
234 |
+ /// <param name="bundleName"></param> |
|
235 |
+ /// <returns></returns> |
|
236 |
+ IEnumerator GetVRAssetInstructor(string bundleName) |
|
226 | 237 |
{ |
227 | 238 |
yield return null; |
239 |
+ DebugTxtCall.Instance.CallDebug("GetVRAssetInstructor IN"); |
|
240 |
+ |
|
228 | 241 |
if(0 < instructorObjs.Count) { |
229 | 242 |
foreach(var obj in instructorObjs) { |
230 | 243 |
obj.SetActive(false); |
... | ... | @@ -234,122 +247,89 @@ |
234 | 247 |
instructorObjs.Clear(); |
235 | 248 |
} |
236 | 249 |
|
237 |
- |
|
238 |
- AnimationClip tempClip_ = null; |
|
250 |
+ |
|
251 |
+ string tempBundleName_ = MakeBundleName(bundleName, false); |
|
239 | 252 |
|
240 | 253 |
|
241 |
- string tempBundleName_ = string.Empty; |
|
242 |
- // { 현재 컨텐츠를 확인하고 관련 에셋번들 리스트 위치 번호를 가져오는 과정 |
|
243 |
- int tempContentNum_ = -1; |
|
254 |
+ // 먼저 로컬에 강사 파일이 있는지 확인 후 없으면 다운 |
|
255 |
+ if(File.Exists(MMDefine.FULL_FILE_PATH + tempBundleName_)){ |
|
256 |
+ // 로드 된게 있는지 확인 |
|
257 |
+ if(AssetBundleRepo.Instance.GetAssetBundleList(NowContentInt()).Find(x => x.name == tempBundleName_)){ |
|
258 |
+ StartCoroutine(GetVRAnim(NowSelectBundleName)); |
|
259 |
+ } |
|
260 |
+ else{ |
|
261 |
+ //yield return StartCoroutine(MMHelper.AsyncLoader(tempBundleName_)); |
|
244 | 262 |
|
245 |
- if(nowContent == Contents.Taekwondo){ |
|
246 |
- tempContentNum_ = MMDefine.VRTAEKWONDO; |
|
263 |
+ LoadVRAssetInstructor(); |
|
264 |
+ } |
|
265 |
+ |
|
247 | 266 |
} |
248 |
- else if(nowContent == Contents.Taichi){ |
|
267 |
+ else{ |
|
268 |
+ |
|
269 |
+ // 관련 파일이 없어 에셋번들을 다운받아야할 경우 |
|
270 |
+ yield return StartCoroutine(MMHelper.DownloadAssetFile(tempBundleName_, LoadVRAssetInstructor)); |
|
271 |
+ |
|
249 | 272 |
} |
250 |
- else if(nowContent == Contents.KPop){ |
|
251 |
- } |
|
252 |
- else if(nowContent == Contents.Modern){ |
|
253 |
- } |
|
273 |
+ } |
|
254 | 274 |
|
255 |
- tempBundleName_ += MMHelper.GetAssetBundleName(tempContentNum_) + $"{bundleName.ToLower()}clip"; |
|
275 |
+ private void LoadVRAssetInstructor(){ |
|
276 |
+ StartCoroutine(LoadInstructor(NowSelectBundleName)); |
|
277 |
+ } |
|
256 | 278 |
|
257 |
- // 이름 규칙에 맞게 여기서 만들기? |
|
279 |
+ /// <summary> |
|
280 |
+ /// 에셋번들 로드 |
|
281 |
+ /// </summary> |
|
282 |
+ /// <param name="bundleName"></param> |
|
283 |
+ private IEnumerator LoadInstructor(string bundleName) { |
|
284 |
+ // 에셋번들 로드하고 리스트에 넣어두고 |
|
285 |
+ yield return StartCoroutine(MMHelper.AsyncLoader(bundleName)); |
|
286 |
+ |
|
287 |
+ // 클립 로드하러 간다. |
|
288 |
+ StartCoroutine(GetVRAnim(NowSelectBundleName)); |
|
289 |
+ } |
|
290 |
+ |
|
291 |
+ private IEnumerator GetVRAnim(string bundleName){ |
|
292 |
+ string tempBundleName_ = MakeBundleName(bundleName, true); |
|
258 | 293 |
|
259 | 294 |
|
295 |
+ // 먼저 로컬에 강사 애니메이션 클립 파일이 있는지 확인 후 없으면 다운 |
|
296 |
+ if(File.Exists(MMDefine.FULL_FILE_PATH + tempBundleName_)){ |
|
297 |
+ // 로드 된게 있는지 확인 |
|
298 |
+ if(AssetBundleRepo.Instance.GetAssetBundleList(NowContentInt()).Find(x => x.name == tempBundleName_)){ |
|
260 | 299 |
|
261 |
- //클립 번들이 있는지 확인 |
|
262 |
- if(AssetBundleRepo.Instance.GetAssetBundleList(tempContentNum_).Find(x => x.name == tempBundleName_)){ |
|
263 |
- // 관련 파일이 있을 경우 |
|
300 |
+ } |
|
301 |
+ else{ |
|
302 |
+ LoadVRAssetAnim(); |
|
303 |
+ } |
|
264 | 304 |
} |
265 | 305 |
else{ |
266 | 306 |
// 관련 파일이 없어 에셋번들을 다운받아야할 경우 |
267 |
- //MMHelper.DownloadAssetFile(tempBundleName_); |
|
307 |
+ yield return StartCoroutine(MMHelper.DownloadAssetFile(tempBundleName_, LoadVRAssetAnim)); |
|
268 | 308 |
} |
309 |
+ } |
|
269 | 310 |
|
270 | 311 |
|
312 |
+ private void LoadVRAssetAnim(){ |
|
313 |
+ StartCoroutine(LoadAnim(NowSelectBundleName, NowSelectAnim)); |
|
314 |
+ } |
|
271 | 315 |
|
272 |
- // if (AssetBundleDataManager.Instance.vrtaekwondoBundles.Find(x => x.name == $"vrtaekwondo/{bundleName.ToLower()}clip")) |
|
273 |
- // { |
|
274 |
- // // 여기서 따로 저장된 클립이 있다면 가져온다 |
|
275 |
- // if (tkAnimClips.ContainsKey($"vrtaekwondo/{bundleName.ToLower()}{clipName.ToLower()}")) |
|
276 |
- // { |
|
277 |
- // tempClip_ = tkAnimClips[$"vrtaekwondo/{bundleName.ToLower()}{clipName.ToLower()}"]; |
|
278 |
- // } |
|
279 |
- // else |
|
280 |
- // { |
|
281 |
- // // 필요한 파일을 꺼낸다. |
|
282 |
- // yield return StartCoroutine(AssetBundleDataManager.Instance.GetAssetBundleClip($"vrtaekwondo/{bundleName.ToLower()}clip", clipName, clip => |
|
283 |
- // { |
|
284 |
- // tempClip_ = clip; |
|
285 |
- // })); |
|
286 |
- // } |
|
316 |
+ private IEnumerator LoadAnim(string bundleName, string clipName) |
|
317 |
+ { |
|
318 |
+ yield return StartCoroutine(MMHelper.AsyncLoader(bundleName + "clip")); |
|
287 | 319 |
|
288 |
- // // 필요한 파일을 꺼낸다. |
|
289 |
- // yield return StartCoroutine(AssetBundleDataManager.Instance.GetAssetBundleClip($"vrtaekwondo/{coachName.ToLower()}clip", clipName, clip => |
|
290 |
- // { |
|
291 |
- // tempClip_ = clip; |
|
292 |
- // })); |
|
293 |
- // } |
|
294 |
- // else |
|
295 |
- // { |
|
296 |
- // yield return StartCoroutine(NetworkManager.Instance.GetAssetBundleAnim($"vrtaekwondo/{bundleName.ToLower()}clip", clipName, clip => |
|
297 |
- // { |
|
298 |
- // tempClip_ = clip; |
|
299 |
- // })); |
|
300 |
- // } |
|
320 |
+ // 강사 클립 둘다 로드했으니 이제 꺼내자 |
|
321 |
+ GameObject tempInstructor_ = null; |
|
322 |
+ AnimationClip tempAnimClip_ = null; |
|
301 | 323 |
|
302 |
- // // 새로운 클립을 Dict에 넣어준다 / {코치 이름} + {클립 이름} 키값으로 |
|
303 |
- // if (!tkAnimClips.ContainsKey($"vrtaekwondo/{coachName.ToLower()}{clipName.ToLower()}")) |
|
304 |
- // { |
|
305 |
- // tkAnimClips.Add($"vrtaekwondo/{coachName.ToLower()}{clipName.ToLower()}", tempClip_); |
|
306 |
- // } |
|
324 |
+ yield return StartCoroutine(MMHelper.GetAssetObjAsync<GameObject>("vrtaekwondo", NowSelectBundleName, callback => { |
|
325 |
+ tempInstructor_ = callback; |
|
326 |
+ })); |
|
307 | 327 |
|
308 |
- // // 코치 오브젝트 생성 |
|
309 |
- // GameObject tempCoach_ = null; |
|
328 |
+ yield return StartCoroutine(MMHelper.GetAssetObjAsync<AnimationClip>("vrtaekwondo", NowSelectBundleName + "clip", callback => { |
|
329 |
+ tempAnimClip_ = callback; |
|
330 |
+ })); |
|
310 | 331 |
|
311 |
- |
|
312 |
- // if(AssetBundleDataManager.Instance.vrtaekwondoBundles.Find(x => x.name == $"vrtaekwondo/{coachName.ToLower()}")) |
|
313 |
- // { |
|
314 |
- // if(tkCreateCoachObjs.Find(x => x.name == $"{coachName}")) |
|
315 |
- // { |
|
316 |
- // int tempIndex_ = tkCreateCoachObjs.FindIndex(x => x.name == $"{coachName}"); |
|
317 |
- |
|
318 |
- // tkCoachObjs.Clear(); |
|
319 |
- // // 4회 반복한다. |
|
320 |
- // for(int i = 0; i < 4; i++) |
|
321 |
- // { |
|
322 |
- // tkCoachObjs.Add(tkCreateCoachObjs[tempIndex_]); |
|
323 |
- // tkCreateCoachObjs.Remove(tkCreateCoachObjs[tempIndex_]); |
|
324 |
- // } |
|
325 |
- |
|
326 |
- // tempCoach_ = tkCoachObjs[0]; |
|
327 |
- // } |
|
328 |
- // else |
|
329 |
- // { |
|
330 |
- // // 필요한 파일을 꺼낸다. |
|
331 |
- // yield return StartCoroutine(AssetBundleDataManager.Instance.GetAssetObj<GameObject>("vrtaekwondo", coachName, bundle => |
|
332 |
- // { |
|
333 |
- // tempCoach_ = (GameObject)bundle; |
|
334 |
- // })); |
|
335 |
- // } |
|
336 |
- |
|
337 |
- |
|
338 |
- // } |
|
339 |
- // else |
|
340 |
- // { |
|
341 |
- // yield return StartCoroutine(NetworkManager.Instance.GetAssetBundleObj<GameObject>(coachName, coach => |
|
342 |
- // { |
|
343 |
- // tempCoach_ = coach; |
|
344 |
- // })); |
|
345 |
- |
|
346 |
- // } |
|
347 |
- |
|
348 |
- // // [Junil] 24/03/28 - PlayMap 추가 |
|
349 |
- // uiManager.mapChange.ChangePlayMap(string.Empty); |
|
350 |
- // uiManager.mapChange.AllOffMapLobby(); |
|
351 |
- |
|
352 |
- // ShowVRTkAnim(tempCoach_, tempClip_); |
|
332 |
+ ShowVRTkAnim(tempInstructor_, tempAnimClip_); |
|
353 | 333 |
} |
354 | 334 |
|
355 | 335 |
|
... | ... | @@ -442,6 +422,42 @@ |
442 | 422 |
ChangeMainUI(false); |
443 | 423 |
} |
444 | 424 |
|
425 |
+ private int NowContentInt() { |
|
426 |
+ int tempContentNum_ = -1; |
|
427 |
+ |
|
428 |
+ if(nowContent == Contents.Taekwondo){ |
|
429 |
+ tempContentNum_ = MMDefine.VRTAEKWONDO; |
|
430 |
+ } |
|
431 |
+ else if(nowContent == Contents.Taichi){ |
|
432 |
+ } |
|
433 |
+ else if(nowContent == Contents.KPop){ |
|
434 |
+ } |
|
435 |
+ else if(nowContent == Contents.Modern){ |
|
436 |
+ } |
|
437 |
+ |
|
438 |
+ return tempContentNum_; |
|
439 |
+ } |
|
440 |
+ |
|
441 |
+ /// <summary> |
|
442 |
+ /// 번들 이름을 보내면 에셋번들 이름을 만들어서 반환해주는 함수 |
|
443 |
+ /// </summary> |
|
444 |
+ /// <param name="bundleName"></param> |
|
445 |
+ /// <param name="isAnim"> true면 clip이 추가로 붙고, false면 패스 </param> |
|
446 |
+ /// <returns></returns> |
|
447 |
+ private string MakeBundleName(string bundleName, bool isAnim){ |
|
448 |
+ |
|
449 |
+ string tempBundleName_ = string.Empty; |
|
450 |
+ // { 현재 컨텐츠를 확인하고 관련 에셋번들 리스트 위치 번호를 가져오는 과정 |
|
451 |
+ |
|
452 |
+ tempBundleName_ = MMHelper.GetAssetBundleName(NowContentInt()) + $"_{bundleName.ToLower()}"; |
|
453 |
+ |
|
454 |
+ if(isAnim){ |
|
455 |
+ tempBundleName_ += "clip"; |
|
456 |
+ } |
|
457 |
+ |
|
458 |
+ return tempBundleName_; |
|
459 |
+ } |
|
460 |
+ |
|
445 | 461 |
public void SetInputKey(InputActionProperty backBtn) |
446 | 462 |
{ |
447 | 463 |
backMenuButton = backBtn; |
--- VRTK/Assets/00.MAINSTREAM/Scripts/Utils/MMHelper.cs
+++ VRTK/Assets/00.MAINSTREAM/Scripts/Utils/MMHelper.cs
... | ... | @@ -1,9 +1,11 @@ |
1 | 1 |
using System; |
2 | 2 |
using System.Collections; |
3 |
+using System.IO; |
|
3 | 4 |
using Oculus.Platform; |
4 | 5 |
using Oculus.Platform.Models; |
5 | 6 |
using Unity.VisualScripting; |
6 | 7 |
using UnityEngine; |
8 |
+using UnityEngine.Events; |
|
7 | 9 |
using UnityEngine.SceneManagement; |
8 | 10 |
using UnityEngine.U2D; |
9 | 11 |
using UnityEngine.UI; |
... | ... | @@ -63,7 +65,7 @@ |
63 | 65 |
/// <param name="useObjName"></param> |
64 | 66 |
/// <param name="callback"></param> |
65 | 67 |
/// <returns></returns> |
66 |
- public static IEnumerator GetAssetObjAsync<T>(string bundleName, string useObjName, Action<GameObject> callback) |
|
68 |
+ public static IEnumerator GetAssetObjAsync<T>(string bundleName, string useObjName, Action<T> callback) |
|
67 | 69 |
{ |
68 | 70 |
int tempCaseNum_ = 0; |
69 | 71 |
int tempNumber_ = 0; |
... | ... | @@ -102,11 +104,21 @@ |
102 | 104 |
yield return reqAsset_.isDone; |
103 | 105 |
Debug.LogError(reqAsset_.asset); |
104 | 106 |
|
105 |
- GameObject tempObj_ = (GameObject)reqAsset_.asset; |
|
107 |
+ T tempObj_ = reqAsset_.asset.GetComponent<T>(); |
|
108 |
+ |
|
106 | 109 |
#if UNITY_EDITOR |
107 |
- AssetBundleEditorUtil.FixShadersForEditor(tempObj_); |
|
108 |
-#endif |
|
110 |
+ // tempObj_가 GameObject 형식인지 확인하고 반환 |
|
111 |
+ GameObject tempCheck_ = tempObj_ as GameObject; |
|
112 |
+ if(tempCheck_ != null) { |
|
113 |
+ AssetBundleEditorUtil.FixShadersForEditor(tempCheck_); |
|
114 |
+ |
|
115 |
+ tempObj_ = tempCheck_.GetComponent<T>(); |
|
116 |
+ |
|
117 |
+ callback(tempObj_); |
|
118 |
+ } |
|
119 |
+#else |
|
109 | 120 |
callback(tempObj_); |
121 |
+#endif |
|
110 | 122 |
|
111 | 123 |
} |
112 | 124 |
|
... | ... | @@ -116,20 +128,20 @@ |
116 | 128 |
/// 파일 이름을 받아서 해당 파일 에셋을 다운로드 처리 |
117 | 129 |
/// </summary> |
118 | 130 |
/// <param name="fileName"> 다운로드 받을 파일명 </param> |
119 |
- public static IEnumerator DownloadAssetFile(string fileName, Action<AnimationClip> callback) |
|
131 |
+ public static IEnumerator DownloadAssetFile(string fileName, Action callss) |
|
120 | 132 |
{ |
121 | 133 |
int tempAssetIndex_ = AppDataRepo.Instance.GetAssetFileList().FindIndex(a => a.fileName == fileName); |
122 |
- |
|
123 |
- yield return AssetFile.DownloadById(AppDataRepo.Instance.GetAssetFileList()[tempAssetIndex_].assetId).OnComplete(callback =>{ |
|
124 |
- if (callback.IsError) { |
|
125 |
- return; |
|
134 |
+ |
|
135 |
+ yield return AssetFile.DownloadById(AppDataRepo.Instance.GetAssetFileList()[tempAssetIndex_].assetId).OnComplete( callback =>{ |
|
136 |
+ if (callback.IsError) |
|
137 |
+ { |
|
138 |
+ return; |
|
126 | 139 |
} |
127 | 140 |
|
128 | 141 |
// 에셋 파일의 다운로드 진행 사황을 나타내기 위해서 사용 |
129 | 142 |
AssetFile.SetDownloadUpdateNotificationCallback(call => |
130 | 143 |
{ |
131 | 144 |
AssetFileDownloadUpdate downloadUpdate = call.GetAssetFileDownloadUpdate(); |
132 |
- |
|
133 | 145 |
|
134 | 146 |
if (downloadUpdate != null) |
135 | 147 |
{ |
... | ... | @@ -139,26 +151,78 @@ |
139 | 151 |
if (downloadUpdate.Completed) |
140 | 152 |
{ |
141 | 153 |
// 경로에 파일이 생겼으니 로드하여 사용한다. |
142 |
- |
|
154 |
+ if(File.Exists(callback.GetAssetFileDownloadResult().Filepath)){ |
|
155 |
+ DebugTxtCall.Instance.CallDebug($"{callback.GetAssetFileDownloadResult().Filepath} 있다!"); |
|
156 |
+ } |
|
157 |
+ else{ |
|
158 |
+ DebugTxtCall.Instance.CallDebug($"{callback.GetAssetFileDownloadResult().Filepath} 없어!!"); |
|
159 |
+ } |
|
160 |
+ |
|
161 |
+ callss(); |
|
162 |
+ //AssetFileDownloadResult assetInfo_ = msg.GetAssetFileDownloadResult(); |
|
163 |
+ //debugTxt.text += $"DownloadAsset : {assetInfo_.Filepath} {assetInfo_.AssetId}" + |
|
164 |
+ //$" AssetFileDownloadResult : {File.Exists(assetInfo_.Filepath)}" + |
|
165 |
+ //$" path : {File.Exists(Define.FULL_FILE_PATH + AppDataRepo.Instance.assetBundleDataList.Find(x => x.fileName == "TAEKWONDO_initList_DLC.json").fileName)}\n"; |
|
143 | 166 |
} |
144 | 167 |
} |
145 | 168 |
else |
146 | 169 |
{ |
147 |
- //debugTxt.text += "SetDownloadUpdateNotificationCallback null"; |
|
170 |
+ //debugTxt.text += "SetDownloadUpdateNotificationCallback null"; |
|
148 | 171 |
} |
149 | 172 |
}); |
150 |
- |
|
151 |
- |
|
173 |
+ |
|
152 | 174 |
}); |
153 |
- |
|
175 |
+ |
|
176 |
+ if(File.Exists(MMDefine.FULL_FILE_PATH + fileName)){ |
|
177 |
+ Debug.Log("있다"); |
|
178 |
+ } |
|
179 |
+ |
|
180 |
+ |
|
181 |
+ |
|
182 |
+ // yield return AssetFile.DownloadById(AppDataRepo.Instance.GetAssetFileList()[tempAssetIndex_].assetId).OnComplete(msg => { |
|
183 |
+ // if (msg.IsError) |
|
184 |
+ // { |
|
185 |
+ // return; |
|
186 |
+ // } |
|
187 |
+ |
|
188 |
+ // // 에셋 파일의 다운로드 진행 사황을 나타내기 위해서 사용 |
|
189 |
+ // AssetFile.SetDownloadUpdateNotificationCallback(call => |
|
190 |
+ // { |
|
191 |
+ // AssetFileDownloadUpdate downloadUpdate = call.GetAssetFileDownloadUpdate(); |
|
192 |
+ |
|
193 |
+ |
|
194 |
+ // if (downloadUpdate != null) |
|
195 |
+ // { |
|
196 |
+ // //debugTxt.text += $"{downloadUpdate.AssetId} trans {downloadUpdate.BytesTransferred} total {downloadUpdate.BytesTotal}"; |
|
197 |
+ |
|
198 |
+ // // 에셋 파일의 다운로드가 완료되었다면 실행 |
|
199 |
+ // if (downloadUpdate.Completed) |
|
200 |
+ // { |
|
201 |
+ // // 경로에 파일이 생겼으니 로드하여 사용한다. |
|
202 |
+ // //callback(); |
|
203 |
+ |
|
204 |
+ // //AssetFileDownloadResult assetInfo_ = msg.GetAssetFileDownloadResult(); |
|
205 |
+ // //debugTxt.text += $"DownloadAsset : {assetInfo_.Filepath} {assetInfo_.AssetId}" + |
|
206 |
+ // //$" AssetFileDownloadResult : {File.Exists(assetInfo_.Filepath)}" + |
|
207 |
+ // //$" path : {File.Exists(Define.FULL_FILE_PATH + AppDataRepo.Instance.assetBundleDataList.Find(x => x.fileName == "TAEKWONDO_initList_DLC.json").fileName)}\n"; |
|
208 |
+ // } |
|
209 |
+ // } |
|
210 |
+ // else |
|
211 |
+ // { |
|
212 |
+ // //debugTxt.text += "SetDownloadUpdateNotificationCallback null"; |
|
213 |
+ // } |
|
214 |
+ // }); |
|
215 |
+ // }); |
|
216 |
+ |
|
154 | 217 |
|
155 | 218 |
} |
219 |
+ |
|
156 | 220 |
|
157 | 221 |
/// <summary> |
158 | 222 |
/// message를 받아서 관련 에셋 파일을 다운받는 함수 |
159 | 223 |
/// </summary> |
160 | 224 |
/// <param name="msg"> 콜백 메세지 </param> |
161 |
- private static void GetDownloadByIdCallBack(Message<AssetFileDownloadResult> msg) |
|
225 |
+ private static void GetDownloadByIdCallBack(Message<AssetFileDownloadResult> msg, Action callback) |
|
162 | 226 |
{ |
163 | 227 |
if (msg.IsError) |
164 | 228 |
{ |
... | ... | @@ -179,6 +243,8 @@ |
179 | 243 |
if (downloadUpdate.Completed) |
180 | 244 |
{ |
181 | 245 |
// 경로에 파일이 생겼으니 로드하여 사용한다. |
246 |
+ |
|
247 |
+ |
|
182 | 248 |
|
183 | 249 |
//AssetFileDownloadResult assetInfo_ = msg.GetAssetFileDownloadResult(); |
184 | 250 |
//debugTxt.text += $"DownloadAsset : {assetInfo_.Filepath} {assetInfo_.AssetId}" + |
... | ... | @@ -280,6 +346,5 @@ |
280 | 346 |
if(assetBundleNum == MMDefine.PARTICLE) { return "ptcl"; } |
281 | 347 |
return null; |
282 | 348 |
} |
283 |
- |
|
284 | 349 |
|
285 | 350 |
} |
--- VRTK/Assets/01.Junil/Scenes/00.ModelIkTest.unity
+++ VRTK/Assets/01.Junil/Scenes/00.ModelIkTest.unity
... | ... | @@ -124,7 +124,7 @@ |
124 | 124 |
debug: |
125 | 125 |
m_Flags: 0 |
126 | 126 |
m_NavMeshData: {fileID: 0} |
127 |
---- !u!21 &11960495 |
|
127 |
+--- !u!21 &44350371 |
|
128 | 128 |
Material: |
129 | 129 |
serializedVersion: 8 |
130 | 130 |
m_ObjectHideFlags: 0 |
... | ... | @@ -161,7 +161,7 @@ |
161 | 161 |
- _StencilWriteMask: 255 |
162 | 162 |
- _UseUIAlphaClip: 0 |
163 | 163 |
m_Colors: |
164 |
- - _WidthHeightRadius: {r: 40, g: 20, b: 8, a: 0} |
|
164 |
+ - _WidthHeightRadius: {r: 24, g: 10, b: 4, a: 0} |
|
165 | 165 |
m_BuildTextureStacks: [] |
166 | 166 |
--- !u!1 &52320011 |
167 | 167 |
GameObject: |
... | ... | @@ -240,46 +240,7 @@ |
240 | 240 |
m_PrefabAsset: {fileID: 0} |
241 | 241 |
m_GameObject: {fileID: 52320011} |
242 | 242 |
m_CullTransparentMesh: 1 |
243 |
---- !u!21 &81467375 |
|
244 |
-Material: |
|
245 |
- serializedVersion: 8 |
|
246 |
- m_ObjectHideFlags: 0 |
|
247 |
- m_CorrespondingSourceObject: {fileID: 0} |
|
248 |
- m_PrefabInstance: {fileID: 0} |
|
249 |
- m_PrefabAsset: {fileID: 0} |
|
250 |
- m_Name: UI/RoundedCorners/RoundedCorners |
|
251 |
- m_Shader: {fileID: 4800000, guid: 0bd2ec5d73751e34a814274a454bec41, type: 3} |
|
252 |
- m_Parent: {fileID: 0} |
|
253 |
- m_ModifiedSerializedProperties: 0 |
|
254 |
- m_ValidKeywords: [] |
|
255 |
- m_InvalidKeywords: [] |
|
256 |
- m_LightmapFlags: 4 |
|
257 |
- m_EnableInstancingVariants: 0 |
|
258 |
- m_DoubleSidedGI: 0 |
|
259 |
- m_CustomRenderQueue: -1 |
|
260 |
- stringTagMap: {} |
|
261 |
- disabledShaderPasses: [] |
|
262 |
- m_LockedProperties: |
|
263 |
- m_SavedProperties: |
|
264 |
- serializedVersion: 3 |
|
265 |
- m_TexEnvs: |
|
266 |
- - _MainTex: |
|
267 |
- m_Texture: {fileID: 0} |
|
268 |
- m_Scale: {x: 1, y: 1} |
|
269 |
- m_Offset: {x: 0, y: 0} |
|
270 |
- m_Ints: [] |
|
271 |
- m_Floats: |
|
272 |
- - _ColorMask: 15 |
|
273 |
- - _Stencil: 0 |
|
274 |
- - _StencilComp: 8 |
|
275 |
- - _StencilOp: 0 |
|
276 |
- - _StencilReadMask: 255 |
|
277 |
- - _StencilWriteMask: 255 |
|
278 |
- - _UseUIAlphaClip: 0 |
|
279 |
- m_Colors: |
|
280 |
- - _WidthHeightRadius: {r: 50, g: 20, b: 8, a: 0} |
|
281 |
- m_BuildTextureStacks: [] |
|
282 |
---- !u!21 &422238552 |
|
243 |
+--- !u!21 &195577173 |
|
283 | 244 |
Material: |
284 | 245 |
serializedVersion: 8 |
285 | 246 |
m_ObjectHideFlags: 0 |
... | ... | @@ -470,7 +431,46 @@ |
470 | 431 |
m_PrefabAsset: {fileID: 0} |
471 | 432 |
m_GameObject: {fileID: 481761039} |
472 | 433 |
m_CullTransparentMesh: 1 |
473 |
---- !u!21 &495101009 |
|
434 |
+--- !u!21 &496267222 |
|
435 |
+Material: |
|
436 |
+ serializedVersion: 8 |
|
437 |
+ m_ObjectHideFlags: 0 |
|
438 |
+ m_CorrespondingSourceObject: {fileID: 0} |
|
439 |
+ m_PrefabInstance: {fileID: 0} |
|
440 |
+ m_PrefabAsset: {fileID: 0} |
|
441 |
+ m_Name: UI/RoundedCorners/RoundedCorners |
|
442 |
+ m_Shader: {fileID: 4800000, guid: 0bd2ec5d73751e34a814274a454bec41, type: 3} |
|
443 |
+ m_Parent: {fileID: 0} |
|
444 |
+ m_ModifiedSerializedProperties: 0 |
|
445 |
+ m_ValidKeywords: [] |
|
446 |
+ m_InvalidKeywords: [] |
|
447 |
+ m_LightmapFlags: 4 |
|
448 |
+ m_EnableInstancingVariants: 0 |
|
449 |
+ m_DoubleSidedGI: 0 |
|
450 |
+ m_CustomRenderQueue: -1 |
|
451 |
+ stringTagMap: {} |
|
452 |
+ disabledShaderPasses: [] |
|
453 |
+ m_LockedProperties: |
|
454 |
+ m_SavedProperties: |
|
455 |
+ serializedVersion: 3 |
|
456 |
+ m_TexEnvs: |
|
457 |
+ - _MainTex: |
|
458 |
+ m_Texture: {fileID: 0} |
|
459 |
+ m_Scale: {x: 1, y: 1} |
|
460 |
+ m_Offset: {x: 0, y: 0} |
|
461 |
+ m_Ints: [] |
|
462 |
+ m_Floats: |
|
463 |
+ - _ColorMask: 15 |
|
464 |
+ - _Stencil: 0 |
|
465 |
+ - _StencilComp: 8 |
|
466 |
+ - _StencilOp: 0 |
|
467 |
+ - _StencilReadMask: 255 |
|
468 |
+ - _StencilWriteMask: 255 |
|
469 |
+ - _UseUIAlphaClip: 0 |
|
470 |
+ m_Colors: |
|
471 |
+ - _WidthHeightRadius: {r: 50, g: 20, b: 8, a: 0} |
|
472 |
+ m_BuildTextureStacks: [] |
|
473 |
+--- !u!21 &514692571 |
|
474 | 474 |
Material: |
475 | 475 |
serializedVersion: 8 |
476 | 476 |
m_ObjectHideFlags: 0 |
... | ... | @@ -509,7 +509,7 @@ |
509 | 509 |
m_Colors: |
510 | 510 |
- _WidthHeightRadius: {r: 55, g: 20, b: 8, a: 0} |
511 | 511 |
m_BuildTextureStacks: [] |
512 |
---- !u!21 &556651564 |
|
512 |
+--- !u!21 &557629876 |
|
513 | 513 |
Material: |
514 | 514 |
serializedVersion: 8 |
515 | 515 |
m_ObjectHideFlags: 0 |
... | ... | @@ -546,7 +546,7 @@ |
546 | 546 |
- _StencilWriteMask: 255 |
547 | 547 |
- _UseUIAlphaClip: 0 |
548 | 548 |
m_Colors: |
549 |
- - _WidthHeightRadius: {r: 40, g: 20, b: 8, a: 0} |
|
549 |
+ - _WidthHeightRadius: {r: 24, g: 10, b: 4, a: 0} |
|
550 | 550 |
m_BuildTextureStacks: [] |
551 | 551 |
--- !u!1001 &652386251 |
552 | 552 |
PrefabInstance: |
... | ... | @@ -647,84 +647,6 @@ |
647 | 647 |
m_Children: [] |
648 | 648 |
m_Father: {fileID: 0} |
649 | 649 |
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} |
650 |
---- !u!21 &671286112 |
|
651 |
-Material: |
|
652 |
- serializedVersion: 8 |
|
653 |
- m_ObjectHideFlags: 0 |
|
654 |
- m_CorrespondingSourceObject: {fileID: 0} |
|
655 |
- m_PrefabInstance: {fileID: 0} |
|
656 |
- m_PrefabAsset: {fileID: 0} |
|
657 |
- m_Name: UI/RoundedCorners/RoundedCorners |
|
658 |
- m_Shader: {fileID: 4800000, guid: 0bd2ec5d73751e34a814274a454bec41, type: 3} |
|
659 |
- m_Parent: {fileID: 0} |
|
660 |
- m_ModifiedSerializedProperties: 0 |
|
661 |
- m_ValidKeywords: [] |
|
662 |
- m_InvalidKeywords: [] |
|
663 |
- m_LightmapFlags: 4 |
|
664 |
- m_EnableInstancingVariants: 0 |
|
665 |
- m_DoubleSidedGI: 0 |
|
666 |
- m_CustomRenderQueue: -1 |
|
667 |
- stringTagMap: {} |
|
668 |
- disabledShaderPasses: [] |
|
669 |
- m_LockedProperties: |
|
670 |
- m_SavedProperties: |
|
671 |
- serializedVersion: 3 |
|
672 |
- m_TexEnvs: |
|
673 |
- - _MainTex: |
|
674 |
- m_Texture: {fileID: 0} |
|
675 |
- m_Scale: {x: 1, y: 1} |
|
676 |
- m_Offset: {x: 0, y: 0} |
|
677 |
- m_Ints: [] |
|
678 |
- m_Floats: |
|
679 |
- - _ColorMask: 15 |
|
680 |
- - _Stencil: 0 |
|
681 |
- - _StencilComp: 8 |
|
682 |
- - _StencilOp: 0 |
|
683 |
- - _StencilReadMask: 255 |
|
684 |
- - _StencilWriteMask: 255 |
|
685 |
- - _UseUIAlphaClip: 0 |
|
686 |
- m_Colors: |
|
687 |
- - _WidthHeightRadius: {r: 24, g: 10, b: 4, a: 0} |
|
688 |
- m_BuildTextureStacks: [] |
|
689 |
---- !u!21 &672532294 |
|
690 |
-Material: |
|
691 |
- serializedVersion: 8 |
|
692 |
- m_ObjectHideFlags: 0 |
|
693 |
- m_CorrespondingSourceObject: {fileID: 0} |
|
694 |
- m_PrefabInstance: {fileID: 0} |
|
695 |
- m_PrefabAsset: {fileID: 0} |
|
696 |
- m_Name: UI/RoundedCorners/RoundedCorners |
|
697 |
- m_Shader: {fileID: 4800000, guid: 0bd2ec5d73751e34a814274a454bec41, type: 3} |
|
698 |
- m_Parent: {fileID: 0} |
|
699 |
- m_ModifiedSerializedProperties: 0 |
|
700 |
- m_ValidKeywords: [] |
|
701 |
- m_InvalidKeywords: [] |
|
702 |
- m_LightmapFlags: 4 |
|
703 |
- m_EnableInstancingVariants: 0 |
|
704 |
- m_DoubleSidedGI: 0 |
|
705 |
- m_CustomRenderQueue: -1 |
|
706 |
- stringTagMap: {} |
|
707 |
- disabledShaderPasses: [] |
|
708 |
- m_LockedProperties: |
|
709 |
- m_SavedProperties: |
|
710 |
- serializedVersion: 3 |
|
711 |
- m_TexEnvs: |
|
712 |
- - _MainTex: |
|
713 |
- m_Texture: {fileID: 0} |
|
714 |
- m_Scale: {x: 1, y: 1} |
|
715 |
- m_Offset: {x: 0, y: 0} |
|
716 |
- m_Ints: [] |
|
717 |
- m_Floats: |
|
718 |
- - _ColorMask: 15 |
|
719 |
- - _Stencil: 0 |
|
720 |
- - _StencilComp: 8 |
|
721 |
- - _StencilOp: 0 |
|
722 |
- - _StencilReadMask: 255 |
|
723 |
- - _StencilWriteMask: 255 |
|
724 |
- - _UseUIAlphaClip: 0 |
|
725 |
- m_Colors: |
|
726 |
- - _WidthHeightRadius: {r: 50, g: 20, b: 8, a: 0} |
|
727 |
- m_BuildTextureStacks: [] |
|
728 | 650 |
--- !u!1 &820939528 |
729 | 651 |
GameObject: |
730 | 652 |
m_ObjectHideFlags: 0 |
... | ... | @@ -803,7 +725,7 @@ |
803 | 725 |
m_EditorClassIdentifier: |
804 | 726 |
m_HorizontalFit: 0 |
805 | 727 |
m_VerticalFit: 2 |
806 |
---- !u!21 &888347671 |
|
728 |
+--- !u!21 &880964246 |
|
807 | 729 |
Material: |
808 | 730 |
serializedVersion: 8 |
809 | 731 |
m_ObjectHideFlags: 0 |
... | ... | @@ -932,6 +854,45 @@ |
932 | 854 |
m_PrefabAsset: {fileID: 0} |
933 | 855 |
m_GameObject: {fileID: 978790871} |
934 | 856 |
m_CullTransparentMesh: 1 |
857 |
+--- !u!21 &986363492 |
|
858 |
+Material: |
|
859 |
+ serializedVersion: 8 |
|
860 |
+ m_ObjectHideFlags: 0 |
|
861 |
+ m_CorrespondingSourceObject: {fileID: 0} |
|
862 |
+ m_PrefabInstance: {fileID: 0} |
|
863 |
+ m_PrefabAsset: {fileID: 0} |
|
864 |
+ m_Name: UI/RoundedCorners/RoundedCorners |
|
865 |
+ m_Shader: {fileID: 4800000, guid: 0bd2ec5d73751e34a814274a454bec41, type: 3} |
|
866 |
+ m_Parent: {fileID: 0} |
|
867 |
+ m_ModifiedSerializedProperties: 0 |
|
868 |
+ m_ValidKeywords: [] |
|
869 |
+ m_InvalidKeywords: [] |
|
870 |
+ m_LightmapFlags: 4 |
|
871 |
+ m_EnableInstancingVariants: 0 |
|
872 |
+ m_DoubleSidedGI: 0 |
|
873 |
+ m_CustomRenderQueue: -1 |
|
874 |
+ stringTagMap: {} |
|
875 |
+ disabledShaderPasses: [] |
|
876 |
+ m_LockedProperties: |
|
877 |
+ m_SavedProperties: |
|
878 |
+ serializedVersion: 3 |
|
879 |
+ m_TexEnvs: |
|
880 |
+ - _MainTex: |
|
881 |
+ m_Texture: {fileID: 0} |
|
882 |
+ m_Scale: {x: 1, y: 1} |
|
883 |
+ m_Offset: {x: 0, y: 0} |
|
884 |
+ m_Ints: [] |
|
885 |
+ m_Floats: |
|
886 |
+ - _ColorMask: 15 |
|
887 |
+ - _Stencil: 0 |
|
888 |
+ - _StencilComp: 8 |
|
889 |
+ - _StencilOp: 0 |
|
890 |
+ - _StencilReadMask: 255 |
|
891 |
+ - _StencilWriteMask: 255 |
|
892 |
+ - _UseUIAlphaClip: 0 |
|
893 |
+ m_Colors: |
|
894 |
+ - _WidthHeightRadius: {r: 40, g: 20, b: 8, a: 0} |
|
895 |
+ m_BuildTextureStacks: [] |
|
935 | 896 |
--- !u!1 &1023990068 |
936 | 897 |
GameObject: |
937 | 898 |
m_ObjectHideFlags: 0 |
... | ... | @@ -1037,45 +998,6 @@ |
1037 | 998 |
m_Children: [] |
1038 | 999 |
m_Father: {fileID: 0} |
1039 | 1000 |
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} |
1040 |
---- !u!21 &1106052782 |
|
1041 |
-Material: |
|
1042 |
- serializedVersion: 8 |
|
1043 |
- m_ObjectHideFlags: 0 |
|
1044 |
- m_CorrespondingSourceObject: {fileID: 0} |
|
1045 |
- m_PrefabInstance: {fileID: 0} |
|
1046 |
- m_PrefabAsset: {fileID: 0} |
|
1047 |
- m_Name: UI/RoundedCorners/RoundedCorners |
|
1048 |
- m_Shader: {fileID: 4800000, guid: 0bd2ec5d73751e34a814274a454bec41, type: 3} |
|
1049 |
- m_Parent: {fileID: 0} |
|
1050 |
- m_ModifiedSerializedProperties: 0 |
|
1051 |
- m_ValidKeywords: [] |
|
1052 |
- m_InvalidKeywords: [] |
|
1053 |
- m_LightmapFlags: 4 |
|
1054 |
- m_EnableInstancingVariants: 0 |
|
1055 |
- m_DoubleSidedGI: 0 |
|
1056 |
- m_CustomRenderQueue: -1 |
|
1057 |
- stringTagMap: {} |
|
1058 |
- disabledShaderPasses: [] |
|
1059 |
- m_LockedProperties: |
|
1060 |
- m_SavedProperties: |
|
1061 |
- serializedVersion: 3 |
|
1062 |
- m_TexEnvs: |
|
1063 |
- - _MainTex: |
|
1064 |
- m_Texture: {fileID: 0} |
|
1065 |
- m_Scale: {x: 1, y: 1} |
|
1066 |
- m_Offset: {x: 0, y: 0} |
|
1067 |
- m_Ints: [] |
|
1068 |
- m_Floats: |
|
1069 |
- - _ColorMask: 15 |
|
1070 |
- - _Stencil: 0 |
|
1071 |
- - _StencilComp: 8 |
|
1072 |
- - _StencilOp: 0 |
|
1073 |
- - _StencilReadMask: 255 |
|
1074 |
- - _StencilWriteMask: 255 |
|
1075 |
- - _UseUIAlphaClip: 0 |
|
1076 |
- m_Colors: |
|
1077 |
- - _WidthHeightRadius: {r: 24, g: 10, b: 4, a: 0} |
|
1078 |
- m_BuildTextureStacks: [] |
|
1079 | 1001 |
--- !u!1 &1139436975 |
1080 | 1002 |
GameObject: |
1081 | 1003 |
m_ObjectHideFlags: 0 |
... | ... | @@ -1194,45 +1116,6 @@ |
1194 | 1116 |
m_LightCookieSize: {x: 1, y: 1} |
1195 | 1117 |
m_LightCookieOffset: {x: 0, y: 0} |
1196 | 1118 |
m_SoftShadowQuality: 0 |
1197 |
---- !u!21 &1208821483 |
|
1198 |
-Material: |
|
1199 |
- serializedVersion: 8 |
|
1200 |
- m_ObjectHideFlags: 0 |
|
1201 |
- m_CorrespondingSourceObject: {fileID: 0} |
|
1202 |
- m_PrefabInstance: {fileID: 0} |
|
1203 |
- m_PrefabAsset: {fileID: 0} |
|
1204 |
- m_Name: UI/RoundedCorners/RoundedCorners |
|
1205 |
- m_Shader: {fileID: 4800000, guid: 0bd2ec5d73751e34a814274a454bec41, type: 3} |
|
1206 |
- m_Parent: {fileID: 0} |
|
1207 |
- m_ModifiedSerializedProperties: 0 |
|
1208 |
- m_ValidKeywords: [] |
|
1209 |
- m_InvalidKeywords: [] |
|
1210 |
- m_LightmapFlags: 4 |
|
1211 |
- m_EnableInstancingVariants: 0 |
|
1212 |
- m_DoubleSidedGI: 0 |
|
1213 |
- m_CustomRenderQueue: -1 |
|
1214 |
- stringTagMap: {} |
|
1215 |
- disabledShaderPasses: [] |
|
1216 |
- m_LockedProperties: |
|
1217 |
- m_SavedProperties: |
|
1218 |
- serializedVersion: 3 |
|
1219 |
- m_TexEnvs: |
|
1220 |
- - _MainTex: |
|
1221 |
- m_Texture: {fileID: 0} |
|
1222 |
- m_Scale: {x: 1, y: 1} |
|
1223 |
- m_Offset: {x: 0, y: 0} |
|
1224 |
- m_Ints: [] |
|
1225 |
- m_Floats: |
|
1226 |
- - _ColorMask: 15 |
|
1227 |
- - _Stencil: 0 |
|
1228 |
- - _StencilComp: 8 |
|
1229 |
- - _StencilOp: 0 |
|
1230 |
- - _StencilReadMask: 255 |
|
1231 |
- - _StencilWriteMask: 255 |
|
1232 |
- - _UseUIAlphaClip: 0 |
|
1233 |
- m_Colors: |
|
1234 |
- - _WidthHeightRadius: {r: 40, g: 20, b: 8, a: 0} |
|
1235 |
- m_BuildTextureStacks: [] |
|
1236 | 1119 |
--- !u!1 &1260657658 |
1237 | 1120 |
GameObject: |
1238 | 1121 |
m_ObjectHideFlags: 0 |
... | ... | @@ -1242,7 +1125,7 @@ |
1242 | 1125 |
serializedVersion: 6 |
1243 | 1126 |
m_Component: |
1244 | 1127 |
- component: {fileID: 1260657660} |
1245 |
- - component: {fileID: 1260657659} |
|
1128 |
+ - component: {fileID: 1260657661} |
|
1246 | 1129 |
m_Layer: 0 |
1247 | 1130 |
m_Name: Test |
1248 | 1131 |
m_TagString: Untagged |
... | ... | @@ -1250,38 +1133,6 @@ |
1250 | 1133 |
m_NavMeshLayer: 0 |
1251 | 1134 |
m_StaticEditorFlags: 0 |
1252 | 1135 |
m_IsActive: 1 |
1253 |
---- !u!114 &1260657659 |
|
1254 |
-MonoBehaviour: |
|
1255 |
- m_ObjectHideFlags: 0 |
|
1256 |
- m_CorrespondingSourceObject: {fileID: 0} |
|
1257 |
- m_PrefabInstance: {fileID: 0} |
|
1258 |
- m_PrefabAsset: {fileID: 0} |
|
1259 |
- m_GameObject: {fileID: 1260657658} |
|
1260 |
- m_Enabled: 1 |
|
1261 |
- m_EditorHideFlags: 0 |
|
1262 |
- m_Script: {fileID: 11500000, guid: fd48fae9c48cc83499aed28fecb2a6e8, type: 3} |
|
1263 |
- m_Name: |
|
1264 |
- m_EditorClassIdentifier: |
|
1265 |
- metamotionUI: {fileID: 0} |
|
1266 |
- appLoginUI: {fileID: 0} |
|
1267 |
- pressTxtObj: {fileID: 0} |
|
1268 |
- isNoUpdate: 0 |
|
1269 |
- isOnClick: 0 |
|
1270 |
- testTxt: {fileID: 1490548137} |
|
1271 |
- anyKeyInput: |
|
1272 |
- m_UseReference: 0 |
|
1273 |
- m_Action: |
|
1274 |
- m_Name: Any Key Input |
|
1275 |
- m_Type: 0 |
|
1276 |
- m_ExpectedControlType: |
|
1277 |
- m_Id: 69c89bf9-fc8a-4ee4-8b51-c0d8c394b22b |
|
1278 |
- m_Processors: |
|
1279 |
- m_Interactions: |
|
1280 |
- m_SingletonActionBindings: [] |
|
1281 |
- m_Flags: 0 |
|
1282 |
- m_Reference: {fileID: 0} |
|
1283 |
- loadingManager: {fileID: 0} |
|
1284 |
- obbFilePath: /sdcard/Android/obb/com.MetaMotion.VRTk/mqdhtest |
|
1285 | 1136 |
--- !u!4 &1260657660 |
1286 | 1137 |
Transform: |
1287 | 1138 |
m_ObjectHideFlags: 0 |
... | ... | @@ -1297,7 +1148,38 @@ |
1297 | 1148 |
m_Children: [] |
1298 | 1149 |
m_Father: {fileID: 0} |
1299 | 1150 |
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} |
1300 |
---- !u!21 &1281979911 |
|
1151 |
+--- !u!114 &1260657661 |
|
1152 |
+MonoBehaviour: |
|
1153 |
+ m_ObjectHideFlags: 0 |
|
1154 |
+ m_CorrespondingSourceObject: {fileID: 0} |
|
1155 |
+ m_PrefabInstance: {fileID: 0} |
|
1156 |
+ m_PrefabAsset: {fileID: 0} |
|
1157 |
+ m_GameObject: {fileID: 1260657658} |
|
1158 |
+ m_Enabled: 1 |
|
1159 |
+ m_EditorHideFlags: 0 |
|
1160 |
+ m_Script: {fileID: 11500000, guid: 913aca583fb622d40b40c84ebce91f47, type: 3} |
|
1161 |
+ m_Name: |
|
1162 |
+ m_EditorClassIdentifier: |
|
1163 |
+ nowContent: 0 |
|
1164 |
+ particalObj: {fileID: 0} |
|
1165 |
+ effectObj: {fileID: 0} |
|
1166 |
+ test: |
|
1167 |
+ - m_UseReference: 1 |
|
1168 |
+ m_Action: |
|
1169 |
+ m_Name: Element 0 |
|
1170 |
+ m_Type: 0 |
|
1171 |
+ m_ExpectedControlType: |
|
1172 |
+ m_Id: d968f27a-7c89-4683-8b3e-84f67aab7e11 |
|
1173 |
+ m_Processors: |
|
1174 |
+ m_Interactions: |
|
1175 |
+ m_SingletonActionBindings: [] |
|
1176 |
+ m_Flags: 0 |
|
1177 |
+ m_Reference: {fileID: 4860515764186564299, guid: e39f4b35a6db18348b41eb0262520e69, |
|
1178 |
+ type: 3} |
|
1179 |
+ spriteAtlas: {fileID: 0} |
|
1180 |
+ image: {fileID: 0} |
|
1181 |
+ isDownloaded: 0 |
|
1182 |
+--- !u!21 &1289620507 |
|
1301 | 1183 |
Material: |
1302 | 1184 |
serializedVersion: 8 |
1303 | 1185 |
m_ObjectHideFlags: 0 |
... | ... | @@ -1336,7 +1218,7 @@ |
1336 | 1218 |
m_Colors: |
1337 | 1219 |
- _WidthHeightRadius: {r: 40, g: 20, b: 8, a: 0} |
1338 | 1220 |
m_BuildTextureStacks: [] |
1339 |
---- !u!21 &1354315661 |
|
1221 |
+--- !u!21 &1311389571 |
|
1340 | 1222 |
Material: |
1341 | 1223 |
serializedVersion: 8 |
1342 | 1224 |
m_ObjectHideFlags: 0 |
... | ... | @@ -1373,7 +1255,7 @@ |
1373 | 1255 |
- _StencilWriteMask: 255 |
1374 | 1256 |
- _UseUIAlphaClip: 0 |
1375 | 1257 |
m_Colors: |
1376 |
- - _WidthHeightRadius: {r: 40, g: 20, b: 8, a: 0} |
|
1258 |
+ - _WidthHeightRadius: {r: 24, g: 10, b: 4, a: 0} |
|
1377 | 1259 |
m_BuildTextureStacks: [] |
1378 | 1260 |
--- !u!1 &1375304115 |
1379 | 1261 |
GameObject: |
... | ... | @@ -1406,7 +1288,7 @@ |
1406 | 1288 |
m_Children: [] |
1407 | 1289 |
m_Father: {fileID: 0} |
1408 | 1290 |
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} |
1409 |
---- !u!21 &1412182438 |
|
1291 |
+--- !u!21 &1397594885 |
|
1410 | 1292 |
Material: |
1411 | 1293 |
serializedVersion: 8 |
1412 | 1294 |
m_ObjectHideFlags: 0 |
... | ... | @@ -1443,7 +1325,46 @@ |
1443 | 1325 |
- _StencilWriteMask: 255 |
1444 | 1326 |
- _UseUIAlphaClip: 0 |
1445 | 1327 |
m_Colors: |
1446 |
- - _WidthHeightRadius: {r: 55, g: 20, b: 8, a: 0} |
|
1328 |
+ - _WidthHeightRadius: {r: 40, g: 20, b: 8, a: 0} |
|
1329 |
+ m_BuildTextureStacks: [] |
|
1330 |
+--- !u!21 &1406648269 |
|
1331 |
+Material: |
|
1332 |
+ serializedVersion: 8 |
|
1333 |
+ m_ObjectHideFlags: 0 |
|
1334 |
+ m_CorrespondingSourceObject: {fileID: 0} |
|
1335 |
+ m_PrefabInstance: {fileID: 0} |
|
1336 |
+ m_PrefabAsset: {fileID: 0} |
|
1337 |
+ m_Name: UI/RoundedCorners/RoundedCorners |
|
1338 |
+ m_Shader: {fileID: 4800000, guid: 0bd2ec5d73751e34a814274a454bec41, type: 3} |
|
1339 |
+ m_Parent: {fileID: 0} |
|
1340 |
+ m_ModifiedSerializedProperties: 0 |
|
1341 |
+ m_ValidKeywords: [] |
|
1342 |
+ m_InvalidKeywords: [] |
|
1343 |
+ m_LightmapFlags: 4 |
|
1344 |
+ m_EnableInstancingVariants: 0 |
|
1345 |
+ m_DoubleSidedGI: 0 |
|
1346 |
+ m_CustomRenderQueue: -1 |
|
1347 |
+ stringTagMap: {} |
|
1348 |
+ disabledShaderPasses: [] |
|
1349 |
+ m_LockedProperties: |
|
1350 |
+ m_SavedProperties: |
|
1351 |
+ serializedVersion: 3 |
|
1352 |
+ m_TexEnvs: |
|
1353 |
+ - _MainTex: |
|
1354 |
+ m_Texture: {fileID: 0} |
|
1355 |
+ m_Scale: {x: 1, y: 1} |
|
1356 |
+ m_Offset: {x: 0, y: 0} |
|
1357 |
+ m_Ints: [] |
|
1358 |
+ m_Floats: |
|
1359 |
+ - _ColorMask: 15 |
|
1360 |
+ - _Stencil: 0 |
|
1361 |
+ - _StencilComp: 8 |
|
1362 |
+ - _StencilOp: 0 |
|
1363 |
+ - _StencilReadMask: 255 |
|
1364 |
+ - _StencilWriteMask: 255 |
|
1365 |
+ - _UseUIAlphaClip: 0 |
|
1366 |
+ m_Colors: |
|
1367 |
+ - _WidthHeightRadius: {r: 40, g: 20, b: 8, a: 0} |
|
1447 | 1368 |
m_BuildTextureStacks: [] |
1448 | 1369 |
--- !u!1 &1459327236 |
1449 | 1370 |
GameObject: |
... | ... | @@ -1454,8 +1375,8 @@ |
1454 | 1375 |
serializedVersion: 6 |
1455 | 1376 |
m_Component: |
1456 | 1377 |
- component: {fileID: 1459327237} |
1457 |
- - component: {fileID: 1459327239} |
|
1458 | 1378 |
- component: {fileID: 1459327238} |
1379 |
+ - component: {fileID: 1459327240} |
|
1459 | 1380 |
m_Layer: 5 |
1460 | 1381 |
m_Name: Content |
1461 | 1382 |
m_TagString: Untagged |
... | ... | @@ -1496,10 +1417,10 @@ |
1496 | 1417 |
m_Name: |
1497 | 1418 |
m_EditorClassIdentifier: |
1498 | 1419 |
m_Padding: |
1499 |
- m_Left: 10 |
|
1500 |
- m_Right: 10 |
|
1501 |
- m_Top: 10 |
|
1502 |
- m_Bottom: 10 |
|
1420 |
+ m_Left: 0 |
|
1421 |
+ m_Right: 0 |
|
1422 |
+ m_Top: 0 |
|
1423 |
+ m_Bottom: 0 |
|
1503 | 1424 |
m_ChildAlignment: 0 |
1504 | 1425 |
m_Spacing: 0 |
1505 | 1426 |
m_ChildForceExpandWidth: 1 |
... | ... | @@ -1509,7 +1430,7 @@ |
1509 | 1430 |
m_ChildScaleWidth: 0 |
1510 | 1431 |
m_ChildScaleHeight: 0 |
1511 | 1432 |
m_ReverseArrangement: 0 |
1512 |
---- !u!114 &1459327239 |
|
1433 |
+--- !u!114 &1459327240 |
|
1513 | 1434 |
MonoBehaviour: |
1514 | 1435 |
m_ObjectHideFlags: 0 |
1515 | 1436 |
m_CorrespondingSourceObject: {fileID: 0} |
... | ... | @@ -1523,45 +1444,6 @@ |
1523 | 1444 |
m_EditorClassIdentifier: |
1524 | 1445 |
m_HorizontalFit: 0 |
1525 | 1446 |
m_VerticalFit: 2 |
1526 |
---- !u!21 &1477554418 |
|
1527 |
-Material: |
|
1528 |
- serializedVersion: 8 |
|
1529 |
- m_ObjectHideFlags: 0 |
|
1530 |
- m_CorrespondingSourceObject: {fileID: 0} |
|
1531 |
- m_PrefabInstance: {fileID: 0} |
|
1532 |
- m_PrefabAsset: {fileID: 0} |
|
1533 |
- m_Name: UI/RoundedCorners/RoundedCorners |
|
1534 |
- m_Shader: {fileID: 4800000, guid: 0bd2ec5d73751e34a814274a454bec41, type: 3} |
|
1535 |
- m_Parent: {fileID: 0} |
|
1536 |
- m_ModifiedSerializedProperties: 0 |
|
1537 |
- m_ValidKeywords: [] |
|
1538 |
- m_InvalidKeywords: [] |
|
1539 |
- m_LightmapFlags: 4 |
|
1540 |
- m_EnableInstancingVariants: 0 |
|
1541 |
- m_DoubleSidedGI: 0 |
|
1542 |
- m_CustomRenderQueue: -1 |
|
1543 |
- stringTagMap: {} |
|
1544 |
- disabledShaderPasses: [] |
|
1545 |
- m_LockedProperties: |
|
1546 |
- m_SavedProperties: |
|
1547 |
- serializedVersion: 3 |
|
1548 |
- m_TexEnvs: |
|
1549 |
- - _MainTex: |
|
1550 |
- m_Texture: {fileID: 0} |
|
1551 |
- m_Scale: {x: 1, y: 1} |
|
1552 |
- m_Offset: {x: 0, y: 0} |
|
1553 |
- m_Ints: [] |
|
1554 |
- m_Floats: |
|
1555 |
- - _ColorMask: 15 |
|
1556 |
- - _Stencil: 0 |
|
1557 |
- - _StencilComp: 8 |
|
1558 |
- - _StencilOp: 0 |
|
1559 |
- - _StencilReadMask: 255 |
|
1560 |
- - _StencilWriteMask: 255 |
|
1561 |
- - _UseUIAlphaClip: 0 |
|
1562 |
- m_Colors: |
|
1563 |
- - _WidthHeightRadius: {r: 24, g: 10, b: 4, a: 0} |
|
1564 |
- m_BuildTextureStacks: [] |
|
1565 | 1447 |
--- !u!1 &1490548134 |
1566 | 1448 |
GameObject: |
1567 | 1449 |
m_ObjectHideFlags: 0 |
... | ... | @@ -1791,6 +1673,128 @@ |
1791 | 1673 |
m_PrefabAsset: {fileID: 0} |
1792 | 1674 |
m_GameObject: {fileID: 1492874939} |
1793 | 1675 |
m_CullTransparentMesh: 1 |
1676 |
+--- !u!21 &1514506780 |
|
1677 |
+Material: |
|
1678 |
+ serializedVersion: 8 |
|
1679 |
+ m_ObjectHideFlags: 0 |
|
1680 |
+ m_CorrespondingSourceObject: {fileID: 0} |
|
1681 |
+ m_PrefabInstance: {fileID: 0} |
|
1682 |
+ m_PrefabAsset: {fileID: 0} |
|
1683 |
+ m_Name: UI/RoundedCorners/RoundedCorners |
|
1684 |
+ m_Shader: {fileID: 4800000, guid: 0bd2ec5d73751e34a814274a454bec41, type: 3} |
|
1685 |
+ m_Parent: {fileID: 0} |
|
1686 |
+ m_ModifiedSerializedProperties: 0 |
|
1687 |
+ m_ValidKeywords: [] |
|
1688 |
+ m_InvalidKeywords: [] |
|
1689 |
+ m_LightmapFlags: 4 |
|
1690 |
+ m_EnableInstancingVariants: 0 |
|
1691 |
+ m_DoubleSidedGI: 0 |
|
1692 |
+ m_CustomRenderQueue: -1 |
|
1693 |
+ stringTagMap: {} |
|
1694 |
+ disabledShaderPasses: [] |
|
1695 |
+ m_LockedProperties: |
|
1696 |
+ m_SavedProperties: |
|
1697 |
+ serializedVersion: 3 |
|
1698 |
+ m_TexEnvs: |
|
1699 |
+ - _MainTex: |
|
1700 |
+ m_Texture: {fileID: 0} |
|
1701 |
+ m_Scale: {x: 1, y: 1} |
|
1702 |
+ m_Offset: {x: 0, y: 0} |
|
1703 |
+ m_Ints: [] |
|
1704 |
+ m_Floats: |
|
1705 |
+ - _ColorMask: 15 |
|
1706 |
+ - _Stencil: 0 |
|
1707 |
+ - _StencilComp: 8 |
|
1708 |
+ - _StencilOp: 0 |
|
1709 |
+ - _StencilReadMask: 255 |
|
1710 |
+ - _StencilWriteMask: 255 |
|
1711 |
+ - _UseUIAlphaClip: 0 |
|
1712 |
+ m_Colors: |
|
1713 |
+ - _WidthHeightRadius: {r: 40, g: 20, b: 8, a: 0} |
|
1714 |
+ m_BuildTextureStacks: [] |
|
1715 |
+--- !u!1 &1564624327 |
|
1716 |
+GameObject: |
|
1717 |
+ m_ObjectHideFlags: 0 |
|
1718 |
+ m_CorrespondingSourceObject: {fileID: 0} |
|
1719 |
+ m_PrefabInstance: {fileID: 0} |
|
1720 |
+ m_PrefabAsset: {fileID: 0} |
|
1721 |
+ serializedVersion: 6 |
|
1722 |
+ m_Component: |
|
1723 |
+ - component: {fileID: 1564624329} |
|
1724 |
+ - component: {fileID: 1564624328} |
|
1725 |
+ m_Layer: 0 |
|
1726 |
+ m_Name: Entitlement |
|
1727 |
+ m_TagString: Untagged |
|
1728 |
+ m_Icon: {fileID: 0} |
|
1729 |
+ m_NavMeshLayer: 0 |
|
1730 |
+ m_StaticEditorFlags: 0 |
|
1731 |
+ m_IsActive: 1 |
|
1732 |
+--- !u!114 &1564624328 |
|
1733 |
+MonoBehaviour: |
|
1734 |
+ m_ObjectHideFlags: 0 |
|
1735 |
+ m_CorrespondingSourceObject: {fileID: 0} |
|
1736 |
+ m_PrefabInstance: {fileID: 0} |
|
1737 |
+ m_PrefabAsset: {fileID: 0} |
|
1738 |
+ m_GameObject: {fileID: 1564624327} |
|
1739 |
+ m_Enabled: 1 |
|
1740 |
+ m_EditorHideFlags: 0 |
|
1741 |
+ m_Script: {fileID: 11500000, guid: f0f8f3cde43c25b4abe357598ec48a4a, type: 3} |
|
1742 |
+ m_Name: |
|
1743 |
+ m_EditorClassIdentifier: |
|
1744 |
+--- !u!4 &1564624329 |
|
1745 |
+Transform: |
|
1746 |
+ m_ObjectHideFlags: 0 |
|
1747 |
+ m_CorrespondingSourceObject: {fileID: 0} |
|
1748 |
+ m_PrefabInstance: {fileID: 0} |
|
1749 |
+ m_PrefabAsset: {fileID: 0} |
|
1750 |
+ m_GameObject: {fileID: 1564624327} |
|
1751 |
+ serializedVersion: 2 |
|
1752 |
+ m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} |
|
1753 |
+ m_LocalPosition: {x: 0, y: 0, z: 0} |
|
1754 |
+ m_LocalScale: {x: 1, y: 1, z: 1} |
|
1755 |
+ m_ConstrainProportionsScale: 0 |
|
1756 |
+ m_Children: [] |
|
1757 |
+ m_Father: {fileID: 0} |
|
1758 |
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} |
|
1759 |
+--- !u!21 &1597992833 |
|
1760 |
+Material: |
|
1761 |
+ serializedVersion: 8 |
|
1762 |
+ m_ObjectHideFlags: 0 |
|
1763 |
+ m_CorrespondingSourceObject: {fileID: 0} |
|
1764 |
+ m_PrefabInstance: {fileID: 0} |
|
1765 |
+ m_PrefabAsset: {fileID: 0} |
|
1766 |
+ m_Name: UI/RoundedCorners/RoundedCorners |
|
1767 |
+ m_Shader: {fileID: 4800000, guid: 0bd2ec5d73751e34a814274a454bec41, type: 3} |
|
1768 |
+ m_Parent: {fileID: 0} |
|
1769 |
+ m_ModifiedSerializedProperties: 0 |
|
1770 |
+ m_ValidKeywords: [] |
|
1771 |
+ m_InvalidKeywords: [] |
|
1772 |
+ m_LightmapFlags: 4 |
|
1773 |
+ m_EnableInstancingVariants: 0 |
|
1774 |
+ m_DoubleSidedGI: 0 |
|
1775 |
+ m_CustomRenderQueue: -1 |
|
1776 |
+ stringTagMap: {} |
|
1777 |
+ disabledShaderPasses: [] |
|
1778 |
+ m_LockedProperties: |
|
1779 |
+ m_SavedProperties: |
|
1780 |
+ serializedVersion: 3 |
|
1781 |
+ m_TexEnvs: |
|
1782 |
+ - _MainTex: |
|
1783 |
+ m_Texture: {fileID: 0} |
|
1784 |
+ m_Scale: {x: 1, y: 1} |
|
1785 |
+ m_Offset: {x: 0, y: 0} |
|
1786 |
+ m_Ints: [] |
|
1787 |
+ m_Floats: |
|
1788 |
+ - _ColorMask: 15 |
|
1789 |
+ - _Stencil: 0 |
|
1790 |
+ - _StencilComp: 8 |
|
1791 |
+ - _StencilOp: 0 |
|
1792 |
+ - _StencilReadMask: 255 |
|
1793 |
+ - _StencilWriteMask: 255 |
|
1794 |
+ - _UseUIAlphaClip: 0 |
|
1795 |
+ m_Colors: |
|
1796 |
+ - _WidthHeightRadius: {r: 24, g: 10, b: 4, a: 0} |
|
1797 |
+ m_BuildTextureStacks: [] |
|
1794 | 1798 |
--- !u!1 &1686366219 |
1795 | 1799 |
GameObject: |
1796 | 1800 |
m_ObjectHideFlags: 0 |
... | ... | @@ -2125,6 +2129,45 @@ |
2125 | 2129 |
m_Children: [] |
2126 | 2130 |
m_Father: {fileID: 0} |
2127 | 2131 |
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} |
2132 |
+--- !u!21 &1820346284 |
|
2133 |
+Material: |
|
2134 |
+ serializedVersion: 8 |
|
2135 |
+ m_ObjectHideFlags: 0 |
|
2136 |
+ m_CorrespondingSourceObject: {fileID: 0} |
|
2137 |
+ m_PrefabInstance: {fileID: 0} |
|
2138 |
+ m_PrefabAsset: {fileID: 0} |
|
2139 |
+ m_Name: UI/RoundedCorners/RoundedCorners |
|
2140 |
+ m_Shader: {fileID: 4800000, guid: 0bd2ec5d73751e34a814274a454bec41, type: 3} |
|
2141 |
+ m_Parent: {fileID: 0} |
|
2142 |
+ m_ModifiedSerializedProperties: 0 |
|
2143 |
+ m_ValidKeywords: [] |
|
2144 |
+ m_InvalidKeywords: [] |
|
2145 |
+ m_LightmapFlags: 4 |
|
2146 |
+ m_EnableInstancingVariants: 0 |
|
2147 |
+ m_DoubleSidedGI: 0 |
|
2148 |
+ m_CustomRenderQueue: -1 |
|
2149 |
+ stringTagMap: {} |
|
2150 |
+ disabledShaderPasses: [] |
|
2151 |
+ m_LockedProperties: |
|
2152 |
+ m_SavedProperties: |
|
2153 |
+ serializedVersion: 3 |
|
2154 |
+ m_TexEnvs: |
|
2155 |
+ - _MainTex: |
|
2156 |
+ m_Texture: {fileID: 0} |
|
2157 |
+ m_Scale: {x: 1, y: 1} |
|
2158 |
+ m_Offset: {x: 0, y: 0} |
|
2159 |
+ m_Ints: [] |
|
2160 |
+ m_Floats: |
|
2161 |
+ - _ColorMask: 15 |
|
2162 |
+ - _Stencil: 0 |
|
2163 |
+ - _StencilComp: 8 |
|
2164 |
+ - _StencilOp: 0 |
|
2165 |
+ - _StencilReadMask: 255 |
|
2166 |
+ - _StencilWriteMask: 255 |
|
2167 |
+ - _UseUIAlphaClip: 0 |
|
2168 |
+ m_Colors: |
|
2169 |
+ - _WidthHeightRadius: {r: 55, g: 20, b: 8, a: 0} |
|
2170 |
+ m_BuildTextureStacks: [] |
|
2128 | 2171 |
--- !u!1 &1843438519 |
2129 | 2172 |
GameObject: |
2130 | 2173 |
m_ObjectHideFlags: 0 |
... | ... | @@ -2371,7 +2414,7 @@ |
2371 | 2414 |
m_PrefabAsset: {fileID: 0} |
2372 | 2415 |
m_GameObject: {fileID: 1861891630} |
2373 | 2416 |
m_CullTransparentMesh: 1 |
2374 |
---- !u!21 &1949174212 |
|
2417 |
+--- !u!21 &1887308933 |
|
2375 | 2418 |
Material: |
2376 | 2419 |
serializedVersion: 8 |
2377 | 2420 |
m_ObjectHideFlags: 0 |
... | ... | @@ -2408,7 +2451,7 @@ |
2408 | 2451 |
- _StencilWriteMask: 255 |
2409 | 2452 |
- _UseUIAlphaClip: 0 |
2410 | 2453 |
m_Colors: |
2411 |
- - _WidthHeightRadius: {r: 24, g: 10, b: 4, a: 0} |
|
2454 |
+ - _WidthHeightRadius: {r: 50, g: 20, b: 8, a: 0} |
|
2412 | 2455 |
m_BuildTextureStacks: [] |
2413 | 2456 |
--- !u!1 &1951601262 |
2414 | 2457 |
GameObject: |
... | ... | @@ -2438,7 +2481,7 @@ |
2438 | 2481 |
m_PrefabInstance: {fileID: 0} |
2439 | 2482 |
m_PrefabAsset: {fileID: 0} |
2440 | 2483 |
m_GameObject: {fileID: 1951601262} |
2441 |
- m_Enabled: 0 |
|
2484 |
+ m_Enabled: 1 |
|
2442 | 2485 |
m_EditorHideFlags: 0 |
2443 | 2486 |
m_Script: {fileID: 11500000, guid: 1fc2a484125ad9c45977fdae7a8f3838, type: 3} |
2444 | 2487 |
m_Name: |
... | ... | @@ -2828,3 +2871,4 @@ |
2828 | 2871 |
- {fileID: 5975180139057207256} |
2829 | 2872 |
- {fileID: 1260657660} |
2830 | 2873 |
- {fileID: 1951601268} |
2874 |
+ - {fileID: 1564624329} |
--- VRTK/Assets/01.Junil/Script/DebugTxtCall.cs
+++ VRTK/Assets/01.Junil/Script/DebugTxtCall.cs
... | ... | @@ -59,7 +59,7 @@ |
59 | 59 |
|
60 | 60 |
return; |
61 | 61 |
} |
62 |
- debugTxt.text = debug; |
|
62 |
+ debugTxt.text += debug + "\n"; |
|
63 | 63 |
} |
64 | 64 |
|
65 | 65 |
public void CallDebugTwo(string debug) |
--- VRTK/Assets/01.Junil/Script/Test/TestScrpit.cs
+++ VRTK/Assets/01.Junil/Script/Test/TestScrpit.cs
... | ... | @@ -1,8 +1,11 @@ |
1 | 1 |
|
2 | 2 |
using I2.Loc; |
3 |
+using Oculus.Platform; |
|
4 |
+using Oculus.Platform.Models; |
|
3 | 5 |
using System; |
4 | 6 |
using System.Collections; |
5 | 7 |
using System.Collections.Generic; |
8 |
+using System.IO; |
|
6 | 9 |
using TMPro; |
7 | 10 |
using UnityEngine; |
8 | 11 |
using UnityEngine.InputSystem; |
... | ... | @@ -11,6 +14,17 @@ |
11 | 14 |
|
12 | 15 |
public class TestScrpit : MonoBehaviour |
13 | 16 |
{ |
17 |
+ |
|
18 |
+ public enum Contents{ |
|
19 |
+ None, |
|
20 |
+ Taekwondo, |
|
21 |
+ Taichi, |
|
22 |
+ KPop, |
|
23 |
+ Modern |
|
24 |
+ } |
|
25 |
+ |
|
26 |
+ [SerializeField] private Contents nowContent; |
|
27 |
+ |
|
14 | 28 |
[Header("Effect")] |
15 | 29 |
public GameObject particalObj; |
16 | 30 |
public GameObject effectObj; |
... | ... | @@ -20,31 +34,38 @@ |
20 | 34 |
public SpriteAtlas spriteAtlas; |
21 | 35 |
public Image image; |
22 | 36 |
|
37 |
+ public bool isDownloaded = false; |
|
23 | 38 |
|
24 | 39 |
// Start is called before the first frame update |
25 |
- void Start() |
|
40 |
+ void Awake() |
|
26 | 41 |
{ |
42 |
+ AppDataRepo.Instance.Builder(); |
|
43 |
+ nowContent = Contents.Taekwondo; |
|
27 | 44 |
|
28 |
- spriteAtlas = Resources.Load<SpriteAtlas>("Atlas/VRSpriteAtlas"); |
|
29 |
- image.sprite = spriteAtlas.GetSprite("poomsae5"); |
|
45 |
+ } |
|
46 |
+ private void Start() { |
|
47 |
+ isDownloaded = false; |
|
48 |
+ AssetFile.GetList().OnComplete(GetAssetBundleCallBack); |
|
49 |
+ DebugTxtCall.Instance.CallDebug("AssetFile IN"); |
|
30 | 50 |
} |
31 | 51 |
|
32 | 52 |
private void Update() |
33 | 53 |
{ |
34 | 54 |
if (test[0].action.WasPressedThisFrame()) |
35 | 55 |
{ |
36 |
- DebugTxtCall.Instance.CallDebug("menu"); |
|
56 |
+ StartCoroutine(GetVRAssetBundle("go0003")); |
|
57 |
+ |
|
37 | 58 |
} |
38 | 59 |
|
39 |
- if (test[1].action.WasPressedThisFrame()) |
|
40 |
- { |
|
41 |
- DebugTxtCall.Instance.CallDebug("menuBtn"); |
|
42 |
- } |
|
60 |
+ // if (test[1].action.WasPressedThisFrame()) |
|
61 |
+ // { |
|
62 |
+ // DebugTxtCall.Instance.CallDebug("menuBtn"); |
|
63 |
+ // } |
|
43 | 64 |
|
44 |
- if (test[2].action.WasPressedThisFrame()) |
|
45 |
- { |
|
46 |
- DebugTxtCall.Instance.CallDebug("mod"); |
|
47 |
- } |
|
65 |
+ // if (test[2].action.WasPressedThisFrame()) |
|
66 |
+ // { |
|
67 |
+ // DebugTxtCall.Instance.CallDebug("mod"); |
|
68 |
+ // } |
|
48 | 69 |
|
49 | 70 |
} |
50 | 71 |
|
... | ... | @@ -56,5 +77,136 @@ |
56 | 77 |
|
57 | 78 |
} // SetCurrentTimeUI |
58 | 79 |
|
59 |
- |
|
80 |
+ public void EndDownload(){ |
|
81 |
+ isDownloaded = true; |
|
82 |
+ |
|
83 |
+ if(File.Exists(MMDefine.FULL_FILE_PATH + "vrtaekwondo_go0003")){ |
|
84 |
+ DebugTxtCall.Instance.CallDebug($"vrtaekwondo_go0003 EndDownload 있다"); |
|
85 |
+ } |
|
86 |
+ else{ |
|
87 |
+ DebugTxtCall.Instance.CallDebug($"vrtaekwondo_go0003 EndDownload 없다"); |
|
88 |
+ } |
|
89 |
+ } |
|
90 |
+ |
|
91 |
+ |
|
92 |
+ |
|
93 |
+ |
|
94 |
+/// <summary> |
|
95 |
+ /// 앱의 에셋파일 리스트를 각각 파싱하여 파일명을 찾고, AppDataRepo의 assetFileList 구성 |
|
96 |
+ /// </summary> |
|
97 |
+ /// <param name="msg"></param> |
|
98 |
+ private void GetAssetBundleCallBack(Message<AssetDetailsList> msg) |
|
99 |
+ { |
|
100 |
+ if (msg.IsError) |
|
101 |
+ { |
|
102 |
+ return; |
|
103 |
+ } |
|
104 |
+ |
|
105 |
+ string[] units; |
|
106 |
+ string fileName; |
|
107 |
+ int crucialIdx, i; |
|
108 |
+ |
|
109 |
+ foreach (var ad in msg.GetAssetDetailsList()) |
|
110 |
+ { |
|
111 |
+ units = ad.Filepath.Split("/"); |
|
112 |
+ fileName = ""; |
|
113 |
+ crucialIdx = i = 0; |
|
114 |
+ for (i = 0; i < units.Length; i++) |
|
115 |
+ { |
|
116 |
+ if (units[i].CompareTo(MMDefine.PACKAGE_PATH) == 0) |
|
117 |
+ { |
|
118 |
+ crucialIdx = i + 1; |
|
119 |
+ break; |
|
120 |
+ } |
|
121 |
+ } |
|
122 |
+ if (crucialIdx < units.Length) |
|
123 |
+ { |
|
124 |
+ fileName += units[crucialIdx]; |
|
125 |
+ } |
|
126 |
+ for (i = crucialIdx + 1; i < units.Length; i++) |
|
127 |
+ { |
|
128 |
+ fileName += "/"; |
|
129 |
+ fileName += units[i]; |
|
130 |
+ } |
|
131 |
+ AppDataRepo.Instance.AddAssetFileUnit(new AssetFileUnitForm(ad.AssetId, fileName, ad.IapStatus, ad.DownloadStatus)); |
|
132 |
+ } |
|
133 |
+ |
|
134 |
+ DebugTxtCall.Instance.CallDebug("AssetFileList End"); |
|
135 |
+ |
|
136 |
+ AppDataRepo.Instance.AssetFileListLoadComplete(); |
|
137 |
+ } |
|
138 |
+ |
|
139 |
+ |
|
140 |
+ IEnumerator GetVRAssetBundle(string bundleName) |
|
141 |
+ { |
|
142 |
+ yield return null; |
|
143 |
+ DebugTxtCall.Instance.CallDebug("GetVRAssetBundle IN"); |
|
144 |
+ |
|
145 |
+ |
|
146 |
+ GameObject tempInstructor_ = null; |
|
147 |
+ AnimationClip tempClip_ = null; |
|
148 |
+ |
|
149 |
+ |
|
150 |
+ string tempBundleName_ = string.Empty; |
|
151 |
+ // { 현재 컨텐츠를 확인하고 관련 에셋번들 리스트 위치 번호를 가져오는 과정 |
|
152 |
+ int tempContentNum_ = -1; |
|
153 |
+ |
|
154 |
+ if(nowContent == Contents.Taekwondo){ |
|
155 |
+ tempContentNum_ = MMDefine.VRTAEKWONDO; |
|
156 |
+ } |
|
157 |
+ else if(nowContent == Contents.Taichi){ |
|
158 |
+ } |
|
159 |
+ else if(nowContent == Contents.KPop){ |
|
160 |
+ } |
|
161 |
+ else if(nowContent == Contents.Modern){ |
|
162 |
+ } |
|
163 |
+ |
|
164 |
+ // 이름 규칙에 맞게 여기서 만들기? |
|
165 |
+ tempBundleName_ = MMHelper.GetAssetBundleName(tempContentNum_) + $"_{bundleName.ToLower()}"; |
|
166 |
+ DebugTxtCall.Instance.CallDebug(tempBundleName_); |
|
167 |
+ |
|
168 |
+ if(File.Exists(MMDefine.FULL_FILE_PATH + "vrui_animplay")){ |
|
169 |
+ DebugTxtCall.Instance.CallDebug("vrui_animplay 파일이 있다"); |
|
170 |
+ |
|
171 |
+ |
|
172 |
+ } |
|
173 |
+ if(File.Exists(MMDefine.FULL_FILE_PATH + "vrmap_lobby01")){ |
|
174 |
+ DebugTxtCall.Instance.CallDebug("vrmap_lobby01 파일이 있다"); |
|
175 |
+ |
|
176 |
+ |
|
177 |
+ } |
|
178 |
+ |
|
179 |
+ // 먼저 로컬에 강사 파일이 있는지 확인 후 없으면 다운 |
|
180 |
+ if(File.Exists(MMDefine.FULL_FILE_PATH + tempBundleName_)){ |
|
181 |
+ DebugTxtCall.Instance.CallDebug("파일이 있다?"); |
|
182 |
+ |
|
183 |
+ |
|
184 |
+ } |
|
185 |
+ else{ |
|
186 |
+ DebugTxtCall.Instance.CallDebug("파일이 없다 당연"); |
|
187 |
+ |
|
188 |
+ DebugTxtCall.Instance.CallDebug("코루틴 시작"+ DateTime.Now); |
|
189 |
+ |
|
190 |
+ // 관련 파일이 없어 에셋번들을 다운받아야할 경우 |
|
191 |
+ yield return StartCoroutine(MMHelper.DownloadAssetFile(tempBundleName_, EndDownload)); |
|
192 |
+ DebugTxtCall.Instance.CallDebug("코루틴 끝" + DateTime.Now); |
|
193 |
+ |
|
194 |
+ // yield return isDownloaded == true; |
|
195 |
+ // isDownloaded = false; |
|
196 |
+ |
|
197 |
+ //yield return StartCoroutine(MMHelper.AsyncLoader(tempBundleName_)); |
|
198 |
+ |
|
199 |
+ } |
|
200 |
+ |
|
201 |
+ |
|
202 |
+ |
|
203 |
+ // string[] tempName_ = tempBundleName_.Split("_"); |
|
204 |
+ |
|
205 |
+ // yield return StartCoroutine(MMHelper.GetAssetObjAsync<GameObject>(tempName_[0], tempName_[tempName_.Length - 1], |
|
206 |
+ // callBack => { |
|
207 |
+ // tempInstructor_ = callBack; |
|
208 |
+ // })); |
|
209 |
+ |
|
210 |
+ |
|
211 |
+ } |
|
60 | 212 |
} |
--- VRTK/Assets/VRRes/VRUI/00.Prefab/VRUI_KPop.prefab.meta
+++ VRTK/Assets/VRRes/VRUI/00.Prefab/VRUI_KPop.prefab.meta
... | ... | @@ -3,5 +3,5 @@ |
3 | 3 |
PrefabImporter: |
4 | 4 |
externalObjects: {} |
5 | 5 |
userData: |
6 |
- assetBundleName: vrui/vrui_kpop |
|
6 |
+ assetBundleName: |
|
7 | 7 |
assetBundleVariant: |
--- VRTK/Assets/VRRes/VRUI/00.Prefab/vrui.prefab
+++ VRTK/Assets/VRRes/VRUI/00.Prefab/vrui.prefab
This diff is too big to display. |
--- VRTK/ProjectSettings/EditorBuildSettings.asset
+++ VRTK/ProjectSettings/EditorBuildSettings.asset
... | ... | @@ -5,13 +5,13 @@ |
5 | 5 |
m_ObjectHideFlags: 0 |
6 | 6 |
serializedVersion: 2 |
7 | 7 |
m_Scenes: |
8 |
- - enabled: 1 |
|
8 |
+ - enabled: 0 |
|
9 | 9 |
path: Assets/00.MAINSTREAM/Scenes/InitScene.unity |
10 | 10 |
guid: 5f4f9138efe79d1448dc037a021875be |
11 |
- - enabled: 1 |
|
11 |
+ - enabled: 0 |
|
12 | 12 |
path: Assets/00.MAINSTREAM/Scenes/PlayScene.unity |
13 | 13 |
guid: 14ff1613d7e77bb4baa1d0c0a984254f |
14 |
- - enabled: 0 |
|
14 |
+ - enabled: 1 |
|
15 | 15 |
path: Assets/01.Junil/Scenes/00.ModelIkTest.unity |
16 | 16 |
guid: dbe716d95baf0b1479d449c3ff9538fc |
17 | 17 |
- enabled: 0 |
--- VRTK/ProjectSettings/ProjectSettings.asset
+++ VRTK/ProjectSettings/ProjectSettings.asset
... | ... | @@ -225,7 +225,7 @@ |
225 | 225 |
iPhone: 0 |
226 | 226 |
tvOS: 0 |
227 | 227 |
overrideDefaultApplicationIdentifier: 1 |
228 |
- AndroidBundleVersionCode: 167 |
|
228 |
+ AndroidBundleVersionCode: 181 |
|
229 | 229 |
AndroidMinSdkVersion: 29 |
230 | 230 |
AndroidTargetSdkVersion: 32 |
231 | 231 |
AndroidPreferredInstallLocation: 0 |
Add a comment
Delete comment
Once you delete this comment, you won't be able to recover it. Are you sure you want to delete this comment?