forked from cgvr/DeltaVR
Compare commits
27 Commits
d6c2878491
..
master
| Author | SHA1 | Date | |
|---|---|---|---|
| 377d3ea120 | |||
| 79c6ed955e | |||
| ea9357ad14 | |||
| 8c7204b17a | |||
| 04c77c94bf | |||
| f798030c2b | |||
| f8b5af0b85 | |||
| 693cafc3bc | |||
| 2214a0c6cc | |||
| 34c693aaa3 | |||
| 7c67a4b44b | |||
| bd5cc0f405 | |||
| 4e55b7e9ab | |||
| dea42068f7 | |||
| b021fd0110 | |||
| 7b45d623d1 | |||
| f42356dd7a | |||
| 50002adb61 | |||
| ee629e2593 | |||
| 4796869a29 | |||
| 398f22efdd | |||
| b40b075540 | |||
| cad4c2cbbc | |||
| 6a77893ed7 | |||
| 439094f74a | |||
| c78886e492 | |||
| 3edef118af |
@@ -104,6 +104,9 @@ NetrworkManagerUI.prefab.meta
|
|||||||
CustomNetworkManager.prefab
|
CustomNetworkManager.prefab
|
||||||
CustomNetworkManager.prefab.meta
|
CustomNetworkManager.prefab.meta
|
||||||
|
|
||||||
|
#FMOD Studio
|
||||||
|
DeltaVRFMOD/.cache
|
||||||
|
|
||||||
|
|
||||||
# Project-specific files
|
# Project-specific files
|
||||||
config.json
|
config.json
|
||||||
@@ -1,34 +1,20 @@
|
|||||||
### TODO
|
# Testing the pipeline
|
||||||
* teha build kus archery range'is spawnitud objektid
|
|
||||||
* FMOD ChannelControl errorid
|
|
||||||
* speech-to-text:
|
|
||||||
* uurida miks buildis Whisper halvemini töötab
|
|
||||||
* proovida suuremat Whisperi mudelit, äkki töötab mürases keskkonnas paremini
|
|
||||||
* npc character:
|
|
||||||
* klaas on näha temast eespool
|
|
||||||
* shape detection:
|
|
||||||
* professor võiks öelda "good job, continue..." pärast esimest successi
|
|
||||||
* kui kõik configurationid tehtud, siis professor tuleb uksest välja ja ütleb "thank you"
|
|
||||||
* peab mängijale kuidagi selgitama, kuidas scale'ida prinditud objekte
|
|
||||||
* prinditud objekti scale'imisele min ja max size limiit
|
|
||||||
* soft particle'id, et ei clipiks
|
|
||||||
* archery range:
|
|
||||||
* võiks jääda kordama viimast instruktsiooni, kui mängija ei progressi edasi
|
|
||||||
* kui archery range läbi, võiks npc öelda "good job, try again..."
|
|
||||||
* UFO möödalendamise animation/cutscene alguses kui ütleb "delta attacked by ufos"
|
|
||||||
* cafe:
|
|
||||||
* võiks saada hinnata saadud tellimust
|
|
||||||
* "order again" nupp
|
|
||||||
|
|
||||||
Can't/Won't Do:
|
Install required dependency libraries using
|
||||||
* glTF loading: vahetada ära shader Universal render pipeline Lit, mitte panna buildi kaasa glTf oma - **ei saa, objekt on siis ilma tekstuurita, lihtsalt hall**
|
```
|
||||||
|
pip install -r requirements.txt
|
||||||
|
```
|
||||||
|
|
||||||
|
Make a copy of `.env.example`, rename it as `.env`, and insert the necessary config values.
|
||||||
|
|
||||||
### Notes
|
## Python notebooks
|
||||||
* Functionalities that were implemented using major help from AI:
|
|
||||||
* animating NPC mouth movement based on voice amplitude
|
* [`local_image_generation.ipynb`](notebooks/local_image_generation.ipynb)
|
||||||
* adjusting spawned gltf objects' scale
|
* [`local_model_generation.ipynb`](notebooks/local_model_generation.ipynb)
|
||||||
* porting InvokeAI client and TRELLIS client to Unity scripts
|
* [`subprocess_test.ipynb`](notebooks/subprocess_test.ipynb)
|
||||||
* Getting Whisper stream to work with FMOD instead of Unity default audio
|
|
||||||
* TRELLIS: added functionality to specify texture baking optimisation total steps as an argument (`texture_opt_total_steps`), to replace the hardcoded 2500. But this is not tracked in Git (because modified this https://github.com/IgorAherne/trellis-stable-projectorz/releases/tag/latest)
|
## Python scripts
|
||||||
* Custom Shader Variant Collection to include glTF-pbrMetallicRoughness shader in build
|
|
||||||
|
* [`generate_image_local.py`](generate_image_local.py)
|
||||||
|
* [`generate_model_local.py`](generate_model_local.py)
|
||||||
|
* [`start_pipeline.py`](start_pipeline.py)
|
||||||
|
|||||||
@@ -6,9 +6,17 @@ import numpy as np
|
|||||||
FRAME_DURATION = 0.02 # 20 ms windows
|
FRAME_DURATION = 0.02 # 20 ms windows
|
||||||
GAIN = 1.0 # multiply RMS values (set to e.g. 30.0 if you want larger values)
|
GAIN = 1.0 # multiply RMS values (set to e.g. 30.0 if you want larger values)
|
||||||
EXTENSION = ".txt" # output file extension
|
EXTENSION = ".txt" # output file extension
|
||||||
|
OVERWRITE = False # set True to regenerate even if .txt exists
|
||||||
|
|
||||||
|
|
||||||
def process_wav(filepath):
|
def process_wav(filepath):
|
||||||
|
# Compute output path first (so we can decide whether to skip)
|
||||||
|
out_path = os.path.splitext(filepath)[0] + EXTENSION
|
||||||
|
|
||||||
|
if not OVERWRITE and os.path.exists(out_path):
|
||||||
|
print(f"Skipping (already exists): {out_path}")
|
||||||
|
return
|
||||||
|
|
||||||
print(f"Processing: {filepath}")
|
print(f"Processing: {filepath}")
|
||||||
|
|
||||||
# Load audio
|
# Load audio
|
||||||
@@ -29,7 +37,6 @@ def process_wav(filepath):
|
|||||||
rms = rms * GAIN
|
rms = rms * GAIN
|
||||||
|
|
||||||
# Save to .txt
|
# Save to .txt
|
||||||
out_path = os.path.splitext(filepath)[0] + EXTENSION
|
|
||||||
np.savetxt(out_path, rms, fmt="%.8f")
|
np.savetxt(out_path, rms, fmt="%.8f")
|
||||||
|
|
||||||
print(f"Saved RMS → {out_path}")
|
print(f"Saved RMS → {out_path}")
|
||||||
|
|||||||
@@ -1,49 +0,0 @@
|
|||||||
3.170447962475009263e-05
|
|
||||||
2.923115389421582222e-04
|
|
||||||
2.510738931596279144e-02
|
|
||||||
1.111792679876089096e-02
|
|
||||||
6.692767888307571411e-02
|
|
||||||
1.006313711404800415e-01
|
|
||||||
7.780694961547851562e-02
|
|
||||||
5.686730891466140747e-02
|
|
||||||
5.614304915070533752e-02
|
|
||||||
4.554714635014533997e-02
|
|
||||||
4.514135792851448059e-02
|
|
||||||
5.479728057980537415e-02
|
|
||||||
4.272024706006050110e-02
|
|
||||||
3.989587724208831787e-02
|
|
||||||
4.298635944724082947e-02
|
|
||||||
4.074911773204803467e-02
|
|
||||||
2.244980260729789734e-02
|
|
||||||
1.105279754847288132e-02
|
|
||||||
1.347438804805278778e-02
|
|
||||||
1.654553040862083435e-02
|
|
||||||
1.846965588629245758e-02
|
|
||||||
2.045047841966152191e-02
|
|
||||||
1.407719496637582779e-02
|
|
||||||
6.578906439244747162e-03
|
|
||||||
1.353173051029443741e-02
|
|
||||||
1.625132374465465546e-02
|
|
||||||
5.863697826862335205e-02
|
|
||||||
1.110599413514137268e-01
|
|
||||||
9.950184077024459839e-02
|
|
||||||
1.184522062540054321e-01
|
|
||||||
1.000181213021278381e-01
|
|
||||||
6.772108376026153564e-02
|
|
||||||
7.621638476848602295e-02
|
|
||||||
3.018615581095218658e-02
|
|
||||||
9.624224901199340820e-02
|
|
||||||
1.259753555059432983e-01
|
|
||||||
1.276500672101974487e-01
|
|
||||||
1.206035763025283813e-01
|
|
||||||
1.011835709214210510e-01
|
|
||||||
6.155343726277351379e-02
|
|
||||||
3.734333068132400513e-02
|
|
||||||
2.485111355781555176e-02
|
|
||||||
2.122259326279163361e-02
|
|
||||||
1.139380130916833878e-02
|
|
||||||
7.472451310604810715e-03
|
|
||||||
5.807624198496341705e-03
|
|
||||||
1.960268709808588028e-03
|
|
||||||
8.761089411564171314e-04
|
|
||||||
3.071058890782296658e-04
|
|
||||||
+22
-23
@@ -14,7 +14,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 5,
|
"execution_count": 4,
|
||||||
"id": "77b23cd8",
|
"id": "77b23cd8",
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [],
|
"outputs": [],
|
||||||
@@ -22,29 +22,16 @@
|
|||||||
"# API endpoint\n",
|
"# API endpoint\n",
|
||||||
"BASE_URL = \"http://127.0.0.1:7960\"\n",
|
"BASE_URL = \"http://127.0.0.1:7960\"\n",
|
||||||
"\n",
|
"\n",
|
||||||
"def generate_no_preview(image_base64: str):\n",
|
"def generate_no_preview(data: dict):\n",
|
||||||
" \"\"\"Generate 3D model from a single base64-encoded image without previews.\n",
|
" \"\"\"Generate 3D model from a single base64-encoded image without previews.\n",
|
||||||
" \n",
|
" \n",
|
||||||
" Args:\n",
|
" Args:\n",
|
||||||
" image_base64: Base64 string of the image (without 'data:image/...' prefix)\n",
|
" image_base64: Base64 string of the image (without 'data:image/...' prefix)\n",
|
||||||
" \"\"\"\n",
|
" \"\"\"\n",
|
||||||
" try:\n",
|
" try:\n",
|
||||||
" # Set generation parameters\n",
|
|
||||||
" params = {\n",
|
|
||||||
" 'image_base64': image_base64,\n",
|
|
||||||
" 'seed': 42,\n",
|
|
||||||
" 'ss_guidance_strength': 7.5,\n",
|
|
||||||
" 'ss_sampling_steps': 30,\n",
|
|
||||||
" 'slat_guidance_strength': 7.5,\n",
|
|
||||||
" 'slat_sampling_steps': 30,\n",
|
|
||||||
" 'mesh_simplify_ratio': 0.95,\n",
|
|
||||||
" 'texture_size': 1024,\n",
|
|
||||||
" 'output_format': 'glb'\n",
|
|
||||||
" }\n",
|
|
||||||
" \n",
|
|
||||||
" # Start generation\n",
|
" # Start generation\n",
|
||||||
" print(\"Starting generation...\")\n",
|
" print(\"Starting generation...\")\n",
|
||||||
" response = requests.post(f\"{BASE_URL}/generate_no_preview\", data=params)\n",
|
" response = requests.post(f\"{BASE_URL}/generate_no_preview\", data)\n",
|
||||||
" print(\"Response status:\", response.status_code)\n",
|
" print(\"Response status:\", response.status_code)\n",
|
||||||
" response.raise_for_status()\n",
|
" response.raise_for_status()\n",
|
||||||
" \n",
|
" \n",
|
||||||
@@ -75,7 +62,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 6,
|
"execution_count": 11,
|
||||||
"id": "eb122295",
|
"id": "eb122295",
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [],
|
"outputs": [],
|
||||||
@@ -85,7 +72,19 @@
|
|||||||
" image_data = image_file.read()\n",
|
" image_data = image_file.read()\n",
|
||||||
"\n",
|
"\n",
|
||||||
" base64_encoded = base64.b64encode(image_data).decode('utf-8')\n",
|
" base64_encoded = base64.b64encode(image_data).decode('utf-8')\n",
|
||||||
" model = generate_no_preview(base64_encoded)\n",
|
" # Set generation parameters\n",
|
||||||
|
" data = {\n",
|
||||||
|
" 'image_base64': base64_encoded,\n",
|
||||||
|
" 'seed': 42,\n",
|
||||||
|
" 'ss_guidance_strength': 8,\n",
|
||||||
|
" 'ss_sampling_steps': 10,\n",
|
||||||
|
" 'slat_guidance_strength': 6,\n",
|
||||||
|
" 'slat_sampling_steps': 10,\n",
|
||||||
|
" 'mesh_simplify_ratio': 0.9958,\n",
|
||||||
|
" 'texture_size': 1024,\n",
|
||||||
|
" 'output_format': 'glb'\n",
|
||||||
|
" }\n",
|
||||||
|
" model = generate_no_preview(data)\n",
|
||||||
" \n",
|
" \n",
|
||||||
" with open(output_path, 'wb') as f:\n",
|
" with open(output_path, 'wb') as f:\n",
|
||||||
" f.write(model)\n",
|
" f.write(model)\n",
|
||||||
@@ -94,7 +93,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 9,
|
"execution_count": 12,
|
||||||
"id": "2ce7dfdf",
|
"id": "2ce7dfdf",
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [
|
"outputs": [
|
||||||
@@ -107,14 +106,14 @@
|
|||||||
"Progress: 100%\n",
|
"Progress: 100%\n",
|
||||||
"Downloading model...\n",
|
"Downloading model...\n",
|
||||||
"Model downloaded.\n",
|
"Model downloaded.\n",
|
||||||
"Model saved to test_resources/style_test_3_model.glb\n"
|
"Model saved to test_resources/mesh_simplify_ratio_0.998.glb\n"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"source": [
|
"source": [
|
||||||
"\n",
|
"\n",
|
||||||
"image_path = 'test_resources/style_test_3.jpg'\n",
|
"image_path = 'test_resources/512x512.png'\n",
|
||||||
"output_path = \"test_resources/style_test_3_model.glb\"\n",
|
"output_path = \"test_resources/mesh_simplify_ratio_0.998.glb\"\n",
|
||||||
"\n",
|
"\n",
|
||||||
"generate_model(image_path, output_path)"
|
"generate_model(image_path, output_path)"
|
||||||
]
|
]
|
||||||
@@ -130,7 +129,7 @@
|
|||||||
],
|
],
|
||||||
"metadata": {
|
"metadata": {
|
||||||
"kernelspec": {
|
"kernelspec": {
|
||||||
"display_name": ".venv",
|
"display_name": ".venv (3.10.11)",
|
||||||
"language": "python",
|
"language": "python",
|
||||||
"name": "python3"
|
"name": "python3"
|
||||||
},
|
},
|
||||||
+242
@@ -0,0 +1,242 @@
|
|||||||
|
0.00000005
|
||||||
|
0.00000003
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.00036824
|
||||||
|
0.03882600
|
||||||
|
0.04177133
|
||||||
|
0.02403286
|
||||||
|
0.09960490
|
||||||
|
0.10405141
|
||||||
|
0.07374308
|
||||||
|
0.07527987
|
||||||
|
0.03196403
|
||||||
|
0.01316589
|
||||||
|
0.01331185
|
||||||
|
0.03220127
|
||||||
|
0.12253414
|
||||||
|
0.14686617
|
||||||
|
0.12083520
|
||||||
|
0.10250615
|
||||||
|
0.04661508
|
||||||
|
0.01492038
|
||||||
|
0.01040760
|
||||||
|
0.01080491
|
||||||
|
0.03343014
|
||||||
|
0.03452057
|
||||||
|
0.08047014
|
||||||
|
0.13933837
|
||||||
|
0.10572984
|
||||||
|
0.09591001
|
||||||
|
0.09608150
|
||||||
|
0.08540177
|
||||||
|
0.09933743
|
||||||
|
0.10790430
|
||||||
|
0.11058167
|
||||||
|
0.13160037
|
||||||
|
0.06650670
|
||||||
|
0.03915674
|
||||||
|
0.03693420
|
||||||
|
0.04971446
|
||||||
|
0.03620111
|
||||||
|
0.06649657
|
||||||
|
0.11552364
|
||||||
|
0.10445996
|
||||||
|
0.09714538
|
||||||
|
0.08278799
|
||||||
|
0.09152920
|
||||||
|
0.08658629
|
||||||
|
0.05098534
|
||||||
|
0.02467363
|
||||||
|
0.02987090
|
||||||
|
0.02563231
|
||||||
|
0.02510932
|
||||||
|
0.02980772
|
||||||
|
0.02069706
|
||||||
|
0.01281166
|
||||||
|
0.00566670
|
||||||
|
0.00150570
|
||||||
|
0.00020095
|
||||||
|
0.00000742
|
||||||
|
0.00000009
|
||||||
|
0.00000012
|
||||||
|
0.00000011
|
||||||
|
0.00000010
|
||||||
|
0.00000010
|
||||||
|
0.00000009
|
||||||
|
0.00000022
|
||||||
|
0.00000005
|
||||||
|
0.00001097
|
||||||
|
0.04429267
|
||||||
|
0.09924962
|
||||||
|
0.09210955
|
||||||
|
0.10632528
|
||||||
|
0.10751414
|
||||||
|
0.06163353
|
||||||
|
0.05821634
|
||||||
|
0.06596723
|
||||||
|
0.04842441
|
||||||
|
0.05856047
|
||||||
|
0.10333158
|
||||||
|
0.10103170
|
||||||
|
0.08816345
|
||||||
|
0.04771255
|
||||||
|
0.04730519
|
||||||
|
0.04158855
|
||||||
|
0.05243348
|
||||||
|
0.05098458
|
||||||
|
0.03500115
|
||||||
|
0.08092596
|
||||||
|
0.09854711
|
||||||
|
0.04113061
|
||||||
|
0.01454402
|
||||||
|
0.01907839
|
||||||
|
0.03828202
|
||||||
|
0.05046624
|
||||||
|
0.04319734
|
||||||
|
0.03666504
|
||||||
|
0.04976141
|
||||||
|
0.10466427
|
||||||
|
0.13796268
|
||||||
|
0.06061497
|
||||||
|
0.07129071
|
||||||
|
0.05450837
|
||||||
|
0.05630979
|
||||||
|
0.03684894
|
||||||
|
0.01367352
|
||||||
|
0.00608366
|
||||||
|
0.06432867
|
||||||
|
0.11517638
|
||||||
|
0.05077915
|
||||||
|
0.02521306
|
||||||
|
0.09515605
|
||||||
|
0.10619617
|
||||||
|
0.08939873
|
||||||
|
0.07993037
|
||||||
|
0.04875693
|
||||||
|
0.01546201
|
||||||
|
0.00356502
|
||||||
|
0.00079084
|
||||||
|
0.02424777
|
||||||
|
0.06102380
|
||||||
|
0.11638185
|
||||||
|
0.07587082
|
||||||
|
0.02516444
|
||||||
|
0.00761989
|
||||||
|
0.00276396
|
||||||
|
0.00242381
|
||||||
|
0.11056973
|
||||||
|
0.12456685
|
||||||
|
0.11282478
|
||||||
|
0.09799541
|
||||||
|
0.08472683
|
||||||
|
0.07964602
|
||||||
|
0.05019686
|
||||||
|
0.03458880
|
||||||
|
0.06462081
|
||||||
|
0.13280798
|
||||||
|
0.10013983
|
||||||
|
0.07293872
|
||||||
|
0.04550291
|
||||||
|
0.01720131
|
||||||
|
0.00380182
|
||||||
|
0.00101899
|
||||||
|
0.02245994
|
||||||
|
0.06382865
|
||||||
|
0.10524299
|
||||||
|
0.13267922
|
||||||
|
0.10135622
|
||||||
|
0.05452089
|
||||||
|
0.03518274
|
||||||
|
0.01694293
|
||||||
|
0.00530868
|
||||||
|
0.00184345
|
||||||
|
0.02273818
|
||||||
|
0.11510796
|
||||||
|
0.11920995
|
||||||
|
0.08493148
|
||||||
|
0.08406932
|
||||||
|
0.07499230
|
||||||
|
0.04316685
|
||||||
|
0.01455623
|
||||||
|
0.00360244
|
||||||
|
0.00098371
|
||||||
|
0.00005477
|
||||||
|
0.00000010
|
||||||
|
0.00000002
|
||||||
|
0.00000016
|
||||||
|
0.00000019
|
||||||
|
0.00000010
|
||||||
|
0.00000005
|
||||||
|
0.00000003
|
||||||
|
0.00000004
|
||||||
|
0.00000005
|
||||||
|
0.00000004
|
||||||
|
0.00000005
|
||||||
|
0.00000005
|
||||||
|
0.00000005
|
||||||
|
0.00000005
|
||||||
|
0.00000004
|
||||||
|
0.00000004
|
||||||
|
0.00000004
|
||||||
|
0.00000004
|
||||||
|
0.00000003
|
||||||
|
0.00000003
|
||||||
|
0.00000003
|
||||||
|
0.00000003
|
||||||
|
0.00000002
|
||||||
|
0.00000003
|
||||||
|
0.00000001
|
||||||
|
0.00000001
|
||||||
|
0.00000001
|
||||||
|
0.00000001
|
||||||
|
0.00000001
|
||||||
|
0.00000000
|
||||||
|
0.00000001
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.00464831
|
||||||
|
0.01679505
|
||||||
|
0.01644613
|
||||||
|
0.00761335
|
||||||
|
0.04794521
|
||||||
|
0.15165883
|
||||||
|
0.14422260
|
||||||
|
0.11421057
|
||||||
|
0.10831729
|
||||||
|
0.10226198
|
||||||
|
0.09510653
|
||||||
|
0.08230808
|
||||||
|
0.06091324
|
||||||
|
0.08704218
|
||||||
|
0.11292138
|
||||||
|
0.11823592
|
||||||
|
0.07064166
|
||||||
|
0.08501519
|
||||||
|
0.10195074
|
||||||
|
0.08617997
|
||||||
|
0.09215603
|
||||||
|
0.08520056
|
||||||
|
0.07150462
|
||||||
|
0.07387789
|
||||||
|
0.07179367
|
||||||
|
0.07710328
|
||||||
|
0.09889054
|
||||||
|
0.11394204
|
||||||
|
0.12855592
|
||||||
|
0.09594936
|
||||||
|
0.05344614
|
||||||
|
0.02629551
|
||||||
|
0.00702043
|
||||||
|
0.00639688
|
||||||
|
0.00356133
|
||||||
|
0.00343324
|
||||||
|
0.00178488
|
||||||
|
0.00017040
|
||||||
+7
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 38bc01876ee396a46b03ca91e612e687
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Binary file not shown.
+7
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 42e58ab8243a8c3449d391cc548d895c
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
+257
@@ -0,0 +1,257 @@
|
|||||||
|
0.00000005
|
||||||
|
0.00000003
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.02866505
|
||||||
|
0.03807113
|
||||||
|
0.04488242
|
||||||
|
0.10851473
|
||||||
|
0.09911134
|
||||||
|
0.08479626
|
||||||
|
0.10611577
|
||||||
|
0.12813284
|
||||||
|
0.08128907
|
||||||
|
0.07260925
|
||||||
|
0.04148039
|
||||||
|
0.01129543
|
||||||
|
0.03132603
|
||||||
|
0.04842420
|
||||||
|
0.12944126
|
||||||
|
0.12574370
|
||||||
|
0.09939571
|
||||||
|
0.08343700
|
||||||
|
0.04287383
|
||||||
|
0.01194310
|
||||||
|
0.00638063
|
||||||
|
0.00868709
|
||||||
|
0.01998390
|
||||||
|
0.03058048
|
||||||
|
0.05329744
|
||||||
|
0.13083695
|
||||||
|
0.12668352
|
||||||
|
0.10024661
|
||||||
|
0.10386836
|
||||||
|
0.08472306
|
||||||
|
0.11218496
|
||||||
|
0.14319295
|
||||||
|
0.13648318
|
||||||
|
0.13254981
|
||||||
|
0.04781179
|
||||||
|
0.03629516
|
||||||
|
0.03413614
|
||||||
|
0.03457404
|
||||||
|
0.03213657
|
||||||
|
0.05343652
|
||||||
|
0.09439317
|
||||||
|
0.12365869
|
||||||
|
0.09173419
|
||||||
|
0.09353486
|
||||||
|
0.07192323
|
||||||
|
0.03836626
|
||||||
|
0.01338022
|
||||||
|
0.00760281
|
||||||
|
0.01999712
|
||||||
|
0.02072252
|
||||||
|
0.01272902
|
||||||
|
0.00845736
|
||||||
|
0.00641201
|
||||||
|
0.00285632
|
||||||
|
0.00061737
|
||||||
|
0.00005392
|
||||||
|
0.00000020
|
||||||
|
0.00000018
|
||||||
|
0.00000019
|
||||||
|
0.00000017
|
||||||
|
0.00000015
|
||||||
|
0.00000016
|
||||||
|
0.00000013
|
||||||
|
0.00000011
|
||||||
|
0.00000011
|
||||||
|
0.00000008
|
||||||
|
0.00000010
|
||||||
|
0.00000006
|
||||||
|
0.00000007
|
||||||
|
0.00000003
|
||||||
|
0.00782415
|
||||||
|
0.01642422
|
||||||
|
0.02543612
|
||||||
|
0.05934152
|
||||||
|
0.07718527
|
||||||
|
0.11592234
|
||||||
|
0.11971953
|
||||||
|
0.06149256
|
||||||
|
0.03805179
|
||||||
|
0.05762681
|
||||||
|
0.05818856
|
||||||
|
0.04659332
|
||||||
|
0.08668210
|
||||||
|
0.10497145
|
||||||
|
0.12429776
|
||||||
|
0.11524499
|
||||||
|
0.04751239
|
||||||
|
0.02633372
|
||||||
|
0.03824132
|
||||||
|
0.04337949
|
||||||
|
0.03293408
|
||||||
|
0.03691372
|
||||||
|
0.03303327
|
||||||
|
0.07757192
|
||||||
|
0.13191013
|
||||||
|
0.09265970
|
||||||
|
0.02088793
|
||||||
|
0.02473713
|
||||||
|
0.02916055
|
||||||
|
0.03506608
|
||||||
|
0.05408846
|
||||||
|
0.03094980
|
||||||
|
0.10444548
|
||||||
|
0.15158002
|
||||||
|
0.08798907
|
||||||
|
0.04625344
|
||||||
|
0.06151570
|
||||||
|
0.05407208
|
||||||
|
0.03231843
|
||||||
|
0.01555239
|
||||||
|
0.00728854
|
||||||
|
0.04916612
|
||||||
|
0.10232492
|
||||||
|
0.07878979
|
||||||
|
0.06246471
|
||||||
|
0.05366619
|
||||||
|
0.10158715
|
||||||
|
0.11886908
|
||||||
|
0.07526539
|
||||||
|
0.02821623
|
||||||
|
0.01340943
|
||||||
|
0.00232617
|
||||||
|
0.00036846
|
||||||
|
0.03731488
|
||||||
|
0.03152382
|
||||||
|
0.03894958
|
||||||
|
0.03209079
|
||||||
|
0.00981623
|
||||||
|
0.00146699
|
||||||
|
0.00014517
|
||||||
|
0.00534313
|
||||||
|
0.06100523
|
||||||
|
0.15190409
|
||||||
|
0.10988420
|
||||||
|
0.12650685
|
||||||
|
0.11347217
|
||||||
|
0.05970725
|
||||||
|
0.04618064
|
||||||
|
0.05150063
|
||||||
|
0.03090077
|
||||||
|
0.03317851
|
||||||
|
0.08775605
|
||||||
|
0.13566470
|
||||||
|
0.10128807
|
||||||
|
0.04527346
|
||||||
|
0.01804154
|
||||||
|
0.00596208
|
||||||
|
0.00167694
|
||||||
|
0.00009594
|
||||||
|
0.00012192
|
||||||
|
0.01358539
|
||||||
|
0.07102436
|
||||||
|
0.12123850
|
||||||
|
0.12106773
|
||||||
|
0.10533741
|
||||||
|
0.13110749
|
||||||
|
0.05361572
|
||||||
|
0.02358464
|
||||||
|
0.01034726
|
||||||
|
0.00343355
|
||||||
|
0.00162977
|
||||||
|
0.03254148
|
||||||
|
0.12353230
|
||||||
|
0.12104879
|
||||||
|
0.10228956
|
||||||
|
0.07902068
|
||||||
|
0.03294208
|
||||||
|
0.01555405
|
||||||
|
0.00885278
|
||||||
|
0.00349990
|
||||||
|
0.00085096
|
||||||
|
0.00030811
|
||||||
|
0.00001531
|
||||||
|
0.00000017
|
||||||
|
0.00000016
|
||||||
|
0.00000014
|
||||||
|
0.00000013
|
||||||
|
0.00000013
|
||||||
|
0.00000011
|
||||||
|
0.00000029
|
||||||
|
0.00000028
|
||||||
|
0.00000010
|
||||||
|
0.00000008
|
||||||
|
0.00000007
|
||||||
|
0.00000007
|
||||||
|
0.00000005
|
||||||
|
0.00000005
|
||||||
|
0.00000003
|
||||||
|
0.00000005
|
||||||
|
0.00000002
|
||||||
|
0.00000002
|
||||||
|
0.00000001
|
||||||
|
0.00000001
|
||||||
|
0.00000001
|
||||||
|
0.00000001
|
||||||
|
0.00000000
|
||||||
|
0.00000001
|
||||||
|
0.00000001
|
||||||
|
0.00000001
|
||||||
|
0.00000001
|
||||||
|
0.00000002
|
||||||
|
0.00000002
|
||||||
|
0.00000001
|
||||||
|
0.00000002
|
||||||
|
0.00000001
|
||||||
|
0.00000001
|
||||||
|
0.00000001
|
||||||
|
0.00000001
|
||||||
|
0.00000456
|
||||||
|
0.01129090
|
||||||
|
0.01738315
|
||||||
|
0.02089866
|
||||||
|
0.01380159
|
||||||
|
0.13116765
|
||||||
|
0.11541200
|
||||||
|
0.10767516
|
||||||
|
0.11273928
|
||||||
|
0.10450145
|
||||||
|
0.08044391
|
||||||
|
0.08610874
|
||||||
|
0.07811639
|
||||||
|
0.08932848
|
||||||
|
0.09916812
|
||||||
|
0.08233824
|
||||||
|
0.07835159
|
||||||
|
0.08648565
|
||||||
|
0.08551071
|
||||||
|
0.11009068
|
||||||
|
0.12401471
|
||||||
|
0.09915505
|
||||||
|
0.07595969
|
||||||
|
0.06414745
|
||||||
|
0.06739331
|
||||||
|
0.06131895
|
||||||
|
0.09213228
|
||||||
|
0.09952611
|
||||||
|
0.08556054
|
||||||
|
0.09036897
|
||||||
|
0.08143000
|
||||||
|
0.04082204
|
||||||
|
0.01703065
|
||||||
|
0.00659234
|
||||||
|
0.00967564
|
||||||
|
0.00593357
|
||||||
|
0.00343951
|
||||||
|
0.00107827
|
||||||
|
0.00010090
|
||||||
+7
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 5898d7a0def449d47856bcc1ca7a29d6
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Binary file not shown.
+7
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 7cb93a4fb1b04374eaf023113b75af18
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,287 @@
|
|||||||
|
0.00000005
|
||||||
|
0.00000003
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.01041133
|
||||||
|
0.11050373
|
||||||
|
0.11571781
|
||||||
|
0.09685160
|
||||||
|
0.06781394
|
||||||
|
0.06115836
|
||||||
|
0.02671054
|
||||||
|
0.01714665
|
||||||
|
0.01123293
|
||||||
|
0.00581291
|
||||||
|
0.00527384
|
||||||
|
0.03901498
|
||||||
|
0.11867370
|
||||||
|
0.15407452
|
||||||
|
0.09560385
|
||||||
|
0.05615886
|
||||||
|
0.04482845
|
||||||
|
0.02856232
|
||||||
|
0.08357130
|
||||||
|
0.12180025
|
||||||
|
0.11046895
|
||||||
|
0.08895491
|
||||||
|
0.08778770
|
||||||
|
0.09132081
|
||||||
|
0.04692575
|
||||||
|
0.01269024
|
||||||
|
0.00540550
|
||||||
|
0.01323932
|
||||||
|
0.03548777
|
||||||
|
0.09886734
|
||||||
|
0.10633425
|
||||||
|
0.06211413
|
||||||
|
0.04629371
|
||||||
|
0.03601964
|
||||||
|
0.03145342
|
||||||
|
0.03699398
|
||||||
|
0.02851260
|
||||||
|
0.09810046
|
||||||
|
0.12985127
|
||||||
|
0.10250688
|
||||||
|
0.07980689
|
||||||
|
0.08739660
|
||||||
|
0.04454322
|
||||||
|
0.01042159
|
||||||
|
0.02879480
|
||||||
|
0.04266862
|
||||||
|
0.01084313
|
||||||
|
0.04596614
|
||||||
|
0.13443977
|
||||||
|
0.10879387
|
||||||
|
0.04520948
|
||||||
|
0.04018075
|
||||||
|
0.02624859
|
||||||
|
0.00865528
|
||||||
|
0.00220818
|
||||||
|
0.00292230
|
||||||
|
0.00325043
|
||||||
|
0.01547375
|
||||||
|
0.10285073
|
||||||
|
0.13288546
|
||||||
|
0.06569756
|
||||||
|
0.04191129
|
||||||
|
0.00984927
|
||||||
|
0.00487799
|
||||||
|
0.00717907
|
||||||
|
0.07125617
|
||||||
|
0.14066201
|
||||||
|
0.12093860
|
||||||
|
0.12668209
|
||||||
|
0.08771859
|
||||||
|
0.08893538
|
||||||
|
0.11586918
|
||||||
|
0.09410246
|
||||||
|
0.11251948
|
||||||
|
0.06581375
|
||||||
|
0.01573470
|
||||||
|
0.00798749
|
||||||
|
0.00473720
|
||||||
|
0.00184862
|
||||||
|
0.00599098
|
||||||
|
0.01365598
|
||||||
|
0.00891943
|
||||||
|
0.00741468
|
||||||
|
0.00870850
|
||||||
|
0.12349596
|
||||||
|
0.20865980
|
||||||
|
0.11312929
|
||||||
|
0.08664145
|
||||||
|
0.12243897
|
||||||
|
0.12067145
|
||||||
|
0.08424711
|
||||||
|
0.05526139
|
||||||
|
0.04627320
|
||||||
|
0.10428049
|
||||||
|
0.08349684
|
||||||
|
0.07010089
|
||||||
|
0.02950357
|
||||||
|
0.01629749
|
||||||
|
0.01049282
|
||||||
|
0.01468810
|
||||||
|
0.02427274
|
||||||
|
0.02904649
|
||||||
|
0.02663092
|
||||||
|
0.02238721
|
||||||
|
0.01449317
|
||||||
|
0.00891655
|
||||||
|
0.00328868
|
||||||
|
0.00101202
|
||||||
|
0.00018072
|
||||||
|
0.00000018
|
||||||
|
0.00000022
|
||||||
|
0.00001380
|
||||||
|
0.00340936
|
||||||
|
0.01070781
|
||||||
|
0.02272540
|
||||||
|
0.02303817
|
||||||
|
0.01339627
|
||||||
|
0.01482264
|
||||||
|
0.02972042
|
||||||
|
0.16883568
|
||||||
|
0.13453023
|
||||||
|
0.14972425
|
||||||
|
0.08440456
|
||||||
|
0.09065786
|
||||||
|
0.05294919
|
||||||
|
0.02135629
|
||||||
|
0.00819955
|
||||||
|
0.00474883
|
||||||
|
0.00529746
|
||||||
|
0.00265304
|
||||||
|
0.00225529
|
||||||
|
0.01425153
|
||||||
|
0.08025608
|
||||||
|
0.12780648
|
||||||
|
0.10383718
|
||||||
|
0.06637228
|
||||||
|
0.06980769
|
||||||
|
0.06826495
|
||||||
|
0.05187644
|
||||||
|
0.03362885
|
||||||
|
0.01408524
|
||||||
|
0.02797011
|
||||||
|
0.04798624
|
||||||
|
0.04473467
|
||||||
|
0.06783500
|
||||||
|
0.07362254
|
||||||
|
0.03932714
|
||||||
|
0.01432003
|
||||||
|
0.00567656
|
||||||
|
0.02164616
|
||||||
|
0.02448191
|
||||||
|
0.12810233
|
||||||
|
0.14456984
|
||||||
|
0.12034076
|
||||||
|
0.12263951
|
||||||
|
0.10216748
|
||||||
|
0.08076008
|
||||||
|
0.06284898
|
||||||
|
0.04605800
|
||||||
|
0.01751118
|
||||||
|
0.04122978
|
||||||
|
0.05452909
|
||||||
|
0.06921396
|
||||||
|
0.07712647
|
||||||
|
0.05760632
|
||||||
|
0.03222826
|
||||||
|
0.02906787
|
||||||
|
0.05488998
|
||||||
|
0.05686560
|
||||||
|
0.04881791
|
||||||
|
0.06627714
|
||||||
|
0.07501493
|
||||||
|
0.06122237
|
||||||
|
0.04391065
|
||||||
|
0.04513443
|
||||||
|
0.05685579
|
||||||
|
0.06692855
|
||||||
|
0.11950159
|
||||||
|
0.09488340
|
||||||
|
0.05996871
|
||||||
|
0.12589936
|
||||||
|
0.12426486
|
||||||
|
0.08167235
|
||||||
|
0.08727088
|
||||||
|
0.09361180
|
||||||
|
0.05560031
|
||||||
|
0.02492296
|
||||||
|
0.01225502
|
||||||
|
0.02261247
|
||||||
|
0.10637776
|
||||||
|
0.10854032
|
||||||
|
0.08564665
|
||||||
|
0.06367619
|
||||||
|
0.03858946
|
||||||
|
0.01254055
|
||||||
|
0.00857360
|
||||||
|
0.00521010
|
||||||
|
0.03276831
|
||||||
|
0.05026552
|
||||||
|
0.07917455
|
||||||
|
0.12885508
|
||||||
|
0.09776132
|
||||||
|
0.04524392
|
||||||
|
0.02057937
|
||||||
|
0.00684326
|
||||||
|
0.00172701
|
||||||
|
0.00501310
|
||||||
|
0.00338763
|
||||||
|
0.00062568
|
||||||
|
0.00007869
|
||||||
|
0.00000011
|
||||||
|
0.07221141
|
||||||
|
0.13406493
|
||||||
|
0.11343215
|
||||||
|
0.06939244
|
||||||
|
0.05757182
|
||||||
|
0.05019560
|
||||||
|
0.02351180
|
||||||
|
0.00653620
|
||||||
|
0.01007761
|
||||||
|
0.03060259
|
||||||
|
0.07896144
|
||||||
|
0.11751062
|
||||||
|
0.06696402
|
||||||
|
0.03085680
|
||||||
|
0.01771194
|
||||||
|
0.05062816
|
||||||
|
0.12535316
|
||||||
|
0.09691679
|
||||||
|
0.05669325
|
||||||
|
0.03652356
|
||||||
|
0.04995165
|
||||||
|
0.10247808
|
||||||
|
0.14754270
|
||||||
|
0.10729573
|
||||||
|
0.09490211
|
||||||
|
0.08105871
|
||||||
|
0.03237764
|
||||||
|
0.01436423
|
||||||
|
0.02403967
|
||||||
|
0.06067147
|
||||||
|
0.09486736
|
||||||
|
0.11827907
|
||||||
|
0.06557996
|
||||||
|
0.01828207
|
||||||
|
0.00410462
|
||||||
|
0.00560886
|
||||||
|
0.02666351
|
||||||
|
0.10461742
|
||||||
|
0.12328171
|
||||||
|
0.11638515
|
||||||
|
0.07130920
|
||||||
|
0.06859463
|
||||||
|
0.04690340
|
||||||
|
0.02583032
|
||||||
|
0.02004467
|
||||||
|
0.04906425
|
||||||
|
0.06766128
|
||||||
|
0.10911208
|
||||||
|
0.11592212
|
||||||
|
0.09715220
|
||||||
|
0.03466866
|
||||||
|
0.01872768
|
||||||
|
0.01205066
|
||||||
|
0.03613232
|
||||||
|
0.09832279
|
||||||
|
0.14594945
|
||||||
|
0.10550399
|
||||||
|
0.13000724
|
||||||
|
0.09247153
|
||||||
|
0.04398929
|
||||||
|
0.06428571
|
||||||
|
0.04855256
|
||||||
|
0.05265495
|
||||||
|
0.02728924
|
||||||
|
0.01480956
|
||||||
|
0.01000638
|
||||||
|
0.00291081
|
||||||
|
0.00050468
|
||||||
|
0.00004996
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 7d61563367dd2174ebac733fc96d5a7c
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
Binary file not shown.
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 264f1b0a1d60ee44fb83104376fe62d6
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,292 @@
|
|||||||
|
0.00000005
|
||||||
|
0.00000003
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.00017371
|
||||||
|
0.00397631
|
||||||
|
0.00645893
|
||||||
|
0.03636703
|
||||||
|
0.11108588
|
||||||
|
0.09490587
|
||||||
|
0.05810735
|
||||||
|
0.03614677
|
||||||
|
0.01433622
|
||||||
|
0.02562395
|
||||||
|
0.03500152
|
||||||
|
0.11138436
|
||||||
|
0.11492082
|
||||||
|
0.08813144
|
||||||
|
0.11754254
|
||||||
|
0.09585521
|
||||||
|
0.05497217
|
||||||
|
0.08569790
|
||||||
|
0.10671677
|
||||||
|
0.09063023
|
||||||
|
0.10238150
|
||||||
|
0.10540754
|
||||||
|
0.07553490
|
||||||
|
0.04124249
|
||||||
|
0.01229520
|
||||||
|
0.00533037
|
||||||
|
0.00913266
|
||||||
|
0.02397980
|
||||||
|
0.10611945
|
||||||
|
0.10192107
|
||||||
|
0.07391837
|
||||||
|
0.05137710
|
||||||
|
0.05373237
|
||||||
|
0.05023317
|
||||||
|
0.03660126
|
||||||
|
0.04064788
|
||||||
|
0.03359168
|
||||||
|
0.05470684
|
||||||
|
0.14775619
|
||||||
|
0.13745435
|
||||||
|
0.10754745
|
||||||
|
0.10044444
|
||||||
|
0.08634765
|
||||||
|
0.04968073
|
||||||
|
0.02235863
|
||||||
|
0.00676216
|
||||||
|
0.01762132
|
||||||
|
0.03200046
|
||||||
|
0.01515087
|
||||||
|
0.02490337
|
||||||
|
0.03465642
|
||||||
|
0.08731771
|
||||||
|
0.05780291
|
||||||
|
0.04214677
|
||||||
|
0.03614981
|
||||||
|
0.01129049
|
||||||
|
0.00178883
|
||||||
|
0.00043622
|
||||||
|
0.00002077
|
||||||
|
0.00790669
|
||||||
|
0.03906181
|
||||||
|
0.13493988
|
||||||
|
0.12611340
|
||||||
|
0.10359488
|
||||||
|
0.05120334
|
||||||
|
0.02121265
|
||||||
|
0.00780912
|
||||||
|
0.02118601
|
||||||
|
0.08881138
|
||||||
|
0.13246961
|
||||||
|
0.13096575
|
||||||
|
0.08698378
|
||||||
|
0.07840307
|
||||||
|
0.08006902
|
||||||
|
0.08267396
|
||||||
|
0.07665613
|
||||||
|
0.06423858
|
||||||
|
0.02234341
|
||||||
|
0.00549498
|
||||||
|
0.00242034
|
||||||
|
0.00047552
|
||||||
|
0.00005966
|
||||||
|
0.03320520
|
||||||
|
0.06114354
|
||||||
|
0.05643975
|
||||||
|
0.11037107
|
||||||
|
0.13888292
|
||||||
|
0.16179177
|
||||||
|
0.10823945
|
||||||
|
0.09318663
|
||||||
|
0.08210272
|
||||||
|
0.05253165
|
||||||
|
0.04468418
|
||||||
|
0.08318146
|
||||||
|
0.09999528
|
||||||
|
0.05302287
|
||||||
|
0.02463017
|
||||||
|
0.00933137
|
||||||
|
0.00975701
|
||||||
|
0.01784607
|
||||||
|
0.02833371
|
||||||
|
0.03651267
|
||||||
|
0.04211179
|
||||||
|
0.03161097
|
||||||
|
0.02936525
|
||||||
|
0.02278606
|
||||||
|
0.01299867
|
||||||
|
0.00431430
|
||||||
|
0.00138863
|
||||||
|
0.00027162
|
||||||
|
0.00000123
|
||||||
|
0.00000004
|
||||||
|
0.00000005
|
||||||
|
0.00000004
|
||||||
|
0.00073564
|
||||||
|
0.00535114
|
||||||
|
0.01484067
|
||||||
|
0.02635980
|
||||||
|
0.02197363
|
||||||
|
0.01175617
|
||||||
|
0.01850840
|
||||||
|
0.13574521
|
||||||
|
0.13955091
|
||||||
|
0.16727531
|
||||||
|
0.10608624
|
||||||
|
0.09235191
|
||||||
|
0.08989335
|
||||||
|
0.03222363
|
||||||
|
0.01007234
|
||||||
|
0.00426795
|
||||||
|
0.00493753
|
||||||
|
0.00278311
|
||||||
|
0.00285112
|
||||||
|
0.00889112
|
||||||
|
0.02711722
|
||||||
|
0.11798907
|
||||||
|
0.12569274
|
||||||
|
0.08584248
|
||||||
|
0.06597847
|
||||||
|
0.07110602
|
||||||
|
0.05414321
|
||||||
|
0.04401594
|
||||||
|
0.01751132
|
||||||
|
0.01334137
|
||||||
|
0.03514252
|
||||||
|
0.04998326
|
||||||
|
0.05386503
|
||||||
|
0.08303778
|
||||||
|
0.05580477
|
||||||
|
0.03294466
|
||||||
|
0.01155389
|
||||||
|
0.01592658
|
||||||
|
0.01961545
|
||||||
|
0.04122524
|
||||||
|
0.14904048
|
||||||
|
0.13972428
|
||||||
|
0.12943657
|
||||||
|
0.10712221
|
||||||
|
0.08562635
|
||||||
|
0.07122923
|
||||||
|
0.05961891
|
||||||
|
0.02759550
|
||||||
|
0.01993110
|
||||||
|
0.04310589
|
||||||
|
0.07547285
|
||||||
|
0.08173466
|
||||||
|
0.06247975
|
||||||
|
0.04214621
|
||||||
|
0.03760689
|
||||||
|
0.03115748
|
||||||
|
0.05670190
|
||||||
|
0.05714985
|
||||||
|
0.06260712
|
||||||
|
0.07415769
|
||||||
|
0.07433423
|
||||||
|
0.05062892
|
||||||
|
0.04170515
|
||||||
|
0.04818286
|
||||||
|
0.05886082
|
||||||
|
0.10128240
|
||||||
|
0.10150870
|
||||||
|
0.05131475
|
||||||
|
0.11870202
|
||||||
|
0.12748007
|
||||||
|
0.09922212
|
||||||
|
0.09134800
|
||||||
|
0.11311474
|
||||||
|
0.05401089
|
||||||
|
0.04061917
|
||||||
|
0.01249508
|
||||||
|
0.00948702
|
||||||
|
0.04186318
|
||||||
|
0.11898167
|
||||||
|
0.09532230
|
||||||
|
0.09337173
|
||||||
|
0.04848767
|
||||||
|
0.02473678
|
||||||
|
0.01069614
|
||||||
|
0.00484177
|
||||||
|
0.01662082
|
||||||
|
0.04742326
|
||||||
|
0.06200481
|
||||||
|
0.12276933
|
||||||
|
0.10882907
|
||||||
|
0.08602326
|
||||||
|
0.03015586
|
||||||
|
0.00973329
|
||||||
|
0.00328402
|
||||||
|
0.00226518
|
||||||
|
0.00784843
|
||||||
|
0.00278660
|
||||||
|
0.00034507
|
||||||
|
0.00005544
|
||||||
|
0.00514254
|
||||||
|
0.11737227
|
||||||
|
0.11911432
|
||||||
|
0.06987587
|
||||||
|
0.06208072
|
||||||
|
0.05524339
|
||||||
|
0.03672045
|
||||||
|
0.01023218
|
||||||
|
0.00268005
|
||||||
|
0.02696391
|
||||||
|
0.03711095
|
||||||
|
0.11534176
|
||||||
|
0.07793026
|
||||||
|
0.06439523
|
||||||
|
0.02477391
|
||||||
|
0.02580977
|
||||||
|
0.12326863
|
||||||
|
0.10718736
|
||||||
|
0.06945094
|
||||||
|
0.04225161
|
||||||
|
0.04650784
|
||||||
|
0.05684860
|
||||||
|
0.14646806
|
||||||
|
0.12088709
|
||||||
|
0.10804930
|
||||||
|
0.09149216
|
||||||
|
0.06569657
|
||||||
|
0.01902741
|
||||||
|
0.00708923
|
||||||
|
0.03978205
|
||||||
|
0.06555759
|
||||||
|
0.13457091
|
||||||
|
0.07263914
|
||||||
|
0.03940162
|
||||||
|
0.01395208
|
||||||
|
0.00407308
|
||||||
|
0.00785582
|
||||||
|
0.07307136
|
||||||
|
0.14730501
|
||||||
|
0.12630911
|
||||||
|
0.09076075
|
||||||
|
0.05463418
|
||||||
|
0.05033695
|
||||||
|
0.03686942
|
||||||
|
0.02131259
|
||||||
|
0.03664210
|
||||||
|
0.03732653
|
||||||
|
0.07706883
|
||||||
|
0.10262816
|
||||||
|
0.11299729
|
||||||
|
0.08176315
|
||||||
|
0.03037785
|
||||||
|
0.01326680
|
||||||
|
0.01651880
|
||||||
|
0.08489019
|
||||||
|
0.12672557
|
||||||
|
0.12814839
|
||||||
|
0.13081826
|
||||||
|
0.10027778
|
||||||
|
0.06042381
|
||||||
|
0.05928643
|
||||||
|
0.04862963
|
||||||
|
0.05942964
|
||||||
|
0.03829884
|
||||||
|
0.02554955
|
||||||
|
0.01399406
|
||||||
|
0.00600915
|
||||||
|
0.00526958
|
||||||
|
0.00088941
|
||||||
|
0.00000848
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 0a12bca9c495f844788cac4b3dc01528
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
Binary file not shown.
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 8ff483912820c0c458c2960593f32d01
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
+306
@@ -0,0 +1,306 @@
|
|||||||
|
0.00000005
|
||||||
|
0.00000003
|
||||||
|
0.00000000
|
||||||
|
0.00000000
|
||||||
|
0.00008677
|
||||||
|
0.02555647
|
||||||
|
0.06356105
|
||||||
|
0.06754274
|
||||||
|
0.12535521
|
||||||
|
0.11968394
|
||||||
|
0.10654067
|
||||||
|
0.08807448
|
||||||
|
0.03094069
|
||||||
|
0.01887335
|
||||||
|
0.04522886
|
||||||
|
0.10707195
|
||||||
|
0.10807064
|
||||||
|
0.11986617
|
||||||
|
0.15139525
|
||||||
|
0.12412844
|
||||||
|
0.08856518
|
||||||
|
0.09356070
|
||||||
|
0.09514336
|
||||||
|
0.07740945
|
||||||
|
0.06272630
|
||||||
|
0.05835729
|
||||||
|
0.05653152
|
||||||
|
0.04069148
|
||||||
|
0.02248743
|
||||||
|
0.00993187
|
||||||
|
0.00186555
|
||||||
|
0.00107107
|
||||||
|
0.00120904
|
||||||
|
0.00187453
|
||||||
|
0.00111695
|
||||||
|
0.00004033
|
||||||
|
0.00000578
|
||||||
|
0.00000037
|
||||||
|
0.00000047
|
||||||
|
0.00000041
|
||||||
|
0.00000041
|
||||||
|
0.00000036
|
||||||
|
0.00000037
|
||||||
|
0.00000030
|
||||||
|
0.00000033
|
||||||
|
0.00000027
|
||||||
|
0.00000021
|
||||||
|
0.00000026
|
||||||
|
0.00000013
|
||||||
|
0.00000017
|
||||||
|
0.00000012
|
||||||
|
0.00000011
|
||||||
|
0.01054585
|
||||||
|
0.05012132
|
||||||
|
0.13717458
|
||||||
|
0.13160563
|
||||||
|
0.06083952
|
||||||
|
0.03850145
|
||||||
|
0.06312518
|
||||||
|
0.08917529
|
||||||
|
0.07733954
|
||||||
|
0.03812576
|
||||||
|
0.02091784
|
||||||
|
0.02317895
|
||||||
|
0.09112280
|
||||||
|
0.10568590
|
||||||
|
0.05461230
|
||||||
|
0.01764572
|
||||||
|
0.00752449
|
||||||
|
0.00855657
|
||||||
|
0.01883113
|
||||||
|
0.11905217
|
||||||
|
0.15466592
|
||||||
|
0.14110537
|
||||||
|
0.12407092
|
||||||
|
0.09104393
|
||||||
|
0.06492120
|
||||||
|
0.05765026
|
||||||
|
0.03929679
|
||||||
|
0.01446094
|
||||||
|
0.01584649
|
||||||
|
0.01906035
|
||||||
|
0.00225289
|
||||||
|
0.03853673
|
||||||
|
0.04068287
|
||||||
|
0.12364593
|
||||||
|
0.11614482
|
||||||
|
0.09028992
|
||||||
|
0.06433237
|
||||||
|
0.02383663
|
||||||
|
0.01381440
|
||||||
|
0.00635609
|
||||||
|
0.01836661
|
||||||
|
0.02473579
|
||||||
|
0.11016511
|
||||||
|
0.10806321
|
||||||
|
0.03348883
|
||||||
|
0.01009692
|
||||||
|
0.03878922
|
||||||
|
0.07220570
|
||||||
|
0.08639481
|
||||||
|
0.07928380
|
||||||
|
0.10606322
|
||||||
|
0.10445405
|
||||||
|
0.11997829
|
||||||
|
0.09822565
|
||||||
|
0.08011347
|
||||||
|
0.04837793
|
||||||
|
0.03226493
|
||||||
|
0.03607234
|
||||||
|
0.03278252
|
||||||
|
0.03711180
|
||||||
|
0.06834672
|
||||||
|
0.07951122
|
||||||
|
0.08939215
|
||||||
|
0.08045211
|
||||||
|
0.06378602
|
||||||
|
0.03623512
|
||||||
|
0.03542983
|
||||||
|
0.13810526
|
||||||
|
0.13145922
|
||||||
|
0.08724828
|
||||||
|
0.07982137
|
||||||
|
0.07484215
|
||||||
|
0.06310783
|
||||||
|
0.03040927
|
||||||
|
0.02398604
|
||||||
|
0.01799416
|
||||||
|
0.01170484
|
||||||
|
0.00820995
|
||||||
|
0.00466642
|
||||||
|
0.00173959
|
||||||
|
0.00026183
|
||||||
|
0.00000286
|
||||||
|
0.00000056
|
||||||
|
0.00000045
|
||||||
|
0.00000036
|
||||||
|
0.00000037
|
||||||
|
0.00000035
|
||||||
|
0.00000034
|
||||||
|
0.00000032
|
||||||
|
0.00000030
|
||||||
|
0.00000027
|
||||||
|
0.00000027
|
||||||
|
0.00000023
|
||||||
|
0.00000022
|
||||||
|
0.00000018
|
||||||
|
0.00000018
|
||||||
|
0.00000013
|
||||||
|
0.00000013
|
||||||
|
0.00000010
|
||||||
|
0.00000010
|
||||||
|
0.00000008
|
||||||
|
0.00000004
|
||||||
|
0.00000004
|
||||||
|
0.00000003
|
||||||
|
0.00000002
|
||||||
|
0.00000003
|
||||||
|
0.00000003
|
||||||
|
0.00000002
|
||||||
|
0.00000002
|
||||||
|
0.00000004
|
||||||
|
0.00000002
|
||||||
|
0.01210695
|
||||||
|
0.03104685
|
||||||
|
0.09687874
|
||||||
|
0.10992987
|
||||||
|
0.06612710
|
||||||
|
0.05232693
|
||||||
|
0.07025713
|
||||||
|
0.07789180
|
||||||
|
0.05726887
|
||||||
|
0.05102119
|
||||||
|
0.05531616
|
||||||
|
0.07071804
|
||||||
|
0.07324490
|
||||||
|
0.12500001
|
||||||
|
0.13551877
|
||||||
|
0.11463275
|
||||||
|
0.09164570
|
||||||
|
0.07969173
|
||||||
|
0.08745047
|
||||||
|
0.09294610
|
||||||
|
0.08758718
|
||||||
|
0.04984579
|
||||||
|
0.01199116
|
||||||
|
0.01887675
|
||||||
|
0.01864040
|
||||||
|
0.07235581
|
||||||
|
0.10418790
|
||||||
|
0.03615440
|
||||||
|
0.00980441
|
||||||
|
0.00221446
|
||||||
|
0.03594533
|
||||||
|
0.06812992
|
||||||
|
0.11332203
|
||||||
|
0.06093310
|
||||||
|
0.05594898
|
||||||
|
0.06496126
|
||||||
|
0.08740044
|
||||||
|
0.12233238
|
||||||
|
0.09580570
|
||||||
|
0.04772820
|
||||||
|
0.02361993
|
||||||
|
0.01078867
|
||||||
|
0.03802064
|
||||||
|
0.07909553
|
||||||
|
0.08012012
|
||||||
|
0.07333743
|
||||||
|
0.05754400
|
||||||
|
0.05097869
|
||||||
|
0.07664723
|
||||||
|
0.05694538
|
||||||
|
0.04448567
|
||||||
|
0.09419085
|
||||||
|
0.06582000
|
||||||
|
0.06082845
|
||||||
|
0.03704552
|
||||||
|
0.02209460
|
||||||
|
0.00290526
|
||||||
|
0.00198855
|
||||||
|
0.00014714
|
||||||
|
0.00000098
|
||||||
|
0.00000014
|
||||||
|
0.00000015
|
||||||
|
0.00003012
|
||||||
|
0.00101211
|
||||||
|
0.00025446
|
||||||
|
0.00000087
|
||||||
|
0.00000012
|
||||||
|
0.00000008
|
||||||
|
0.00000007
|
||||||
|
0.00000005
|
||||||
|
0.00017385
|
||||||
|
0.00057944
|
||||||
|
0.00056784
|
||||||
|
0.00059026
|
||||||
|
0.00004644
|
||||||
|
0.01499533
|
||||||
|
0.03538585
|
||||||
|
0.06983574
|
||||||
|
0.06200712
|
||||||
|
0.06784921
|
||||||
|
0.06938390
|
||||||
|
0.08049586
|
||||||
|
0.07614776
|
||||||
|
0.05881132
|
||||||
|
0.11806823
|
||||||
|
0.15041181
|
||||||
|
0.12342727
|
||||||
|
0.11753254
|
||||||
|
0.10245495
|
||||||
|
0.09522798
|
||||||
|
0.09911717
|
||||||
|
0.09732006
|
||||||
|
0.07817753
|
||||||
|
0.08756886
|
||||||
|
0.05415813
|
||||||
|
0.02474579
|
||||||
|
0.02446261
|
||||||
|
0.11357070
|
||||||
|
0.11718469
|
||||||
|
0.09938256
|
||||||
|
0.08500034
|
||||||
|
0.07520326
|
||||||
|
0.07641556
|
||||||
|
0.06648254
|
||||||
|
0.06731120
|
||||||
|
0.07971697
|
||||||
|
0.08603772
|
||||||
|
0.05109902
|
||||||
|
0.09391770
|
||||||
|
0.12228667
|
||||||
|
0.05145732
|
||||||
|
0.05202519
|
||||||
|
0.06156273
|
||||||
|
0.01560635
|
||||||
|
0.00427968
|
||||||
|
0.02421295
|
||||||
|
0.03267565
|
||||||
|
0.07683574
|
||||||
|
0.02789398
|
||||||
|
0.01183625
|
||||||
|
0.01795142
|
||||||
|
0.02549900
|
||||||
|
0.04912534
|
||||||
|
0.10022978
|
||||||
|
0.09703911
|
||||||
|
0.06528247
|
||||||
|
0.05660536
|
||||||
|
0.05310062
|
||||||
|
0.02857801
|
||||||
|
0.00309033
|
||||||
|
0.00894551
|
||||||
|
0.02781632
|
||||||
|
0.00307855
|
||||||
|
0.00136751
|
||||||
|
0.01259168
|
||||||
|
0.03591923
|
||||||
|
0.02849875
|
||||||
|
0.03123168
|
||||||
|
0.01485326
|
||||||
|
0.00356870
|
||||||
|
0.00102485
|
||||||
|
0.00086726
|
||||||
|
0.00025258
|
||||||
+7
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 9e4ecb709f95cd241a9c5dc5558ab3b7
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Binary file not shown.
+7
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 5aa14328feee8ad47a37f50a3b07ae47
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
+309
@@ -0,0 +1,309 @@
|
|||||||
|
0.00000005
|
||||||
|
0.00000003
|
||||||
|
0.00000002
|
||||||
|
0.00000004
|
||||||
|
0.00001575
|
||||||
|
0.00056058
|
||||||
|
0.10512087
|
||||||
|
0.06247878
|
||||||
|
0.13907126
|
||||||
|
0.10796085
|
||||||
|
0.08928745
|
||||||
|
0.04296236
|
||||||
|
0.01589850
|
||||||
|
0.03041418
|
||||||
|
0.09944262
|
||||||
|
0.09935775
|
||||||
|
0.09998433
|
||||||
|
0.11296503
|
||||||
|
0.11884489
|
||||||
|
0.10825495
|
||||||
|
0.09847742
|
||||||
|
0.08814481
|
||||||
|
0.09157983
|
||||||
|
0.09493581
|
||||||
|
0.08478543
|
||||||
|
0.06469711
|
||||||
|
0.06443882
|
||||||
|
0.04607481
|
||||||
|
0.01910205
|
||||||
|
0.00103388
|
||||||
|
0.00010046
|
||||||
|
0.00071292
|
||||||
|
0.00033006
|
||||||
|
0.00008951
|
||||||
|
0.00007941
|
||||||
|
0.00000031
|
||||||
|
0.00011136
|
||||||
|
0.00000019
|
||||||
|
0.00000021
|
||||||
|
0.00000018
|
||||||
|
0.00000026
|
||||||
|
0.00000008
|
||||||
|
0.00000014
|
||||||
|
0.00000015
|
||||||
|
0.00000016
|
||||||
|
0.00000012
|
||||||
|
0.00000009
|
||||||
|
0.00000007
|
||||||
|
0.00000006
|
||||||
|
0.00000005
|
||||||
|
0.00000004
|
||||||
|
0.00000002
|
||||||
|
0.00000002
|
||||||
|
0.00005185
|
||||||
|
0.00000828
|
||||||
|
0.02832398
|
||||||
|
0.12830395
|
||||||
|
0.16844831
|
||||||
|
0.12687734
|
||||||
|
0.06460033
|
||||||
|
0.01894131
|
||||||
|
0.03220102
|
||||||
|
0.05880868
|
||||||
|
0.06527510
|
||||||
|
0.05140930
|
||||||
|
0.03658038
|
||||||
|
0.01398638
|
||||||
|
0.02421561
|
||||||
|
0.08997451
|
||||||
|
0.08377688
|
||||||
|
0.02418836
|
||||||
|
0.00973439
|
||||||
|
0.00599007
|
||||||
|
0.00905722
|
||||||
|
0.02651637
|
||||||
|
0.10164079
|
||||||
|
0.14320731
|
||||||
|
0.12904300
|
||||||
|
0.11029114
|
||||||
|
0.07977970
|
||||||
|
0.05571616
|
||||||
|
0.06751201
|
||||||
|
0.01764874
|
||||||
|
0.00617195
|
||||||
|
0.02489195
|
||||||
|
0.01025172
|
||||||
|
0.00284820
|
||||||
|
0.04030944
|
||||||
|
0.02575630
|
||||||
|
0.11017919
|
||||||
|
0.11959197
|
||||||
|
0.06856420
|
||||||
|
0.03276161
|
||||||
|
0.01958396
|
||||||
|
0.01616774
|
||||||
|
0.02088996
|
||||||
|
0.05009602
|
||||||
|
0.07843453
|
||||||
|
0.06901982
|
||||||
|
0.02250954
|
||||||
|
0.01337707
|
||||||
|
0.02803325
|
||||||
|
0.06195528
|
||||||
|
0.07357799
|
||||||
|
0.06418665
|
||||||
|
0.09644670
|
||||||
|
0.09922776
|
||||||
|
0.11329394
|
||||||
|
0.10822823
|
||||||
|
0.09179486
|
||||||
|
0.06035907
|
||||||
|
0.05104551
|
||||||
|
0.03396708
|
||||||
|
0.05817677
|
||||||
|
0.06630339
|
||||||
|
0.04054824
|
||||||
|
0.07112641
|
||||||
|
0.05802667
|
||||||
|
0.06763632
|
||||||
|
0.06566662
|
||||||
|
0.05350130
|
||||||
|
0.03097204
|
||||||
|
0.01398106
|
||||||
|
0.03965144
|
||||||
|
0.13338506
|
||||||
|
0.14704359
|
||||||
|
0.09780610
|
||||||
|
0.06288150
|
||||||
|
0.05591090
|
||||||
|
0.05028389
|
||||||
|
0.02308469
|
||||||
|
0.02326990
|
||||||
|
0.01427633
|
||||||
|
0.01059657
|
||||||
|
0.00597096
|
||||||
|
0.00265677
|
||||||
|
0.00096331
|
||||||
|
0.00027705
|
||||||
|
0.00081122
|
||||||
|
0.00029532
|
||||||
|
0.00003557
|
||||||
|
0.00000033
|
||||||
|
0.00000033
|
||||||
|
0.00000032
|
||||||
|
0.00000030
|
||||||
|
0.00000028
|
||||||
|
0.00000030
|
||||||
|
0.00000022
|
||||||
|
0.00000023
|
||||||
|
0.00000021
|
||||||
|
0.00000018
|
||||||
|
0.00000015
|
||||||
|
0.00000015
|
||||||
|
0.00000014
|
||||||
|
0.00000010
|
||||||
|
0.00000007
|
||||||
|
0.00000008
|
||||||
|
0.00000004
|
||||||
|
0.00000004
|
||||||
|
0.00000002
|
||||||
|
0.00000002
|
||||||
|
0.00000002
|
||||||
|
0.00000002
|
||||||
|
0.00000002
|
||||||
|
0.00008707
|
||||||
|
0.00058412
|
||||||
|
0.00013537
|
||||||
|
0.00000516
|
||||||
|
0.02347101
|
||||||
|
0.04357265
|
||||||
|
0.11365347
|
||||||
|
0.08669745
|
||||||
|
0.05095782
|
||||||
|
0.06836279
|
||||||
|
0.07590245
|
||||||
|
0.07837829
|
||||||
|
0.06091340
|
||||||
|
0.05027740
|
||||||
|
0.07152368
|
||||||
|
0.12868381
|
||||||
|
0.13290957
|
||||||
|
0.11694506
|
||||||
|
0.10228214
|
||||||
|
0.10048629
|
||||||
|
0.08879036
|
||||||
|
0.03953559
|
||||||
|
0.01065895
|
||||||
|
0.02042474
|
||||||
|
0.02315973
|
||||||
|
0.05589612
|
||||||
|
0.10023368
|
||||||
|
0.05182547
|
||||||
|
0.00905302
|
||||||
|
0.00198392
|
||||||
|
0.02186030
|
||||||
|
0.04189350
|
||||||
|
0.14410524
|
||||||
|
0.09991421
|
||||||
|
0.04756368
|
||||||
|
0.06668478
|
||||||
|
0.09321541
|
||||||
|
0.11032545
|
||||||
|
0.10434034
|
||||||
|
0.08342411
|
||||||
|
0.03306899
|
||||||
|
0.01367741
|
||||||
|
0.06044695
|
||||||
|
0.09034430
|
||||||
|
0.06164889
|
||||||
|
0.06296910
|
||||||
|
0.05844286
|
||||||
|
0.04815272
|
||||||
|
0.05400948
|
||||||
|
0.07309759
|
||||||
|
0.08802762
|
||||||
|
0.15068236
|
||||||
|
0.11547473
|
||||||
|
0.05514836
|
||||||
|
0.03452749
|
||||||
|
0.01822943
|
||||||
|
0.00416943
|
||||||
|
0.00182502
|
||||||
|
0.00100153
|
||||||
|
0.00051689
|
||||||
|
0.00018493
|
||||||
|
0.00159059
|
||||||
|
0.00043061
|
||||||
|
0.00000588
|
||||||
|
0.00000041
|
||||||
|
0.00000057
|
||||||
|
0.00000034
|
||||||
|
0.00000041
|
||||||
|
0.00015376
|
||||||
|
0.00000841
|
||||||
|
0.00085780
|
||||||
|
0.01958037
|
||||||
|
0.03508846
|
||||||
|
0.08052298
|
||||||
|
0.05665231
|
||||||
|
0.05217534
|
||||||
|
0.07203114
|
||||||
|
0.06636944
|
||||||
|
0.06487500
|
||||||
|
0.06899809
|
||||||
|
0.05801162
|
||||||
|
0.13297467
|
||||||
|
0.10661902
|
||||||
|
0.09435981
|
||||||
|
0.09961571
|
||||||
|
0.10622018
|
||||||
|
0.11464507
|
||||||
|
0.10977937
|
||||||
|
0.09725338
|
||||||
|
0.09613403
|
||||||
|
0.07686792
|
||||||
|
0.04782833
|
||||||
|
0.04779501
|
||||||
|
0.02959961
|
||||||
|
0.04014716
|
||||||
|
0.10748242
|
||||||
|
0.09299997
|
||||||
|
0.08187937
|
||||||
|
0.08289372
|
||||||
|
0.10451850
|
||||||
|
0.09585603
|
||||||
|
0.10306562
|
||||||
|
0.09885249
|
||||||
|
0.09429167
|
||||||
|
0.08828995
|
||||||
|
0.08491156
|
||||||
|
0.05210634
|
||||||
|
0.06902108
|
||||||
|
0.06840731
|
||||||
|
0.03392952
|
||||||
|
0.05985209
|
||||||
|
0.05023765
|
||||||
|
0.01092744
|
||||||
|
0.00683205
|
||||||
|
0.02457151
|
||||||
|
0.09223298
|
||||||
|
0.04956920
|
||||||
|
0.01651768
|
||||||
|
0.00484253
|
||||||
|
0.00325285
|
||||||
|
0.01828707
|
||||||
|
0.03094625
|
||||||
|
0.08162503
|
||||||
|
0.09403877
|
||||||
|
0.07717906
|
||||||
|
0.05836591
|
||||||
|
0.07295292
|
||||||
|
0.03507503
|
||||||
|
0.00875005
|
||||||
|
0.00378138
|
||||||
|
0.01026982
|
||||||
|
0.00332591
|
||||||
|
0.00306266
|
||||||
|
0.01591836
|
||||||
|
0.03091518
|
||||||
|
0.02433426
|
||||||
|
0.02051376
|
||||||
|
0.00947862
|
||||||
|
0.00142537
|
||||||
|
0.00069377
|
||||||
|
0.00004064
|
||||||
|
0.00000018
|
||||||
|
0.00000003
|
||||||
|
0.00000002
|
||||||
|
0.00007110
|
||||||
+7
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: d0ebb29a4c0d68b4da17bc19e7384990
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Binary file not shown.
+7
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 97f150ec0d3d48a4db1ea667fe05b072
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,293 @@
|
|||||||
|
0.00000006
|
||||||
|
0.00000004
|
||||||
|
0.00000000
|
||||||
|
0.00000876
|
||||||
|
0.00000012
|
||||||
|
0.00004277
|
||||||
|
0.05436340
|
||||||
|
0.17665382
|
||||||
|
0.12990713
|
||||||
|
0.12583591
|
||||||
|
0.13277286
|
||||||
|
0.13517515
|
||||||
|
0.12306246
|
||||||
|
0.12600669
|
||||||
|
0.12459808
|
||||||
|
0.10394835
|
||||||
|
0.09309749
|
||||||
|
0.09333178
|
||||||
|
0.07643553
|
||||||
|
0.05511052
|
||||||
|
0.04393115
|
||||||
|
0.02941259
|
||||||
|
0.03382056
|
||||||
|
0.02038616
|
||||||
|
0.01548435
|
||||||
|
0.01363530
|
||||||
|
0.01174366
|
||||||
|
0.00893834
|
||||||
|
0.00600578
|
||||||
|
0.00371616
|
||||||
|
0.00200703
|
||||||
|
0.00146441
|
||||||
|
0.00025279
|
||||||
|
0.00000120
|
||||||
|
0.00000023
|
||||||
|
0.00000033
|
||||||
|
0.00000023
|
||||||
|
0.00000020
|
||||||
|
0.00000020
|
||||||
|
0.00000015
|
||||||
|
0.00000013
|
||||||
|
0.00000013
|
||||||
|
0.00000010
|
||||||
|
0.00000008
|
||||||
|
0.00000008
|
||||||
|
0.00011547
|
||||||
|
0.03884210
|
||||||
|
0.11290570
|
||||||
|
0.14032798
|
||||||
|
0.11392568
|
||||||
|
0.10667438
|
||||||
|
0.11704497
|
||||||
|
0.08145794
|
||||||
|
0.03876734
|
||||||
|
0.01617737
|
||||||
|
0.00410597
|
||||||
|
0.03786850
|
||||||
|
0.01552934
|
||||||
|
0.08146030
|
||||||
|
0.12936532
|
||||||
|
0.10310936
|
||||||
|
0.04261066
|
||||||
|
0.01968959
|
||||||
|
0.01155729
|
||||||
|
0.01246085
|
||||||
|
0.01643562
|
||||||
|
0.02611092
|
||||||
|
0.06975007
|
||||||
|
0.06647281
|
||||||
|
0.04812134
|
||||||
|
0.06127471
|
||||||
|
0.04931017
|
||||||
|
0.05622455
|
||||||
|
0.09936404
|
||||||
|
0.13729018
|
||||||
|
0.09841577
|
||||||
|
0.05966850
|
||||||
|
0.01680984
|
||||||
|
0.00261750
|
||||||
|
0.00143242
|
||||||
|
0.01419471
|
||||||
|
0.04943705
|
||||||
|
0.04137772
|
||||||
|
0.03587830
|
||||||
|
0.03199233
|
||||||
|
0.03906901
|
||||||
|
0.03574416
|
||||||
|
0.03229308
|
||||||
|
0.03190199
|
||||||
|
0.04779297
|
||||||
|
0.04261694
|
||||||
|
0.04245671
|
||||||
|
0.04589238
|
||||||
|
0.05662980
|
||||||
|
0.05274693
|
||||||
|
0.05354149
|
||||||
|
0.04374932
|
||||||
|
0.03250221
|
||||||
|
0.01861564
|
||||||
|
0.01963406
|
||||||
|
0.00308434
|
||||||
|
0.00011245
|
||||||
|
0.00000138
|
||||||
|
0.00004786
|
||||||
|
0.00000296
|
||||||
|
0.00000008
|
||||||
|
0.00040744
|
||||||
|
0.01232126
|
||||||
|
0.00401640
|
||||||
|
0.00080837
|
||||||
|
0.00001568
|
||||||
|
0.00000014
|
||||||
|
0.00000001
|
||||||
|
0.00000000
|
||||||
|
0.00000001
|
||||||
|
0.00000000
|
||||||
|
0.00000001
|
||||||
|
0.00000001
|
||||||
|
0.00000001
|
||||||
|
0.00000001
|
||||||
|
0.00000001
|
||||||
|
0.00000001
|
||||||
|
0.00000001
|
||||||
|
0.00000001
|
||||||
|
0.00000001
|
||||||
|
0.00000001
|
||||||
|
0.00000001
|
||||||
|
0.00000001
|
||||||
|
0.00000001
|
||||||
|
0.00137698
|
||||||
|
0.00120946
|
||||||
|
0.00037309
|
||||||
|
0.00001546
|
||||||
|
0.00019473
|
||||||
|
0.05597774
|
||||||
|
0.05349650
|
||||||
|
0.07315911
|
||||||
|
0.10007664
|
||||||
|
0.12148964
|
||||||
|
0.10390536
|
||||||
|
0.11813873
|
||||||
|
0.12236188
|
||||||
|
0.07448173
|
||||||
|
0.07163881
|
||||||
|
0.03668909
|
||||||
|
0.00482586
|
||||||
|
0.00674204
|
||||||
|
0.03587620
|
||||||
|
0.16254307
|
||||||
|
0.15529911
|
||||||
|
0.04756048
|
||||||
|
0.01177680
|
||||||
|
0.00713155
|
||||||
|
0.09382056
|
||||||
|
0.10292054
|
||||||
|
0.16375251
|
||||||
|
0.13605520
|
||||||
|
0.05452843
|
||||||
|
0.09455058
|
||||||
|
0.12224557
|
||||||
|
0.13256259
|
||||||
|
0.09879588
|
||||||
|
0.06324653
|
||||||
|
0.02657961
|
||||||
|
0.01032267
|
||||||
|
0.00230831
|
||||||
|
0.02871299
|
||||||
|
0.07454104
|
||||||
|
0.13230723
|
||||||
|
0.08707617
|
||||||
|
0.04283587
|
||||||
|
0.02152865
|
||||||
|
0.08970764
|
||||||
|
0.15705778
|
||||||
|
0.13232288
|
||||||
|
0.11249097
|
||||||
|
0.12094339
|
||||||
|
0.09471517
|
||||||
|
0.08165064
|
||||||
|
0.05688582
|
||||||
|
0.06236089
|
||||||
|
0.06496719
|
||||||
|
0.07772935
|
||||||
|
0.07066742
|
||||||
|
0.06583010
|
||||||
|
0.06023704
|
||||||
|
0.05579713
|
||||||
|
0.03196885
|
||||||
|
0.02167577
|
||||||
|
0.00885445
|
||||||
|
0.00054829
|
||||||
|
0.00120143
|
||||||
|
0.05003724
|
||||||
|
0.05701566
|
||||||
|
0.05554289
|
||||||
|
0.06652608
|
||||||
|
0.06286423
|
||||||
|
0.07321317
|
||||||
|
0.10022882
|
||||||
|
0.08733696
|
||||||
|
0.05627337
|
||||||
|
0.00893717
|
||||||
|
0.05115506
|
||||||
|
0.02904028
|
||||||
|
0.03742857
|
||||||
|
0.05691869
|
||||||
|
0.04722928
|
||||||
|
0.04761178
|
||||||
|
0.11284457
|
||||||
|
0.06448554
|
||||||
|
0.01647628
|
||||||
|
0.00811301
|
||||||
|
0.00184246
|
||||||
|
0.00095617
|
||||||
|
0.03380137
|
||||||
|
0.05253933
|
||||||
|
0.09993897
|
||||||
|
0.08770414
|
||||||
|
0.06539877
|
||||||
|
0.06725874
|
||||||
|
0.05866503
|
||||||
|
0.02927921
|
||||||
|
0.00474572
|
||||||
|
0.00449728
|
||||||
|
0.00220470
|
||||||
|
0.03732991
|
||||||
|
0.16716687
|
||||||
|
0.13160835
|
||||||
|
0.11313587
|
||||||
|
0.09361040
|
||||||
|
0.08533838
|
||||||
|
0.05350770
|
||||||
|
0.01132886
|
||||||
|
0.00188624
|
||||||
|
0.00224469
|
||||||
|
0.04322987
|
||||||
|
0.14946128
|
||||||
|
0.11786281
|
||||||
|
0.09559109
|
||||||
|
0.08745537
|
||||||
|
0.06887340
|
||||||
|
0.06453345
|
||||||
|
0.14468354
|
||||||
|
0.15365960
|
||||||
|
0.08112232
|
||||||
|
0.05636847
|
||||||
|
0.05092329
|
||||||
|
0.06082837
|
||||||
|
0.05791784
|
||||||
|
0.03492959
|
||||||
|
0.01728887
|
||||||
|
0.01145544
|
||||||
|
0.03110087
|
||||||
|
0.06301248
|
||||||
|
0.08440568
|
||||||
|
0.02886192
|
||||||
|
0.02436969
|
||||||
|
0.06101014
|
||||||
|
0.06737709
|
||||||
|
0.12571132
|
||||||
|
0.13595617
|
||||||
|
0.11148004
|
||||||
|
0.02669337
|
||||||
|
0.00637604
|
||||||
|
0.00583108
|
||||||
|
0.04190948
|
||||||
|
0.12353806
|
||||||
|
0.13185968
|
||||||
|
0.10900982
|
||||||
|
0.09392569
|
||||||
|
0.07719076
|
||||||
|
0.06124953
|
||||||
|
0.04566133
|
||||||
|
0.03477211
|
||||||
|
0.02629414
|
||||||
|
0.02993021
|
||||||
|
0.03762943
|
||||||
|
0.05084812
|
||||||
|
0.03652138
|
||||||
|
0.05007470
|
||||||
|
0.11358684
|
||||||
|
0.14574684
|
||||||
|
0.11534683
|
||||||
|
0.09708887
|
||||||
|
0.06805480
|
||||||
|
0.04739871
|
||||||
|
0.04391212
|
||||||
|
0.04065108
|
||||||
|
0.02693054
|
||||||
|
0.01430396
|
||||||
|
0.00508704
|
||||||
|
0.00183298
|
||||||
|
0.00007207
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 62632355e21a84c4c84e476062ab8670
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
Binary file not shown.
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 7a43d69a404558844883b6d1e9ccc6a6
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,268 @@
|
|||||||
|
0.00000005
|
||||||
|
0.00000003
|
||||||
|
0.00240253
|
||||||
|
0.02907968
|
||||||
|
0.10503523
|
||||||
|
0.13422142
|
||||||
|
0.12195620
|
||||||
|
0.13128196
|
||||||
|
0.13441545
|
||||||
|
0.10902201
|
||||||
|
0.11511548
|
||||||
|
0.12498570
|
||||||
|
0.10779791
|
||||||
|
0.08748529
|
||||||
|
0.09270831
|
||||||
|
0.08885102
|
||||||
|
0.07140992
|
||||||
|
0.07817293
|
||||||
|
0.05512253
|
||||||
|
0.07312962
|
||||||
|
0.05332483
|
||||||
|
0.02952465
|
||||||
|
0.00628433
|
||||||
|
0.00322687
|
||||||
|
0.01116481
|
||||||
|
0.02963358
|
||||||
|
0.09202230
|
||||||
|
0.10785520
|
||||||
|
0.09845226
|
||||||
|
0.10343045
|
||||||
|
0.09329684
|
||||||
|
0.04513930
|
||||||
|
0.02688077
|
||||||
|
0.01212403
|
||||||
|
0.04465980
|
||||||
|
0.02088372
|
||||||
|
0.02843172
|
||||||
|
0.14170074
|
||||||
|
0.14037681
|
||||||
|
0.08236120
|
||||||
|
0.02720438
|
||||||
|
0.01238582
|
||||||
|
0.01198153
|
||||||
|
0.01171427
|
||||||
|
0.04087922
|
||||||
|
0.11383022
|
||||||
|
0.10109381
|
||||||
|
0.08515322
|
||||||
|
0.04896748
|
||||||
|
0.04567009
|
||||||
|
0.02929136
|
||||||
|
0.06172283
|
||||||
|
0.11550593
|
||||||
|
0.09598164
|
||||||
|
0.07837296
|
||||||
|
0.02478683
|
||||||
|
0.00525718
|
||||||
|
0.00181524
|
||||||
|
0.00970324
|
||||||
|
0.07209075
|
||||||
|
0.09798092
|
||||||
|
0.07967266
|
||||||
|
0.06513842
|
||||||
|
0.05123381
|
||||||
|
0.05027419
|
||||||
|
0.04282681
|
||||||
|
0.04678136
|
||||||
|
0.06629726
|
||||||
|
0.04876049
|
||||||
|
0.04369129
|
||||||
|
0.03766395
|
||||||
|
0.04394144
|
||||||
|
0.04186778
|
||||||
|
0.05153219
|
||||||
|
0.04662358
|
||||||
|
0.03369124
|
||||||
|
0.02084255
|
||||||
|
0.01368451
|
||||||
|
0.00168093
|
||||||
|
0.00043239
|
||||||
|
0.00004149
|
||||||
|
0.00041319
|
||||||
|
0.00029644
|
||||||
|
0.00001294
|
||||||
|
0.00009876
|
||||||
|
0.01724320
|
||||||
|
0.00515795
|
||||||
|
0.00088585
|
||||||
|
0.00000051
|
||||||
|
0.00000013
|
||||||
|
0.00000001
|
||||||
|
0.00000002
|
||||||
|
0.00000002
|
||||||
|
0.00000002
|
||||||
|
0.00029903
|
||||||
|
0.00017885
|
||||||
|
0.00173300
|
||||||
|
0.03660622
|
||||||
|
0.08778569
|
||||||
|
0.08299683
|
||||||
|
0.08249202
|
||||||
|
0.07836448
|
||||||
|
0.07183830
|
||||||
|
0.09798677
|
||||||
|
0.10288965
|
||||||
|
0.07641125
|
||||||
|
0.07789677
|
||||||
|
0.06810252
|
||||||
|
0.00654751
|
||||||
|
0.00414498
|
||||||
|
0.01800906
|
||||||
|
0.10378619
|
||||||
|
0.10797114
|
||||||
|
0.02479648
|
||||||
|
0.00965088
|
||||||
|
0.01219227
|
||||||
|
0.07751130
|
||||||
|
0.11227150
|
||||||
|
0.14128794
|
||||||
|
0.06956887
|
||||||
|
0.05905581
|
||||||
|
0.10559428
|
||||||
|
0.11890519
|
||||||
|
0.08814315
|
||||||
|
0.05743459
|
||||||
|
0.02042473
|
||||||
|
0.00343255
|
||||||
|
0.02520813
|
||||||
|
0.04550547
|
||||||
|
0.11568366
|
||||||
|
0.09366174
|
||||||
|
0.04345708
|
||||||
|
0.03914818
|
||||||
|
0.07486159
|
||||||
|
0.13059510
|
||||||
|
0.15400928
|
||||||
|
0.13821089
|
||||||
|
0.12171482
|
||||||
|
0.10681405
|
||||||
|
0.08661242
|
||||||
|
0.06828332
|
||||||
|
0.04075309
|
||||||
|
0.05218672
|
||||||
|
0.07257383
|
||||||
|
0.07887270
|
||||||
|
0.08816109
|
||||||
|
0.09971622
|
||||||
|
0.08168958
|
||||||
|
0.05080761
|
||||||
|
0.02718288
|
||||||
|
0.00490109
|
||||||
|
0.00417936
|
||||||
|
0.01302431
|
||||||
|
0.01342031
|
||||||
|
0.01449505
|
||||||
|
0.01702639
|
||||||
|
0.01002846
|
||||||
|
0.00135636
|
||||||
|
0.00615288
|
||||||
|
0.00988699
|
||||||
|
0.05511121
|
||||||
|
0.13424085
|
||||||
|
0.13549428
|
||||||
|
0.12707625
|
||||||
|
0.10175641
|
||||||
|
0.09349026
|
||||||
|
0.08078031
|
||||||
|
0.10017768
|
||||||
|
0.09641082
|
||||||
|
0.05651959
|
||||||
|
0.02388979
|
||||||
|
0.03372757
|
||||||
|
0.02807933
|
||||||
|
0.06420366
|
||||||
|
0.05765516
|
||||||
|
0.10705915
|
||||||
|
0.12931576
|
||||||
|
0.06605592
|
||||||
|
0.01316365
|
||||||
|
0.00862626
|
||||||
|
0.00548033
|
||||||
|
0.00231362
|
||||||
|
0.05162323
|
||||||
|
0.02771896
|
||||||
|
0.04052469
|
||||||
|
0.06053808
|
||||||
|
0.04970683
|
||||||
|
0.04813053
|
||||||
|
0.03046989
|
||||||
|
0.00504421
|
||||||
|
0.00297387
|
||||||
|
0.00175442
|
||||||
|
0.03428232
|
||||||
|
0.16087463
|
||||||
|
0.14309265
|
||||||
|
0.11838740
|
||||||
|
0.07561675
|
||||||
|
0.07153413
|
||||||
|
0.06790428
|
||||||
|
0.03115408
|
||||||
|
0.00911597
|
||||||
|
0.03592220
|
||||||
|
0.12518162
|
||||||
|
0.14040351
|
||||||
|
0.13036409
|
||||||
|
0.08447693
|
||||||
|
0.08117232
|
||||||
|
0.06552082
|
||||||
|
0.09590764
|
||||||
|
0.13285699
|
||||||
|
0.12561189
|
||||||
|
0.06799156
|
||||||
|
0.04766290
|
||||||
|
0.04445734
|
||||||
|
0.03842782
|
||||||
|
0.02435055
|
||||||
|
0.01544531
|
||||||
|
0.01147488
|
||||||
|
0.01724531
|
||||||
|
0.10274742
|
||||||
|
0.08165291
|
||||||
|
0.02878892
|
||||||
|
0.04548312
|
||||||
|
0.05494404
|
||||||
|
0.07406324
|
||||||
|
0.12911624
|
||||||
|
0.12757473
|
||||||
|
0.11833390
|
||||||
|
0.03788988
|
||||||
|
0.01097155
|
||||||
|
0.00298281
|
||||||
|
0.00275654
|
||||||
|
0.02835943
|
||||||
|
0.14801164
|
||||||
|
0.12368125
|
||||||
|
0.11705162
|
||||||
|
0.08316845
|
||||||
|
0.07073751
|
||||||
|
0.07032350
|
||||||
|
0.07200280
|
||||||
|
0.05796322
|
||||||
|
0.03717402
|
||||||
|
0.02600084
|
||||||
|
0.02813455
|
||||||
|
0.03365216
|
||||||
|
0.03137246
|
||||||
|
0.02250615
|
||||||
|
0.06806763
|
||||||
|
0.12442078
|
||||||
|
0.12454491
|
||||||
|
0.12151590
|
||||||
|
0.09865309
|
||||||
|
0.07201285
|
||||||
|
0.05476528
|
||||||
|
0.04899836
|
||||||
|
0.04472922
|
||||||
|
0.04327874
|
||||||
|
0.03483583
|
||||||
|
0.02293462
|
||||||
|
0.01217319
|
||||||
|
0.00345893
|
||||||
|
0.00050839
|
||||||
|
0.00024330
|
||||||
|
0.00011198
|
||||||
|
0.00018678
|
||||||
|
0.00008502
|
||||||
|
0.00005998
|
||||||
|
0.00000075
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 6789c915ab4332b4f9a2a5e01a0b1d32
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
Binary file not shown.
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 7bb958a26428f774dae23140e390d603
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
Binary file not shown.
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 4fef61b9ad4f7eb488ea2657f1cc700e
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
Binary file not shown.
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 6f5a0c98d09a6dc4d9d570e23dc96ab9
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -85,11 +85,8 @@ public class ArcheryRange : NetworkBehaviour
|
|||||||
_presentPlayers.Remove(exitedPlayer); // Shifts others left automatically
|
_presentPlayers.Remove(exitedPlayer); // Shifts others left automatically
|
||||||
|
|
||||||
if (exitedPlayer == _scoredPlayer) keyboardManager.DeActivate(); // If the player ´refuses to enter their name.
|
if (exitedPlayer == _scoredPlayer) keyboardManager.DeActivate(); // If the player ´refuses to enter their name.
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public override void OnStopServer()
|
public override void OnStopServer()
|
||||||
{
|
{
|
||||||
base.OnStopServer();
|
base.OnStopServer();
|
||||||
@@ -134,18 +131,18 @@ public class ArcheryRange : NetworkBehaviour
|
|||||||
|
|
||||||
private ArcheryTarget SpawnTarget(Vector3 randomPos)
|
private ArcheryTarget SpawnTarget(Vector3 randomPos)
|
||||||
{
|
{
|
||||||
GameObject targetObject;
|
// Spawn default UFO
|
||||||
if (modelDisplay.Model == null)
|
GameObject targetObject = Instantiate(targetPrefab, randomPos, targetStartPosition.rotation, null);
|
||||||
|
if (modelDisplay.Model != null)
|
||||||
{
|
{
|
||||||
// spawn default UFO
|
// Spawn generated object directly as default UFO's child
|
||||||
targetObject = Instantiate(targetPrefab, randomPos, Quaternion.identity, null);
|
GameObject childObject = Instantiate(modelDisplay.Model);
|
||||||
} else
|
childObject.transform.SetParent(targetObject.transform, false);
|
||||||
{
|
childObject.transform.localScale *= targetSizeIncrease;
|
||||||
// spawn generated model
|
|
||||||
targetObject = Instantiate(modelDisplay.Model, randomPos, Quaternion.identity, null);
|
// Disable UFO's default body
|
||||||
InitializeArcheryTargetObject(targetObject);
|
targetObject.transform.Find("Body").gameObject.SetActive(false);
|
||||||
}
|
}
|
||||||
targetObject.transform.rotation = targetStartPosition.rotation;
|
|
||||||
|
|
||||||
ArcheryTarget target = targetObject.GetComponent<ArcheryTarget>();
|
ArcheryTarget target = targetObject.GetComponent<ArcheryTarget>();
|
||||||
target.endPosition = targetEndPosition.position;
|
target.endPosition = targetEndPosition.position;
|
||||||
@@ -154,22 +151,6 @@ public class ArcheryRange : NetworkBehaviour
|
|||||||
return target;
|
return target;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void InitializeArcheryTargetObject(GameObject targetObject)
|
|
||||||
{
|
|
||||||
ArcheryTarget archeryTarget = targetObject.AddComponent<ArcheryTarget>();
|
|
||||||
archeryTarget.pointsText = archeryTargetPointsText;
|
|
||||||
|
|
||||||
Rigidbody rigidbody = targetObject.AddComponent<Rigidbody>();
|
|
||||||
rigidbody.useGravity = false;
|
|
||||||
rigidbody.isKinematic = true;
|
|
||||||
|
|
||||||
targetObject.AddComponent<NetworkObject>();
|
|
||||||
targetObject.AddComponent<NetworkTransform>();
|
|
||||||
|
|
||||||
targetObject.transform.localScale *= targetSizeIncrease;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public void ResetRange()
|
public void ResetRange()
|
||||||
{
|
{
|
||||||
if (!IsServer) return;
|
if (!IsServer) return;
|
||||||
|
|||||||
@@ -8,6 +8,11 @@ public class KeyboardManager : NetworkBehaviour
|
|||||||
{
|
{
|
||||||
public enum ShiftMode { Lowercase, NextUppercase, Uppercase }
|
public enum ShiftMode { Lowercase, NextUppercase, Uppercase }
|
||||||
|
|
||||||
|
public delegate void OnActivateDelegate();
|
||||||
|
public event OnActivateDelegate OnActivate;
|
||||||
|
public delegate void OnSubmitDelegate();
|
||||||
|
public event OnSubmitDelegate OnSubmit;
|
||||||
|
|
||||||
[Header("UI References")]
|
[Header("UI References")]
|
||||||
public TMP_Text nameTextField;
|
public TMP_Text nameTextField;
|
||||||
public TMP_Text scoreTextField;
|
public TMP_Text scoreTextField;
|
||||||
@@ -57,6 +62,7 @@ public class KeyboardManager : NetworkBehaviour
|
|||||||
gameObject.transform.position = assignedTransform.position;
|
gameObject.transform.position = assignedTransform.position;
|
||||||
gameObject.transform.rotation = assignedTransform.rotation;
|
gameObject.transform.rotation = assignedTransform.rotation;
|
||||||
|
|
||||||
|
OnActivate?.Invoke();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void DeActivate()
|
public void DeActivate()
|
||||||
@@ -64,7 +70,7 @@ public class KeyboardManager : NetworkBehaviour
|
|||||||
gameObject.SetActive(false);
|
gameObject.SetActive(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void addToInput(string newInput)
|
private void AddToInput(string newInput)
|
||||||
{
|
{
|
||||||
|
|
||||||
if (_input.Length < inputTextLimit)
|
if (_input.Length < inputTextLimit)
|
||||||
@@ -82,13 +88,13 @@ public class KeyboardManager : NetworkBehaviour
|
|||||||
switch (_shiftMode)
|
switch (_shiftMode)
|
||||||
{
|
{
|
||||||
case ShiftMode.Lowercase:
|
case ShiftMode.Lowercase:
|
||||||
addToInput(letter.ToLower());
|
AddToInput(letter.ToLower());
|
||||||
break;
|
break;
|
||||||
case ShiftMode.Uppercase:
|
case ShiftMode.Uppercase:
|
||||||
addToInput(letter.ToUpper());
|
AddToInput(letter.ToUpper());
|
||||||
break;
|
break;
|
||||||
case ShiftMode.NextUppercase:
|
case ShiftMode.NextUppercase:
|
||||||
addToInput(letter.ToUpper());
|
AddToInput(letter.ToUpper());
|
||||||
_shiftMode = ShiftMode.Lowercase;
|
_shiftMode = ShiftMode.Lowercase;
|
||||||
UpdateKeyLabels();
|
UpdateKeyLabels();
|
||||||
break;
|
break;
|
||||||
@@ -124,6 +130,7 @@ public class KeyboardManager : NetworkBehaviour
|
|||||||
void OnEnterPressed()
|
void OnEnterPressed()
|
||||||
{
|
{
|
||||||
AudioManager.Instance.PlayAttachedInstance(FMODEvents.Instance.LetterEnter, enterButton.gameObject);
|
AudioManager.Instance.PlayAttachedInstance(FMODEvents.Instance.LetterEnter, enterButton.gameObject);
|
||||||
|
OnSubmit?.Invoke();
|
||||||
|
|
||||||
if (_input.Length > 0)
|
if (_input.Length > 0)
|
||||||
{
|
{
|
||||||
@@ -136,7 +143,7 @@ public class KeyboardManager : NetworkBehaviour
|
|||||||
{
|
{
|
||||||
AudioManager.Instance.PlayAttachedInstance(FMODEvents.Instance.LetterEnter, spaceButton.gameObject);
|
AudioManager.Instance.PlayAttachedInstance(FMODEvents.Instance.LetterEnter, spaceButton.gameObject);
|
||||||
|
|
||||||
addToInput(" ");
|
AddToInput(" ");
|
||||||
UpdateOutput();
|
UpdateOutput();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+5
-15
@@ -168,20 +168,14 @@ public class TutorialAudioListener : MonoBehaviour
|
|||||||
|
|
||||||
private EventReference GetGrabEvent(GrabSoundType type)
|
private EventReference GetGrabEvent(GrabSoundType type)
|
||||||
{
|
{
|
||||||
switch (type)
|
return type switch
|
||||||
{
|
{
|
||||||
case GrabSoundType.Bow:
|
GrabSoundType.Bow => FMODEvents.Instance.BowGrab,
|
||||||
return FMODEvents.Instance.BowGrab;
|
GrabSoundType.Sprayer => FMODEvents.Instance.SprayerGrab,
|
||||||
|
|
||||||
case GrabSoundType.Sprayer:
|
|
||||||
return FMODEvents.Instance.SprayerGrab;
|
|
||||||
|
|
||||||
//Add more objects for grabbing here and do not forget to define them in FMODEvents.cs
|
//Add more objects for grabbing here and do not forget to define them in FMODEvents.cs
|
||||||
//Add the GrabAudioProfile.cs component to an object instance
|
//Add the GrabAudioProfile.cs component to an object instance
|
||||||
|
_ => FMODEvents.Instance.DefaultGrab,
|
||||||
default:
|
};
|
||||||
return FMODEvents.Instance.DefaultGrab;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void HandleGrab(XRGrabInteractable grab)
|
private void HandleGrab(XRGrabInteractable grab)
|
||||||
@@ -195,10 +189,6 @@ public class TutorialAudioListener : MonoBehaviour
|
|||||||
: GrabSoundType.Default;
|
: GrabSoundType.Default;
|
||||||
|
|
||||||
EventReference grabEvent = GetGrabEvent(type);
|
EventReference grabEvent = GetGrabEvent(type);
|
||||||
Debug.Log(grabEvent);
|
|
||||||
AudioManager.Instance.PlayAttachedInstance(grabEvent, grab.gameObject);
|
AudioManager.Instance.PlayAttachedInstance(grabEvent, grab.gameObject);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -31,6 +31,7 @@ namespace _PROJECT.NewHandPresence
|
|||||||
|
|
||||||
private XRControllerHintController _leftHintController;
|
private XRControllerHintController _leftHintController;
|
||||||
private XRControllerHintController _rightHintController;
|
private XRControllerHintController _rightHintController;
|
||||||
|
private XRBaseInteractor lastInteractor = null;
|
||||||
|
|
||||||
private SmartHandPresence _leftSmartHandPresence;
|
private SmartHandPresence _leftSmartHandPresence;
|
||||||
private SmartHandPresence _rightSmartHandPresence;
|
private SmartHandPresence _rightSmartHandPresence;
|
||||||
@@ -244,16 +245,22 @@ namespace _PROJECT.NewHandPresence
|
|||||||
StopCoroutine(initializationInfoCoroutine);
|
StopCoroutine(initializationInfoCoroutine);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnGripPerformed(SelectEnterEventArgs arg0)
|
private void OnGripPerformed(SelectEnterEventArgs args)
|
||||||
{
|
{
|
||||||
var grab = arg0.interactableObject as XRGrabInteractable;
|
|
||||||
|
|
||||||
// Notify any listeners
|
var interactor = args.interactorObject as XRBaseInteractor;
|
||||||
OnGrab?.Invoke(grab);
|
var interactable = args.interactableObject as XRGrabInteractable;
|
||||||
|
|
||||||
if (_state != TutorialState.Grip) return;
|
if (lastInteractor == interactor)
|
||||||
Debug.Log("Grip performed");
|
return; // same hand grabbing again
|
||||||
UpdateState(_state.Next());
|
|
||||||
|
lastInteractor = interactor;
|
||||||
|
|
||||||
|
|
||||||
|
OnGrab?.Invoke(interactable as XRGrabInteractable);
|
||||||
|
|
||||||
|
if (_state == TutorialState.Grip)
|
||||||
|
UpdateState(_state.Next());
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnTeleportPerformed(LocomotionSystem obj)
|
private void OnTeleportPerformed(LocomotionSystem obj)
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
@@ -29,7 +29,7 @@ Transform:
|
|||||||
m_GameObject: {fileID: 1659788510314838016}
|
m_GameObject: {fileID: 1659788510314838016}
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
m_LocalScale: {x: 0.4, y: 0.35, z: 0.4}
|
m_LocalScale: {x: 0.4, y: 0.38386, z: 0.4}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 0
|
||||||
m_Children:
|
m_Children:
|
||||||
- {fileID: 4211436824399037528}
|
- {fileID: 4211436824399037528}
|
||||||
@@ -149,7 +149,7 @@ Transform:
|
|||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
m_GameObject: {fileID: 4039766663692926199}
|
m_GameObject: {fileID: 4039766663692926199}
|
||||||
m_LocalRotation: {x: -0, y: 0.000000014901158, z: -0, w: 1}
|
m_LocalRotation: {x: -0, y: 0.000000014901158, z: -0, w: 1}
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
m_LocalPosition: {x: 0, y: -0.36, z: 0}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 0
|
||||||
m_Children: []
|
m_Children: []
|
||||||
|
|||||||
@@ -9,9 +9,10 @@ GameObject:
|
|||||||
serializedVersion: 6
|
serializedVersion: 6
|
||||||
m_Component:
|
m_Component:
|
||||||
- component: {fileID: 3337587390139541606}
|
- component: {fileID: 3337587390139541606}
|
||||||
- component: {fileID: 627565954663756710}
|
- component: {fileID: 1081661767482416249}
|
||||||
|
- component: {fileID: 3779719438397915148}
|
||||||
m_Layer: 0
|
m_Layer: 0
|
||||||
m_Name: SportModel
|
m_Name: Body
|
||||||
m_TagString: Untagged
|
m_TagString: Untagged
|
||||||
m_Icon: {fileID: 0}
|
m_Icon: {fileID: 0}
|
||||||
m_NavMeshLayer: 0
|
m_NavMeshLayer: 0
|
||||||
@@ -26,7 +27,7 @@ Transform:
|
|||||||
m_GameObject: {fileID: 3508152469845169189}
|
m_GameObject: {fileID: 3508152469845169189}
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
m_LocalScale: {x: 0.24, y: 0.2, z: 0.2}
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 0
|
||||||
m_Children:
|
m_Children:
|
||||||
- {fileID: 4011537191296717654}
|
- {fileID: 4011537191296717654}
|
||||||
@@ -35,47 +36,50 @@ Transform:
|
|||||||
m_Father: {fileID: 7527508320363503049}
|
m_Father: {fileID: 7527508320363503049}
|
||||||
m_RootOrder: 0
|
m_RootOrder: 0
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
--- !u!114 &627565954663756710
|
--- !u!136 &1081661767482416249
|
||||||
MonoBehaviour:
|
CapsuleCollider:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
m_PrefabInstance: {fileID: 0}
|
m_PrefabInstance: {fileID: 0}
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
m_GameObject: {fileID: 3508152469845169189}
|
m_GameObject: {fileID: 3508152469845169189}
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_IncludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_ExcludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_LayerOverridePriority: 0
|
||||||
|
m_IsTrigger: 0
|
||||||
|
m_ProvidesContacts: 0
|
||||||
m_Enabled: 1
|
m_Enabled: 1
|
||||||
m_EditorHideFlags: 0
|
serializedVersion: 2
|
||||||
m_Script: {fileID: 11500000, guid: a2836e36774ca1c4bbbee976e17b649c, type: 3}
|
m_Radius: 1.07
|
||||||
m_Name:
|
m_Height: 0.97
|
||||||
m_EditorClassIdentifier:
|
m_Direction: 1
|
||||||
_componentIndexCache: 2
|
m_Center: {x: 0.16, y: -0.51, z: 0}
|
||||||
_addedNetworkObject: {fileID: 2689384198849609103}
|
--- !u!65 &3779719438397915148
|
||||||
_networkObjectCache: {fileID: 2689384198849609103}
|
BoxCollider:
|
||||||
_synchronizeParent: 0
|
m_ObjectHideFlags: 0
|
||||||
_packing:
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
Position: 1
|
m_PrefabInstance: {fileID: 0}
|
||||||
Rotation: 1
|
m_PrefabAsset: {fileID: 0}
|
||||||
Scale: 0
|
m_GameObject: {fileID: 3508152469845169189}
|
||||||
_interpolation: 2
|
m_Material: {fileID: 0}
|
||||||
_extrapolation: 2
|
m_IncludeLayers:
|
||||||
_enableTeleport: 0
|
serializedVersion: 2
|
||||||
_teleportThreshold: 1
|
m_Bits: 0
|
||||||
_clientAuthoritative: 1
|
m_ExcludeLayers:
|
||||||
_sendToOwner: 1
|
serializedVersion: 2
|
||||||
_synchronizePosition: 1
|
m_Bits: 0
|
||||||
_positionSnapping:
|
m_LayerOverridePriority: 0
|
||||||
X: 0
|
m_IsTrigger: 0
|
||||||
Y: 0
|
m_ProvidesContacts: 0
|
||||||
Z: 0
|
m_Enabled: 1
|
||||||
_synchronizeRotation: 1
|
serializedVersion: 3
|
||||||
_rotationSnapping:
|
m_Size: {x: 4.5, y: 0.5, z: 3.77}
|
||||||
X: 0
|
m_Center: {x: 0.12, y: -0.24, z: 0.06}
|
||||||
Y: 0
|
|
||||||
Z: 0
|
|
||||||
_synchronizeScale: 1
|
|
||||||
_scaleSnapping:
|
|
||||||
X: 0
|
|
||||||
Y: 0
|
|
||||||
Z: 0
|
|
||||||
--- !u!1 &6744593628588765187
|
--- !u!1 &6744593628588765187
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@@ -87,7 +91,6 @@ GameObject:
|
|||||||
- component: {fileID: 1251512755648678878}
|
- component: {fileID: 1251512755648678878}
|
||||||
- component: {fileID: 4963625795242203983}
|
- component: {fileID: 4963625795242203983}
|
||||||
- component: {fileID: 5457198189491340073}
|
- component: {fileID: 5457198189491340073}
|
||||||
- component: {fileID: 8959643074287331097}
|
|
||||||
m_Layer: 0
|
m_Layer: 0
|
||||||
m_Name: BezierCurve.007
|
m_Name: BezierCurve.007
|
||||||
m_TagString: Untagged
|
m_TagString: Untagged
|
||||||
@@ -102,13 +105,13 @@ Transform:
|
|||||||
m_PrefabInstance: {fileID: 0}
|
m_PrefabInstance: {fileID: 0}
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
m_GameObject: {fileID: 6744593628588765187}
|
m_GameObject: {fileID: 6744593628588765187}
|
||||||
m_LocalRotation: {x: 0.00000031987892, y: 0, z: -0, w: 1}
|
m_LocalRotation: {x: 0.00000031987892, y: -0, z: -0, w: 1}
|
||||||
m_LocalPosition: {x: 0.5, y: -1.2, z: 0.3}
|
m_LocalPosition: {x: 0.120000005, y: -0.24000001, z: 0.06000042}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 0.24, y: 0.2, z: 0.2}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 0
|
||||||
m_Children: []
|
m_Children: []
|
||||||
m_Father: {fileID: 3337587390139541606}
|
m_Father: {fileID: 3337587390139541606}
|
||||||
m_RootOrder: 2
|
m_RootOrder: -1
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
--- !u!33 &4963625795242203983
|
--- !u!33 &4963625795242203983
|
||||||
MeshFilter:
|
MeshFilter:
|
||||||
@@ -161,47 +164,6 @@ MeshRenderer:
|
|||||||
m_SortingLayer: 0
|
m_SortingLayer: 0
|
||||||
m_SortingOrder: 0
|
m_SortingOrder: 0
|
||||||
m_AdditionalVertexStreams: {fileID: 0}
|
m_AdditionalVertexStreams: {fileID: 0}
|
||||||
--- !u!114 &8959643074287331097
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 6744593628588765187}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: a2836e36774ca1c4bbbee976e17b649c, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
_componentIndexCache: 5
|
|
||||||
_addedNetworkObject: {fileID: 2689384198849609103}
|
|
||||||
_networkObjectCache: {fileID: 2689384198849609103}
|
|
||||||
_synchronizeParent: 0
|
|
||||||
_packing:
|
|
||||||
Position: 1
|
|
||||||
Rotation: 1
|
|
||||||
Scale: 0
|
|
||||||
_interpolation: 2
|
|
||||||
_extrapolation: 2
|
|
||||||
_enableTeleport: 0
|
|
||||||
_teleportThreshold: 1
|
|
||||||
_clientAuthoritative: 1
|
|
||||||
_sendToOwner: 1
|
|
||||||
_synchronizePosition: 1
|
|
||||||
_positionSnapping:
|
|
||||||
X: 0
|
|
||||||
Y: 0
|
|
||||||
Z: 0
|
|
||||||
_synchronizeRotation: 1
|
|
||||||
_rotationSnapping:
|
|
||||||
X: 0
|
|
||||||
Y: 0
|
|
||||||
Z: 0
|
|
||||||
_synchronizeScale: 1
|
|
||||||
_scaleSnapping:
|
|
||||||
X: 0
|
|
||||||
Y: 0
|
|
||||||
Z: 0
|
|
||||||
--- !u!1 &7680366769166628765
|
--- !u!1 &7680366769166628765
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@@ -213,7 +175,6 @@ GameObject:
|
|||||||
- component: {fileID: 4011537191296717654}
|
- component: {fileID: 4011537191296717654}
|
||||||
- component: {fileID: 1910778184414920112}
|
- component: {fileID: 1910778184414920112}
|
||||||
- component: {fileID: 363608006073787400}
|
- component: {fileID: 363608006073787400}
|
||||||
- component: {fileID: 4439869206153374580}
|
|
||||||
m_Layer: 0
|
m_Layer: 0
|
||||||
m_Name: BezierCurve.005
|
m_Name: BezierCurve.005
|
||||||
m_TagString: Untagged
|
m_TagString: Untagged
|
||||||
@@ -228,13 +189,13 @@ Transform:
|
|||||||
m_PrefabInstance: {fileID: 0}
|
m_PrefabInstance: {fileID: 0}
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
m_GameObject: {fileID: 7680366769166628765}
|
m_GameObject: {fileID: 7680366769166628765}
|
||||||
m_LocalRotation: {x: 0.00000031987892, y: 0, z: -0, w: 1}
|
m_LocalRotation: {x: 0.00000031987892, y: -0, z: -0, w: 1}
|
||||||
m_LocalPosition: {x: 0.5, y: 0.3, z: 0.3}
|
m_LocalPosition: {x: 0.120000005, y: 0.060000062, z: 0.06000042}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 0.24, y: 0.2, z: 0.2}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 0
|
||||||
m_Children: []
|
m_Children: []
|
||||||
m_Father: {fileID: 3337587390139541606}
|
m_Father: {fileID: 3337587390139541606}
|
||||||
m_RootOrder: 0
|
m_RootOrder: -1
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
--- !u!33 &1910778184414920112
|
--- !u!33 &1910778184414920112
|
||||||
MeshFilter:
|
MeshFilter:
|
||||||
@@ -286,47 +247,6 @@ MeshRenderer:
|
|||||||
m_SortingLayer: 0
|
m_SortingLayer: 0
|
||||||
m_SortingOrder: 0
|
m_SortingOrder: 0
|
||||||
m_AdditionalVertexStreams: {fileID: 0}
|
m_AdditionalVertexStreams: {fileID: 0}
|
||||||
--- !u!114 &4439869206153374580
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 7680366769166628765}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: a2836e36774ca1c4bbbee976e17b649c, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
_componentIndexCache: 3
|
|
||||||
_addedNetworkObject: {fileID: 2689384198849609103}
|
|
||||||
_networkObjectCache: {fileID: 2689384198849609103}
|
|
||||||
_synchronizeParent: 0
|
|
||||||
_packing:
|
|
||||||
Position: 1
|
|
||||||
Rotation: 1
|
|
||||||
Scale: 0
|
|
||||||
_interpolation: 2
|
|
||||||
_extrapolation: 2
|
|
||||||
_enableTeleport: 0
|
|
||||||
_teleportThreshold: 1
|
|
||||||
_clientAuthoritative: 1
|
|
||||||
_sendToOwner: 1
|
|
||||||
_synchronizePosition: 1
|
|
||||||
_positionSnapping:
|
|
||||||
X: 0
|
|
||||||
Y: 0
|
|
||||||
Z: 0
|
|
||||||
_synchronizeRotation: 1
|
|
||||||
_rotationSnapping:
|
|
||||||
X: 0
|
|
||||||
Y: 0
|
|
||||||
Z: 0
|
|
||||||
_synchronizeScale: 1
|
|
||||||
_scaleSnapping:
|
|
||||||
X: 0
|
|
||||||
Y: 0
|
|
||||||
Z: 0
|
|
||||||
--- !u!1 &7983999977322064054
|
--- !u!1 &7983999977322064054
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@@ -340,8 +260,6 @@ GameObject:
|
|||||||
- component: {fileID: 8954823527229761837}
|
- component: {fileID: 8954823527229761837}
|
||||||
- component: {fileID: 2689384198849609103}
|
- component: {fileID: 2689384198849609103}
|
||||||
- component: {fileID: 1843883317757509263}
|
- component: {fileID: 1843883317757509263}
|
||||||
- component: {fileID: 7451921017238644471}
|
|
||||||
- component: {fileID: 2131608416831220487}
|
|
||||||
m_Layer: 0
|
m_Layer: 0
|
||||||
m_Name: TargetUFO
|
m_Name: TargetUFO
|
||||||
m_TagString: Untagged
|
m_TagString: Untagged
|
||||||
@@ -357,7 +275,7 @@ Transform:
|
|||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
m_GameObject: {fileID: 7983999977322064054}
|
m_GameObject: {fileID: 7983999977322064054}
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
m_LocalPosition: {x: 1.398, y: 1.1, z: 8.292}
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 0
|
||||||
m_Children:
|
m_Children:
|
||||||
@@ -429,10 +347,6 @@ MonoBehaviour:
|
|||||||
_networkBehaviours:
|
_networkBehaviours:
|
||||||
- {fileID: 4850307641519017041}
|
- {fileID: 4850307641519017041}
|
||||||
- {fileID: 1843883317757509263}
|
- {fileID: 1843883317757509263}
|
||||||
- {fileID: 627565954663756710}
|
|
||||||
- {fileID: 4439869206153374580}
|
|
||||||
- {fileID: 6540522042633253623}
|
|
||||||
- {fileID: 8959643074287331097}
|
|
||||||
<ParentNetworkObject>k__BackingField: {fileID: 0}
|
<ParentNetworkObject>k__BackingField: {fileID: 0}
|
||||||
<ChildNetworkObjects>k__BackingField: []
|
<ChildNetworkObjects>k__BackingField: []
|
||||||
_isNetworked: 1
|
_isNetworked: 1
|
||||||
@@ -487,50 +401,6 @@ MonoBehaviour:
|
|||||||
X: 0
|
X: 0
|
||||||
Y: 0
|
Y: 0
|
||||||
Z: 0
|
Z: 0
|
||||||
--- !u!136 &7451921017238644471
|
|
||||||
CapsuleCollider:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 7983999977322064054}
|
|
||||||
m_Material: {fileID: 0}
|
|
||||||
m_IncludeLayers:
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Bits: 0
|
|
||||||
m_ExcludeLayers:
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Bits: 0
|
|
||||||
m_LayerOverridePriority: 0
|
|
||||||
m_IsTrigger: 0
|
|
||||||
m_ProvidesContacts: 0
|
|
||||||
m_Enabled: 1
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Radius: 1.07
|
|
||||||
m_Height: 0.97
|
|
||||||
m_Direction: 1
|
|
||||||
m_Center: {x: 0.16, y: -0.51, z: 0}
|
|
||||||
--- !u!65 &2131608416831220487
|
|
||||||
BoxCollider:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 7983999977322064054}
|
|
||||||
m_Material: {fileID: 0}
|
|
||||||
m_IncludeLayers:
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Bits: 0
|
|
||||||
m_ExcludeLayers:
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Bits: 0
|
|
||||||
m_LayerOverridePriority: 0
|
|
||||||
m_IsTrigger: 0
|
|
||||||
m_ProvidesContacts: 0
|
|
||||||
m_Enabled: 1
|
|
||||||
serializedVersion: 3
|
|
||||||
m_Size: {x: 4.5, y: 0.5, z: 3.77}
|
|
||||||
m_Center: {x: 0.12, y: -0.24, z: 0.06}
|
|
||||||
--- !u!1 &8462201784916155029
|
--- !u!1 &8462201784916155029
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@@ -542,7 +412,6 @@ GameObject:
|
|||||||
- component: {fileID: 2406214921254263651}
|
- component: {fileID: 2406214921254263651}
|
||||||
- component: {fileID: 6767210086105080178}
|
- component: {fileID: 6767210086105080178}
|
||||||
- component: {fileID: 3766991064380355318}
|
- component: {fileID: 3766991064380355318}
|
||||||
- component: {fileID: 6540522042633253623}
|
|
||||||
m_Layer: 0
|
m_Layer: 0
|
||||||
m_Name: BezierCurve.006
|
m_Name: BezierCurve.006
|
||||||
m_TagString: Untagged
|
m_TagString: Untagged
|
||||||
@@ -558,12 +427,12 @@ Transform:
|
|||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
m_GameObject: {fileID: 8462201784916155029}
|
m_GameObject: {fileID: 8462201784916155029}
|
||||||
m_LocalRotation: {x: -0.00000015993946, y: 0.86602545, z: -0.00000027702328, w: -0.49999997}
|
m_LocalRotation: {x: -0.00000015993946, y: 0.86602545, z: -0.00000027702328, w: -0.49999997}
|
||||||
m_LocalPosition: {x: 0.5, y: -3.4, z: 0.3}
|
m_LocalPosition: {x: 0.121, y: -0.663, z: 0.072}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 0.22, y: 0.2, z: 0.24}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 0
|
||||||
m_Children: []
|
m_Children: []
|
||||||
m_Father: {fileID: 3337587390139541606}
|
m_Father: {fileID: 3337587390139541606}
|
||||||
m_RootOrder: 1
|
m_RootOrder: -1
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
--- !u!33 &6767210086105080178
|
--- !u!33 &6767210086105080178
|
||||||
MeshFilter:
|
MeshFilter:
|
||||||
@@ -615,44 +484,3 @@ MeshRenderer:
|
|||||||
m_SortingLayer: 0
|
m_SortingLayer: 0
|
||||||
m_SortingOrder: 0
|
m_SortingOrder: 0
|
||||||
m_AdditionalVertexStreams: {fileID: 0}
|
m_AdditionalVertexStreams: {fileID: 0}
|
||||||
--- !u!114 &6540522042633253623
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 8462201784916155029}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: a2836e36774ca1c4bbbee976e17b649c, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
_componentIndexCache: 4
|
|
||||||
_addedNetworkObject: {fileID: 2689384198849609103}
|
|
||||||
_networkObjectCache: {fileID: 2689384198849609103}
|
|
||||||
_synchronizeParent: 0
|
|
||||||
_packing:
|
|
||||||
Position: 1
|
|
||||||
Rotation: 1
|
|
||||||
Scale: 0
|
|
||||||
_interpolation: 2
|
|
||||||
_extrapolation: 2
|
|
||||||
_enableTeleport: 0
|
|
||||||
_teleportThreshold: 1
|
|
||||||
_clientAuthoritative: 1
|
|
||||||
_sendToOwner: 1
|
|
||||||
_synchronizePosition: 1
|
|
||||||
_positionSnapping:
|
|
||||||
X: 0
|
|
||||||
Y: 0
|
|
||||||
Z: 0
|
|
||||||
_synchronizeRotation: 1
|
|
||||||
_rotationSnapping:
|
|
||||||
X: 0
|
|
||||||
Y: 0
|
|
||||||
Z: 0
|
|
||||||
_synchronizeScale: 1
|
|
||||||
_scaleSnapping:
|
|
||||||
X: 0
|
|
||||||
Y: 0
|
|
||||||
Z: 0
|
|
||||||
|
|||||||
Binary file not shown.
@@ -4,9 +4,9 @@ using System.Runtime.InteropServices;
|
|||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using FMOD;
|
using FMOD;
|
||||||
using FMODUnity;
|
using FMODUnity;
|
||||||
using Whisper; // WhisperManager, WhisperStream, WhisperResult
|
using Whisper;
|
||||||
using Whisper.Utils;
|
using Whisper.Utils;
|
||||||
using Debug = UnityEngine.Debug; // AudioChunk
|
using Debug = UnityEngine.Debug;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// FMOD mic is initialized once (Start) and runs continuously in a ring buffer.
|
/// FMOD mic is initialized once (Start) and runs continuously in a ring buffer.
|
||||||
@@ -28,12 +28,6 @@ public class FMODWhisperBridge : MonoBehaviour
|
|||||||
public int channels = 1;
|
public int channels = 1;
|
||||||
[Range(1, 10)] public int bufferLengthSec = 5;
|
[Range(1, 10)] public int bufferLengthSec = 5;
|
||||||
|
|
||||||
[Header("Loopback (monitor your voice)")]
|
|
||||||
public bool playLoopback = true;
|
|
||||||
[Tooltip("If true, loopback plays only while active; otherwise it’s always on.")]
|
|
||||||
public bool loopbackOnlyWhenActive = true;
|
|
||||||
[Range(0f, 2f)] public float loopbackVolume = 1.0f;
|
|
||||||
|
|
||||||
public delegate void OnWhisperSegmentUpdatedDelegate(string result);
|
public delegate void OnWhisperSegmentUpdatedDelegate(string result);
|
||||||
public event OnWhisperSegmentUpdatedDelegate OnWhisperSegmentUpdated;
|
public event OnWhisperSegmentUpdatedDelegate OnWhisperSegmentUpdated;
|
||||||
|
|
||||||
@@ -44,7 +38,6 @@ public class FMODWhisperBridge : MonoBehaviour
|
|||||||
private FMOD.System _core;
|
private FMOD.System _core;
|
||||||
private Sound _recSound;
|
private Sound _recSound;
|
||||||
private Channel _playChannel;
|
private Channel _playChannel;
|
||||||
private ChannelGroup _masterGroup;
|
|
||||||
private uint _soundPcmLength; // in samples
|
private uint _soundPcmLength; // in samples
|
||||||
private int _nativeRate;
|
private int _nativeRate;
|
||||||
private int _nativeChannels;
|
private int _nativeChannels;
|
||||||
@@ -54,7 +47,6 @@ public class FMODWhisperBridge : MonoBehaviour
|
|||||||
|
|
||||||
// Whisper
|
// Whisper
|
||||||
private WhisperStream _stream;
|
private WhisperStream _stream;
|
||||||
private bool _streamStarted;
|
|
||||||
|
|
||||||
// temp conversion buffer
|
// temp conversion buffer
|
||||||
private float[] _floatTmp = new float[0];
|
private float[] _floatTmp = new float[0];
|
||||||
@@ -138,24 +130,6 @@ public class FMODWhisperBridge : MonoBehaviour
|
|||||||
_core.getRecordPosition(recordDriverId, out _lastRecordPos);
|
_core.getRecordPosition(recordDriverId, out _lastRecordPos);
|
||||||
Debug.Log("[FMOD→Whisper] Recording started.");
|
Debug.Log("[FMOD→Whisper] Recording started.");
|
||||||
|
|
||||||
// Loopback channel (optional). Start once; pause when inactive if desired.
|
|
||||||
_core.getMasterChannelGroup(out _masterGroup);
|
|
||||||
if (playLoopback)
|
|
||||||
{
|
|
||||||
res = _core.playSound(_recSound, _masterGroup, false, out _playChannel);
|
|
||||||
if (res == RESULT.OK && _playChannel.hasHandle())
|
|
||||||
{
|
|
||||||
_playChannel.setMode(MODE._2D);
|
|
||||||
_playChannel.setVolume(loopbackVolume);
|
|
||||||
if (loopbackOnlyWhenActive) _playChannel.setPaused(true); // keep muted until Activate
|
|
||||||
Debug.Log("[FMOD→Whisper] Loopback playback ready.");
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
Debug.LogWarning($"[FMOD→Whisper] playSound failed or channel invalid: {res}");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// No Whisper stream here. It will be created on ActivateRecording().
|
// No Whisper stream here. It will be created on ActivateRecording().
|
||||||
await System.Threading.Tasks.Task.Yield();
|
await System.Threading.Tasks.Task.Yield();
|
||||||
}
|
}
|
||||||
@@ -181,8 +155,7 @@ public class FMODWhisperBridge : MonoBehaviour
|
|||||||
|
|
||||||
if (_stream != null)
|
if (_stream != null)
|
||||||
{
|
{
|
||||||
try { _stream.StopStream(); } catch { }
|
_stream.StopStream();
|
||||||
_streamStarted = false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
try
|
try
|
||||||
@@ -193,7 +166,6 @@ public class FMODWhisperBridge : MonoBehaviour
|
|||||||
{
|
{
|
||||||
Debug.LogError($"[FMOD→Whisper] CreateStream exception: {e}");
|
Debug.LogError($"[FMOD→Whisper] CreateStream exception: {e}");
|
||||||
_stream = null;
|
_stream = null;
|
||||||
_streamStarted = false;
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -214,16 +186,6 @@ public class FMODWhisperBridge : MonoBehaviour
|
|||||||
whisper.useVad = useVadInStream;
|
whisper.useVad = useVadInStream;
|
||||||
|
|
||||||
_stream.StartStream();
|
_stream.StartStream();
|
||||||
_streamStarted = true;
|
|
||||||
|
|
||||||
|
|
||||||
// --- NEW: Clear the ring buffer and reset read pointer ---
|
|
||||||
// Pause loopback while we clear (optional, but avoids clicks)
|
|
||||||
if (playLoopback && _playChannel.hasHandle())
|
|
||||||
_playChannel.setPaused(true);
|
|
||||||
|
|
||||||
// Clear buffer bytes
|
|
||||||
ClearRecordRingBuffer();
|
|
||||||
|
|
||||||
// Reset our read pointer to the current write head
|
// Reset our read pointer to the current write head
|
||||||
_core.getRecordPosition(recordDriverId, out _lastRecordPos);
|
_core.getRecordPosition(recordDriverId, out _lastRecordPos);
|
||||||
@@ -231,13 +193,8 @@ public class FMODWhisperBridge : MonoBehaviour
|
|||||||
// We’ll skip feeding for one frame to guarantee a clean start
|
// We’ll skip feeding for one frame to guarantee a clean start
|
||||||
_skipOneFeedFrame = true;
|
_skipOneFeedFrame = true;
|
||||||
|
|
||||||
// Unpause loopback if we want it active during recording
|
|
||||||
if (playLoopback && _playChannel.hasHandle() && (!loopbackOnlyWhenActive || isRecordingActivated))
|
|
||||||
_playChannel.setPaused(loopbackOnlyWhenActive ? false : _playChannel.getPaused(out var paused) == FMOD.RESULT.OK && paused ? false : false);
|
|
||||||
|
|
||||||
isRecordingActivated = true;
|
isRecordingActivated = true;
|
||||||
Debug.Log("[FMOD→Whisper] Stream activated (buffer cleared; reading from current head).");
|
Debug.Log("[FMOD→Whisper] Stream activated (buffer cleared; reading from current head).");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -245,14 +202,10 @@ public class FMODWhisperBridge : MonoBehaviour
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public void DeactivateRecording()
|
public void DeactivateRecording()
|
||||||
{
|
{
|
||||||
if (!isRecordingActivated && !_streamStarted)
|
if (!isRecordingActivated)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
isRecordingActivated = false;
|
isRecordingActivated = false;
|
||||||
|
|
||||||
// Pause loopback if it should only be active during recording
|
|
||||||
if (playLoopback && loopbackOnlyWhenActive && _playChannel.hasHandle())
|
|
||||||
_playChannel.setPaused(true);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -277,7 +230,6 @@ public class FMODWhisperBridge : MonoBehaviour
|
|||||||
return Mathf.Clamp01(Mathf.InverseLerp(-60f, -15f, db));
|
return Mathf.Clamp01(Mathf.InverseLerp(-60f, -15f, db));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private void Update()
|
private void Update()
|
||||||
{
|
{
|
||||||
// Always tick FMOD
|
// Always tick FMOD
|
||||||
@@ -285,8 +237,7 @@ public class FMODWhisperBridge : MonoBehaviour
|
|||||||
if (!_recSound.hasHandle()) return;
|
if (!_recSound.hasHandle()) return;
|
||||||
|
|
||||||
// Compute how many samples recorded since last frame.
|
// Compute how many samples recorded since last frame.
|
||||||
uint recPos;
|
_core.getRecordPosition(recordDriverId, out uint recPos);
|
||||||
_core.getRecordPosition(recordDriverId, out recPos);
|
|
||||||
|
|
||||||
uint deltaSamples = (recPos >= _lastRecordPos)
|
uint deltaSamples = (recPos >= _lastRecordPos)
|
||||||
? (recPos - _lastRecordPos)
|
? (recPos - _lastRecordPos)
|
||||||
@@ -337,7 +288,7 @@ public class FMODWhisperBridge : MonoBehaviour
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 2) Feed audio to Whisper
|
// 2) Feed audio to Whisper
|
||||||
if (_streamStarted && _stream != null)
|
if (_stream != null)
|
||||||
{
|
{
|
||||||
if (isRecordingActivated && !_skipOneFeedFrame)
|
if (isRecordingActivated && !_skipOneFeedFrame)
|
||||||
{
|
{
|
||||||
@@ -353,7 +304,6 @@ public class FMODWhisperBridge : MonoBehaviour
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// If skipping, we just discard this frame to ensure no stale data leaks.
|
// If skipping, we just discard this frame to ensure no stale data leaks.
|
||||||
}
|
}
|
||||||
finally
|
finally
|
||||||
@@ -364,12 +314,11 @@ public class FMODWhisperBridge : MonoBehaviour
|
|||||||
if (_skipOneFeedFrame) _skipOneFeedFrame = false;
|
if (_skipOneFeedFrame) _skipOneFeedFrame = false;
|
||||||
|
|
||||||
_lastRecordPos = recPos;
|
_lastRecordPos = recPos;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private string PostProcessInput(string input)
|
private string PostProcessInput(string input)
|
||||||
{
|
{
|
||||||
return input.Replace("[silence]", "").Replace("[ Silence ]", "").Replace("BLANK_AUDIO", "").Replace("[", "").Replace("]", "").Trim();
|
return input.Replace("[silence]", "").Replace("[ Silence ]", "").Replace("BLANK_AUDIO", "").Replace("[", "").Replace("]", "").Replace("END PLAYBACK", "").Trim();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void FeedSilentChunk(uint byteLen)
|
private void FeedSilentChunk(uint byteLen)
|
||||||
@@ -450,56 +399,6 @@ public class FMODWhisperBridge : MonoBehaviour
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private void ClearRecordRingBuffer()
|
|
||||||
{
|
|
||||||
if (!_recSound.hasHandle() || _soundPcmLength == 0) return;
|
|
||||||
|
|
||||||
uint totalBytes = _soundPcmLength * (uint)_nativeChannels * 2; // PCM16
|
|
||||||
IntPtr p1, p2;
|
|
||||||
uint len1, len2;
|
|
||||||
|
|
||||||
// Lock the whole buffer (start=0, length=totalBytes)
|
|
||||||
var r = _recSound.@lock(0, totalBytes, out p1, out p2, out len1, out len2);
|
|
||||||
if (r != FMOD.RESULT.OK)
|
|
||||||
{
|
|
||||||
Debug.LogWarning($"[FMOD→Whisper] Could not lock ring buffer to clear: {r}");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
try
|
|
||||||
{
|
|
||||||
if (len1 > 0)
|
|
||||||
{
|
|
||||||
// zero p1
|
|
||||||
// We’ll reuse a static zero array to avoid allocating huge buffers repeatedly
|
|
||||||
ZeroMem(p1, (int)len1);
|
|
||||||
}
|
|
||||||
if (len2 > 0)
|
|
||||||
{
|
|
||||||
ZeroMem(p2, (int)len2);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
finally
|
|
||||||
{
|
|
||||||
_recSound.unlock(p1, p2, len1, len2);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// cheap zeroing helper (avoids allocating len-sized arrays each time)
|
|
||||||
private static readonly byte[] _zeroChunk = new byte[16 * 1024]; // 16 KB
|
|
||||||
private static void ZeroMem(IntPtr dst, int byteLen)
|
|
||||||
{
|
|
||||||
int offset = 0;
|
|
||||||
while (byteLen > 0)
|
|
||||||
{
|
|
||||||
int n = Math.Min(_zeroChunk.Length, byteLen);
|
|
||||||
Marshal.Copy(_zeroChunk, 0, dst + offset, n);
|
|
||||||
offset += n;
|
|
||||||
byteLen -= n;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Computes RMS (root mean square) from a PCM16 block using only safe code.
|
/// Computes RMS (root mean square) from a PCM16 block using only safe code.
|
||||||
/// Uses the shared _shortOverlay buffer (no allocations).
|
/// Uses the shared _shortOverlay buffer (no allocations).
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ public class ArcheryRangeNPC : NPCController
|
|||||||
public ModelDisplay modelDisplay;
|
public ModelDisplay modelDisplay;
|
||||||
public float modelDisplaySize = 0.75f;
|
public float modelDisplaySize = 0.75f;
|
||||||
public Transform startTargetQuestMarkerPoint;
|
public Transform startTargetQuestMarkerPoint;
|
||||||
|
public KeyboardManager keyboardManager;
|
||||||
|
|
||||||
private Texture2D GeneratedTexture;
|
private Texture2D GeneratedTexture;
|
||||||
|
|
||||||
@@ -25,6 +26,8 @@ public class ArcheryRangeNPC : NPCController
|
|||||||
// 3 - player pressed the image generation button
|
// 3 - player pressed the image generation button
|
||||||
// 4 - player pressed the model generation button
|
// 4 - player pressed the model generation button
|
||||||
// 5 - model spawned into the game
|
// 5 - model spawned into the game
|
||||||
|
// 6 - round completed
|
||||||
|
// 7 - name submitted
|
||||||
private int state;
|
private int state;
|
||||||
|
|
||||||
private void Awake()
|
private void Awake()
|
||||||
@@ -37,6 +40,8 @@ public class ArcheryRangeNPC : NPCController
|
|||||||
microphoneStand.OnPlayerUsedMicrophone += OnPlayerUsedMicrophone;
|
microphoneStand.OnPlayerUsedMicrophone += OnPlayerUsedMicrophone;
|
||||||
imageGenerationButton.OnButtonPressed += OnImageGenerationButtonPressed;
|
imageGenerationButton.OnButtonPressed += OnImageGenerationButtonPressed;
|
||||||
modelGenerationButton.OnButtonPressed += OnModelGenerationButtonPressed;
|
modelGenerationButton.OnButtonPressed += OnModelGenerationButtonPressed;
|
||||||
|
keyboardManager.OnActivate += OnRoundComplete;
|
||||||
|
keyboardManager.OnSubmit += OnNameSubmitted;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected async override void OnPlayerApproach()
|
protected async override void OnPlayerApproach()
|
||||||
@@ -119,4 +124,23 @@ public class ArcheryRangeNPC : NPCController
|
|||||||
|
|
||||||
modelGenerationButton.Deactivate();
|
modelGenerationButton.Deactivate();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void OnRoundComplete()
|
||||||
|
{
|
||||||
|
if (state == 5)
|
||||||
|
{
|
||||||
|
state = 6;
|
||||||
|
SpeakVoiceLine(6);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnNameSubmitted()
|
||||||
|
{
|
||||||
|
if (state == 6)
|
||||||
|
{
|
||||||
|
state = 7;
|
||||||
|
}
|
||||||
|
SpeakVoiceLine(7);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -26,25 +26,13 @@ public abstract class NPCController : MonoBehaviour
|
|||||||
|
|
||||||
private float[] rmsCurve;
|
private float[] rmsCurve;
|
||||||
private EventInstance currentVoicelineEvent;
|
private EventInstance currentVoicelineEvent;
|
||||||
private bool isSpeaking;
|
|
||||||
private float smoothed;
|
private float smoothed;
|
||||||
|
|
||||||
// If you change RMS window in Python, update this
|
// If you change RMS window in Python, update this
|
||||||
private const float FRAME_DURATION = 0.02f;
|
private const float FRAME_DURATION = 0.02f;
|
||||||
private float sampleRate = 1f / FRAME_DURATION; // RMS samples per second (20ms windows)
|
private readonly float sampleRate = 1f / FRAME_DURATION; // RMS samples per second (20ms windows)
|
||||||
|
|
||||||
|
|
||||||
// Start is called before the first frame update
|
|
||||||
void Awake()
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
void Start()
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// Update is called once per frame
|
// Update is called once per frame
|
||||||
void Update()
|
void Update()
|
||||||
{
|
{
|
||||||
@@ -65,7 +53,7 @@ public abstract class NPCController : MonoBehaviour
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isSpeaking && rmsCurve != null && currentVoicelineEvent.isValid())
|
if (rmsCurve != null && currentVoicelineEvent.isValid())
|
||||||
{
|
{
|
||||||
AnimateMouth();
|
AnimateMouth();
|
||||||
}
|
}
|
||||||
@@ -105,22 +93,6 @@ public abstract class NPCController : MonoBehaviour
|
|||||||
mouth.localScale = s;
|
mouth.localScale = s;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private void StopSpeaking()
|
|
||||||
{
|
|
||||||
isSpeaking = false;
|
|
||||||
smoothed = inverted ? maxScaleY : minScaleY;
|
|
||||||
|
|
||||||
if (mouth != null)
|
|
||||||
{
|
|
||||||
var scale = mouth.localScale;
|
|
||||||
scale.y = smoothed;
|
|
||||||
mouth.localScale = scale;
|
|
||||||
}
|
|
||||||
|
|
||||||
currentVoicelineEvent.release();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void PlayerApproach() {
|
public void PlayerApproach() {
|
||||||
|
|
||||||
OnPlayerApproach();
|
OnPlayerApproach();
|
||||||
@@ -168,21 +140,15 @@ public abstract class NPCController : MonoBehaviour
|
|||||||
|
|
||||||
LoadCurve(key); // load RMS data
|
LoadCurve(key); // load RMS data
|
||||||
|
|
||||||
emitter = emitter ?? gameObject;
|
emitter = emitter != null ? emitter : gameObject;
|
||||||
currentVoicelineEvent = AudioManager.Instance.PlayDialogue(characterSpecificFolder + "/" + key, emitter, radioAmount);
|
currentVoicelineEvent = AudioManager.Instance.PlayDialogue(characterSpecificFolder + "/" + key, emitter, radioAmount);
|
||||||
if (!currentVoicelineEvent.isValid())
|
if (!currentVoicelineEvent.isValid())
|
||||||
{
|
{
|
||||||
Debug.LogError("Failed to start dialogue event.");
|
Debug.LogError("Failed to start dialogue event.");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
isSpeaking = true;
|
|
||||||
|
|
||||||
// Stop mouth on end
|
|
||||||
float voicelineDuration = rmsCurve.Length * FRAME_DURATION;
|
|
||||||
Invoke(nameof(StopSpeaking), voicelineDuration + 0.1f);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// ---------------------------
|
// ---------------------------
|
||||||
// Load RMS Timeline (.txt)
|
// Load RMS Timeline (.txt)
|
||||||
// ---------------------------
|
// ---------------------------
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
using DG.Tweening;
|
using DG.Tweening;
|
||||||
using System;
|
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
@@ -26,8 +25,9 @@ public class ShapeDetectionNPC : NPCController
|
|||||||
// 3 - player spoke into the radio
|
// 3 - player spoke into the radio
|
||||||
// 4 - player pressed enter on keyboard
|
// 4 - player pressed enter on keyboard
|
||||||
// 5 - player inserted picture into printer
|
// 5 - player inserted picture into printer
|
||||||
// 6 - shape scanner completed
|
// 6 - player completed first shape scanner config
|
||||||
// 7 - moving away
|
// 7 - shape scanner completed
|
||||||
|
// 8 - moving away
|
||||||
private int state;
|
private int state;
|
||||||
private float lastPlayerApproachTime;
|
private float lastPlayerApproachTime;
|
||||||
|
|
||||||
@@ -43,7 +43,8 @@ public class ShapeDetectionNPC : NPCController
|
|||||||
radio.OnPlayerFinishedSpeaking += OnPlayerSpokeIntoRadio;
|
radio.OnPlayerFinishedSpeaking += OnPlayerSpokeIntoRadio;
|
||||||
printerInsertionHole.OnPlayerInsertedPrintable += OnPlayerInitiatedPrinting;
|
printerInsertionHole.OnPlayerInsertedPrintable += OnPlayerInitiatedPrinting;
|
||||||
computerPrinter.OnImagePrinted += OnPlayerPrintedImage;
|
computerPrinter.OnImagePrinted += OnPlayerPrintedImage;
|
||||||
shapeScanner.OnShapeScannerCompleted += OnShapeScannerCompleted;
|
shapeScanner.OnConfigCompleted += OnPlayerCompletedFirstConfiguration;
|
||||||
|
shapeScanner.OnAllCompleted += OnShapeScannerCompleted;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected async override void OnPlayerApproach()
|
protected async override void OnPlayerApproach()
|
||||||
@@ -132,10 +133,22 @@ public class ShapeDetectionNPC : NPCController
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void OnPlayerCompletedFirstConfiguration()
|
||||||
|
{
|
||||||
|
if (state == 5)
|
||||||
|
{
|
||||||
|
SpeakVoiceLine(6, radio.gameObject, radioAmount);
|
||||||
|
state = 6;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void OnShapeScannerCompleted()
|
private void OnShapeScannerCompleted()
|
||||||
{
|
{
|
||||||
state = 6;
|
if (state == 6)
|
||||||
questMarker.MoveTo(questMarkerPoint);
|
{
|
||||||
|
state = 7;
|
||||||
|
questMarker.MoveTo(questMarkerPoint);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void MoveToNextPoint(int pointIndex)
|
private void MoveToNextPoint(int pointIndex)
|
||||||
@@ -153,12 +166,13 @@ public class ShapeDetectionNPC : NPCController
|
|||||||
|
|
||||||
public async void OnPlayerEnteredRoom()
|
public async void OnPlayerEnteredRoom()
|
||||||
{
|
{
|
||||||
if (state == 6)
|
if (state == 7)
|
||||||
{
|
{
|
||||||
state = 7;
|
state = 8;
|
||||||
staticRadio.SetActive(false);
|
staticRadio.SetActive(false);
|
||||||
questMarker.gameObject.SetActive(false);
|
questMarker.gameObject.SetActive(false);
|
||||||
await Task.Delay(2500);
|
SpeakVoiceLine(7, gameObject, 0);
|
||||||
|
await Task.Delay(6500);
|
||||||
MoveToNextPoint(0);
|
MoveToNextPoint(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -35,11 +35,13 @@ public class ShapeScannerConfiguration
|
|||||||
|
|
||||||
public class ShapeScanner : MonoBehaviour
|
public class ShapeScanner : MonoBehaviour
|
||||||
{
|
{
|
||||||
public delegate void OnShapeScannerCompletedDelegate();
|
public delegate void OnConfigCompletedDelegate();
|
||||||
public event OnShapeScannerCompletedDelegate OnShapeScannerCompleted;
|
public event OnConfigCompletedDelegate OnConfigCompleted;
|
||||||
|
public delegate void OnAllCompletedDelegate();
|
||||||
|
public event OnAllCompletedDelegate OnAllCompleted;
|
||||||
|
|
||||||
[Header("Static References")]
|
[Header("Static References")]
|
||||||
public List<ShapeScannerConfiguration> configurations = new List<ShapeScannerConfiguration>();
|
public List<ShapeScannerConfiguration> configurations = new();
|
||||||
public ShapeScannerRay rayPrefab;
|
public ShapeScannerRay rayPrefab;
|
||||||
public Transform raySpawnCorner1;
|
public Transform raySpawnCorner1;
|
||||||
public Transform raySpawnCorner2;
|
public Transform raySpawnCorner2;
|
||||||
@@ -163,6 +165,8 @@ public class ShapeScanner : MonoBehaviour
|
|||||||
AudioManager.Instance.PlayAttachedInstance(FMODEvents.Instance.ShapeScannerSuccess, gameObject);
|
AudioManager.Instance.PlayAttachedInstance(FMODEvents.Instance.ShapeScannerSuccess, gameObject);
|
||||||
if (!particles.isPlaying) particles.Play();
|
if (!particles.isPlaying) particles.Play();
|
||||||
particles.Emit(100);
|
particles.Emit(100);
|
||||||
|
|
||||||
|
OnConfigCompleted?.Invoke();
|
||||||
}
|
}
|
||||||
|
|
||||||
private float CalculateCorrectPercentage()
|
private float CalculateCorrectPercentage()
|
||||||
@@ -235,6 +239,6 @@ public class ShapeScanner : MonoBehaviour
|
|||||||
// Create line renderer from shape scanner to door card reader
|
// Create line renderer from shape scanner to door card reader
|
||||||
lineRenderer.enabled = true;
|
lineRenderer.enabled = true;
|
||||||
|
|
||||||
OnShapeScannerCompleted?.Invoke();
|
OnAllCompleted?.Invoke();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user