1
0
forked from cgvr/DeltaVR

136 Commits

Author SHA1 Message Date
henrisel ea9357ad14 Update README.md 2026-05-14 13:28:59 +00:00
henrisel 8c7204b17a Delete Build.zip 2026-05-13 12:37:24 +00:00
henrisel 04c77c94bf Update README.md 2026-05-13 12:05:43 +00:00
henrisel f798030c2b Update README.md 2026-05-13 12:02:10 +00:00
henrisel f8b5af0b85 Upload files to "Doc/screenshots" 2026-05-13 11:51:47 +00:00
henrisel 693cafc3bc remove screenshots 2026-05-13 14:48:05 +03:00
henrisel 2214a0c6cc add screenshots 2026-05-13 14:16:31 +03:00
henrisel 34c693aaa3 update READMEs 2026-05-13 14:14:28 +03:00
henrisel 7c67a4b44b update main README 2026-05-13 13:40:05 +03:00
henrisel bd5cc0f405 spawn generated object as default ufo's child, not separate object 2026-05-12 11:38:53 +03:00
henrisel 4e55b7e9ab made shape scanner ray colliders higher 2026-03-25 13:46:57 +02:00
henrisel dea42068f7 cafe gen items slightly smaller 2026-03-25 13:38:30 +02:00
henrisel b021fd0110 remove whisper-small, add and use whisper base EN 2026-03-25 13:03:22 +02:00
henrisel 7b45d623d1 add whisper-small and whisper-tiny, use tiny 2026-03-23 10:09:58 +02:00
henrisel f42356dd7a remove mic buffer clearing functionality 2026-03-23 09:55:58 +02:00
henrisel 50002adb61 remove audio loopback functionality 2026-03-23 09:22:20 +02:00
henrisel ee629e2593 assigned correct collision layer to tutorial cubes 2026-03-20 14:51:27 +02:00
henrisel 4796869a29 professor final voice line comes from himself, not radio 2026-03-20 14:50:15 +02:00
henrisel 398f22efdd added 'END PLAYBACK' to removing strings 2026-03-17 10:36:12 +02:00
henrisel b40b075540 update TODO 2026-03-16 15:59:54 +02:00
henrisel cad4c2cbbc mouth animation correctly plays even if previous voiceline is interrupted 2026-03-16 15:40:31 +02:00
henrisel 6a77893ed7 archery range npc voicelines for completing round and submitting name 2026-03-16 15:32:46 +02:00
henrisel 439094f74a professor says thank you after player enters room 2026-03-16 15:09:14 +02:00
henrisel c78886e492 professor says good job after first config done 2026-03-16 14:59:10 +02:00
henrisel 3edef118af add new voiceline files, remove FMOD cache folder 2026-03-16 14:23:02 +02:00
henrisel d6c2878491 simplify shape scanner code 2026-03-16 12:31:43 +02:00
henrisel f101de5390 remove SelectExit from shape scanner 2026-03-16 12:29:07 +02:00
henrisel 58d5f24069 delete copy scene 2026-03-16 12:06:53 +02:00
henrisel 2c8c146a5f fixed bug with shape scanner destroying not whole scannable object, deleted Parent-GeneratedModel objects from scene 2026-03-16 12:04:03 +02:00
henrisel db60947749 fix shapescanner incorrect ray counting and make asynchronous 2026-03-16 11:28:58 +02:00
henrisel 717964affd fixed bug with radio not recording voice 2026-03-15 12:40:27 +02:00
henrisel e0492595e1 moved spawn point to cgvr lab, adjusted tp points heights 2026-03-14 17:43:43 +02:00
henrisel e56e3f3618 cheat keys also rotate player after teleport 2026-03-12 19:08:05 +02:00
henrisel fc083e7d81 npcs turn towards the player separately from being aggroed 2026-03-12 18:57:30 +02:00
henrisel a6a6b036ca reduced shape scanner conf count, fix bug with HUD 2026-03-12 18:07:55 +02:00
henrisel b1fe32bdf2 professor has his own radio 2026-03-12 17:32:53 +02:00
henrisel 6e9e5cb4d4 releasing radio button starts feeding silence into Whisper stream 2026-03-12 17:16:34 +02:00
henrisel f6b46784bf archery range mic particles slower, wider cone area, shorter lifetime 2026-03-12 16:37:38 +02:00
henrisel fca8453a26 continuous collision for cafe spawned objects 2026-03-12 16:32:47 +02:00
henrisel 07e42ea60b treat more words as positive, make serving tray larger 2026-03-12 16:27:58 +02:00
henrisel d85953e02f radio button is pressable only when radio is held 2026-03-12 16:10:49 +02:00
henrisel d969d3b77c update readme 2026-03-11 18:10:36 +02:00
henrisel 9fbd08eb25 archery range spawned objects are rotated towards the player 2026-03-11 17:08:16 +02:00
henrisel c19026c0ac made archery range rounds shorter (30 sec) 2026-03-11 17:02:12 +02:00
henrisel 7b740ea80d shape scanner updates display on start 2026-03-11 16:59:55 +02:00
henrisel 7a37566296 change shape checker configurations + fix bug with rounding 2026-03-07 16:05:37 +02:00
henrisel 944b4f0827 adjust insertion and ejection holes transforms 2026-03-07 14:28:43 +02:00
henrisel 69ff74911c professor waits a few sec before starting to leave 2026-03-07 14:17:31 +02:00
henrisel 68fe5357d2 professor walks away after having been saved 2026-03-07 13:46:26 +02:00
henrisel b583b00303 archery range npc waits a bit before speaking after mic usage 2026-03-07 12:40:17 +02:00
henrisel a3b0a20357 add particle effects to archery range model display 2026-03-07 12:33:43 +02:00
henrisel f1fc906ae5 add particle effects to 3d printer 2026-03-07 11:59:46 +02:00
henrisel 96b21d0df9 shape scanner emits particles on config complete 2026-03-07 11:36:43 +02:00
henrisel dc077d5ac6 clear out highscores 2026-03-06 18:19:23 +02:00
henrisel 08c9febd98 archery range mic emits particles + recording is clearer to player 2026-03-06 18:16:45 +02:00
henrisel c0e7f292a0 radio particle emission rate corresponds with mic input volume 2026-03-06 17:41:52 +02:00
henrisel 1bef5a6815 radio button is disabled before radio is grabbed 2026-03-06 17:06:41 +02:00
henrisel ba4c7ed631 computer printer Enter key is disabled before radio has been used 2026-03-06 16:55:54 +02:00
henrisel 2188f16cff radio transmitter emits particles towards computer screen 2026-03-05 13:44:32 +02:00
henrisel 33b86e09ae radio transmitter keeps transmitting until text processing is completed 2026-03-05 12:52:29 +02:00
henrisel 22f6982c4c cafe waiter brings food on a serving tray 2026-03-05 12:27:38 +02:00
henrisel 73fad024c0 made radio button collision less flaky 2026-03-01 13:44:40 +02:00
henrisel 5e6bb24c27 on shape scanner completion, door is unlocked, shape scanner initializes empty config, quest marker moves to npc 2026-03-01 13:15:51 +02:00
henrisel 95e67b9870 shape scanner supports multiple object scanning, always destroys colliding objects on config completion 2026-03-01 11:30:33 +02:00
henrisel dfdb47b94a change mic icon colour to grey/green 2026-02-28 15:42:15 +02:00
henrisel d6a63a5de6 microphone stand has separate enter and exit proximity triggers 2026-02-28 15:18:57 +02:00
henrisel 9d780f4dbc npc characters have separate trigger enter and exit areas 2026-02-28 15:00:16 +02:00
henrisel df44849d0d add pen, animate writing when npc listening to order 2026-02-28 14:01:07 +02:00
henrisel e47983fbf9 custom notepad model, custom fonts to notepad and computer screen 2026-02-28 12:33:28 +02:00
henrisel 2d057ac2ba replaced computer printer model, enter key correct sound effect 2026-02-28 12:03:52 +02:00
henrisel d7c2634bda new table model in archery range, disable buttons at first, play printing sound 2026-02-28 11:31:13 +02:00
henrisel f82358b0c8 radio nonkinematic rigidbody, continuous collision detection 2026-02-26 17:52:01 +02:00
henrisel 8b141a153f added invisible walls, made 3d printer smaller, added highlighter to 3d printer hole 2026-02-26 17:11:11 +02:00
henrisel 8ebcbb15e8 made archery range generated targets larger, add lights 2026-02-26 16:48:29 +02:00
henrisel 1471722ed4 use cable models in archery range 2026-02-26 11:24:14 +02:00
henrisel f7707b4a7f add more TODO notes from Game In Tartu to readme 2026-02-26 10:41:55 +02:00
henrisel 8a3f10a9a2 cafe waiter npc and mic detect speech more 2026-02-21 22:06:23 +02:00
henrisel dbd2cdca0d fix target ufo prefab 2026-02-21 20:46:24 +02:00
henrisel 1a29f785b8 improve fmod whisper bridge and radio button using it 2026-02-21 20:25:12 +02:00
henrisel c968e6bed4 added cheat keys to teleport player to minigames 2026-02-21 19:40:08 +02:00
henrisel efd42d3907 increase npc collider heights + minor fixes 2026-02-21 08:47:33 +02:00
henrisel d206502ab3 fix radio button flakiness 2026-02-18 14:55:31 +02:00
henrisel 255f3c1696 rename prefabs 2026-02-17 19:14:14 +02:00
henrisel 4e5cee129d put shape scanner model and rays into game 2026-02-17 19:09:32 +02:00
henrisel dfcce63371 quest marker slowly moves towards next target position 2026-02-17 17:50:10 +02:00
henrisel 5c7103a79b radio button can be released 2026-02-17 17:40:46 +02:00
henrisel 8e606782ab added Radio model, npc correctly speaks when interacting with elements 2026-02-15 13:57:13 +02:00
henrisel 85df2ce45d import new improved models 2026-02-15 12:46:18 +02:00
henrisel bd8a3d90ca printer spawns object in correct place, size, and plays sound 2026-02-15 12:38:13 +02:00
henrisel 46400bc1f0 printer input hole animation 2026-02-15 12:07:34 +02:00
henrisel 17c9122a14 can insert printable into 3d printer, 3d printer starts printing 2026-02-14 16:08:13 +02:00
henrisel 884459842e computer screen shows text, pressing enter key prints out image 2026-02-14 15:22:37 +02:00
henrisel 4c7e0bfbee add models and use them in archery range minigame 2026-02-14 13:48:13 +02:00
henrisel 60951161ed quest marker hovers above specified target 2026-02-13 17:40:37 +02:00
henrisel 1f632c60bc shape detection npc speaks from radio, avoid interrupting voicelines 2026-02-13 17:01:16 +02:00
henrisel c07fb1fe1e forgot to update TODO in readme 2026-02-12 15:54:30 +02:00
henrisel cf709f4dc9 NPCs move quest marker around to next objectives 2026-02-12 15:54:01 +02:00
henrisel 3d804dfdaf quest marker that floats up and down and turns towards player 2026-02-12 15:23:54 +02:00
henrisel d0b909a1ab created ShapeDetectionNPC with voicelines, moved shape detection minigame controller logic inside it 2026-02-12 12:22:23 +02:00
henrisel dc55e8d884 moved archery range model generation logic to npc script, added corresponding voicelines 2026-02-08 12:28:59 +02:00
henrisel 53295a60ed Merge branch 'cgvr-master' 2026-02-08 10:49:43 +02:00
henrisel c9494f2d69 cafe waiter npc always hides notebook when player leaves 2026-02-08 10:46:00 +02:00
henrisel 9542432701 fix colour in robert main image and moustache 2026-02-08 10:31:16 +02:00
jee7 449953b393 Removed unused namespaces from ConfigManager. 2026-02-07 16:45:20 +02:00
jee7 95ea7a2625 Removed dead code. File.WriteAllText and File.ReadAllText seem to work fine (no need for file streaming). 2026-02-07 15:14:26 +02:00
jee7 2f12ef4aff Formatting fix. C# functions start with a uppercase letter. 2026-02-07 15:13:03 +02:00
jee7 2ba8b4d1b5 Moved the ConfigManager script to the Scripts folder and ConfigManager prefab to the Prefabs folder. 2026-02-07 15:11:12 +02:00
henrisel 7384a21d58 scale spawned object to match given bounding sphere diameter 2026-02-07 14:10:12 +02:00
henrisel 9fd4188d55 fix most of FMOD errors in console 2026-02-07 13:27:46 +02:00
henrisel 32d0686cd2 npcs turn smoothly towards player 2026-02-07 12:54:27 +02:00
henrisel 2ecda2b9a0 rebuild FishNetworking scene ids to fix build 2026-02-07 12:43:19 +02:00
henrisel 0fbfaed5c3 fix problems from merging with upstream 2026-02-07 12:29:59 +02:00
henrisel b1d5b73df4 Merge remote-tracking branch 'upstream/master' 2026-02-07 11:51:41 +02:00
henrisel 52902b4e0b convert file to lfs pointer ? 2026-02-07 11:51:33 +02:00
henrisel de7e9e96e7 make copy of main scene 2026-02-07 11:39:49 +02:00
jee7 30c0652453 Project Settings file. I don't know what change is this... 2026-02-03 23:00:57 +02:00
jee7 85beb73f51 Do not commit config.json. Unity creates it itself and we do not want configs from different devs to end up in the repo. 2026-02-03 22:59:02 +02:00
jee7 011d9dfdda Restore Defaults button to restore the default settings. 2026-02-03 22:56:01 +02:00
jee7 2e7dc403ad Restore Defaults button images. 2026-02-03 22:55:29 +02:00
jee7 4bda55baca Locomotion speed default value fix. 2026-02-03 22:55:03 +02:00
jee7 ba1f0c855d Settings are now loaded from and saved to the config.json file. Reworked the UI structure a bit (the script that manage the settings have to be active before the UI is opened to actually take effect at game startup). Fixed several UI bugs (slider deselection, UI labels blocking the sliders, etc). 2026-02-03 21:47:16 +02:00
jee7 415484c1f0 Removed unused namespaces that hindered building. 2026-02-03 21:44:40 +02:00
jee7 2347d27c62 For some reason Unity changed something in the font asset... Maybe it is the glow effect. 2026-02-03 21:43:50 +02:00
jee7 74c2ca6a98 Managers folder meta file. 2026-02-02 22:45:06 +02:00
jee7 f3d0f206af Config manager. Just creating, reading and writing the config file for now. 2026-02-02 22:44:17 +02:00
jee7 f9b2084876 Removed the nested .gitignore file that ignored the .meta files inside this directory. This should fix the missing script errors. 2026-02-02 21:30:45 +02:00
jee7 53c6b04d23 Main scene changes. The scene tree is now more readable. Removed the two previous networking prefabs and added the new one. The only thing scene-dependent on it is the player's spawn point. Maybe also the object pool, however it seems to create one itself. So, the object pool in the scene might also be deleted perhaps. 2026-02-02 20:36:34 +02:00
jee7 91e44c5dae Created a single prefab to incorporate all the networking stuff. This is the only networking prefab required in the scene. We will see if git breaks it. 2026-02-02 20:35:25 +02:00
jee7 216e2660df Hide FMOD setup wizard by default. 2026-02-02 19:54:17 +02:00
jee7 57222f0bb0 The arrow server can only be created after the bow server's ownership is done. Should be tested. 2026-02-02 19:36:00 +02:00
jee7 768ed39abe Animation player refactoring. Also, if the animation is already playing, do not log. Might be dangerous, but was a bit spam for now. 2026-02-02 19:35:01 +02:00
jee7 89b9b5bd7a Scan only the project assets, not the entire folder, to build the Asset Database. 2026-02-02 19:32:32 +02:00
jee7 901334b6bf Fix for the Lexus normal map. 2026-02-02 19:30:25 +02:00
jee7 1885b1fbe8 Added some debug logs. 2026-02-02 19:29:49 +02:00
jee7 f81bc2f7fd The last Interaction Layer name must be "Teleport" not "Player Only". 2026-02-02 19:28:40 +02:00
jee7 a4a6535779 Reworked the TutorialController so that it will show the info about trying to initialize once per some time interval. Not flood the entire log. 2026-02-02 19:26:28 +02:00
710 changed files with 41981 additions and 2970 deletions
+8 -1
View File
@@ -102,4 +102,11 @@ fmod_editor.log
NetrworkManagerUI.prefab
NetrworkManagerUI.prefab.meta
CustomNetworkManager.prefab
CustomNetworkManager.prefab.meta
CustomNetworkManager.prefab.meta
#FMOD Studio
DeltaVRFMOD/.cache
# Project-specific files
config.json
+17 -23
View File
@@ -1,26 +1,20 @@
### TODO
* user flow: grab item? mida krabada - Raimond ise parandas, mergeda vaja
* võtta spawnitud mudeli mõõtmed: meshcollideri max x, max y, etc? bounding box? ja kontrollida spawnimisel scale'i
* shape scanner:
* peenikesemad kiired
* mitte lihtsalt ontriggerenter ja -exit, sest kui mitu objekti lähevad samal ajal sisse
* mustad kiired on halvasti nähtavad pruuni materjali taustal
* archery range:
* kui midagi laeb (wire aktiivne), siis particle'id võiks voolata mööda toru
* highscore json tühjaks
* cafe:
* robert on plekiline, vunts õiget värvi :)
* quest marker järjest järgmise tegevuse kohal: mikrofon, siis nupud
* character billboard:
* tulnukale korraliku resolutsiooniga suu / silm liikuma
* klaas on näha temast eespool
* pööramine kaamera poole - sujuvalt (slerp)
# Testing the pipeline
Can't/Won't Do:
* glTF loading: vahetada ära shader Universal render pipelin Lit, mitte panna buildi kaasa glTf oma - **ei saa, objekt on siis ilma tekstuurita, lihtsalt hall**
* user prefs: settinguid meelde jätta - **juba sain continuous movementi sisse lülitada by default, rohkem pole vaja**
Install required dependency libraries using
```
pip install -r requirements.txt
```
Make a copy of `.env.example`, rename it as `.env`, and insert the necessary config values.
### Notes
* 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)
* Custom Shader Variant Collection to include glTF-pbrMetallicRoughness shader in build
## Python notebooks
* [`local_image_generation.ipynb`](notebooks/local_image_generation.ipynb)
* [`local_model_generation.ipynb`](notebooks/local_model_generation.ipynb)
* [`subprocess_test.ipynb`](notebooks/subprocess_test.ipynb)
## Python scripts
* [`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
GAIN = 1.0 # multiply RMS values (set to e.g. 30.0 if you want larger values)
EXTENSION = ".txt" # output file extension
OVERWRITE = False # set True to regenerate even if .txt exists
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}")
# Load audio
@@ -29,7 +37,6 @@ def process_wav(filepath):
rms = rms * GAIN
# Save to .txt
out_path = os.path.splitext(filepath)[0] + EXTENSION
np.savetxt(out_path, rms, fmt="%.8f")
print(f"Saved RMS → {out_path}")
@@ -49,4 +56,4 @@ def process_folder(folder_path):
# === Run script ===
if __name__ == "__main__":
folder = input("Enter folder path: ").strip()
process_folder(folder)
process_folder(folder)
-49
View File
@@ -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
@@ -14,7 +14,7 @@
},
{
"cell_type": "code",
"execution_count": 5,
"execution_count": 4,
"id": "77b23cd8",
"metadata": {},
"outputs": [],
@@ -22,29 +22,16 @@
"# API endpoint\n",
"BASE_URL = \"http://127.0.0.1:7960\"\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",
" \n",
" Args:\n",
" image_base64: Base64 string of the image (without 'data:image/...' prefix)\n",
" \"\"\"\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",
" 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",
" response.raise_for_status()\n",
" \n",
@@ -75,7 +62,7 @@
},
{
"cell_type": "code",
"execution_count": 6,
"execution_count": 11,
"id": "eb122295",
"metadata": {},
"outputs": [],
@@ -85,7 +72,19 @@
" image_data = image_file.read()\n",
"\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",
" with open(output_path, 'wb') as f:\n",
" f.write(model)\n",
@@ -94,7 +93,7 @@
},
{
"cell_type": "code",
"execution_count": 9,
"execution_count": 12,
"id": "2ce7dfdf",
"metadata": {},
"outputs": [
@@ -107,14 +106,14 @@
"Progress: 100%\n",
"Downloading model...\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": [
"\n",
"image_path = 'test_resources/style_test_3.jpg'\n",
"output_path = \"test_resources/style_test_3_model.glb\"\n",
"image_path = 'test_resources/512x512.png'\n",
"output_path = \"test_resources/mesh_simplify_ratio_0.998.glb\"\n",
"\n",
"generate_model(image_path, output_path)"
]
@@ -130,7 +129,7 @@
],
"metadata": {
"kernelspec": {
"display_name": ".venv",
"display_name": ".venv (3.10.11)",
"language": "python",
"name": "python3"
},
Binary file not shown.
@@ -1,61 +0,0 @@
# This .gitignore file should be placed at the root of your Unity project directory
#
# Get latest from https://github.com/github/gitignore/blob/master/Unity.gitignore
#
/[Ll]ibrary/
/[Tt]emp/
/[Oo]bj/
/[Bb]uild/
/[Bb]uilds/
/[Ll]ogs/
/[Mm]emoryCaptures/
# Asset meta data should only be ignored when the corresponding asset is also ignored
!/[Aa]ssets/**/*.meta
# Uncomment this line if you wish to ignore the asset store tools plugin
# /[Aa]ssets/AssetStoreTools*
# Autogenerated Jetbrains Rider plugin
[Aa]ssets/Plugins/Editor/JetBrains*
# Visual Studio cache directory
.vs/
# Gradle cache directory
.gradle/
# Autogenerated VS/MD/Consulo solution and project files
ExportedObj/
.consulo/
*.csproj
*.unityproj
*.sln
*.suo
*.tmp
*.user
*.userprefs
*.pidb
*.booproj
*.svd
*.pdb
*.mdb
*.opendb
*.VC.db
# Unity3D generated meta files
*.pidb.meta
*.pdb.meta
*.mdb.meta
*.meta
# Unity3D generated file on crash reports
sysinfo.txt
# Builds
*.apk
*.unitypackage
# Crashlytics generated file
crashlytics-build.properties
@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 9e16c783900f92a4c8942f7d34faa968
guid: 4939e812d2cae8a448666fc57569da59
DefaultImporter:
externalObjects: {}
userData:
@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 99e1fdda206b5d04082b6a45593a1e84
guid: e8cb728e8e288c947a1e0870382445bd
MonoImporter:
externalObjects: {}
serializedVersion: 2
@@ -81,6 +81,7 @@ public class NetworkMenuUI : MonoBehaviour
}
private void OnStartPlaying()
{
Debug.Log("START PRESSED");
statusText.text = "Starting host...";
StartCoroutine(HostAndSearchRoutine());
}
@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 7000d3fd17422c74e9f86757bc8529f0
guid: 49f99c1c0ae8c774eb6bdcbc83c2cfef
MonoImporter:
externalObjects: {}
serializedVersion: 2
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: e928fc8fc03e26a46ad7f8520d468e41
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 8d77d91c1b4e73044b53ddce11333fea
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 44b369698b4397b45b9424694c46f2f5
guid: 474f76f05fac11a4e8e1ed68314fba90
PrefabImporter:
externalObjects: {}
userData:
+23
View File
@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
<ConfigurationData xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Loaded>true</Loaded>
<PrefabGenerator>
<Enabled>true</Enabled>
<LogToConsole>true</LogToConsole>
<FullRebuild>false</FullRebuild>
<SaveChanges>true</SaveChanges>
<DefaultPrefabObjectsPath>Assets\DefaultPrefabObjects.asset</DefaultPrefabObjectsPath>
<SearchScope>1</SearchScope>
<ExcludedFolders />
<IncludedFolders>
<string>Assets\_PROJECT</string>
</IncludedFolders>
</PrefabGenerator>
<CodeStripping>
<IsBuilding>false</IsBuilding>
<IsDevelopment>false</IsDevelopment>
<IsHeadless>false</IsHeadless>
<StripReleaseBuilds>false</StripReleaseBuilds>
<StrippingType>0</StrippingType>
</CodeStripping>
</ConfigurationData>
+7
View File
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: fdec8b985bdf2364cac858b4136da794
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -319,9 +319,12 @@ namespace FishNet.Editing.PrefabCollectionGenerator
{
foreach (string path in GetPrefabFiles("Assets", excludedPaths, true))
{
NetworkObject nob = AssetDatabase.LoadAssetAtPath<NetworkObject>(path);
if (nob != null)
foundNobs.Add(nob);
else
UnityEngine.Debug.LogWarning("Last loading error with: " + path);
}
}
//Specific folders.
@@ -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
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 38bc01876ee396a46b03ca91e612e687
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 42e58ab8243a8c3449d391cc548d895c
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -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
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 5898d7a0def449d47856bcc1ca7a29d6
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -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:
@@ -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:
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 8ff483912820c0c458c2960593f32d01
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -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
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 9e4ecb709f95cd241a9c5dc5558ab3b7
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 5aa14328feee8ad47a37f50a3b07ae47
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -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
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: d0ebb29a4c0d68b4da17bc19e7384990
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -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:
@@ -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:
@@ -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:
@@ -20,6 +20,7 @@ public class ArcheryRange : NetworkBehaviour
public Transform targetEndPosition;
public GameObject targetPrefab;
public StartTarget startTarget;
public QuestMarker questMarker;
public GameObject archeryTargetPointsText;
@@ -27,8 +28,9 @@ public class ArcheryRange : NetworkBehaviour
public Vector3 maxRandomOffset = new Vector3(0f, 2f, 5f);
public float roundLength = 60f;
public float targetSpawnTime = 3f;
public float targetSizeIncrease = 10f;
public ArcheryRangeModelGenerationController modelGenerationController;
public ModelDisplay modelDisplay;
public KeyboardManager keyboardManager;
private List<ArcheryTarget> _targets;
@@ -83,11 +85,8 @@ public class ArcheryRange : NetworkBehaviour
_presentPlayers.Remove(exitedPlayer); // Shifts others left automatically
if (exitedPlayer == _scoredPlayer) keyboardManager.DeActivate(); // If the player ´refuses to enter their name.
}
public override void OnStopServer()
{
base.OnStopServer();
@@ -132,16 +131,17 @@ public class ArcheryRange : NetworkBehaviour
private ArcheryTarget SpawnTarget(Vector3 randomPos)
{
GameObject targetObject;
if (modelGenerationController.GeneratedModel == null)
// Spawn default UFO
GameObject targetObject = Instantiate(targetPrefab, randomPos, targetStartPosition.rotation, null);
if (modelDisplay.Model != null)
{
// spawn default UFO
targetObject = Instantiate(targetPrefab, randomPos, Quaternion.identity, null);
} else
{
// spawn generated model
targetObject = Instantiate(modelGenerationController.GeneratedModel, randomPos, Quaternion.identity, null);
InitializeArcheryTargetObject(targetObject);
// Spawn generated object directly as default UFO's child
GameObject childObject = Instantiate(modelDisplay.Model);
childObject.transform.SetParent(targetObject.transform, false);
childObject.transform.localScale *= targetSizeIncrease;
// Disable UFO's default body
targetObject.transform.Find("Body").gameObject.SetActive(false);
}
ArcheryTarget target = targetObject.GetComponent<ArcheryTarget>();
@@ -151,20 +151,6 @@ public class ArcheryRange : NetworkBehaviour
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>();
}
public void ResetRange()
{
if (!IsServer) return;
@@ -210,6 +196,8 @@ public class ArcheryRange : NetworkBehaviour
_roundEndTime = Time.time + roundLength;
_nextTargetTime = Time.time;
_roundActive = true;
questMarker.gameObject.SetActive(false);
}
public void AddScore(float distance)
@@ -8,6 +8,11 @@ public class KeyboardManager : NetworkBehaviour
{
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")]
public TMP_Text nameTextField;
public TMP_Text scoreTextField;
@@ -57,6 +62,7 @@ public class KeyboardManager : NetworkBehaviour
gameObject.transform.position = assignedTransform.position;
gameObject.transform.rotation = assignedTransform.rotation;
OnActivate?.Invoke();
}
public void DeActivate()
@@ -64,7 +70,7 @@ public class KeyboardManager : NetworkBehaviour
gameObject.SetActive(false);
}
private void addToInput(string newInput)
private void AddToInput(string newInput)
{
if (_input.Length < inputTextLimit)
@@ -82,13 +88,13 @@ public class KeyboardManager : NetworkBehaviour
switch (_shiftMode)
{
case ShiftMode.Lowercase:
addToInput(letter.ToLower());
AddToInput(letter.ToLower());
break;
case ShiftMode.Uppercase:
addToInput(letter.ToUpper());
AddToInput(letter.ToUpper());
break;
case ShiftMode.NextUppercase:
addToInput(letter.ToUpper());
AddToInput(letter.ToUpper());
_shiftMode = ShiftMode.Lowercase;
UpdateKeyLabels();
break;
@@ -124,6 +130,7 @@ public class KeyboardManager : NetworkBehaviour
void OnEnterPressed()
{
AudioManager.Instance.PlayAttachedInstance(FMODEvents.Instance.LetterEnter, enterButton.gameObject);
OnSubmit?.Invoke();
if (_input.Length > 0)
{
@@ -136,7 +143,7 @@ public class KeyboardManager : NetworkBehaviour
{
AudioManager.Instance.PlayAttachedInstance(FMODEvents.Instance.LetterEnter, spaceButton.gameObject);
addToInput(" ");
AddToInput(" ");
UpdateOutput();
}
@@ -0,0 +1,124 @@
fileFormatVersion: 2
guid: 261e77f9774b3224b9f61ebaff302284
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 12
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 0
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 262dce796e1903548b7a2a7909d20be4
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,124 @@
fileFormatVersion: 2
guid: ab1a16880e37cfa499309fc8fd4250ba
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 12
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 0
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:
@@ -119,7 +119,7 @@ GameObject:
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 0
m_IsActive: 1
--- !u!224 &2888630431832822380
RectTransform:
m_ObjectHideFlags: 0
@@ -128,7 +128,7 @@ RectTransform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 674832405591274748}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 6.199966}
m_LocalPosition: {x: 0, y: 0, z: 6}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
@@ -137,8 +137,8 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 198, y: 29.999985}
m_SizeDelta: {x: 178.01, y: 338.4}
m_AnchoredPosition: {x: 25.8, y: -57.9}
m_SizeDelta: {x: 485, y: 46.5}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &7009866660814900916
CanvasRenderer:
@@ -168,9 +168,7 @@ MonoBehaviour:
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_text: 'Warning:
High speeds may cause nausea'
m_text: High speeds may cause nausea!
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: d564a6b9a8a781b438125b614edcc297, type: 2}
m_sharedMaterial: {fileID: 2467261418627247352, guid: d564a6b9a8a781b438125b614edcc297,
@@ -205,7 +203,7 @@ MonoBehaviour:
m_fontSizeMin: 18
m_fontSizeMax: 72
m_fontStyle: 0
m_HorizontalAlignment: 1
m_HorizontalAlignment: 4
m_VerticalAlignment: 256
m_textAlignment: 65535
m_characterSpacing: 0
@@ -236,7 +234,7 @@ MonoBehaviour:
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 0, w: 0}
m_margin: {x: 1.8959656, y: 6.638962, z: 3.9048767, w: 1.7601442}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
@@ -582,6 +580,7 @@ Transform:
- {fileID: 7867682990484010893}
- {fileID: 385502688868600332}
- {fileID: 8911245181170312639}
- {fileID: 4369549003892251738}
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@@ -711,8 +710,8 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: -371.7, y: 0.000015258789}
m_SizeDelta: {x: 469.55, y: 50.48}
m_AnchoredPosition: {x: -429.3, y: 0.000015258789}
m_SizeDelta: {x: 319.7, y: 50.48}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &1756154180137300123
CanvasRenderer:
@@ -808,7 +807,7 @@ MonoBehaviour:
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 0, w: 0}
m_margin: {x: 2.8457031, y: 0, z: 2.8460312, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
@@ -1140,6 +1139,149 @@ RectTransform:
m_AnchoredPosition: {x: -5.404525, y: 60.661545}
m_SizeDelta: {x: 100, y: 100}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!1 &1647071810007517722
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4369549003892251738}
- component: {fileID: 18611445735460691}
- component: {fileID: 8343075384873062513}
- component: {fileID: 5285357331933866282}
- component: {fileID: 1310480035629572623}
- component: {fileID: 1510780549024052800}
- component: {fileID: 4307275810096043329}
- component: {fileID: 143507707063213418}
m_Layer: 12
m_Name: Settings
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4369549003892251738
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1647071810007517722}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 5343771095006709614}
m_RootOrder: -1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &18611445735460691
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1647071810007517722}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 26a0dd79a025e5041a41f576b1aa4968, type: 3}
m_Name:
m_EditorClassIdentifier:
turnOffButton: {fileID: 3645818974320619446}
turnOnButton: {fileID: 1311809556432207317}
moveSpeedSlider: {fileID: 6956878155406096985}
locomotion: {fileID: 1565464911732960072}
--- !u!114 &8343075384873062513
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1647071810007517722}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ebe1ab889a9bed940995d4f47bc743ef, type: 3}
m_Name:
m_EditorClassIdentifier:
target: 0
slider: {fileID: 7370795858478176567}
--- !u!114 &5285357331933866282
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1647071810007517722}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ebe1ab889a9bed940995d4f47bc743ef, type: 3}
m_Name:
m_EditorClassIdentifier:
target: 3
slider: {fileID: 8524569723447833986}
--- !u!114 &1310480035629572623
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1647071810007517722}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ebe1ab889a9bed940995d4f47bc743ef, type: 3}
m_Name:
m_EditorClassIdentifier:
target: 5
slider: {fileID: 3954205046647893400}
--- !u!114 &1510780549024052800
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1647071810007517722}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ebe1ab889a9bed940995d4f47bc743ef, type: 3}
m_Name:
m_EditorClassIdentifier:
target: 4
slider: {fileID: 7262865820799039206}
--- !u!114 &4307275810096043329
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1647071810007517722}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ebe1ab889a9bed940995d4f47bc743ef, type: 3}
m_Name:
m_EditorClassIdentifier:
target: 1
slider: {fileID: 512852062931003448}
--- !u!114 &143507707063213418
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1647071810007517722}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 1ebe1a3f8ef35a041a8ef39da672dd49, type: 3}
m_Name:
m_EditorClassIdentifier:
valueControllers:
- {fileID: 18611445735460691}
- {fileID: 8343075384873062513}
- {fileID: 5285357331933866282}
- {fileID: 1310480035629572623}
- {fileID: 1510780549024052800}
- {fileID: 4307275810096043329}
--- !u!1 &1694677102371321062
GameObject:
m_ObjectHideFlags: 0
@@ -2219,7 +2361,6 @@ GameObject:
- component: {fileID: 5495779272626688296}
- component: {fileID: 270386226070323618}
- component: {fileID: 7370795858478176567}
- component: {fileID: 9192465668386235667}
m_Layer: 5
m_Name: Button
m_TagString: Untagged
@@ -2346,19 +2487,6 @@ MonoBehaviour:
minValue: 0
maxValue: 1
slideareaOffsetMultiplier: 0.9
--- !u!114 &9192465668386235667
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3421967330093517364}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ebe1ab889a9bed940995d4f47bc743ef, type: 3}
m_Name:
m_EditorClassIdentifier:
target: 0
--- !u!1 &3434260850308121859
GameObject:
m_ObjectHideFlags: 0
@@ -2412,7 +2540,6 @@ GameObject:
- component: {fileID: 5857106340495004348}
- component: {fileID: 467034009919322666}
- component: {fileID: 3954205046647893400}
- component: {fileID: 8737582689073729793}
m_Layer: 5
m_Name: Button
m_TagString: Untagged
@@ -2539,19 +2666,6 @@ MonoBehaviour:
minValue: 0
maxValue: 1
slideareaOffsetMultiplier: 0.9
--- !u!114 &8737582689073729793
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3504227185401202113}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ebe1ab889a9bed940995d4f47bc743ef, type: 3}
m_Name:
m_EditorClassIdentifier:
target: 5
--- !u!1 &3847096334227967442
GameObject:
m_ObjectHideFlags: 0
@@ -2858,6 +2972,153 @@ MonoBehaviour:
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &4399914816600051466
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 3664260978476899140}
- component: {fileID: 7108608958374546862}
- component: {fileID: 2424293117796193332}
- component: {fileID: 5839269911837038846}
- component: {fileID: 8403009779207699600}
m_Layer: 5
m_Name: Restore Defaults Button
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &3664260978476899140
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4399914816600051466}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: -5.9}
m_LocalScale: {x: 0.05, y: 0.05, z: 0.05}
m_ConstrainProportionsScale: 1
m_Children: []
m_Father: {fileID: 4738851406616228330}
m_RootOrder: -1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 399.3, y: 266.8}
m_SizeDelta: {x: 2155, y: 1076}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &7108608958374546862
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4399914816600051466}
m_CullTransparentMesh: 1
--- !u!114 &2424293117796193332
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4399914816600051466}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: ab1a16880e37cfa499309fc8fd4250ba, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!114 &5839269911837038846
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4399914816600051466}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Navigation:
m_Mode: 0
m_WrapAround: 0
m_SelectOnUp: {fileID: 0}
m_SelectOnDown: {fileID: 0}
m_SelectOnLeft: {fileID: 0}
m_SelectOnRight: {fileID: 0}
m_Transition: 2
m_Colors:
m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
m_ColorMultiplier: 1
m_FadeDuration: 0.1
m_SpriteState:
m_HighlightedSprite: {fileID: 21300000, guid: 261e77f9774b3224b9f61ebaff302284,
type: 3}
m_PressedSprite: {fileID: 21300000, guid: 261e77f9774b3224b9f61ebaff302284, type: 3}
m_SelectedSprite: {fileID: 21300000, guid: ab1a16880e37cfa499309fc8fd4250ba, type: 3}
m_DisabledSprite: {fileID: 0}
m_AnimationTriggers:
m_NormalTrigger: Normal
m_HighlightedTrigger: Highlighted
m_PressedTrigger: Pressed
m_SelectedTrigger: Selected
m_DisabledTrigger: Disabled
m_Interactable: 1
m_TargetGraphic: {fileID: 2424293117796193332}
m_OnClick:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 143507707063213418}
m_TargetAssemblyTypeName: RestoreDefaultsController, Assembly-CSharp
m_MethodName: OnRestoreDefaults
m_Mode: 1
m_Arguments:
m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
m_IntArgument: 0
m_FloatArgument: 0
m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
--- !u!114 &8403009779207699600
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4399914816600051466}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 9c648a319c5c6aa47b3ef152a10657bf, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1 &4745390056551288905
GameObject:
m_ObjectHideFlags: 0
@@ -3036,7 +3297,7 @@ RectTransform:
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: -1849.8, y: 30}
m_SizeDelta: {x: 90.1, y: 50.5}
m_SizeDelta: {x: 89, y: 50.5}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &1344781521441133505
CanvasRenderer:
@@ -3539,7 +3800,7 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: -2404.8, y: 34.7}
m_AnchoredPosition: {x: -2600, y: 34.7}
m_SizeDelta: {x: 220, y: 49.6}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &2306375091028476275
@@ -3605,7 +3866,7 @@ MonoBehaviour:
m_fontSizeMin: 18
m_fontSizeMax: 72
m_fontStyle: 0
m_HorizontalAlignment: 1
m_HorizontalAlignment: 4
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
@@ -3636,7 +3897,7 @@ MonoBehaviour:
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 0, w: 0}
m_margin: {x: 14.186401, y: 0, z: -0.9451599, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
@@ -3655,7 +3916,6 @@ GameObject:
- component: {fileID: 4467346825075014904}
- component: {fileID: 1078020185355697329}
- component: {fileID: 7262865820799039206}
- component: {fileID: 8463522706283787556}
m_Layer: 5
m_Name: Button
m_TagString: Untagged
@@ -3782,19 +4042,6 @@ MonoBehaviour:
minValue: 0
maxValue: 1
slideareaOffsetMultiplier: 0.9
--- !u!114 &8463522706283787556
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5731468542189211806}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ebe1ab889a9bed940995d4f47bc743ef, type: 3}
m_Name:
m_EditorClassIdentifier:
target: 4
--- !u!1 &5770108565631511295
GameObject:
m_ObjectHideFlags: 0
@@ -4164,7 +4411,7 @@ SphereCollider:
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 3
m_Radius: 0.1
m_Radius: 0.06
m_Center: {x: 0, y: 0, z: 0}
--- !u!1 &5893976019349174190
GameObject:
@@ -5374,6 +5621,7 @@ RectTransform:
m_LocalScale: {x: 0.15, y: 0.15, z: 0.15}
m_ConstrainProportionsScale: 1
m_Children:
- {fileID: 3664260978476899140}
- {fileID: 3355479367658290507}
- {fileID: 4818343909123725175}
m_Father: {fileID: 1774211016983706491}
@@ -5429,13 +5677,14 @@ MonoBehaviour:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6798620428918177696}
m_Enabled: 1
m_Enabled: 0
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 26a0dd79a025e5041a41f576b1aa4968, type: 3}
m_Name:
m_EditorClassIdentifier:
turnOffButton: {fileID: 3645818974320619446}
turnOnButton: {fileID: 1311809556432207317}
moveSpeedSlider: {fileID: 6956878155406096985}
locomotion: {fileID: 1565464911732960072}
--- !u!1 &6976341305452677775
GameObject:
@@ -5463,7 +5712,7 @@ RectTransform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6976341305452677775}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 1.0000267}
m_LocalPosition: {x: 0, y: 0, z: 1}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
@@ -5472,8 +5721,8 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: -406.48022, y: 260}
m_SizeDelta: {x: 383.04, y: 50.5}
m_AnchoredPosition: {x: -446.3, y: 255.3}
m_SizeDelta: {x: 327.3, y: 50.5}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &8334943640923905114
CanvasRenderer:
@@ -5569,7 +5818,7 @@ MonoBehaviour:
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 0, w: 0}
m_margin: {x: 0, y: 0, z: 0.9477234, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
@@ -5625,7 +5874,6 @@ GameObject:
- component: {fileID: 7392776148620295955}
- component: {fileID: 623723497249906612}
- component: {fileID: 8524569723447833986}
- component: {fileID: 2518031444015721236}
m_Layer: 5
m_Name: Button
m_TagString: Untagged
@@ -5752,19 +6000,6 @@ MonoBehaviour:
minValue: 0
maxValue: 1
slideareaOffsetMultiplier: 0.9
--- !u!114 &2518031444015721236
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7116268483853744053}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ebe1ab889a9bed940995d4f47bc743ef, type: 3}
m_Name:
m_EditorClassIdentifier:
target: 3
--- !u!1 &7137625347935658456
GameObject:
m_ObjectHideFlags: 0
@@ -6497,7 +6732,7 @@ SphereCollider:
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 3
m_Radius: 0.1
m_Radius: 0.06
m_Center: {x: 0, y: 0, z: 0}
--- !u!1 &7486924273507720172
GameObject:
@@ -6850,7 +7085,7 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: -2404.8, y: 30}
m_AnchoredPosition: {x: -2424, y: 30}
m_SizeDelta: {x: 186.1, y: 50.5}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &6159749963066026057
@@ -6916,7 +7151,7 @@ MonoBehaviour:
m_fontSizeMin: 18
m_fontSizeMax: 72
m_fontStyle: 0
m_HorizontalAlignment: 1
m_HorizontalAlignment: 4
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
@@ -6966,7 +7201,6 @@ GameObject:
- component: {fileID: 4806540607707404536}
- component: {fileID: 1263225200033619485}
- component: {fileID: 512852062931003448}
- component: {fileID: 5185990981600041478}
m_Layer: 5
m_Name: Button
m_TagString: Untagged
@@ -7093,19 +7327,6 @@ MonoBehaviour:
minValue: 0
maxValue: 1
slideareaOffsetMultiplier: 0.9
--- !u!114 &5185990981600041478
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7795711801980221647}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ebe1ab889a9bed940995d4f47bc743ef, type: 3}
m_Name:
m_EditorClassIdentifier:
target: 1
--- !u!1 &7941339244779152679
GameObject:
m_ObjectHideFlags: 0
@@ -7851,7 +8072,7 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: -3755, y: 30}
m_AnchoredPosition: {x: -3897, y: 30}
m_SizeDelta: {x: 131.9, y: 50.5}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &7891019527381773321
@@ -10144,6 +10365,11 @@ PrefabInstance:
propertyPath: leftHand
value:
objectReference: {fileID: 8597422041532106397}
- target: {fileID: 3290095342561961842, guid: d90913a7f0b00844a8c4482b2afc2c66,
type: 3}
propertyPath: m_Enabled
value: 1
objectReference: {fileID: 0}
- target: {fileID: 3290095342561961842, guid: d90913a7f0b00844a8c4482b2afc2c66,
type: 3}
propertyPath: rightHand
@@ -10169,6 +10395,11 @@ PrefabInstance:
propertyPath: m_Name
value: TutorialController
objectReference: {fileID: 0}
- target: {fileID: 6405559763661037305, guid: d90913a7f0b00844a8c4482b2afc2c66,
type: 3}
propertyPath: m_IsActive
value: 1
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
@@ -0,0 +1,112 @@
using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
using UnityEngine.EventSystems;
abstract public class AbstractSlider : MonoBehaviour, IBeginDragHandler, IDragHandler, IEndDragHandler
{
public RectTransform sliderBackground; // Assign in Inspector
public float minValue = 0f;
public float maxValue = 1f;
public float slideareaOffsetMultiplier = 0.9f;
public float CurrentValue { get; private set; }
public float CurrentNormalizedValue { get; private set; }
private RectTransform handleRect;
private Vector2 backgroundStart;
private float backgroundWidth;
public System.Action<float, bool> OnValueChanged;
private void OnEnable()
{
if (null == handleRect)
{
handleRect = GetComponent<RectTransform>();
}
if (sliderBackground != null)
{
backgroundStart = sliderBackground.position;
backgroundWidth = sliderBackground.rect.width;
}
UpdateHandlePosition();
}
virtual public void OnBeginDrag(PointerEventData eventData)
{
UpdateSlider(eventData);
}
virtual public void OnDrag(PointerEventData eventData)
{
UpdateSlider(eventData);
}
virtual public void OnEndDrag(PointerEventData eventData)
{
UpdateSlider(eventData, true);
EventSystem.current.SetSelectedGameObject(null);
}
virtual public void SetHandleValue(float unnormalizedValue)
{
SetValuesFromValue(unnormalizedValue);
UpdateHandlePosition();
}
virtual public void SetHandleNormalizedValue(float normalizedValue)
{
SetValuesFromNormalizedValue(normalizedValue);
UpdateHandlePosition();
}
virtual protected void UpdateHandlePosition()
{
if (null == handleRect) return; // The options menu might not be opened yet
float halfWidth = sliderBackground.rect.width * 0.5f;
float limit = halfWidth * slideareaOffsetMultiplier;
float x = Mathf.Lerp(-limit, limit, CurrentNormalizedValue);
handleRect.localPosition = new Vector3(x, handleRect.localPosition.y, 0);
}
virtual protected void UpdateSlider(PointerEventData eventData, bool draggingEnded = false)
{
Vector2 localPoint;
RectTransformUtility.ScreenPointToLocalPointInRectangle(sliderBackground, eventData.position, eventData.pressEventCamera, out localPoint);
float halfWidth = sliderBackground.rect.width * 0.5f;
// Only allow dragging within 90% of the slider width, centered
float limit = halfWidth * slideareaOffsetMultiplier;
float clampedX = Mathf.Clamp(localPoint.x, -limit, limit);
Vector3 newPosition = new Vector3(clampedX, handleRect.localPosition.y, handleRect.localPosition.z);
handleRect.localPosition = newPosition;
// Normalize within the limited 90% range
float normalized = (clampedX + limit) / (limit * 2f);
SetValuesFromValue(Mathf.Lerp(minValue, maxValue, normalized));
OnValueChanged?.Invoke(CurrentValue, draggingEnded);
}
protected void SetValuesFromNormalizedValue(float normalizedValue)
{
CurrentNormalizedValue = normalizedValue;
CurrentValue = CurrentNormalizedValue * (maxValue - minValue) + minValue;
}
protected void SetValuesFromValue(float unnormalizedValue)
{
CurrentValue = unnormalizedValue;
CurrentNormalizedValue = (CurrentValue - minValue) / (maxValue - minValue);
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 8fe704cafb6cf2441a62a6497d58f229
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,10 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
[Serializable]
abstract public class AbstractValueController : MonoBehaviour
{
abstract public void RestoreFromConfig();
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: dfd6e172b2a79944788029ce9d4220dd
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -4,87 +4,8 @@ using TMPro;
using UnityEngine;
using UnityEngine.EventSystems;
public class AudioSliderDragHandler : MonoBehaviour, IBeginDragHandler, IDragHandler, IEndDragHandler
public class AudioSliderDragHandler : AbstractSlider, IBeginDragHandler, IDragHandler, IEndDragHandler
{
public RectTransform sliderBackground; // Assign in Inspector
public float minValue = 0f;
public float maxValue = 1f;
public float slideareaOffsetMultiplier = 0.9f;
public float CurrentValue { get; private set; }
private RectTransform handleRect;
private Vector2 backgroundStart;
private float backgroundWidth;
public System.Action<float> OnValueChanged;
void Awake()
{
handleRect = GetComponent<RectTransform>();
if (sliderBackground != null)
{
backgroundStart = sliderBackground.position;
backgroundWidth = sliderBackground.rect.width;
}
}
public void OnBeginDrag(PointerEventData eventData)
{
UpdateSlider(eventData);
}
public void SetHandlePosition(float normalizedValue)
{
float halfWidth = sliderBackground.rect.width * 0.5f;
float limit = halfWidth * slideareaOffsetMultiplier;
float x = Mathf.Lerp(-limit, limit, normalizedValue);
handleRect.localPosition = new Vector3(x, handleRect.localPosition.y, 0);
CurrentValue = normalizedValue;
}
public void OnDrag(PointerEventData eventData)
{
UpdateSlider(eventData);
}
public void OnEndDrag(PointerEventData eventData)
{
UpdateSlider(eventData);
//notify FMOD
}
private void UpdateSlider(PointerEventData eventData)
{
//Debug.Log("UpDating Slider");
Vector2 localPoint;
RectTransformUtility.ScreenPointToLocalPointInRectangle(sliderBackground, eventData.position, eventData.pressEventCamera, out localPoint);
float halfWidth = sliderBackground.rect.width * 0.5f;
// Only allow dragging within 90% of the slider width, centered
float limit = halfWidth * slideareaOffsetMultiplier;
float clampedX = Mathf.Clamp(localPoint.x, -limit, limit);
Vector3 newPosition = new Vector3(clampedX, handleRect.localPosition.y, handleRect.localPosition.z);
handleRect.localPosition = newPosition;
// Normalize within the limited 90% range
float normalized = (clampedX + limit) / (limit * 2f);
//Debug.Log(normalized);
CurrentValue = Mathf.Lerp(minValue, maxValue, normalized);
//Debug.Log(warningThreshholdValue);
OnValueChanged?.Invoke(CurrentValue);
}
}
@@ -3,12 +3,14 @@ using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
//using UnityEngine.UIElements;
using UnityEngine.XR.Interaction.Toolkit;
public class ContinuoslocomotionConfigurator : MonoBehaviour
public class ContinuoslocomotionConfigurator : AbstractValueController
{
public Button turnOffButton;
public Button turnOnButton;
public MoveSliderDragHandler moveSpeedSlider;
public ContinuousMoveProviderBase locomotion;
// Events for listeners
@@ -19,13 +21,28 @@ public class ContinuoslocomotionConfigurator : MonoBehaviour
{
turnOnButton.onClick.AddListener(enableLocomotion);
turnOffButton.onClick.AddListener(disableLocomotion);
turnOnButton.gameObject.SetActive(false);
RestoreFromConfig();
}
override public void RestoreFromConfig()
{
bool isContinuousLocomotion = ConfigManager.instance.GetIsContinuousLocomotion();
turnOffButton.gameObject.SetActive(isContinuousLocomotion);
turnOnButton.gameObject.SetActive(!isContinuousLocomotion);
locomotion.enabled = isContinuousLocomotion;
OnLocomotionToggled?.Invoke(isContinuousLocomotion);
float continuousLocomotionSpeed = ConfigManager.instance.GetContinuousLocomotionSpeed();
moveSpeedSlider.SetHandleValue(continuousLocomotionSpeed);
locomotion.moveSpeed = continuousLocomotionSpeed;
}
public void UpdateSpeed(float speed)
{
locomotion.moveSpeed = speed;
OnSpeedChanged?.Invoke(speed);
WriteToConfig();
}
private void enableLocomotion()
@@ -35,6 +52,7 @@ public class ContinuoslocomotionConfigurator : MonoBehaviour
turnOnButton.gameObject.SetActive(false);
turnOffButton.gameObject.SetActive(true);
OnLocomotionToggled?.Invoke(true);
WriteToConfig();
}
private void disableLocomotion()
@@ -44,5 +62,12 @@ public class ContinuoslocomotionConfigurator : MonoBehaviour
turnOnButton.gameObject.SetActive(true);
turnOffButton.gameObject.SetActive(false);
OnLocomotionToggled?.Invoke(false);
WriteToConfig();
}
protected void WriteToConfig()
{
ConfigManager.instance.SetIsContinuousLocomotion(locomotion.enabled);
ConfigManager.instance.SetContinuousLocomotionSpeed(locomotion.moveSpeed);
}
}
@@ -3,82 +3,35 @@ using UnityEngine.UI;
using UnityEngine.EventSystems;
using TMPro;
public class MoveSliderDragHandler : MonoBehaviour, IDragHandler, IBeginDragHandler, IEndDragHandler
public class MoveSliderDragHandler : AbstractSlider, IDragHandler, IBeginDragHandler, IEndDragHandler
{
public RectTransform sliderBackground; // Assign in Inspector
public float minValue = 2f;
public float maxValue = 5f;
public float slideareaOffsetMultiplier = 0.9f;
public TMP_Text warningText;
public float warningThreshholdValue = 0.65f;
public float CurrentValue { get; private set; }
public ContinuoslocomotionConfigurator configurator;
private RectTransform handleRect;
private Vector2 backgroundStart;
private float backgroundWidth;
void Awake()
override public void OnEndDrag(PointerEventData eventData)
{
handleRect = GetComponent<RectTransform>();
if (sliderBackground != null)
{
backgroundStart = sliderBackground.position;
backgroundWidth = sliderBackground.rect.width;
}
}
public void OnBeginDrag(PointerEventData eventData)
{
UpdateSlider(eventData);
}
public void OnDrag(PointerEventData eventData)
{
UpdateSlider(eventData);
}
public void OnEndDrag(PointerEventData eventData)
{
UpdateSlider(eventData);
base.OnEndDrag(eventData);
configurator.UpdateSpeed(CurrentValue);
EventSystem.current.SetSelectedGameObject(null);
}
private void UpdateSlider(PointerEventData eventData)
override protected void UpdateSlider(PointerEventData eventData, bool draggingEnded = false)
{
Debug.Log("UpDating Slider");
Vector2 localPoint;
RectTransformUtility.ScreenPointToLocalPointInRectangle(sliderBackground, eventData.position, eventData.pressEventCamera, out localPoint);
base.UpdateSlider(eventData, draggingEnded);
DisplayWarningTextIfNecessary();
}
float halfWidth = sliderBackground.rect.width * 0.5f;
override protected void UpdateHandlePosition()
{
base.UpdateHandlePosition();
DisplayWarningTextIfNecessary();
}
// Only allow dragging within 90% of the slider width, centered
float limit = halfWidth * slideareaOffsetMultiplier;
float clampedX = Mathf.Clamp(localPoint.x, -limit, limit);
Vector3 newPosition = new Vector3(clampedX, handleRect.localPosition.y, handleRect.localPosition.z);
handleRect.localPosition = newPosition;
// Normalize within the limited 90% range
float normalized = (clampedX + limit) / (limit * 2f);
//Debug.Log(normalized);
CurrentValue = Mathf.Lerp(minValue, maxValue, normalized);
// Displaying the warning.
if (CurrentValue > (warningThreshholdValue*(maxValue - minValue) + minValue)) warningText.gameObject.SetActive(true);
protected void DisplayWarningTextIfNecessary()
{
if (CurrentValue > (warningThreshholdValue * (maxValue - minValue) + minValue)) warningText.gameObject.SetActive(true);
else warningText.gameObject.SetActive(false);
//Debug.Log(warningThreshholdValue);
}
}
@@ -0,0 +1,18 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;
public class RegularButtonView : MonoBehaviour, IPointerEnterHandler, IPointerClickHandler
{
public void OnPointerEnter(PointerEventData eventData)
{
AudioManager.Instance.PlayAttachedInstance(FMODEvents.Instance.Hover, this.gameObject);
}
public void OnPointerClick(PointerEventData eventData)
{
AudioManager.Instance.PlayAttachedInstance(FMODEvents.Instance.Click, this.gameObject);
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 9c648a319c5c6aa47b3ef152a10657bf
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,20 @@
using System.Collections;
using System.Collections.Generic;
using Unity.Burst;
using UnityEngine;
public class RestoreDefaultsController : MonoBehaviour
{
[SerializeField]
public List<AbstractValueController> valueControllers = new List<AbstractValueController>();
public void OnRestoreDefaults()
{
ConfigManager.instance.RestoreDefaultConfig();
foreach (AbstractValueController avc in valueControllers)
{
avc.RestoreFromConfig();
}
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 1ebe1a3f8ef35a041a8ef39da672dd49
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -1,6 +1,6 @@
using UnityEngine;
public class SliderToVCA : MonoBehaviour
public class SliderToVCA : AbstractValueController
{
public enum VCATarget
{
@@ -13,76 +13,85 @@ public class SliderToVCA : MonoBehaviour
}
public VCATarget target;
private AudioSliderDragHandler slider;
public AudioSliderDragHandler slider;
private void Awake()
{
slider = GetComponent<AudioSliderDragHandler>();
slider.OnValueChanged += ApplyVolume;
}
private void Start()
{
float initialValue = GetInitialValueFromAudioManager();
slider.SetHandlePosition(initialValue); // we will add this function
}
private float GetInitialValueFromAudioManager()
{
switch (target)
{
case VCATarget.Master:
return AudioManager.Instance.MasterVolume;
case VCATarget.Ambiences:
return AudioManager.Instance.AmbienceVolume;
case VCATarget.Music:
return AudioManager.Instance.MusicVolume;
case VCATarget.SFX:
return AudioManager.Instance.SFXVolume;
case VCATarget.UI:
return AudioManager.Instance.UIVolume;
case VCATarget.Voiceovers:
return AudioManager.Instance.VoiceoverVolume;
default:
return 0.5f;
}
}
private void Update()
{
// Constantly push slider value to the VCA
ApplyVolume(slider.CurrentValue);
//Debug.Log("CurrentValue: " + slider.CurrentValue);
RestoreFromConfig();
}
private void ApplyVolume(float value)
override public void RestoreFromConfig()
{
float initialValue = GetInitialValue();
slider.SetHandleValue(initialValue);
}
private float GetInitialValue()
{
switch (target)
{
case VCATarget.Master:
return ConfigManager.instance.GetVolumeMaster();
case VCATarget.Ambiences:
return ConfigManager.instance.GetVolumeAmbient();
case VCATarget.Music:
return ConfigManager.instance.GetVolumeMusic();
case VCATarget.SFX:
return ConfigManager.instance.GetVolumeSFX();
case VCATarget.UI:
return ConfigManager.instance.GetVolumeUI();
case VCATarget.Voiceovers:
return ConfigManager.instance.GetVolumeVO();
default:
return 0.5f;
}
}
private void Update()
{
// Constantly push slider value to the VCA
ApplyVolume(slider.CurrentValue, false);
//Debug.Log("CurrentValue: " + slider.CurrentValue);
}
private void ApplyVolume(float value, bool isLastChange)
{
switch (target)
{
case VCATarget.Master:
AudioManager.Instance.SetMasterVCA(value);
//Debug.LogError(value);
break;
if (isLastChange) ConfigManager.instance.SetVolumeMaster(value);
break;
case VCATarget.Ambiences:
AudioManager.Instance.SetAmbientVCA(value);
if (isLastChange) ConfigManager.instance.SetVolumeAmbient(value);
break;
case VCATarget.Music:
AudioManager.Instance.SetMusicVCA(value);
if (isLastChange) ConfigManager.instance.SetVolumeMusic(value);
break;
case VCATarget.SFX:
AudioManager.Instance.SetSFXVCA(value);
if (isLastChange) ConfigManager.instance.SetVolumeSFX(value);
break;
case VCATarget.UI:
AudioManager.Instance.SetUIVCA(value);
if (isLastChange) ConfigManager.instance.SetVolumeUI(value);
break;
case VCATarget.Voiceovers:
AudioManager.Instance.SetVoiceoverVCA(value);
if (isLastChange) ConfigManager.instance.SetVolumeVO(value);
break;
}
}
}
@@ -168,20 +168,14 @@ public class TutorialAudioListener : MonoBehaviour
private EventReference GetGrabEvent(GrabSoundType type)
{
switch (type)
return type switch
{
case GrabSoundType.Bow:
return FMODEvents.Instance.BowGrab;
case GrabSoundType.Sprayer:
return FMODEvents.Instance.SprayerGrab;
GrabSoundType.Bow => FMODEvents.Instance.BowGrab,
GrabSoundType.Sprayer => FMODEvents.Instance.SprayerGrab,
//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
default:
return FMODEvents.Instance.DefaultGrab;
}
_ => FMODEvents.Instance.DefaultGrab,
};
}
private void HandleGrab(XRGrabInteractable grab)
@@ -195,10 +189,6 @@ public class TutorialAudioListener : MonoBehaviour
: GrabSoundType.Default;
EventReference grabEvent = GetGrabEvent(type);
Debug.Log(grabEvent);
AudioManager.Instance.PlayAttachedInstance(grabEvent, grab.gameObject);
}
}
@@ -1,4 +1,5 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.InputSystem;
@@ -30,6 +31,7 @@ namespace _PROJECT.NewHandPresence
private XRControllerHintController _leftHintController;
private XRControllerHintController _rightHintController;
private XRBaseInteractor lastInteractor = null;
private SmartHandPresence _leftSmartHandPresence;
private SmartHandPresence _rightSmartHandPresence;
@@ -44,6 +46,26 @@ namespace _PROJECT.NewHandPresence
private GameObject _billboard;
public enum TutorialInfoKey
{
Initialized,
LeftHintController,
RightHintController,
LeftSmartHandPresence,
RightSmartHandPresence
}
protected Dictionary<TutorialInfoKey, bool> initializationInfoStatus = new Dictionary<TutorialInfoKey, bool>();
protected Coroutine initializationInfoCoroutine;
private void Awake()
{
initializationInfoStatus.Add(TutorialInfoKey.Initialized, false);
initializationInfoStatus.Add(TutorialInfoKey.LeftHintController, false);
initializationInfoStatus.Add(TutorialInfoKey.RightHintController, false);
initializationInfoStatus.Add(TutorialInfoKey.LeftSmartHandPresence, false);
initializationInfoStatus.Add(TutorialInfoKey.RightSmartHandPresence, false);
}
private void Update()
{
if (_state == TutorialState.Initializing)
@@ -177,29 +199,33 @@ namespace _PROJECT.NewHandPresence
private void TryInitialize()
{
if (!CanInitialize()) return;
if (null == initializationInfoCoroutine)
{
initializationInfoCoroutine = StartCoroutine(InitializationInfoCoroutine());
}
_camera = Camera.main;
Debug.Log("Initializing tutorial");
//Debug.Log("Initializing tutorial");
_leftHintController = leftHand.GetComponentInChildren<XRControllerHintController>();
_rightHintController = rightHand.GetComponentInChildren<XRControllerHintController>();
Debug.Log($"Left hint controller: {_leftHintController}");
Debug.Log($"Right hint controller: {_rightHintController}");
initializationInfoStatus[TutorialInfoKey.LeftHintController] = null != _leftHintController;
initializationInfoStatus[TutorialInfoKey.RightHintController] = null != _rightHintController;
_leftSmartHandPresence = leftHand.GetComponentInChildren<SmartHandPresence>();
_rightSmartHandPresence = rightHand.GetComponentInChildren<SmartHandPresence>();
Debug.Log($"Left smart hand presence: {_leftSmartHandPresence}");
Debug.Log($"Right smart hand presence: {_rightSmartHandPresence}");
initializationInfoStatus[TutorialInfoKey.LeftSmartHandPresence] = null != _leftSmartHandPresence;
initializationInfoStatus[TutorialInfoKey.RightSmartHandPresence] = null != _rightSmartHandPresence;
if (_leftHintController == null ||
_rightHintController == null ||
_leftSmartHandPresence == null ||
_rightSmartHandPresence == null)
{
Debug.Log("Hint controller or smart hand presence is null");
//Debug.Log("Hint controller or smart hand presence is null");
return;
}
@@ -216,20 +242,27 @@ namespace _PROJECT.NewHandPresence
UpdateState(_state.Next());
Debug.Log("Tutorial initialized");
StopCoroutine(initializationInfoCoroutine);
}
private void OnGripPerformed(SelectEnterEventArgs arg0)
private void OnGripPerformed(SelectEnterEventArgs args)
{
var grab = arg0.interactableObject as XRGrabInteractable;
// Notify any listeners
OnGrab?.Invoke(grab);
var interactor = args.interactorObject as XRBaseInteractor;
var interactable = args.interactableObject as XRGrabInteractable;
if (_state != TutorialState.Grip) return;
Debug.Log("Grip performed");
UpdateState(_state.Next());
if (lastInteractor == interactor)
return; // same hand grabbing again
lastInteractor = interactor;
OnGrab?.Invoke(interactable as XRGrabInteractable);
if (_state == TutorialState.Grip)
UpdateState(_state.Next());
}
private void OnTeleportPerformed(LocomotionSystem obj)
{
if (_state != TutorialState.Teleport) return;
@@ -307,5 +340,35 @@ namespace _PROJECT.NewHandPresence
}
}
IEnumerator InitializationInfoCoroutine()
{
string CombineMessage(TutorialInfoKey key, object value, string prefix)
{
bool isAvailable = initializationInfoStatus.GetValueOrDefault(key);
return prefix + ": " + (isAvailable ? value.ToString() : "NULL") + "\r\n";
}
bool isInitialized = initializationInfoStatus.GetValueOrDefault(TutorialInfoKey.Initialized);
while (!isInitialized)
{
isInitialized = initializationInfoStatus.GetValueOrDefault(TutorialInfoKey.Initialized);
string infoMessage = "Tutorial not yet initialized!" + "\r\n";
infoMessage += "(click me for more info)" + "\r\n";
infoMessage += "Hint controllers" + "\r\n";
infoMessage += CombineMessage(TutorialInfoKey.LeftHintController, _leftHintController, "Left");
infoMessage += CombineMessage(TutorialInfoKey.RightHintController, _rightHintController, "Right");
infoMessage += "Smart hand presence" + "\r\n";
infoMessage += CombineMessage(TutorialInfoKey.LeftSmartHandPresence, _leftSmartHandPresence, "Left");
infoMessage += CombineMessage(TutorialInfoKey.RightSmartHandPresence, _rightSmartHandPresence, "Right");
Debug.Log(infoMessage);
yield return new WaitForSeconds(7);
}
}
}
}
@@ -1,10 +1,22 @@
using System.Collections.Generic;
using UnityEngine;
public class PlayAnimationOnTrigger : MonoBehaviour
{
[SerializeField] public Animator animator; // Reference to the Animator component
[SerializeField] public string animationName = "YourAnimation"; // Name of the animation to play
public enum KnownAnimations
{
UFOFlight1
}
protected Dictionary<KnownAnimations, string> animationNames = new Dictionary<KnownAnimations, string>();
[SerializeField] public Animator animator; // Reference to the Animator component
[SerializeField] public KnownAnimations animationName = KnownAnimations.UFOFlight1; // Name of the animation to play
protected void Awake()
{
animationNames[KnownAnimations.UFOFlight1] = "UFO group flight 1";
}
private void OnTriggerEnter(Collider other)
{
@@ -15,15 +27,16 @@ public class PlayAnimationOnTrigger : MonoBehaviour
return;
}
string animationNameString = animationNames[animationName];
// Check if the animation is already playing
if (animator.GetCurrentAnimatorStateInfo(0).IsName(animationName) && animator.GetCurrentAnimatorStateInfo(0).normalizedTime < 1)
if (animator.GetCurrentAnimatorStateInfo(0).IsName(animationNameString) && animator.GetCurrentAnimatorStateInfo(0).normalizedTime < 1)
{
Debug.Log("Animation is already playing.");
return;
}
// Play the animation
animator.Play(animationName, 0, 0f);
Debug.Log("Playing animation: " + animationName);
animator.Play(animationNameString, 0, 0f);
Debug.Log("Playing animation: " + animationNameString);
}
}
@@ -29,7 +29,15 @@ namespace _PROJECT.Multiplayer.NewBow
if (_notch == null)
Debug.LogError("Notch not found");
CreateArrowServer();
//CreateArrowServer();
}
public override void OnOwnershipServer(NetworkConnection prevOwner)
{
base.OnOwnershipServer(prevOwner);
if (Owner.IsValid)
CreateArrowServer();
}
public override void OnStartClient()
@@ -84,7 +84,7 @@ namespace _PROJECT.Multiplayer.NewBow
public void SetLaunchDirection(Vector3 direction)
{
Debug.Log("Setting launch direction: " + direction);
// Debug.Log("Setting launch direction: " + direction);
if (direction != Vector3.zero)
{
_networkBehavior.SetLaunchDirection(direction);
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 5ce7ff15787ac564489bb34cb32fcc50
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 02d225d9907048f4f8320a20fb5bed34
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.
@@ -0,0 +1,21 @@
fileFormatVersion: 2
guid: 62319ab30e63c8a46a4f0a599256141c
TrueTypeFontImporter:
externalObjects: {}
serializedVersion: 4
fontSize: 16
forceTextureCase: -2
characterSpacing: 0
characterPadding: 1
includeFontData: 1
fontNames:
- Handlee
fallbackFontReferences: []
customCharacters:
fontRenderingMode: 0
ascentCalculationMode: 1
useLegacyBoundsCalculation: 0
shouldRoundAdvanceValue: 1
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 5a2fd497c2c0d8541ba769179ba46449
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.
@@ -0,0 +1,23 @@
fileFormatVersion: 2
guid: 685c611b44807844d8a7cc03f1f5286d
TrueTypeFontImporter:
externalObjects: {}
serializedVersion: 4
fontSize: 16
forceTextureCase: -2
characterSpacing: 0
characterPadding: 1
includeFontData: 1
fontNames:
- Quantico
fallbackFontReferences:
- {fileID: 12800000, guid: 84f61f44ada6fd8489cda837afbd512b, type: 3}
- {fileID: 12800000, guid: 174c0d73e20f1df4987a97f5340d7e57, type: 3}
customCharacters:
fontRenderingMode: 0
ascentCalculationMode: 1
useLegacyBoundsCalculation: 0
shouldRoundAdvanceValue: 1
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: d02ab956cde8c5342aa8c8e99005a615
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.
@@ -0,0 +1,21 @@
fileFormatVersion: 2
guid: 84f61f44ada6fd8489cda837afbd512b
TrueTypeFontImporter:
externalObjects: {}
serializedVersion: 4
fontSize: 16
forceTextureCase: -2
characterSpacing: 0
characterPadding: 1
includeFontData: 1
fontNames:
- Quantico
fallbackFontReferences: []
customCharacters:
fontRenderingMode: 0
ascentCalculationMode: 1
useLegacyBoundsCalculation: 0
shouldRoundAdvanceValue: 1
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.
@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 2c3b765a5860a8d4e81d47f2d7041678
guid: d18cf7f31ce18e44088141b454e4ec0d
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
Binary file not shown.
@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 5a603a6b2c8b06446a6507224855545d
guid: b2f575cfe732fe94a8459397962d3cf6
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
Binary file not shown.
@@ -0,0 +1,148 @@
fileFormatVersion: 2
guid: 7d9a2d0479a3d2f4fb6ac783fb358703
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 12
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 0
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Windows Store Apps
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

Some files were not shown because too many files have changed in this diff Show More