1
0
forked from cgvr/DeltaVR

18 Commits

Author SHA1 Message Date
48b9f12802 make copy of main scene 2026-01-25 12:11:53 +02:00
ad6954884b trellis and invokeAI urls configurable in config 2026-01-19 18:55:25 +02:00
4292750b65 update TODO 2026-01-17 08:30:25 +00:00
b3073e66df update TODO 2026-01-16 18:33:48 +00:00
afb8af4ee2 unique seed for model generation 2026-01-16 18:35:00 +02:00
16a621c2b9 include gltf shader in build + add TODO list 2026-01-16 18:26:37 +02:00
40cd5060df add TODO list 2026-01-16 17:01:07 +02:00
cb4d4036e7 microphone recording working with FMOD!!! 2026-01-14 18:02:41 +02:00
96839e0e82 ShapeScanner multiple configurations, configurable in editor 2026-01-14 14:02:10 +02:00
33a40c987a generated objects are grabbable and scalable 2026-01-13 19:22:44 +02:00
1cd97e4d0a shape checker nice materials, generated object grabbable 2026-01-13 17:17:59 +02:00
3097c404ba set up shape detection minigame pieces 2026-01-13 16:06:13 +02:00
d2ac917db3 implemented shape scanner 2026-01-11 17:48:58 +02:00
23c89e97ce wire placement improvement 2026-01-11 15:19:45 +02:00
991f7d73b9 more wires to archery range, connecting buttons 2026-01-11 14:47:39 +02:00
a23f40787e added more time logging to python script + switched to using CGVR lab WiFi 2026-01-11 12:34:08 +02:00
997bb457ba archery range glass display tank + wire 2026-01-11 12:04:21 +02:00
ce75a1f343 replaced demo boxes with microphone stand and buttons, in archery range 2026-01-10 17:00:45 +02:00
99 changed files with 5943 additions and 275 deletions

View File

@@ -1,6 +1,28 @@
### TODO ### TODO
* Artikkel text-to-3d prompt engineeringu kohta: "Sel3DCraft: Interactive Visual Prompts for User-Friendly Text-to-3D Generation" * glTF loading: vahetada ära shader Universal render pipelin Lit, mitte panna buildi kaasa glTf oma
* TRELLIS: postprocessing_utils: texture baking mode: 'opt' vs 'fast' - hardcoded 'opt', kui võimaldada 'fast' siis tuleb error * shape scanner initialisation correct number of confs
* user flow: grab item? mida krabada
* user prefs: settinguid meelde jätta
* võtta spawnitud mudeli mõõtmed: mehscollideri max x, max y, etc? bounding box?
* mängija collide'ib spawnitud mudeliga - ei tohiks
* shape scanner:
* mitte-liigutatavaks, aga samal ajal kõrgus dünaamiliselt õige. või lihtsalt piisavalt madalale asetada või väljaulatuv kang millest krabada
* 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
* kui üks config completed, siis mängijale aru saada: sound effect, "loading"
* mikri vana tekst ei kao ära
* archery range:
* kui midagi laeb (wire aktiivne), siis particle'id voolavad mööda toru
* highscore json tühjaks
* quest marker järjest järgmise tegevuse kohal: mikrofon, siis nupud
* character billboard:
* peaks vaatama pea poole, mitte xr origin
* klaas on näha temast eespool
* pööramine kaamera poole - sujuvalt (slerp)
* küsida Danielilt asukoha kohta
### Notes ### 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) * 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

View File

@@ -6,6 +6,7 @@ import json
import logging import logging
import httpx import httpx
import os import os
import time
from typing import Optional from typing import Optional
from urllib.parse import urljoin from urllib.parse import urljoin
@@ -493,6 +494,8 @@ async def text_to_image_invoke_ai(prompt, output_path):
"model_key": INVOKEAI_MODEL_KEY "model_key": INVOKEAI_MODEL_KEY
} }
image_url = await generate_image(args) image_url = await generate_image(args)
print("Got image url:", image_url) print("Downloading image from", image_url)
print("Downloading image file...") time_start = time.time()
download_file(image_url, output_path) download_file(image_url, output_path)
download_time = time.time() - time_start
print(f"Image downloaded in {round(download_time, 1)} seconds")

View File

@@ -32,7 +32,7 @@ def generate_no_preview(image_base64: str):
} }
# Start generation # Start generation
print("Starting generation...") print("Generating model...")
response = requests.post(f"{API_URL}/generate_no_preview", data=params) response = requests.post(f"{API_URL}/generate_no_preview", data=params)
response.raise_for_status() response.raise_for_status()
@@ -50,8 +50,11 @@ def generate_no_preview(image_base64: str):
# Download the model # Download the model
print("Downloading model...") print("Downloading model...")
time_start = time.time()
response = requests.get(f"{API_URL}/download/model") response = requests.get(f"{API_URL}/download/model")
response.raise_for_status() response.raise_for_status()
time_download = time.time() - time_start
print(f"Model downloaded in {round(time_download, 1)} seconds")
return response.content return response.content

View File

@@ -41,8 +41,6 @@ async def main():
time_checkpoint = time.time() time_checkpoint = time.time()
image_path = pipeline_folder / "images" / f"{timestamp}.jpg" image_path = pipeline_folder / "images" / f"{timestamp}.jpg"
# TODO: use Invoke AI or Cloudflare, depending on env var
#text_to_image_cloudflare(image_generation_prompt, image_path)
await text_to_image_invoke_ai(image_generation_prompt, image_path) await text_to_image_invoke_ai(image_generation_prompt, image_path)
image_generation_time = time.time() - time_checkpoint image_generation_time = time.time() - time_checkpoint

Binary file not shown.

View File

@@ -0,0 +1,144 @@
#if UNITY_EDITOR
using UnityEditor;
using UnityEngine;
[CustomPropertyDrawer(typeof(ShapeScannerConfiguration))]
public class BoolMatrixDrawer : PropertyDrawer
{
private const float ToggleSize = 18f;
private const float RowLabelWidth = 24f;
private const float Padding = 2f;
public override float GetPropertyHeight(SerializedProperty property, GUIContent label)
{
var rowsProp = property.FindPropertyRelative("rows");
var columnsProp = property.FindPropertyRelative("columns");
int rows = rowsProp != null ? rowsProp.arraySize : 0;
int cols = Mathf.Max(0, columnsProp != null ? columnsProp.intValue : 0);
// Header (one line), columns field (one line), buttons (one line), then one line per row
int totalLines = 1 + 1 + 1 + Mathf.Max(1, rows);
float lineHeight = EditorGUIUtility.singleLineHeight + Padding;
return totalLines * lineHeight + Padding;
}
public override void OnGUI(Rect position, SerializedProperty property, GUIContent label)
{
EditorGUI.BeginProperty(position, label, property);
var rowsProp = property.FindPropertyRelative("rows");
var columnsProp = property.FindPropertyRelative("columns");
if (rowsProp == null || columnsProp == null)
{
EditorGUI.HelpBox(position, "BoolMatrix is missing 'rows' or 'columns' properties.", MessageType.Error);
EditorGUI.EndProperty();
return;
}
// Layout helper
float lineHeight = EditorGUIUtility.singleLineHeight;
Rect line = new Rect(position.x, position.y, position.width, lineHeight);
// Header
EditorGUI.LabelField(line, label, EditorStyles.boldLabel);
line.y += lineHeight + Padding;
// Draw requiredCorrectPercentage
var requiredCorrectProp = property.FindPropertyRelative("requiredCorrectPercentage");
EditorGUI.PropertyField(line, requiredCorrectProp, new GUIContent("Required Correct Percentage"));
line.y += lineHeight + Padding;
// Columns field
EditorGUI.BeginChangeCheck();
int cols = Mathf.Max(0, EditorGUI.IntField(line, "Columns", columnsProp.intValue));
if (EditorGUI.EndChangeCheck())
{
columnsProp.intValue = cols;
// Resize each row to match new column count
for (int r = 0; r < rowsProp.arraySize; r++)
{
var rowProp = rowsProp.GetArrayElementAtIndex(r);
var cellsProp = rowProp.FindPropertyRelative("cells");
ResizeBoolArray(cellsProp, cols);
}
}
line.y += lineHeight + Padding;
// Row controls (Add/Remove)
using (new EditorGUI.IndentLevelScope())
{
Rect left = new Rect(line.x, line.y, 120, lineHeight);
if (GUI.Button(left, "Add Row"))
{
int newIndex = rowsProp.arraySize;
rowsProp.InsertArrayElementAtIndex(newIndex);
var rowProp = rowsProp.GetArrayElementAtIndex(newIndex);
var cellsProp = rowProp.FindPropertyRelative("cells");
ResizeBoolArray(cellsProp, columnsProp.intValue);
}
Rect right = new Rect(line.x + 130, line.y, 140, lineHeight);
if (GUI.Button(right, "Remove Last Row") && rowsProp.arraySize > 0)
{
rowsProp.DeleteArrayElementAtIndex(rowsProp.arraySize - 1);
}
}
line.y += lineHeight + Padding;
// Draw grid
int rowCount = rowsProp.arraySize;
int colCount = Mathf.Max(0, columnsProp.intValue);
for (int r = 0; r < rowCount; r++)
{
var rowProp = rowsProp.GetArrayElementAtIndex(r);
var cellsProp = rowProp.FindPropertyRelative("cells");
// Ensure row width
if (cellsProp.arraySize != colCount)
ResizeBoolArray(cellsProp, colCount);
// Row label
Rect rowLabel = new Rect(line.x, line.y, RowLabelWidth, lineHeight);
EditorGUI.LabelField(rowLabel, $"R{r}");
// Toggle strip
float startX = rowLabel.x + RowLabelWidth + Padding;
for (int c = 0; c < colCount; c++)
{
Rect toggleRect = new Rect(startX + c * (ToggleSize + 2), line.y, ToggleSize, lineHeight);
var cellProp = cellsProp.GetArrayElementAtIndex(c);
bool newVal = EditorGUI.Toggle(toggleRect, GUIContent.none, cellProp.boolValue);
if (newVal != cellProp.boolValue) cellProp.boolValue = newVal;
}
line.y += lineHeight + Padding;
}
EditorGUI.EndProperty();
}
private void ResizeBoolArray(SerializedProperty listProp, int newSize)
{
if (listProp == null) return;
newSize = Mathf.Max(0, newSize);
// Grow
while (listProp.arraySize < newSize)
{
int i = listProp.arraySize;
listProp.InsertArrayElementAtIndex(i);
var elem = listProp.GetArrayElementAtIndex(i);
elem.boolValue = false;
}
// Shrink
while (listProp.arraySize > newSize)
{
listProp.DeleteArrayElementAtIndex(listProp.arraySize - 1);
}
}
}
#endif

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: e3da5d98c11c1b54fb05eda4624de9e3
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -28,7 +28,7 @@ public class ArcheryRange : NetworkBehaviour
public float roundLength = 60f; public float roundLength = 60f;
public float targetSpawnTime = 3f; public float targetSpawnTime = 3f;
public ModelGenerationBox modelGenerationBox; public ArcheryRangeModelGenerationController modelGenerationController;
public KeyboardManager keyboardManager; public KeyboardManager keyboardManager;
public NPCController npcController; public NPCController npcController;
@@ -139,15 +139,15 @@ public class ArcheryRange : NetworkBehaviour
private ArcheryTarget SpawnTarget(Vector3 randomPos) private ArcheryTarget SpawnTarget(Vector3 randomPos)
{ {
GameObject targetObject; GameObject targetObject;
if (modelGenerationBox.GeneratedModel == null) if (modelGenerationController.GeneratedModel == null)
{ {
// spawn default UFO // spawn default UFO
targetObject = Instantiate(targetPrefab, randomPos, Quaternion.identity, null); targetObject = Instantiate(targetPrefab, randomPos, Quaternion.identity, null);
} else } else
{ {
// spawn generated model // spawn generated model
targetObject = Instantiate(modelGenerationBox.GeneratedModel, randomPos, Quaternion.identity, null); targetObject = Instantiate(modelGenerationController.GeneratedModel, randomPos, Quaternion.identity, null);
InitializeArcherytargetObject(targetObject); InitializeArcheryTargetObject(targetObject);
} }
ArcheryTarget target = targetObject.GetComponent<ArcheryTarget>(); ArcheryTarget target = targetObject.GetComponent<ArcheryTarget>();
@@ -157,12 +157,12 @@ public class ArcheryRange : NetworkBehaviour
return target; return target;
} }
private void InitializeArcherytargetObject(GameObject targetObject) private void InitializeArcheryTargetObject(GameObject targetObject)
{ {
ArcheryTarget archeryTarget = targetObject.AddComponent<ArcheryTarget>(); ArcheryTarget archeryTarget = targetObject.AddComponent<ArcheryTarget>();
archeryTarget.pointsText = archeryTargetPointsText; archeryTarget.pointsText = archeryTargetPointsText;
Rigidbody rigidbody = targetObject.GetComponent<Rigidbody>(); Rigidbody rigidbody = targetObject.AddComponent<Rigidbody>();
rigidbody.useGravity = false; rigidbody.useGravity = false;
rigidbody.isKinematic = true; rigidbody.isKinematic = true;

View File

@@ -12,7 +12,7 @@ GameObject:
- component: {fileID: 8764262191404547501} - component: {fileID: 8764262191404547501}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_l_pinky0 m_Name: hands:b_l_pinky0
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -68,7 +68,7 @@ GameObject:
- component: {fileID: 1723365827026859764} - component: {fileID: 1723365827026859764}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_l_thumb3 m_Name: hands:b_l_thumb3
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -123,7 +123,7 @@ GameObject:
- component: {fileID: 2608288486353606751} - component: {fileID: 2608288486353606751}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_l_grip m_Name: hands:b_l_grip
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -155,7 +155,7 @@ GameObject:
- component: {fileID: 1944697586618938354} - component: {fileID: 1944697586618938354}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_l_index1 m_Name: hands:b_l_index1
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -210,7 +210,7 @@ GameObject:
- component: {fileID: 4543854955624006782} - component: {fileID: 4543854955624006782}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_l_ring1 m_Name: hands:b_l_ring1
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -243,7 +243,7 @@ GameObject:
- component: {fileID: 4269470585016323320} - component: {fileID: 4269470585016323320}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_l_index3 m_Name: hands:b_l_index3
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -298,7 +298,7 @@ GameObject:
- component: {fileID: 5275753966706537763} - component: {fileID: 5275753966706537763}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_l_thumb_ignore m_Name: hands:b_l_thumb_ignore
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -329,7 +329,7 @@ GameObject:
- component: {fileID: 2961322539409618699} - component: {fileID: 2961322539409618699}
m_Layer: 21 m_Layer: 21
m_Name: Hand transform target m_Name: Hand transform target
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -361,7 +361,7 @@ GameObject:
- component: {fileID: 6986205080506681598} - component: {fileID: 6986205080506681598}
m_Layer: 21 m_Layer: 21
m_Name: Thumb collider m_Name: Thumb collider
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -415,7 +415,7 @@ GameObject:
- component: {fileID: 1637212737629950891} - component: {fileID: 1637212737629950891}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_l_hand_ignore m_Name: hands:b_l_hand_ignore
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -447,7 +447,7 @@ GameObject:
- component: {fileID: 2120999288498951984} - component: {fileID: 2120999288498951984}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_l_index2 m_Name: hands:b_l_index2
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -502,7 +502,7 @@ GameObject:
- component: {fileID: 5750800257835108047} - component: {fileID: 5750800257835108047}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_l_ring_ignore m_Name: hands:b_l_ring_ignore
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -534,7 +534,7 @@ GameObject:
- component: {fileID: 716960368701313914} - component: {fileID: 716960368701313914}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_l_pinky2 m_Name: hands:b_l_pinky2
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -590,7 +590,7 @@ GameObject:
- component: {fileID: 3386814274893541678} - component: {fileID: 3386814274893541678}
m_Layer: 21 m_Layer: 21
m_Name: hands:Lhand m_Name: hands:Lhand
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -699,7 +699,7 @@ GameObject:
- component: {fileID: 5919874647378539971} - component: {fileID: 5919874647378539971}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_l_pinky_ignore m_Name: hands:b_l_pinky_ignore
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -732,7 +732,7 @@ GameObject:
- component: {fileID: 6957428246676485499} - component: {fileID: 6957428246676485499}
m_Layer: 21 m_Layer: 21
m_Name: hands:l_hand_world m_Name: hands:l_hand_world
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -804,7 +804,7 @@ GameObject:
- component: {fileID: 5887795241378656881} - component: {fileID: 5887795241378656881}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_l_middle_ignore m_Name: hands:b_l_middle_ignore
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -836,7 +836,7 @@ GameObject:
- component: {fileID: 4322167853205774804} - component: {fileID: 4322167853205774804}
m_Layer: 21 m_Layer: 21
m_Name: Ring collider m_Name: Ring collider
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -890,7 +890,7 @@ GameObject:
- component: {fileID: 7553050096824511736} - component: {fileID: 7553050096824511736}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_l_index_ignore m_Name: hands:b_l_index_ignore
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -922,7 +922,7 @@ GameObject:
- component: {fileID: 1415566195781121907} - component: {fileID: 1415566195781121907}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_l_pinky3 m_Name: hands:b_l_pinky3
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -978,7 +978,7 @@ GameObject:
- component: {fileID: 4386306177358856345} - component: {fileID: 4386306177358856345}
m_Layer: 21 m_Layer: 21
m_Name: Index collider m_Name: Index collider
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1033,7 +1033,7 @@ GameObject:
- component: {fileID: 6789557385548509388} - component: {fileID: 6789557385548509388}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_l_thumb2 m_Name: hands:b_l_thumb2
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1088,7 +1088,7 @@ GameObject:
- component: {fileID: 2944632011470922523} - component: {fileID: 2944632011470922523}
m_Layer: 21 m_Layer: 21
m_Name: Palm colliders m_Name: Palm colliders
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1125,7 +1125,7 @@ GameObject:
- component: {fileID: 3014115217857052780} - component: {fileID: 3014115217857052780}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_l_middle1 m_Name: hands:b_l_middle1
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1181,7 +1181,7 @@ GameObject:
- component: {fileID: 8109105434051733588} - component: {fileID: 8109105434051733588}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_l_middle3 m_Name: hands:b_l_middle3
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1237,7 +1237,7 @@ GameObject:
- component: {fileID: 3769065761299449432} - component: {fileID: 3769065761299449432}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_l_ring3 m_Name: hands:b_l_ring3
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1293,7 +1293,7 @@ GameObject:
- component: {fileID: 8506477102816967445} - component: {fileID: 8506477102816967445}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_l_hand m_Name: hands:b_l_hand
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1356,7 +1356,7 @@ GameObject:
- component: {fileID: 1591964882275427419} - component: {fileID: 1591964882275427419}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_l_ring2 m_Name: hands:b_l_ring2
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1412,7 +1412,7 @@ GameObject:
- component: {fileID: 8576740011717174536} - component: {fileID: 8576740011717174536}
m_Layer: 21 m_Layer: 21
m_Name: Left Hand Colliding Prefab m_Name: Left Hand Colliding Prefab
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1468,7 +1468,7 @@ GameObject:
- component: {fileID: 1079438441252743571} - component: {fileID: 1079438441252743571}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_l_thumb1 m_Name: hands:b_l_thumb1
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1524,7 +1524,7 @@ GameObject:
- component: {fileID: 2798374626865133994} - component: {fileID: 2798374626865133994}
m_Layer: 21 m_Layer: 21
m_Name: Middle collider m_Name: Middle collider
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1579,7 +1579,7 @@ GameObject:
- component: {fileID: 5949439093540659439} - component: {fileID: 5949439093540659439}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_l_pinky1 m_Name: hands:b_l_pinky1
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1634,7 +1634,7 @@ GameObject:
- component: {fileID: 8548538124938550778} - component: {fileID: 8548538124938550778}
m_Layer: 21 m_Layer: 21
m_Name: hands:hands_geom m_Name: hands:hands_geom
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1667,7 +1667,7 @@ GameObject:
- component: {fileID: 1579608193995075263} - component: {fileID: 1579608193995075263}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_l_middle2 m_Name: hands:b_l_middle2
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1723,7 +1723,7 @@ GameObject:
- component: {fileID: 919376631072681037} - component: {fileID: 919376631072681037}
m_Layer: 21 m_Layer: 21
m_Name: Pinky collider m_Name: Pinky collider
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0

View File

@@ -12,7 +12,7 @@ GameObject:
- component: {fileID: 8052033317495986407} - component: {fileID: 8052033317495986407}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_r_middle1 m_Name: hands:b_r_middle1
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -67,7 +67,7 @@ GameObject:
- component: {fileID: 2906946168806256316} - component: {fileID: 2906946168806256316}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_r_thumb_ignore m_Name: hands:b_r_thumb_ignore
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -99,7 +99,7 @@ GameObject:
- component: {fileID: 3715643930745057324} - component: {fileID: 3715643930745057324}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_r_middle2 m_Name: hands:b_r_middle2
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -154,7 +154,7 @@ GameObject:
- component: {fileID: 7300301753511705056} - component: {fileID: 7300301753511705056}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_r_hand m_Name: hands:b_r_hand
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -194,7 +194,7 @@ GameObject:
- component: {fileID: 2690371468463167305} - component: {fileID: 2690371468463167305}
m_Layer: 21 m_Layer: 21
m_Name: Thumb collider m_Name: Thumb collider
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -248,7 +248,7 @@ GameObject:
- component: {fileID: 5327335418779228248} - component: {fileID: 5327335418779228248}
m_Layer: 21 m_Layer: 21
m_Name: Palm colliders m_Name: Palm colliders
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -284,7 +284,7 @@ GameObject:
- component: {fileID: 3590037039866930948} - component: {fileID: 3590037039866930948}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_r_ring_ignore m_Name: hands:b_r_ring_ignore
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -316,7 +316,7 @@ GameObject:
- component: {fileID: 7768949610396455723} - component: {fileID: 7768949610396455723}
m_Layer: 21 m_Layer: 21
m_Name: Right Hand Colliding Prefab m_Name: Right Hand Colliding Prefab
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -371,7 +371,7 @@ GameObject:
- component: {fileID: 2252869937798432446} - component: {fileID: 2252869937798432446}
m_Layer: 21 m_Layer: 21
m_Name: Hand transform target m_Name: Hand transform target
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -403,7 +403,7 @@ GameObject:
- component: {fileID: 4819224731497084625} - component: {fileID: 4819224731497084625}
m_Layer: 21 m_Layer: 21
m_Name: Ring collider m_Name: Ring collider
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -458,7 +458,7 @@ GameObject:
- component: {fileID: 5988830187266270822} - component: {fileID: 5988830187266270822}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_r_index2 m_Name: hands:b_r_index2
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -514,7 +514,7 @@ GameObject:
- component: {fileID: 3490267647208294616} - component: {fileID: 3490267647208294616}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_r_pinky1 m_Name: hands:b_r_pinky1
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -569,7 +569,7 @@ GameObject:
- component: {fileID: 6375747935274843628} - component: {fileID: 6375747935274843628}
m_Layer: 21 m_Layer: 21
m_Name: hands:hands_geom m_Name: hands:hands_geom
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -603,7 +603,7 @@ GameObject:
- component: {fileID: 5764046989862461349} - component: {fileID: 5764046989862461349}
m_Layer: 21 m_Layer: 21
m_Name: hands:r_hand_world m_Name: hands:r_hand_world
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -676,7 +676,7 @@ GameObject:
- component: {fileID: 6416395892737682491} - component: {fileID: 6416395892737682491}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_r_ring1 m_Name: hands:b_r_ring1
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -732,7 +732,7 @@ GameObject:
- component: {fileID: 2137975461030589968} - component: {fileID: 2137975461030589968}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_r_thumb1 m_Name: hands:b_r_thumb1
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -788,7 +788,7 @@ GameObject:
- component: {fileID: 3641471949121660872} - component: {fileID: 3641471949121660872}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_r_middle3 m_Name: hands:b_r_middle3
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -844,7 +844,7 @@ GameObject:
- component: {fileID: 1533912411679244991} - component: {fileID: 1533912411679244991}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_r_thumb2 m_Name: hands:b_r_thumb2
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -900,7 +900,7 @@ GameObject:
- component: {fileID: 7674578750026270476} - component: {fileID: 7674578750026270476}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_r_index3 m_Name: hands:b_r_index3
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -956,7 +956,7 @@ GameObject:
- component: {fileID: 4783864064774963216} - component: {fileID: 4783864064774963216}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_r_index1 m_Name: hands:b_r_index1
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1012,7 +1012,7 @@ GameObject:
- component: {fileID: 8883393763632736373} - component: {fileID: 8883393763632736373}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_r_pinky3 m_Name: hands:b_r_pinky3
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1068,7 +1068,7 @@ GameObject:
- component: {fileID: 4631915003324200488} - component: {fileID: 4631915003324200488}
m_Layer: 21 m_Layer: 21
m_Name: Index collider m_Name: Index collider
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1123,7 +1123,7 @@ GameObject:
- component: {fileID: 5712925273267891514} - component: {fileID: 5712925273267891514}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_r_ring3 m_Name: hands:b_r_ring3
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1178,7 +1178,7 @@ GameObject:
- component: {fileID: 4156920047406755595} - component: {fileID: 4156920047406755595}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_r_middle_ignore m_Name: hands:b_r_middle_ignore
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1210,7 +1210,7 @@ GameObject:
- component: {fileID: 6299028004636604754} - component: {fileID: 6299028004636604754}
m_Layer: 21 m_Layer: 21
m_Name: hands:Rhand m_Name: hands:Rhand
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1320,7 +1320,7 @@ GameObject:
- component: {fileID: 2117998936123800384} - component: {fileID: 2117998936123800384}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_r_thumb3 m_Name: hands:b_r_thumb3
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1376,7 +1376,7 @@ GameObject:
- component: {fileID: 4519742811004900486} - component: {fileID: 4519742811004900486}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_r_ring2 m_Name: hands:b_r_ring2
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1431,7 +1431,7 @@ GameObject:
- component: {fileID: 2440932897317841026} - component: {fileID: 2440932897317841026}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_r_grip m_Name: hands:b_r_grip
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1462,7 +1462,7 @@ GameObject:
- component: {fileID: 8288052402374024699} - component: {fileID: 8288052402374024699}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_r_hand_ignore m_Name: hands:b_r_hand_ignore
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1494,7 +1494,7 @@ GameObject:
- component: {fileID: 2652303807040277245} - component: {fileID: 2652303807040277245}
m_Layer: 21 m_Layer: 21
m_Name: Pinky collider m_Name: Pinky collider
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1548,7 +1548,7 @@ GameObject:
- component: {fileID: 2250556033546852906} - component: {fileID: 2250556033546852906}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_r_pinky_ignore m_Name: hands:b_r_pinky_ignore
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1579,7 +1579,7 @@ GameObject:
- component: {fileID: 9123958269350278631} - component: {fileID: 9123958269350278631}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_r_index_ignore m_Name: hands:b_r_index_ignore
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1610,7 +1610,7 @@ GameObject:
- component: {fileID: 6538895829321691740} - component: {fileID: 6538895829321691740}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_r_pinky0 m_Name: hands:b_r_pinky0
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1643,7 +1643,7 @@ GameObject:
- component: {fileID: 7691745531460669440} - component: {fileID: 7691745531460669440}
m_Layer: 21 m_Layer: 21
m_Name: hands:b_r_pinky2 m_Name: hands:b_r_pinky2
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -1699,7 +1699,7 @@ GameObject:
- component: {fileID: 8227723562108441212} - component: {fileID: 8227723562108441212}
m_Layer: 21 m_Layer: 21
m_Name: Middle collider m_Name: Middle collider
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0

View File

@@ -11,7 +11,7 @@ GameObject:
- component: {fileID: 6766972025625897185} - component: {fileID: 6766972025625897185}
m_Layer: 0 m_Layer: 0
m_Name: hands:hands_geom m_Name: hands:hands_geom
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -43,7 +43,7 @@ GameObject:
- component: {fileID: 6766972025625897187} - component: {fileID: 6766972025625897187}
m_Layer: 0 m_Layer: 0
m_Name: hands:l_hand_world m_Name: hands:l_hand_world
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -76,7 +76,7 @@ GameObject:
- component: {fileID: 6766972025630685681} - component: {fileID: 6766972025630685681}
m_Layer: 0 m_Layer: 0
m_Name: hands:Lhand m_Name: hands:Lhand
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -186,7 +186,7 @@ GameObject:
- component: {fileID: 6766972025634883377} - component: {fileID: 6766972025634883377}
m_Layer: 0 m_Layer: 0
m_Name: Left Hand Prefab m_Name: Left Hand Prefab
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -228,6 +228,7 @@ Animator:
m_HasTransformHierarchy: 1 m_HasTransformHierarchy: 1
m_AllowConstantClipSamplingOptimization: 1 m_AllowConstantClipSamplingOptimization: 1
m_KeepAnimatorStateOnDisable: 0 m_KeepAnimatorStateOnDisable: 0
m_WriteDefaultValuesOnDisable: 0
--- !u!1 &6766972025625408657 --- !u!1 &6766972025625408657
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -239,7 +240,7 @@ GameObject:
- component: {fileID: 6766972025625897201} - component: {fileID: 6766972025625897201}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_l_ring1 m_Name: hands:b_l_ring1
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -271,7 +272,7 @@ GameObject:
- component: {fileID: 6766972025625897203} - component: {fileID: 6766972025625897203}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_l_ring2 m_Name: hands:b_l_ring2
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -303,7 +304,7 @@ GameObject:
- component: {fileID: 6766972025625897205} - component: {fileID: 6766972025625897205}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_l_ring3 m_Name: hands:b_l_ring3
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -335,7 +336,7 @@ GameObject:
- component: {fileID: 6766972025625897207} - component: {fileID: 6766972025625897207}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_l_ring_ignore m_Name: hands:b_l_ring_ignore
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -366,7 +367,7 @@ GameObject:
- component: {fileID: 6766972025625897209} - component: {fileID: 6766972025625897209}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_l_thumb1 m_Name: hands:b_l_thumb1
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -398,7 +399,7 @@ GameObject:
- component: {fileID: 6766972025625897211} - component: {fileID: 6766972025625897211}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_l_thumb2 m_Name: hands:b_l_thumb2
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -430,7 +431,7 @@ GameObject:
- component: {fileID: 6766972025625897213} - component: {fileID: 6766972025625897213}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_l_thumb3 m_Name: hands:b_l_thumb3
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -462,7 +463,7 @@ GameObject:
- component: {fileID: 6766972025625897215} - component: {fileID: 6766972025625897215}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_l_thumb_ignore m_Name: hands:b_l_thumb_ignore
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -493,7 +494,7 @@ GameObject:
- component: {fileID: 6766972025625897153} - component: {fileID: 6766972025625897153}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_l_middle2 m_Name: hands:b_l_middle2
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -525,7 +526,7 @@ GameObject:
- component: {fileID: 6766972025625897155} - component: {fileID: 6766972025625897155}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_l_middle3 m_Name: hands:b_l_middle3
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -557,7 +558,7 @@ GameObject:
- component: {fileID: 6766972025625897157} - component: {fileID: 6766972025625897157}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_l_middle_ignore m_Name: hands:b_l_middle_ignore
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -588,7 +589,7 @@ GameObject:
- component: {fileID: 6766972025625897159} - component: {fileID: 6766972025625897159}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_l_pinky0 m_Name: hands:b_l_pinky0
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -620,7 +621,7 @@ GameObject:
- component: {fileID: 6766972025625897161} - component: {fileID: 6766972025625897161}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_l_pinky1 m_Name: hands:b_l_pinky1
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -652,7 +653,7 @@ GameObject:
- component: {fileID: 6766972025625897163} - component: {fileID: 6766972025625897163}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_l_pinky2 m_Name: hands:b_l_pinky2
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -684,7 +685,7 @@ GameObject:
- component: {fileID: 6766972025625897165} - component: {fileID: 6766972025625897165}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_l_pinky3 m_Name: hands:b_l_pinky3
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -716,7 +717,7 @@ GameObject:
- component: {fileID: 6766972025625897167} - component: {fileID: 6766972025625897167}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_l_pinky_ignore m_Name: hands:b_l_pinky_ignore
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -747,7 +748,7 @@ GameObject:
- component: {fileID: 6766972025625897169} - component: {fileID: 6766972025625897169}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_l_grip m_Name: hands:b_l_grip
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -778,7 +779,7 @@ GameObject:
- component: {fileID: 6766972025625897171} - component: {fileID: 6766972025625897171}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_l_hand m_Name: hands:b_l_hand
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -816,7 +817,7 @@ GameObject:
- component: {fileID: 6766972025625897173} - component: {fileID: 6766972025625897173}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_l_hand_ignore m_Name: hands:b_l_hand_ignore
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -847,7 +848,7 @@ GameObject:
- component: {fileID: 6766972025625897175} - component: {fileID: 6766972025625897175}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_l_index1 m_Name: hands:b_l_index1
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -879,7 +880,7 @@ GameObject:
- component: {fileID: 6766972025625897177} - component: {fileID: 6766972025625897177}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_l_index2 m_Name: hands:b_l_index2
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -911,7 +912,7 @@ GameObject:
- component: {fileID: 6766972025625897179} - component: {fileID: 6766972025625897179}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_l_index3 m_Name: hands:b_l_index3
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -943,7 +944,7 @@ GameObject:
- component: {fileID: 6766972025625897181} - component: {fileID: 6766972025625897181}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_l_index_ignore m_Name: hands:b_l_index_ignore
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -974,7 +975,7 @@ GameObject:
- component: {fileID: 6766972025625897183} - component: {fileID: 6766972025625897183}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_l_middle1 m_Name: hands:b_l_middle1
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0

View File

@@ -11,7 +11,7 @@ GameObject:
- component: {fileID: 5553551016358058816} - component: {fileID: 5553551016358058816}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_r_thumb2 m_Name: hands:b_r_thumb2
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -43,7 +43,7 @@ GameObject:
- component: {fileID: 5553551016358058818} - component: {fileID: 5553551016358058818}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_r_thumb1 m_Name: hands:b_r_thumb1
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -75,7 +75,7 @@ GameObject:
- component: {fileID: 5553551016358058820} - component: {fileID: 5553551016358058820}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_r_thumb_ignore m_Name: hands:b_r_thumb_ignore
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -106,7 +106,7 @@ GameObject:
- component: {fileID: 5553551016358058822} - component: {fileID: 5553551016358058822}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_r_thumb3 m_Name: hands:b_r_thumb3
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -138,7 +138,7 @@ GameObject:
- component: {fileID: 5553551016358058824} - component: {fileID: 5553551016358058824}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_r_ring2 m_Name: hands:b_r_ring2
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -170,7 +170,7 @@ GameObject:
- component: {fileID: 5553551016358058826} - component: {fileID: 5553551016358058826}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_r_ring1 m_Name: hands:b_r_ring1
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -202,7 +202,7 @@ GameObject:
- component: {fileID: 5553551016358058828} - component: {fileID: 5553551016358058828}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_r_ring_ignore m_Name: hands:b_r_ring_ignore
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -233,7 +233,7 @@ GameObject:
- component: {fileID: 5553551016358058830} - component: {fileID: 5553551016358058830}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_r_ring3 m_Name: hands:b_r_ring3
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -265,7 +265,7 @@ GameObject:
- component: {fileID: 5553551016358058840} - component: {fileID: 5553551016358058840}
m_Layer: 0 m_Layer: 0
m_Name: hands:r_hand_world m_Name: hands:r_hand_world
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -297,7 +297,7 @@ GameObject:
- component: {fileID: 5553551016358058842} - component: {fileID: 5553551016358058842}
m_Layer: 0 m_Layer: 0
m_Name: hands:hands_geom m_Name: hands:hands_geom
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -330,7 +330,7 @@ GameObject:
- component: {fileID: 5553551016367944842} - component: {fileID: 5553551016367944842}
m_Layer: 0 m_Layer: 0
m_Name: Right Hand Prefab m_Name: Right Hand Prefab
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -372,6 +372,7 @@ Animator:
m_HasTransformHierarchy: 1 m_HasTransformHierarchy: 1
m_AllowConstantClipSamplingOptimization: 1 m_AllowConstantClipSamplingOptimization: 1
m_KeepAnimatorStateOnDisable: 0 m_KeepAnimatorStateOnDisable: 0
m_WriteDefaultValuesOnDisable: 0
--- !u!1 &5553551016358545214 --- !u!1 &5553551016358545214
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -384,7 +385,7 @@ GameObject:
- component: {fileID: 5553551016372144714} - component: {fileID: 5553551016372144714}
m_Layer: 0 m_Layer: 0
m_Name: hands:Rhand m_Name: hands:Rhand
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -493,7 +494,7 @@ GameObject:
- component: {fileID: 5553551016358058848} - component: {fileID: 5553551016358058848}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_r_index3 m_Name: hands:b_r_index3
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -525,7 +526,7 @@ GameObject:
- component: {fileID: 5553551016358058850} - component: {fileID: 5553551016358058850}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_r_index2 m_Name: hands:b_r_index2
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -557,7 +558,7 @@ GameObject:
- component: {fileID: 5553551016358058852} - component: {fileID: 5553551016358058852}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_r_middle1 m_Name: hands:b_r_middle1
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -589,7 +590,7 @@ GameObject:
- component: {fileID: 5553551016358058854} - component: {fileID: 5553551016358058854}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_r_index_ignore m_Name: hands:b_r_index_ignore
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -620,7 +621,7 @@ GameObject:
- component: {fileID: 5553551016358058856} - component: {fileID: 5553551016358058856}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_r_hand m_Name: hands:b_r_hand
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -658,7 +659,7 @@ GameObject:
- component: {fileID: 5553551016358058858} - component: {fileID: 5553551016358058858}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_r_grip m_Name: hands:b_r_grip
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -689,7 +690,7 @@ GameObject:
- component: {fileID: 5553551016358058860} - component: {fileID: 5553551016358058860}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_r_index1 m_Name: hands:b_r_index1
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -721,7 +722,7 @@ GameObject:
- component: {fileID: 5553551016358058862} - component: {fileID: 5553551016358058862}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_r_hand_ignore m_Name: hands:b_r_hand_ignore
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -752,7 +753,7 @@ GameObject:
- component: {fileID: 5553551016358058864} - component: {fileID: 5553551016358058864}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_r_pinky2 m_Name: hands:b_r_pinky2
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -784,7 +785,7 @@ GameObject:
- component: {fileID: 5553551016358058866} - component: {fileID: 5553551016358058866}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_r_pinky1 m_Name: hands:b_r_pinky1
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -816,7 +817,7 @@ GameObject:
- component: {fileID: 5553551016358058868} - component: {fileID: 5553551016358058868}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_r_pinky_ignore m_Name: hands:b_r_pinky_ignore
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -847,7 +848,7 @@ GameObject:
- component: {fileID: 5553551016358058870} - component: {fileID: 5553551016358058870}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_r_pinky3 m_Name: hands:b_r_pinky3
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -879,7 +880,7 @@ GameObject:
- component: {fileID: 5553551016358058872} - component: {fileID: 5553551016358058872}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_r_middle3 m_Name: hands:b_r_middle3
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -911,7 +912,7 @@ GameObject:
- component: {fileID: 5553551016358058874} - component: {fileID: 5553551016358058874}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_r_middle2 m_Name: hands:b_r_middle2
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -943,7 +944,7 @@ GameObject:
- component: {fileID: 5553551016358058876} - component: {fileID: 5553551016358058876}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_r_pinky0 m_Name: hands:b_r_pinky0
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -975,7 +976,7 @@ GameObject:
- component: {fileID: 5553551016358058878} - component: {fileID: 5553551016358058878}
m_Layer: 0 m_Layer: 0
m_Name: hands:b_r_middle_ignore m_Name: hands:b_r_middle_ignore
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0

View File

@@ -3848,7 +3848,7 @@ GameObject:
- component: {fileID: 6319035899684778083} - component: {fileID: 6319035899684778083}
m_Layer: 0 m_Layer: 0
m_Name: Left Hand m_Name: Left Hand
m_TagString: Untagged m_TagString: Player Left Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -6181,7 +6181,7 @@ GameObject:
- component: {fileID: 2428925342826453737} - component: {fileID: 2428925342826453737}
m_Layer: 0 m_Layer: 0
m_Name: Right Hand m_Name: Right Hand
m_TagString: Untagged m_TagString: Player Right Hand
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0

View File

@@ -149,7 +149,7 @@ namespace _PROJECT.NewHandPresence
{ {
if (leftHand == null || rightHand == null) if (leftHand == null || rightHand == null)
{ {
Debug.Log("Left or right hand is null"); //Debug.Log("Left or right hand is null");
return false; return false;
} }

Binary file not shown.

View File

@@ -0,0 +1,148 @@
fileFormatVersion: 2
guid: 68669679d082ba94bb4a39c08fa91e0d
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:

Binary file not shown.

View File

@@ -0,0 +1,148 @@
fileFormatVersion: 2
guid: 3f2516f6ee1cb5c4ba7f85f24c3d4f43
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:

View File

@@ -0,0 +1,139 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Glass_NonClear_Green
m_Shader: {fileID: 4800000, guid: 0ca6dca7396eb48e5849247ffd444914, type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords:
- _SURFACE_TYPE_TRANSPARENT
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: 3000
stringTagMap:
RenderType: Transparent
disabledShaderPasses:
- DepthOnly
- SHADOWCASTER
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BaseMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_Lightmaps:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_LightmapsInd:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_ShadowMasks:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _AlphaClip: 0
- _AlphaToMask: 0
- _Blend: 0
- _BlendModePreserveSpecular: 1
- _BlendOp: 0
- _BumpScale: 1
- _ClearCoatMask: 0
- _ClearCoatSmoothness: 0
- _Cull: 2
- _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _DstBlend: 10
- _DstBlendAlpha: 10
- _EnvironmentReflections: 1
- _GlossMapScale: 1
- _Glossiness: 0
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _QueueOffset: 0
- _ReceiveShadows: 1
- _Smoothness: 0
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 5
- _SrcBlendAlpha: 1
- _Surface: 1
- _UVSec: 0
- _WorkflowMode: 1
- _ZWrite: 0
m_Colors:
- _BaseColor: {r: 0.36383638, g: 1, b: 0, a: 0.34509805}
- _Color: {r: 0.5294118, g: 0.5647059, b: 0.57254905, a: 0.29411766}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
m_BuildTextureStacks: []
--- !u!114 &3140964517369894785
MonoBehaviour:
m_ObjectHideFlags: 11
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 7

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: e2ac8c5522bae5a4794c3cbdb7bee948
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,139 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Glass_NonClear_Red
m_Shader: {fileID: 4800000, guid: 0ca6dca7396eb48e5849247ffd444914, type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords:
- _SURFACE_TYPE_TRANSPARENT
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: 3000
stringTagMap:
RenderType: Transparent
disabledShaderPasses:
- DepthOnly
- SHADOWCASTER
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BaseMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_Lightmaps:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_LightmapsInd:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_ShadowMasks:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _AlphaClip: 0
- _AlphaToMask: 0
- _Blend: 0
- _BlendModePreserveSpecular: 1
- _BlendOp: 0
- _BumpScale: 1
- _ClearCoatMask: 0
- _ClearCoatSmoothness: 0
- _Cull: 2
- _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _DstBlend: 10
- _DstBlendAlpha: 10
- _EnvironmentReflections: 1
- _GlossMapScale: 1
- _Glossiness: 0
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _QueueOffset: 0
- _ReceiveShadows: 1
- _Smoothness: 0
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 5
- _SrcBlendAlpha: 1
- _Surface: 1
- _UVSec: 0
- _WorkflowMode: 1
- _ZWrite: 0
m_Colors:
- _BaseColor: {r: 1, g: 0.53300416, b: 0, a: 0.4745098}
- _Color: {r: 0.5294118, g: 0.5647059, b: 0.57254905, a: 0.29411766}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
m_BuildTextureStacks: []
--- !u!114 &3140964517369894785
MonoBehaviour:
m_ObjectHideFlags: 11
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 7

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 1892de3c798cec947bcabf6cfc693b8c
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,138 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-2509310519420828263
MonoBehaviour:
m_ObjectHideFlags: 11
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 7
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: LaserBlack
m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords:
- _ALPHAPREMULTIPLY_ON
- _EMISSION
- _SURFACE_TYPE_TRANSPARENT
m_InvalidKeywords: []
m_LightmapFlags: 1
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: 3000
stringTagMap:
RenderType: Transparent
disabledShaderPasses:
- DepthOnly
- SHADOWCASTER
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BaseMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_Lightmaps:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_LightmapsInd:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_ShadowMasks:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _AlphaClip: 0
- _AlphaToMask: 0
- _Blend: 0
- _BlendModePreserveSpecular: 1
- _BumpScale: 1
- _ClearCoatMask: 0
- _ClearCoatSmoothness: 0
- _Cull: 2
- _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _DstBlend: 10
- _DstBlendAlpha: 10
- _EnvironmentReflections: 1
- _GlossMapScale: 0
- _Glossiness: 0
- _GlossyReflections: 0
- _Metallic: 0
- _OcclusionStrength: 1
- _Parallax: 0.005
- _QueueOffset: 0
- _ReceiveShadows: 1
- _Smoothness: 0.5
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _SrcBlendAlpha: 1
- _Surface: 1
- _WorkflowMode: 1
- _ZWrite: 0
m_Colors:
- _BaseColor: {r: 0, g: 0, b: 0, a: 0.44705883}
- _Color: {r: 0, g: 0, b: 0, a: 0.44705883}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
m_BuildTextureStacks: []

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 991fa2870324ba04aba7bec9e1168afa
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,138 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-2509310519420828263
MonoBehaviour:
m_ObjectHideFlags: 11
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 7
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: LaserGreen
m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords:
- _ALPHAPREMULTIPLY_ON
- _EMISSION
- _SURFACE_TYPE_TRANSPARENT
m_InvalidKeywords: []
m_LightmapFlags: 1
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: 3000
stringTagMap:
RenderType: Transparent
disabledShaderPasses:
- DepthOnly
- SHADOWCASTER
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BaseMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_Lightmaps:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_LightmapsInd:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_ShadowMasks:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _AlphaClip: 0
- _AlphaToMask: 0
- _Blend: 0
- _BlendModePreserveSpecular: 1
- _BumpScale: 1
- _ClearCoatMask: 0
- _ClearCoatSmoothness: 0
- _Cull: 2
- _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _DstBlend: 10
- _DstBlendAlpha: 10
- _EnvironmentReflections: 1
- _GlossMapScale: 0
- _Glossiness: 0
- _GlossyReflections: 0
- _Metallic: 0
- _OcclusionStrength: 1
- _Parallax: 0.005
- _QueueOffset: 0
- _ReceiveShadows: 1
- _Smoothness: 0.5
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _SrcBlendAlpha: 1
- _Surface: 1
- _WorkflowMode: 1
- _ZWrite: 0
m_Colors:
- _BaseColor: {r: 0.30713266, g: 1, b: 0, a: 0.21176471}
- _Color: {r: 0.30713263, g: 1, b: 0, a: 0.21176471}
- _EmissionColor: {r: 0.073280446, g: 0.25953898, b: 0.0012242433, a: 1}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
m_BuildTextureStacks: []

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: dccb608b252977047bd5848d6a497bfb
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,138 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-2509310519420828263
MonoBehaviour:
m_ObjectHideFlags: 11
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 7
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: LaserRed
m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords:
- _ALPHAPREMULTIPLY_ON
- _EMISSION
- _SURFACE_TYPE_TRANSPARENT
m_InvalidKeywords: []
m_LightmapFlags: 1
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: 3000
stringTagMap:
RenderType: Transparent
disabledShaderPasses:
- DepthOnly
- SHADOWCASTER
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BaseMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_Lightmaps:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_LightmapsInd:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_ShadowMasks:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _AlphaClip: 0
- _AlphaToMask: 0
- _Blend: 0
- _BlendModePreserveSpecular: 1
- _BumpScale: 1
- _ClearCoatMask: 0
- _ClearCoatSmoothness: 0
- _Cull: 2
- _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _DstBlend: 10
- _DstBlendAlpha: 10
- _EnvironmentReflections: 1
- _GlossMapScale: 0
- _Glossiness: 0
- _GlossyReflections: 0
- _Metallic: 0
- _OcclusionStrength: 1
- _Parallax: 0.005
- _QueueOffset: 0
- _ReceiveShadows: 1
- _Smoothness: 0.5
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _SrcBlendAlpha: 1
- _Surface: 1
- _WorkflowMode: 1
- _ZWrite: 0
m_Colors:
- _BaseColor: {r: 1, g: 0.084452756, b: 0, a: 0.21960784}
- _Color: {r: 1, g: 0.084452726, b: 0, a: 0.21960784}
- _EmissionColor: {r: 0.13397168, g: 0.007051141, b: 0, a: 1}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
m_BuildTextureStacks: []

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: c0707507abffb6149b19e60299403e82
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,138 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-2509310519420828263
MonoBehaviour:
m_ObjectHideFlags: 11
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 7
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: LaserWhite
m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords:
- _ALPHAPREMULTIPLY_ON
- _EMISSION
- _SURFACE_TYPE_TRANSPARENT
m_InvalidKeywords: []
m_LightmapFlags: 1
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: 3000
stringTagMap:
RenderType: Transparent
disabledShaderPasses:
- DepthOnly
- SHADOWCASTER
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BaseMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_Lightmaps:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_LightmapsInd:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_ShadowMasks:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _AlphaClip: 0
- _AlphaToMask: 0
- _Blend: 0
- _BlendModePreserveSpecular: 1
- _BumpScale: 1
- _ClearCoatMask: 0
- _ClearCoatSmoothness: 0
- _Cull: 2
- _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _DstBlend: 10
- _DstBlendAlpha: 10
- _EnvironmentReflections: 1
- _GlossMapScale: 0
- _Glossiness: 0
- _GlossyReflections: 0
- _Metallic: 0
- _OcclusionStrength: 1
- _Parallax: 0.005
- _QueueOffset: 0
- _ReceiveShadows: 1
- _Smoothness: 0.5
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _SrcBlendAlpha: 1
- _Surface: 1
- _WorkflowMode: 1
- _ZWrite: 0
m_Colors:
- _BaseColor: {r: 1, g: 1, b: 1, a: 0.21176471}
- _Color: {r: 1, g: 1, b: 1, a: 0.21176471}
- _EmissionColor: {r: 0.16493848, g: 0.16493848, b: 0.16493848, a: 1}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
m_BuildTextureStacks: []

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: c7aad7ea05b9332478242744c9de52b9
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: b178bdf9bc7865043be6b1d12e072b59
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

View File

@@ -0,0 +1,108 @@
fileFormatVersion: 2
guid: 8360cb58a6640db4fafae736bb1b0393
ModelImporter:
serializedVersion: 22200
internalIDToNameTable: []
externalObjects: {}
materials:
materialImportMode: 2
materialName: 0
materialSearch: 1
materialLocation: 1
animations:
legacyGenerateAnimations: 4
bakeSimulation: 0
resampleCurves: 1
optimizeGameObjects: 0
removeConstantScaleCurves: 0
motionNodeName:
rigImportErrors:
rigImportWarnings:
animationImportErrors:
animationImportWarnings:
animationRetargetingWarnings:
animationDoRetargetingWarnings: 0
importAnimatedCustomProperties: 0
importConstraints: 0
animationCompression: 1
animationRotationError: 0.5
animationPositionError: 0.5
animationScaleError: 0.5
animationWrapMode: 0
extraExposedTransformPaths: []
extraUserProperties: []
clipAnimations: []
isReadable: 0
meshes:
lODScreenPercentages: []
globalScale: 1
meshCompression: 0
addColliders: 0
useSRGBMaterialColor: 1
sortHierarchyByName: 1
importVisibility: 1
importBlendShapes: 1
importCameras: 1
importLights: 1
nodeNameCollisionStrategy: 1
fileIdsGeneration: 2
swapUVChannels: 0
generateSecondaryUV: 0
useFileUnits: 1
keepQuads: 0
weldVertices: 1
bakeAxisConversion: 0
preserveHierarchy: 0
skinWeightsMode: 0
maxBonesPerVertex: 4
minBoneWeight: 0.001
optimizeBones: 1
meshOptimizationFlags: -1
indexFormat: 0
secondaryUVAngleDistortion: 8
secondaryUVAreaDistortion: 15.000001
secondaryUVHardAngle: 88
secondaryUVMarginMethod: 1
secondaryUVMinLightmapResolution: 40
secondaryUVMinObjectScale: 1
secondaryUVPackMargin: 4
useFileScale: 1
strictVertexDataChecks: 0
tangentSpace:
normalSmoothAngle: 60
normalImportMode: 0
tangentImportMode: 3
normalCalculationMode: 4
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
blendShapeNormalImportMode: 1
normalSmoothingSource: 0
referencedClips: []
importAnimation: 1
humanDescription:
serializedVersion: 3
human: []
skeleton: []
armTwist: 0.5
foreArmTwist: 0.5
upperLegTwist: 0.5
legTwist: 0.5
armStretch: 0.05
legStretch: 0.05
feetSpacing: 0
globalScale: 1
rootMotionBoneName:
hasTranslationDoF: 0
hasExtraRoot: 0
skeletonHasParents: 1
lastHumanDescriptionAvatarSource: {instanceID: 0}
autoGenerateAvatarMappingIfUnspecified: 1
animationType: 2
humanoidOversampling: 1
avatarSetup: 0
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
importBlendShapeDeformPercent: 1
remapMaterialsIfMaterialImportModeIsNone: 0
additionalBone: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: cb5850db4a54143459f5726604c877d5
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,133 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: MicrophoneStand
m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: []
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap:
RenderType: Opaque
disabledShaderPasses: []
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BaseMap:
m_Texture: {fileID: 2800000, guid: ece692bd0a972854ca30e8e24bb5f635, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: ece692bd0a972854ca30e8e24bb5f635, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_Lightmaps:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_LightmapsInd:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_ShadowMasks:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _AlphaClip: 0
- _AlphaToMask: 0
- _Blend: 0
- _BlendModePreserveSpecular: 1
- _BumpScale: 1
- _ClearCoatMask: 0
- _ClearCoatSmoothness: 0
- _Cull: 2
- _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _DstBlendAlpha: 0
- _EnvironmentReflections: 1
- _GlossMapScale: 0
- _Glossiness: 0
- _GlossyReflections: 0
- _Metallic: 0
- _OcclusionStrength: 1
- _Parallax: 0.005
- _QueueOffset: 0
- _ReceiveShadows: 1
- _Smoothness: 0.5
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _SrcBlendAlpha: 1
- _Surface: 0
- _WorkflowMode: 1
- _ZWrite: 1
m_Colors:
- _BaseColor: {r: 1, g: 1, b: 1, a: 1}
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
m_BuildTextureStacks: []
--- !u!114 &2216343319369955251
MonoBehaviour:
m_ObjectHideFlags: 11
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 7

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 19c6f99eccf0c69469fd5c281f18b5c0
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,108 @@
fileFormatVersion: 2
guid: 7c81a7464d27596489f008c96d1971c8
ModelImporter:
serializedVersion: 22200
internalIDToNameTable: []
externalObjects: {}
materials:
materialImportMode: 2
materialName: 0
materialSearch: 1
materialLocation: 1
animations:
legacyGenerateAnimations: 4
bakeSimulation: 0
resampleCurves: 1
optimizeGameObjects: 0
removeConstantScaleCurves: 0
motionNodeName:
rigImportErrors:
rigImportWarnings:
animationImportErrors:
animationImportWarnings:
animationRetargetingWarnings:
animationDoRetargetingWarnings: 0
importAnimatedCustomProperties: 0
importConstraints: 0
animationCompression: 1
animationRotationError: 0.5
animationPositionError: 0.5
animationScaleError: 0.5
animationWrapMode: 0
extraExposedTransformPaths: []
extraUserProperties: []
clipAnimations: []
isReadable: 0
meshes:
lODScreenPercentages: []
globalScale: 1
meshCompression: 0
addColliders: 0
useSRGBMaterialColor: 1
sortHierarchyByName: 1
importVisibility: 0
importBlendShapes: 1
importCameras: 0
importLights: 1
nodeNameCollisionStrategy: 1
fileIdsGeneration: 2
swapUVChannels: 0
generateSecondaryUV: 0
useFileUnits: 1
keepQuads: 0
weldVertices: 1
bakeAxisConversion: 0
preserveHierarchy: 0
skinWeightsMode: 0
maxBonesPerVertex: 4
minBoneWeight: 0.001
optimizeBones: 1
meshOptimizationFlags: -1
indexFormat: 0
secondaryUVAngleDistortion: 8
secondaryUVAreaDistortion: 15.000001
secondaryUVHardAngle: 88
secondaryUVMarginMethod: 1
secondaryUVMinLightmapResolution: 40
secondaryUVMinObjectScale: 1
secondaryUVPackMargin: 4
useFileScale: 1
strictVertexDataChecks: 0
tangentSpace:
normalSmoothAngle: 60
normalImportMode: 0
tangentImportMode: 3
normalCalculationMode: 4
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
blendShapeNormalImportMode: 1
normalSmoothingSource: 0
referencedClips: []
importAnimation: 1
humanDescription:
serializedVersion: 3
human: []
skeleton: []
armTwist: 0.5
foreArmTwist: 0.5
upperLegTwist: 0.5
legTwist: 0.5
armStretch: 0.05
legStretch: 0.05
feetSpacing: 0
globalScale: 1
rootMotionBoneName:
hasTranslationDoF: 0
hasExtraRoot: 0
skeletonHasParents: 1
lastHumanDescriptionAvatarSource: {instanceID: 0}
autoGenerateAvatarMappingIfUnspecified: 1
animationType: 2
humanoidOversampling: 1
avatarSetup: 0
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
importBlendShapeDeformPercent: 1
remapMaterialsIfMaterialImportModeIsNone: 0
additionalBone: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,148 @@
fileFormatVersion: 2
guid: ece692bd0a972854ca30e8e24bb5f635
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 12
mipmaps:
mipMapMode: 0
enableMipMap: 1
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: 0
wrapV: 0
wrapW: 0
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
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: 0
spriteTessellationDetail: -1
textureType: 0
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:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -11,9 +11,10 @@ GameObject:
- component: {fileID: 4543634915546932302} - component: {fileID: 4543634915546932302}
- component: {fileID: 5893868613512797762} - component: {fileID: 5893868613512797762}
- component: {fileID: 2641940034920470259} - component: {fileID: 2641940034920470259}
- component: {fileID: 7343580558529594842}
m_Layer: 0 m_Layer: 0
m_Name: Kyle Head m_Name: Kyle Head
m_TagString: Untagged m_TagString: Player Head
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@@ -83,3 +84,25 @@ MeshRenderer:
m_SortingLayer: 0 m_SortingLayer: 0
m_SortingOrder: 0 m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0} m_AdditionalVertexStreams: {fileID: 0}
--- !u!64 &7343580558529594842
MeshCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5706508759349694606}
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 1
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 5
m_Convex: 1
m_CookingOptions: 30
m_Mesh: {fileID: -3248716571764886803, guid: 0f6a9ca50b7cc814b97069156050165a, type: 3}

View File

@@ -247,7 +247,7 @@ MonoBehaviour:
<SpawnableCollectionId>k__BackingField: 0 <SpawnableCollectionId>k__BackingField: 0
_scenePathHash: 0 _scenePathHash: 0
<SceneId>k__BackingField: 0 <SceneId>k__BackingField: 0
<AssetPathHash>k__BackingField: 9749221921362668639 <AssetPathHash>k__BackingField: 13803629248975202771
_sceneNetworkObjects: [] _sceneNetworkObjects: []
--- !u!114 &483845010817450077 --- !u!114 &483845010817450077
MonoBehaviour: MonoBehaviour:

View File

@@ -0,0 +1,380 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &4291579148315658230
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 6761968278529855575}
- component: {fileID: 4763701867718457502}
- component: {fileID: 7203143526414218131}
- component: {fileID: 2568780590385977406}
- component: {fileID: 1523408157143897080}
m_Layer: 0
m_Name: MicrophoneStand 1
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &6761968278529855575
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4291579148315658230}
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:
- {fileID: 1850758373829337931}
m_Father: {fileID: 0}
m_RootOrder: -1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &4763701867718457502
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4291579148315658230}
m_Mesh: {fileID: -8524547844719368960, guid: 7c81a7464d27596489f008c96d1971c8, type: 3}
--- !u!23 &7203143526414218131
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4291579148315658230}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 19c6f99eccf0c69469fd5c281f18b5c0, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!135 &2568780590385977406
SphereCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4291579148315658230}
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 1
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 3
m_Radius: 0.47
m_Center: {x: 0, y: 0.48, z: 0}
--- !u!114 &1523408157143897080
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4291579148315658230}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 357101b2cface4943b04dfd25d4944e3, type: 3}
m_Name:
m_EditorClassIdentifier:
outputText: {fileID: 0}
microphoneOffStatus: {fileID: 8977839985090371394}
microphoneOnStatus: {fileID: 6537061652288108950}
fmodWhisperBridge: {fileID: 0}
--- !u!1 &5819798980962142350
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1850758373829337931}
- component: {fileID: 2106466490739867277}
- component: {fileID: 4587043586550884435}
- component: {fileID: 8719646384572601803}
m_Layer: 0
m_Name: Canvas
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1850758373829337931
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5819798980962142350}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: -0.0405}
m_LocalScale: {x: 0.001, y: 0.001, z: 0.001}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 4321634455225286656}
- {fileID: 3972028686577586524}
m_Father: {fileID: 6761968278529855575}
m_RootOrder: -1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 0, y: 0.6033}
m_SizeDelta: {x: 100, y: 100}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!223 &2106466490739867277
Canvas:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5819798980962142350}
m_Enabled: 1
serializedVersion: 3
m_RenderMode: 2
m_Camera: {fileID: 0}
m_PlaneDistance: 100
m_PixelPerfect: 0
m_ReceivesEvents: 1
m_OverrideSorting: 0
m_OverridePixelPerfect: 0
m_SortingBucketNormalizedSize: 0
m_AdditionalShaderChannelsFlag: 25
m_UpdateRectTransformForStandalone: 0
m_SortingLayerID: 0
m_SortingOrder: 0
m_TargetDisplay: 0
--- !u!114 &4587043586550884435
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5819798980962142350}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
m_Name:
m_EditorClassIdentifier:
m_UiScaleMode: 0
m_ReferencePixelsPerUnit: 100
m_ScaleFactor: 1
m_ReferenceResolution: {x: 800, y: 600}
m_ScreenMatchMode: 0
m_MatchWidthOrHeight: 0
m_PhysicalUnit: 3
m_FallbackScreenDPI: 96
m_DefaultSpriteDPI: 96
m_DynamicPixelsPerUnit: 1
m_PresetInfoIsWorld: 1
--- !u!114 &8719646384572601803
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5819798980962142350}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3}
m_Name:
m_EditorClassIdentifier:
m_IgnoreReversedGraphics: 1
m_BlockingObjects: 0
m_BlockingMask:
serializedVersion: 2
m_Bits: 4294967295
--- !u!1 &6537061652288108950
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 3972028686577586524}
- component: {fileID: 3263217202320683959}
- component: {fileID: 6147207569465961459}
m_Layer: 0
m_Name: MicrophoneOnStatus
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 0
--- !u!224 &3972028686577586524
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6537061652288108950}
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: 1850758373829337931}
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: 0, y: 0}
m_SizeDelta: {x: 80, y: 80}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &3263217202320683959
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6537061652288108950}
m_CullTransparentMesh: 1
--- !u!114 &6147207569465961459
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6537061652288108950}
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: 3f2516f6ee1cb5c4ba7f85f24c3d4f43, 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!1 &8977839985090371394
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4321634455225286656}
- component: {fileID: 1842889781999843329}
- component: {fileID: 6304871477875013403}
m_Layer: 0
m_Name: MicrophoneOffStatus
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &4321634455225286656
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8977839985090371394}
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: 1850758373829337931}
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: 0, y: 0}
m_SizeDelta: {x: 80, y: 80}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &1842889781999843329
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8977839985090371394}
m_CullTransparentMesh: 1
--- !u!114 &6304871477875013403
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8977839985090371394}
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: 68669679d082ba94bb4a39c08fa91e0d, 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

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 44b369698b4397b45b9424694c46f2f5
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -13,8 +13,7 @@ GameObject:
- component: {fileID: 3363453355800186393} - component: {fileID: 3363453355800186393}
- component: {fileID: 2166102850012183631} - component: {fileID: 2166102850012183631}
- component: {fileID: 8356602476881383464} - component: {fileID: 8356602476881383464}
- component: {fileID: 4280129837482332964} - component: {fileID: 5682436338090300270}
- component: {fileID: 8105025160921831064}
m_Layer: 0 m_Layer: 0
m_Name: ModelGenerationManager m_Name: ModelGenerationManager
m_TagString: Untagged m_TagString: Untagged
@@ -64,6 +63,8 @@ MonoBehaviour:
INVOKEAI_BASE_URL: http://ltat-cgvr9.domenis.ut.ee:9090 INVOKEAI_BASE_URL: http://ltat-cgvr9.domenis.ut.ee:9090
DEFAULT_QUEUE_ID: default DEFAULT_QUEUE_ID: default
MODEL_KEY: 81d45960-08a0-4b8c-a48b-e7d73b21bfe2 MODEL_KEY: 81d45960-08a0-4b8c-a48b-e7d73b21bfe2
promptSuffix: ', single object, front and side fully visible, realistic style,
plain neutral background, clear details, soft studio lighting, true-to-scale'
--- !u!114 &2166102850012183631 --- !u!114 &2166102850012183631
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -110,7 +111,7 @@ MonoBehaviour:
useVad: 1 useVad: 1
tokensTimestamps: 0 tokensTimestamps: 0
audioCtx: 0 audioCtx: 0
--- !u!114 &4280129837482332964 --- !u!114 &5682436338090300270
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@@ -119,65 +120,14 @@ MonoBehaviour:
m_GameObject: {fileID: 154411548685861447} m_GameObject: {fileID: 154411548685861447}
m_Enabled: 1 m_Enabled: 1
m_EditorHideFlags: 0 m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: a2836e36774ca1c4bbbee976e17b649c, type: 3} m_Script: {fileID: 11500000, guid: a264cb5321d9f6741a2625b8c63c34a7, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
_componentIndexCache: 0 whisper: {fileID: 8356602476881383464}
_addedNetworkObject: {fileID: 8105025160921831064} useVadInStream: 0
_networkObjectCache: {fileID: 8105025160921831064} recordDriverId: 0
_synchronizeParent: 0 desiredSampleRate: 48000
_packing: channels: 1
Position: 1 bufferLengthSec: 5
Rotation: 1 playLoopback: 0
Scale: 0 loopbackVolume: 1
_interpolation: 2
_extrapolation: 2
_enableTeleport: 0
_teleportThreshold: 1
_clientAuthoritative: 1
_sendToOwner: 1
_synchronizePosition: 1
_positionSnapping:
X: 0
Y: 0
Z: 0
_synchronizeRotation: 1
_rotationSnapping:
X: 0
Y: 0
Z: 0
_synchronizeScale: 1
_scaleSnapping:
X: 0
Y: 0
Z: 0
--- !u!114 &8105025160921831064
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 154411548685861447}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 26b716c41e9b56b4baafaf13a523ba2e, type: 3}
m_Name:
m_EditorClassIdentifier:
<IsNested>k__BackingField: 0
<ComponentIndex>k__BackingField: 0
<PredictedSpawn>k__BackingField: {fileID: 0}
_networkBehaviours:
- {fileID: 4280129837482332964}
<ParentNetworkObject>k__BackingField: {fileID: 0}
<ChildNetworkObjects>k__BackingField: []
_isNetworked: 1
_isGlobal: 0
_initializeOrder: 0
_defaultDespawnType: 0
NetworkObserver: {fileID: 0}
<PrefabId>k__BackingField: 0
<SpawnableCollectionId>k__BackingField: 0
_scenePathHash: 0
<SceneId>k__BackingField: 0
<AssetPathHash>k__BackingField: 17646158845367820466
_sceneNetworkObjects: []

View File

@@ -0,0 +1,950 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &1169182471819634640
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4240401643028668239}
- component: {fileID: 273463341747264742}
- component: {fileID: 3692162826506377719}
- component: {fileID: 2380080891026113594}
m_Layer: 0
m_Name: Cylinder001
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4240401643028668239
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1169182471819634640}
m_LocalRotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071068}
m_LocalPosition: {x: -0, y: 0.3, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 482679184226219918}
m_RootOrder: -1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &273463341747264742
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1169182471819634640}
m_Mesh: {fileID: -951608786083511892, guid: 8360cb58a6640db4fafae736bb1b0393, type: 3}
--- !u!23 &3692162826506377719
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1169182471819634640}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: e91db078e551c294ebe28046b39b12e9, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!64 &2380080891026113594
MeshCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1169182471819634640}
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 0
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 5
m_Convex: 1
m_CookingOptions: 30
m_Mesh: {fileID: -951608786083511892, guid: 8360cb58a6640db4fafae736bb1b0393, type: 3}
--- !u!1 &2536833106027243940
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2207676128236083891}
- component: {fileID: 2694329122806799587}
- component: {fileID: 6056201921433813319}
m_Layer: 0
m_Name: Cylinder003
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &2207676128236083891
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2536833106027243940}
m_LocalRotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071068}
m_LocalPosition: {x: 0.17, y: 0.26500002, z: -0.17}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 482679184226219918}
m_RootOrder: -1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &2694329122806799587
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2536833106027243940}
m_Mesh: {fileID: 8245426573784773463, guid: 8360cb58a6640db4fafae736bb1b0393, type: 3}
--- !u!23 &6056201921433813319
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2536833106027243940}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 8827041594150943702, guid: 8360cb58a6640db4fafae736bb1b0393, type: 3}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &3878322464778129187
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7076239066448273417}
m_Layer: 0
m_Name: MovingParts
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &7076239066448273417
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3878322464778129187}
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:
- {fileID: 4336361997087478217}
- {fileID: 6576810485851996243}
m_Father: {fileID: 482679184226219918}
m_RootOrder: -1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &4775535348344811059
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5562008773316150738}
- component: {fileID: 877170626360368607}
- component: {fileID: 4944163138911610293}
- component: {fileID: 3699043554713949368}
m_Layer: 0
m_Name: ButtonTop
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &5562008773316150738
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4775535348344811059}
m_LocalRotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071068}
m_LocalPosition: {x: -0.00000009689331, y: 0.14999992, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 482679184226219918}
m_RootOrder: -1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &877170626360368607
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4775535348344811059}
m_Mesh: {fileID: -5555371156602442440, guid: 8360cb58a6640db4fafae736bb1b0393, type: 3}
--- !u!23 &4944163138911610293
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4775535348344811059}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: e91db078e551c294ebe28046b39b12e9, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!64 &3699043554713949368
MeshCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4775535348344811059}
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 0
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 5
m_Convex: 1
m_CookingOptions: 30
m_Mesh: {fileID: -5555371156602442440, guid: 8360cb58a6640db4fafae736bb1b0393, type: 3}
--- !u!1 &5197025108969329577
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1893747331554953798}
- component: {fileID: 2521276515104329971}
- component: {fileID: 341820865862404799}
m_Layer: 0
m_Name: Cylinder005
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1893747331554953798
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5197025108969329577}
m_LocalRotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071068}
m_LocalPosition: {x: -0.17, y: 0.26500002, z: 0.17}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 482679184226219918}
m_RootOrder: -1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &2521276515104329971
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5197025108969329577}
m_Mesh: {fileID: -7816157650164661064, guid: 8360cb58a6640db4fafae736bb1b0393, type: 3}
--- !u!23 &341820865862404799
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5197025108969329577}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 8827041594150943702, guid: 8360cb58a6640db4fafae736bb1b0393, type: 3}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &5819324442668357760
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 482679184226219918}
m_Layer: 0
m_Name: PushableButton
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &482679184226219918
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5819324442668357760}
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:
- {fileID: 7076239066448273417}
- {fileID: 4078966097693282274}
- {fileID: 5562008773316150738}
- {fileID: 4240401643028668239}
- {fileID: 5194222186652980404}
- {fileID: 2207676128236083891}
- {fileID: 6308964038308262145}
- {fileID: 1893747331554953798}
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &6495126190302863702
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5194222186652980404}
- component: {fileID: 8092211601091532622}
- component: {fileID: 158914536223107651}
m_Layer: 0
m_Name: Cylinder002
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &5194222186652980404
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6495126190302863702}
m_LocalRotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071068}
m_LocalPosition: {x: 0.16999999, y: 0.26500002, z: 0.17}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 482679184226219918}
m_RootOrder: -1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &8092211601091532622
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6495126190302863702}
m_Mesh: {fileID: -2128599272216676504, guid: 8360cb58a6640db4fafae736bb1b0393, type: 3}
--- !u!23 &158914536223107651
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6495126190302863702}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 8827041594150943702, guid: 8360cb58a6640db4fafae736bb1b0393, type: 3}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &6673437544611594859
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4336361997087478217}
- component: {fileID: 6254159533804701904}
- component: {fileID: 5949385500310894080}
- component: {fileID: 5138955312328330918}
m_Layer: 0
m_Name: ButtonMid
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4336361997087478217
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6673437544611594859}
m_LocalRotation: {x: -0.7071068, y: -0, z: -0, w: 0.7071068}
m_LocalPosition: {x: 0, y: 0.316, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 7076239066448273417}
m_RootOrder: -1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &6254159533804701904
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6673437544611594859}
m_Mesh: {fileID: 3370307122583468558, guid: 8360cb58a6640db4fafae736bb1b0393, type: 3}
--- !u!23 &5949385500310894080
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6673437544611594859}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 707a698b0ec80454a8c68700bca72941, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!64 &5138955312328330918
MeshCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6673437544611594859}
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 0
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 5
m_Convex: 1
m_CookingOptions: 30
m_Mesh: {fileID: 3370307122583468558, guid: 8360cb58a6640db4fafae736bb1b0393, type: 3}
--- !u!1 &7239982701835230558
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 6308964038308262145}
- component: {fileID: 5075223532662673685}
- component: {fileID: 9209277692448190339}
m_Layer: 0
m_Name: Cylinder004
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &6308964038308262145
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7239982701835230558}
m_LocalRotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071068}
m_LocalPosition: {x: -0.17, y: 0.26500002, z: -0.17}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 482679184226219918}
m_RootOrder: -1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &5075223532662673685
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7239982701835230558}
m_Mesh: {fileID: -5208879343037863941, guid: 8360cb58a6640db4fafae736bb1b0393, type: 3}
--- !u!23 &9209277692448190339
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7239982701835230558}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 8827041594150943702, guid: 8360cb58a6640db4fafae736bb1b0393, type: 3}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &8106115827673679234
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4078966097693282274}
- component: {fileID: 5363703099776344735}
- component: {fileID: 5109974040983004693}
- component: {fileID: 3851278602059192841}
m_Layer: 0
m_Name: ButtonBase
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4078966097693282274
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8106115827673679234}
m_LocalRotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071068}
m_LocalPosition: {x: -0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 482679184226219918}
m_RootOrder: -1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &5363703099776344735
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8106115827673679234}
m_Mesh: {fileID: 6686689856544752723, guid: 8360cb58a6640db4fafae736bb1b0393, type: 3}
--- !u!23 &5109974040983004693
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8106115827673679234}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: e91db078e551c294ebe28046b39b12e9, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!64 &3851278602059192841
MeshCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8106115827673679234}
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 0
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 5
m_Convex: 1
m_CookingOptions: 30
m_Mesh: {fileID: 6686689856544752723, guid: 8360cb58a6640db4fafae736bb1b0393, type: 3}
--- !u!1 &8708035160588895096
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 6576810485851996243}
- component: {fileID: 394584629206694651}
- component: {fileID: 6368194004820412582}
- component: {fileID: 913943368950141711}
- component: {fileID: 2817281613977337957}
m_Layer: 0
m_Name: ButtonPress
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &6576810485851996243
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8708035160588895096}
m_LocalRotation: {x: -0.7071068, y: -0, z: -0, w: 0.7071068}
m_LocalPosition: {x: 0, y: 0.466, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 7076239066448273417}
m_RootOrder: -1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &394584629206694651
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8708035160588895096}
m_Mesh: {fileID: 6565873828156177285, guid: 8360cb58a6640db4fafae736bb1b0393, type: 3}
--- !u!23 &6368194004820412582
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8708035160588895096}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 707a698b0ec80454a8c68700bca72941, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!64 &913943368950141711
MeshCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8708035160588895096}
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 0
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 5
m_Convex: 1
m_CookingOptions: 30
m_Mesh: {fileID: 6565873828156177285, guid: 8360cb58a6640db4fafae736bb1b0393, type: 3}
--- !u!114 &2817281613977337957
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8708035160588895096}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 682848c63dbd4614880393ae570f719c, type: 3}
m_Name:
m_EditorClassIdentifier:
movableParts: {fileID: 7076239066448273417}

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 4453f13d185929b4583c1274b082226c
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: dec58165fd27e25469afad7e872a24e5
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,123 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &8688612914795219519
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4811101795973932176}
- component: {fileID: 8730629787356023745}
- component: {fileID: 8273099278732009402}
- component: {fileID: 5886598760312445559}
- component: {fileID: 1303694035827653214}
m_Layer: 0
m_Name: ShapeScannerRay
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4811101795973932176
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8688612914795219519}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0.259, y: 0.012, z: -0.26886}
m_LocalScale: {x: 0.035, y: 0.5, z: 0.035}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &8730629787356023745
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8688612914795219519}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &8273099278732009402
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8688612914795219519}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!65 &5886598760312445559
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8688612914795219519}
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 1
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 3
m_Size: {x: 1, y: 1, z: 1}
m_Center: {x: 0, y: 0, z: 0}
--- !u!114 &1303694035827653214
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8688612914795219519}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: db942dc95bda5a149b7e9358de43a923, type: 3}
m_Name:
m_EditorClassIdentifier:
_activeMaterial: {fileID: 0}
_passiveMaterial: {fileID: 0}
scannableTag: ShapeScannable

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: dfe698ad960ffbd47a7d0ff8f6b5baa3
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 8a90a45cf0824d14fb5a2b9f59951013 guid: 9e16c783900f92a4c8942f7d34faa968
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}
userData: userData:

Binary file not shown.

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: df6aa17c908f8814a8a7abe743fdd28a
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: af360726de5c7f44bb1ea9ce40becf9c
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,83 @@
using System;
using UnityEngine;
using UnityEngine.UI;
public class ArcheryRangeModelGenerationController : MonoBehaviour
{
public MicrophoneStand microphoneStand;
public PushableButton imageGenerationButton;
public PushableButton modelGenerationButton;
public Texture2D GeneratedTexture { get; private set; }
public Image imageDisplay;
public GameObject GeneratedModel { get; private set; }
public float generatedObjectRotationSpeed = 10f;
public Transform modelDisplay;
public Material modelDisplayActiveMaterial;
public Transform wire;
public Material wireActiveMaterial;
private bool modelGenerationInProgress;
// Start is called before the first frame update
void Start()
{
imageGenerationButton.OnButtonPressed += InvokeImageGeneration;
modelGenerationButton.OnButtonPressed += InvokeModelGeneration;
modelGenerationInProgress = false;
}
// Update is called once per frame
void Update()
{
if (GeneratedModel != null)
{
GeneratedModel.transform.Rotate(Vector3.up, generatedObjectRotationSpeed * Time.deltaTime);
}
}
private async void InvokeImageGeneration()
{
string inputPrompt = microphoneStand.GetTextOutput();
byte[] imageBytes = await InvokeAiClient.Instance.GenerateImage(inputPrompt);
GeneratedTexture = ModelGenerationUtils.CreateTexture(imageBytes);
Sprite sprite = ModelGenerationUtils.CreateSprite(GeneratedTexture);
imageDisplay.sprite = sprite;
imageGenerationButton.Deactivate();
if (!modelGenerationInProgress)
{
modelGenerationButton.Deactivate();
}
}
private async void InvokeModelGeneration()
{
modelGenerationInProgress = true;
string encodedTexture = Convert.ToBase64String(GeneratedTexture.EncodeToJPG());
byte[] encodedModel = await TrellisClient.Instance.GenerateModel(encodedTexture);
GameObject spawnedObject = await ModelGenerationUtils.Instance.SpawnModel(encodedModel);
// Destroy previous generated object
Destroy(GeneratedModel);
spawnedObject.transform.parent = modelDisplay;
spawnedObject.transform.position = modelDisplay.position;
GeneratedModel = spawnedObject;
OnModelReady();
modelGenerationButton.Deactivate();
modelGenerationInProgress = false;
}
private void OnModelReady()
{
foreach (MeshRenderer meshRenderer in wire.GetComponentsInChildren<MeshRenderer>())
{
meshRenderer.material = wireActiveMaterial;
}
modelDisplay.GetComponent<MeshRenderer>().material = modelDisplayActiveMaterial;
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 99e1fdda206b5d04082b6a45593a1e84
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,61 @@
using TMPro;
using UnityEngine;
public class MicrophoneStand : MonoBehaviour
{
public TextMeshProUGUI outputText;
public GameObject microphoneOffStatus;
public GameObject microphoneOnStatus;
public FMODWhisperBridge fmodWhisperBridge;
// Start is called before the first frame update
void Start()
{
fmodWhisperBridge.OnWhisperResultProcessed += OnWhisperResult;
microphoneOffStatus.SetActive(true);
microphoneOnStatus.SetActive(false);
}
// Update is called once per frame
void Update()
{
}
void OnTriggerEnter(Collider other)
{
KbmController controller = other.GetComponent<KbmController>();
Debug.Log("Mic stand collided with object " + other.gameObject.name);
if (controller != null || other.gameObject.tag == "Player Head")
{
microphoneOffStatus.SetActive(false);
microphoneOnStatus.SetActive(true);
fmodWhisperBridge.ActivateRecording();
}
}
private void OnTriggerExit(Collider other)
{
KbmController controller = other.GetComponent<KbmController>();
if (controller != null | other.gameObject.tag == "Player Head")
{
microphoneOffStatus.SetActive(true);
microphoneOnStatus.SetActive(false);
fmodWhisperBridge.DeactivateRecording();
}
}
private void OnWhisperResult(string result)
{
outputText.text = result;
}
public string GetTextOutput()
{
return outputText.text;
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 357101b2cface4943b04dfd25d4944e3
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,39 @@
using System.IO;
using UnityEngine;
public class ConfigManager : MonoBehaviour
{
public GameConfig Config { get; private set; }
public static ConfigManager Instance { get; private set; }
private static string configPath => Path.Combine(Application.persistentDataPath, "config.json");
private void Awake()
{
Instance = this;
LoadConfig();
}
public void LoadConfig()
{
if (File.Exists(configPath))
{
string json = File.ReadAllText(configPath);
Config = JsonUtility.FromJson<GameConfig>(json);
}
else
{
// Create config with default values
Config = new GameConfig();
SaveConfig();
}
Debug.Log("Loaded config from: " + configPath);
}
public void SaveConfig()
{
string json = JsonUtility.ToJson(Config, true);
File.WriteAllText(configPath, json);
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 6a9ed26713a3c4c4f8f6be3bbd4af5c7
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,122 @@
using FMOD;
using FMODUnity;
using System.Runtime.InteropServices;
using UnityEngine;
public class FMODMicLoopback : MonoBehaviour
{
private uint LATENCY_MS = 50;
private uint DRIFT_MS = 1;
private uint samplesRecorded, samplesPlayed = 0;
private int nativeRate, nativeChannels = 0;
private uint recSoundLength = 0;
uint lastPlayPos = 0;
uint lastRecordPos = 0;
private uint driftThreshold = 0;
private uint desiredLatency = 0;
private uint adjustLatency = 0;
private int actualLatency = 0;
uint minRecordDelta = 0xFFFFFFFF;
private FMOD.CREATESOUNDEXINFO exInfo = new FMOD.CREATESOUNDEXINFO();
private FMOD.Sound recSound;
private FMOD.Channel channel;
// Start is called before the first frame update
void Start()
{
/*
Determine latency in samples.
*/
FMODUnity.RuntimeManager.CoreSystem.getRecordDriverInfo(0, out _, 0, out _, out nativeRate, out _, out nativeChannels, out _);
driftThreshold = (uint)(nativeRate * DRIFT_MS) / 1000;
desiredLatency = (uint)(nativeRate * LATENCY_MS) / 1000;
adjustLatency = desiredLatency;
actualLatency = (int)desiredLatency;
/*
Create user sound to record into, then start recording.
*/
exInfo.cbsize = Marshal.SizeOf(typeof(FMOD.CREATESOUNDEXINFO));
exInfo.numchannels = nativeChannels;
exInfo.format = FMOD.SOUND_FORMAT.PCM16;
exInfo.defaultfrequency = nativeRate;
exInfo.length = (uint)(nativeRate * sizeof(short) * nativeChannels);
FMODUnity.RuntimeManager.CoreSystem.createSound("", FMOD.MODE.LOOP_NORMAL | FMOD.MODE.OPENUSER, ref exInfo, out recSound);
FMODUnity.RuntimeManager.CoreSystem.recordStart(0, recSound, true);
recSound.getLength(out recSoundLength, FMOD.TIMEUNIT.PCM);
}
// Update is called once per frame
void Update()
{
/*
Determine how much has been recorded since we last checked
*/
uint recordPos = 0;
FMODUnity.RuntimeManager.CoreSystem.getRecordPosition(0, out recordPos);
uint recordDelta = (recordPos >= lastRecordPos) ? (recordPos - lastRecordPos) : (recordPos + recSoundLength - lastRecordPos);
lastRecordPos = recordPos;
samplesRecorded += recordDelta;
if (recordDelta != 0 && (recordDelta < minRecordDelta))
{
minRecordDelta = recordDelta; // Smallest driver granularity seen so far
adjustLatency = (recordDelta <= desiredLatency) ? desiredLatency : recordDelta; // Adjust our latency if driver granularity is high
}
/*
Delay playback until our desired latency is reached.
*/
if (!channel.hasHandle() && samplesRecorded >= adjustLatency)
{
FMODUnity.RuntimeManager.CoreSystem.getMasterChannelGroup(out FMOD.ChannelGroup mCG);
FMODUnity.RuntimeManager.CoreSystem.playSound(recSound, mCG, false, out channel);
}
/*
Determine how much has been played since we last checked.
*/
if (channel.hasHandle())
{
uint playPos = 0;
channel.getPosition(out playPos, FMOD.TIMEUNIT.PCM);
uint playDelta = (playPos >= lastPlayPos) ? (playPos - lastPlayPos) : (playPos + recSoundLength - lastPlayPos);
lastPlayPos = playPos;
samplesPlayed += playDelta;
// Compensate for any drift.
int latency = (int)(samplesRecorded - samplesPlayed);
actualLatency = (int)((0.97f * actualLatency) + (0.03f * latency));
int playbackRate = nativeRate;
if (actualLatency < (int)(adjustLatency - driftThreshold))
{
// Playback position is catching up to the record position, slow playback down by 2%
playbackRate = nativeRate - (nativeRate / 50);
}
else if (actualLatency > (int)(adjustLatency + driftThreshold))
{
// Playback is falling behind the record position, speed playback up by 2%
playbackRate = nativeRate + (nativeRate / 50);
}
channel.setFrequency((float)playbackRate);
}
}
private void OnDestroy()
{
recSound.release();
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 12623af3ff8b7df4abbaacd753e43555
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,238 @@

using System;
using System.Runtime.InteropServices;
using UnityEngine;
using FMOD;
using FMODUnity;
using Whisper; // WhisperManager, WhisperStream, WhisperResult
using Whisper.Utils; // AudioChunk
/// <summary>
/// Capture microphone with FMOD and feed chunks to WhisperStream (no Unity Microphone).
/// Also (optionally) plays the recorded sound back via FMOD loopback.
/// </summary>
public class FMODWhisperBridge : MonoBehaviour
{
[Header("Whisper")]
[SerializeField] private WhisperManager whisper; // assign in Inspector
[SerializeField] private bool useVadInStream = false; // let WhisperStream do VAD or not
[Header("FMOD capture")]
[Tooltip("Recording device index (0 = default)")]
public int recordDriverId = 0;
[Tooltip("Set 48000 on Quest; falls back to device rate automatically")]
public int desiredSampleRate = 48000;
[Tooltip("Mono recommended for Whisper")]
public int channels = 1;
[Range(1, 10)] public int bufferLengthSec = 5;
[Header("Loopback (monitor your voice)")]
public bool playLoopback = true;
[Range(0f, 2f)] public float loopbackVolume = 1.0f;
public delegate void OnWhisperResultProcessedDelegate(string result);
public event OnWhisperResultProcessedDelegate OnWhisperResultProcessed;
// FMOD
private FMOD.System _core;
private Sound _recSound;
private Channel _playChannel;
private ChannelGroup _masterGroup;
private uint _soundPcmLength; // in samples
private int _nativeRate;
private int _nativeChannels;
// ring-buffer tracking
private uint _lastRecordPos = 0;
// Whisper
private WhisperStream _stream;
private bool _streamStarted;
// temp conversion buffer
private float[] _floatTmp = new float[0];
private bool isRecordingActivated = false;
private void Awake()
{
if (!whisper) whisper = FindObjectOfType<WhisperManager>();
_core = RuntimeManager.CoreSystem; // FMOD core system
}
private async void Start()
{
// Query device info to get native rate/channels.
// (FMOD: getRecordDriverInfo gives you system rate & speaker mode)
string name;
Guid guid;
SPEAKERMODE sm;
int smChannels;
DRIVER_STATE driverState;
// signature: getRecordDriverInfo(id, out name, nameLen, out guid, out systemrate, out speakermode, out speakermodechannels, out driverState)
_core.getRecordDriverInfo(recordDriverId, out name, 256, out guid, out _nativeRate, out sm, out smChannels, out driverState);
_nativeChannels = channels > 0 ? channels : smChannels;
UnityEngine.Debug.Log($"[FMOD→Whisper] Using input device #{recordDriverId}: \"{name}\" rate={_nativeRate} ch={_nativeChannels}");
// Build a user sound buffer that FMOD will fill (OPENUSER | LOOP_NORMAL).
CREATESOUNDEXINFO ex = new CREATESOUNDEXINFO
{
cbsize = Marshal.SizeOf(typeof(CREATESOUNDEXINFO)),
numchannels = _nativeChannels,
defaultfrequency = (_nativeRate > 0) ? _nativeRate : desiredSampleRate,
format = SOUND_FORMAT.PCM16,
length = (uint)(((_nativeRate > 0 ? _nativeRate : desiredSampleRate) * _nativeChannels) * sizeof(short)) // seconds=1 (we loop)
};
_core.createSound("", MODE.OPENUSER | MODE.LOOP_NORMAL | MODE.CREATESAMPLE, ref ex, out _recSound);
_recSound.getLength(out _soundPcmLength, TIMEUNIT.PCM);
// Start FMOD recording into that sound (looping ring buffer).
_core.recordStart(recordDriverId, _recSound, true);
UnityEngine.Debug.Log("[FMOD→Whisper] Recording started.");
// Optional loopback playback using FMOD (plays same sound ring buffer).
_core.getMasterChannelGroup(out _masterGroup);
if (playLoopback)
{
_core.playSound(_recSound, _masterGroup, false, out _playChannel);
_playChannel.setMode(MODE._2D);
_playChannel.setVolume(loopbackVolume);
UnityEngine.Debug.Log("[FMOD→Whisper] Loopback playback started.");
}
// Create Whisper stream WITHOUT MicrophoneRecord, just from (freq, channels).
// We'll push AudioChunk manually.
// NOTE: WhisperStreams sliding window is governed by managers stepSec/keepSec/lengthSec.
_stream = await whisper.CreateStream(ex.defaultfrequency, _nativeChannels);
_stream.OnResultUpdated += (txt) =>
{
//OnWhisperResultProcessed?.Invoke(txt);
//UnityEngine.Debug.Log($"[Whisper] result updated: {txt}");
};
_stream.OnSegmentUpdated += (seg) =>
{
OnWhisperResultProcessed?.Invoke(seg.Result);
//UnityEngine.Debug.Log($"[Whisper] Seg finished: {seg.Result}");
};
// If you want Whisper to respect VAD, enable in manager or set useVad (manager controls stream params).
whisper.useVad = useVadInStream;
_stream.StartStream();
_streamStarted = true;
// prepare temp arrays roughly 100ms of audio
EnsureTmpCapacity((ex.defaultfrequency / 10) * _nativeChannels);
}
private void Update()
{
if (!isRecordingActivated) return;
if (_core.handle != IntPtr.Zero) _core.update();
if (!_streamStarted || !_recSound.hasHandle()) return;
// How many samples recorded since last frame?
uint recPos;
_core.getRecordPosition(recordDriverId, out recPos);
uint deltaSamples = (recPos >= _lastRecordPos)
? (recPos - _lastRecordPos)
: (recPos + _soundPcmLength - _lastRecordPos);
if (deltaSamples == 0) return;
// Well read that region (16-bit) and convert to float[] [-1..1].
// Calculate byte range to lock in sound buffer
uint bytesToRead = deltaSamples * (uint)_nativeChannels * 2; // 16-bit = 2 bytes
uint startBytes = _lastRecordPos * (uint)_nativeChannels * 2;
IntPtr p1, p2;
uint len1, len2;
// Lock can wrap — FMOD splits into p1/p2.
_recSound.@lock(startBytes, bytesToRead, out p1, out p2, out len1, out len2);
try
{
// Convert both parts to float and push to Whisper
if (len1 > 0) CopyPcm16ToFloatAndFeed(p1, len1);
if (len2 > 0) CopyPcm16ToFloatAndFeed(p2, len2);
}
finally
{
_recSound.unlock(p1, p2, len1, len2);
}
_lastRecordPos = recPos;
}
public void ActivateRecording()
{
isRecordingActivated = true;
}
public void DeactivateRecording()
{
isRecordingActivated = false;
}
private void CopyPcm16ToFloatAndFeed(IntPtr src, uint byteLen)
{
int samples = (int)(byteLen / 2); // 2 bytes per sample
EnsureTmpCapacity(samples);
// Marshal the 16-bit PCM into managed space
// We pin a short[] overlay to avoid copying twice
int shorts = samples;
int byteCount = (int)byteLen;
// Use Marshal.Copy into a short[] then convert to float[-1..1]
// (You can also unsafe copy for speed if needed.)
EnsureShortOverlay(shorts, out short[] sBuf);
Marshal.Copy(src, sBuf, 0, shorts);
for (int i = 0; i < shorts; i++)
{
// 32768f avoids clipping at -32768
_floatTmp[i] = Mathf.Clamp(sBuf[i] / 32768f, -1f, 1f);
}
// Build a chunk for WhisperStream; with VAD off, IsVoiceDetected=true is fine.
var chunk = new AudioChunk
{
Data = _floatTmp.AsSpan(0, shorts).ToArray(),
Frequency = (_nativeRate > 0) ? _nativeRate : desiredSampleRate,
Channels = _nativeChannels,
IsVoiceDetected = true
};
_stream.AddToStream(chunk);
}
private short[] _shortOverlay;
private void EnsureShortOverlay(int samples, out short[] buf)
{
if (_shortOverlay == null || _shortOverlay.Length < samples)
_shortOverlay = new short[Mathf.NextPowerOfTwo(samples)];
buf = _shortOverlay;
}
private void EnsureTmpCapacity(int samples)
{
if (_floatTmp == null || _floatTmp.Length < samples)
_floatTmp = new float[Mathf.NextPowerOfTwo(samples)];
}
private void OnDisable()
{
if (_streamStarted)
{
_stream.StopStream();
_streamStarted = false;
}
if (_playChannel.hasHandle()) { _playChannel.stop(); _playChannel.clearHandle(); }
if (_recSound.hasHandle()) { _core.recordStop(recordDriverId); _recSound.release(); _recSound.clearHandle(); }
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: a264cb5321d9f6741a2625b8c63c34a7
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
[System.Serializable]
public class GameConfig
{
public string invokeAIUrl = "http://192.168.0.53:9090";
public string invokeAIModelKey = "81d45960-08a0-4b8c-a48b-e7d73b21bfe2";
public string TrellisUrl = "http://192.168.0.53:7960";
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 5412d5465648e6c40bfe932c9098194b
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -11,7 +11,6 @@ public class ImageGenerationBox : MonoBehaviour
public VoiceTranscriptionBox voiceTranscriptionBox; public VoiceTranscriptionBox voiceTranscriptionBox;
public Image imageDisplay; public Image imageDisplay;
public Texture2D LastTexture { get; private set; } public Texture2D LastTexture { get; private set; }
public string promptSuffix = ", single object, front and side fully visible, realistic style, plain neutral background, clear details, soft studio lighting, true-to-scale";
private MeshRenderer meshRenderer; private MeshRenderer meshRenderer;
private bool isLoading; private bool isLoading;
@@ -37,47 +36,17 @@ void Start()
XROrigin playerOrigin = other.GetComponent<XROrigin>(); XROrigin playerOrigin = other.GetComponent<XROrigin>();
if (controller != null || playerOrigin != null) if (controller != null || playerOrigin != null)
{ {
string inputPrompt = voiceTranscriptionBox.GetTextOutput();
string refinedPrompt = inputPrompt + promptSuffix;
isLoading = true; isLoading = true;
meshRenderer.material = loadingMaterial; meshRenderer.material = loadingMaterial;
byte[] imageBytes = await InvokeAiClient.Instance.GenerateImage(refinedPrompt); string inputPrompt = voiceTranscriptionBox.GetTextOutput();
LastTexture = CreateTexture(imageBytes); byte[] imageBytes = await InvokeAiClient.Instance.GenerateImage(inputPrompt);
Sprite sprite = CreateSprite(LastTexture); LastTexture = ModelGenerationUtils.CreateTexture(imageBytes);
Sprite sprite = ModelGenerationUtils.CreateSprite(LastTexture);
imageDisplay.sprite = sprite; imageDisplay.sprite = sprite;
isLoading = false; isLoading = false;
meshRenderer.material = inactiveMaterial; meshRenderer.material = inactiveMaterial;
} }
} }
private Texture2D CreateTexture(byte[] imageBytes)
{
var tex = new Texture2D(2, 2, TextureFormat.RGBA32, false);
// ImageConversion.LoadImage returns bool (true = success)
if (!ImageConversion.LoadImage(tex, imageBytes, markNonReadable: false))
{
Destroy(tex);
throw new InvalidOperationException("Failed to decode image bytes into Texture2D.");
}
tex.filterMode = FilterMode.Bilinear;
tex.wrapMode = TextureWrapMode.Clamp;
return tex;
}
private Sprite CreateSprite(Texture2D tex)
{
var sprite = Sprite.Create(
tex,
new Rect(0, 0, tex.width, tex.height),
new Vector2(0.5f, 0.5f),
pixelsPerUnit: 100f
);
return sprite;
}
} }

View File

@@ -14,9 +14,8 @@ public class InvokeAiClient : MonoBehaviour
{ {
public static InvokeAiClient Instance { get; private set; } public static InvokeAiClient Instance { get; private set; }
public string INVOKEAI_BASE_URL;
public string DEFAULT_QUEUE_ID = "default"; public string DEFAULT_QUEUE_ID = "default";
public string MODEL_KEY; public string promptSuffix = ", single object, front and side fully visible, realistic style, plain neutral background, clear details, soft studio lighting, true-to-scale";
private HttpClient httpClient; private HttpClient httpClient;
@@ -26,7 +25,7 @@ public class InvokeAiClient : MonoBehaviour
{ {
Timeout = TimeSpan.FromSeconds(120) Timeout = TimeSpan.FromSeconds(120)
}; };
httpClient.BaseAddress = new Uri(INVOKEAI_BASE_URL); httpClient.BaseAddress = new Uri(ConfigManager.Instance.Config.invokeAIUrl);
Instance = this; Instance = this;
} }
@@ -519,12 +518,14 @@ public class InvokeAiClient : MonoBehaviour
public async Task<byte[]> GenerateImage(string prompt) public async Task<byte[]> GenerateImage(string prompt)
{ {
string modelKey = ConfigManager.Instance.Config.invokeAIModelKey;
string refinedPrompt = prompt + promptSuffix;
JObject args = new JObject() JObject args = new JObject()
{ {
["prompt"] = prompt, ["prompt"] = refinedPrompt,
["width"] = 512, ["width"] = 512,
["height"] = 512, ["height"] = 512,
["model_key"] = MODEL_KEY, ["model_key"] = modelKey,
}; };
UnityEngine.Debug.Log("Starting image generation..."); UnityEngine.Debug.Log("Starting image generation...");

View File

@@ -0,0 +1,97 @@
using UnityEngine;
[RequireComponent(typeof(AudioSource))]
public class MicLoopback : MonoBehaviour
{
[Header("Mic settings")]
[Tooltip("Leave empty for default device")]
public string deviceName = "";
[Range(1, 60)] public int bufferLengthSec = 10; // rolling buffer for mic clip
public int requestedSampleRate = 48000; // 48000 is best match for Quest & many headsets
public bool playOnStart = true;
[Header("Runtime")]
public bool isRecording;
public bool isPlaying;
private AudioSource _src;
private AudioClip _micClip;
void Awake()
{
_src = GetComponent<AudioSource>();
_src.loop = true; // continuous playback
_src.playOnAwake = false; // we will start manually
}
void Start()
{
if (playOnStart)
StartLoopback();
}
public void StartLoopback()
{
if (isRecording) return;
// Pick default mic if none specified
string dev = deviceName;
if (string.IsNullOrEmpty(dev) && Microphone.devices.Length > 0)
dev = Microphone.devices[0];
// Optionally query supported sample range
Microphone.GetDeviceCaps(dev, out int minFreq, out int maxFreq);
int sampleRate = requestedSampleRate;
if (minFreq != 0 && maxFreq != 0)
{
// Clamp to supported range
sampleRate = Mathf.Clamp(requestedSampleRate, minFreq, maxFreq);
}
// Start recording into an AudioClip Unity manages
_micClip = Microphone.Start(dev, true, bufferLengthSec, sampleRate);
isRecording = true;
Debug.Log("Recording started. device name:");
Debug.Log(Microphone.GetPosition(deviceName));
// Wait until the mic has written at least one sample
StartCoroutine(PlayWhenReady());
}
System.Collections.IEnumerator PlayWhenReady()
{
// Ensure mic buffer has started writing
Debug.Log("device name: " + deviceName);
while (Microphone.GetPosition(deviceName) <= 0)
{
Debug.Log("Stuck in enumerator");
yield return null;
}
_src.clip = _micClip;
Debug.Log("Playing clip " + _src.clip);
_src.Play();
isPlaying = true;
}
public void StopLoopback()
{
if (!isRecording) return;
_src.Stop();
if (_micClip != null)
{
Microphone.End(null); // stop default device
_micClip = null;
}
isPlaying = false;
isRecording = false;
}
void OnDisable()
{
StopLoopback();
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: f0e7aa48ae4094e45b6f427987c2fc93
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -42,7 +42,7 @@ public class ModelGenerationBox : MonoBehaviour
string encodedTexture = Convert.ToBase64String(inputTexture.EncodeToJPG()); string encodedTexture = Convert.ToBase64String(inputTexture.EncodeToJPG());
byte[] encodedModel = await TrellisClient.Instance.GenerateModel(encodedTexture); byte[] encodedModel = await TrellisClient.Instance.GenerateModel(encodedTexture);
GameObject spawnedObject = await PipelineManager.Instance.SpawnModel(encodedModel); GameObject spawnedObject = await ModelGenerationUtils.Instance.SpawnModel(encodedModel);
spawnedObject.AddComponent<Rigidbody>(); spawnedObject.AddComponent<Rigidbody>();
spawnedObject.transform.parent = modelSpawnPoint; spawnedObject.transform.parent = modelSpawnPoint;
spawnedObject.transform.position = modelSpawnPoint.position; spawnedObject.transform.position = modelSpawnPoint.position;

View File

@@ -1,12 +1,13 @@
using GLTFast; using GLTFast;
using System;
using System.Diagnostics; using System.Diagnostics;
using System.IO; using System.IO;
using System.Threading.Tasks; using System.Threading.Tasks;
using UnityEngine; using UnityEngine;
public class PipelineManager : MonoBehaviour public class ModelGenerationUtils : MonoBehaviour
{ {
public static PipelineManager Instance { get; private set; } public static ModelGenerationUtils Instance { get; private set; }
private void Awake() private void Awake()
{ {
@@ -27,7 +28,7 @@ public class PipelineManager : MonoBehaviour
/** /**
* Generate model by starting a new Python subprocess * Generate model by starting a new Python subprocess
* NOT USED ANYMORE * NOT USED IN LATEST VERSION
**/ **/
public async Task<string> GenerateModelAsync(string inputPrompt) public async Task<string> GenerateModelAsync(string inputPrompt)
{ {
@@ -82,7 +83,7 @@ public class PipelineManager : MonoBehaviour
/** /**
* Spawn model stored on disk * Spawn model stored on disk
* NOT USED ANYMORE * NOT USED IN LATEST VERSION
* *
**/ **/
public async Task<GameObject> SpawnModel(string modelPath) public async Task<GameObject> SpawnModel(string modelPath)
@@ -130,4 +131,33 @@ public class PipelineManager : MonoBehaviour
throw new System.Exception("Failed to spawn GameObject " + objectName); throw new System.Exception("Failed to spawn GameObject " + objectName);
} }
public static Texture2D CreateTexture(byte[] imageBytes)
{
var tex = new Texture2D(2, 2, TextureFormat.RGBA32, false);
// ImageConversion.LoadImage returns bool (true = success)
if (!ImageConversion.LoadImage(tex, imageBytes, markNonReadable: false))
{
Destroy(tex);
throw new InvalidOperationException("Failed to decode image bytes into Texture2D.");
}
tex.filterMode = FilterMode.Bilinear;
tex.wrapMode = TextureWrapMode.Clamp;
return tex;
}
public static Sprite CreateSprite(Texture2D tex)
{
var sprite = Sprite.Create(
tex,
new Rect(0, 0, tex.width, tex.height),
new Vector2(0.5f, 0.5f),
pixelsPerUnit: 100f
);
return sprite;
}
} }

View File

@@ -0,0 +1,83 @@
using DG.Tweening;
using UnityEngine;
public class PushableButton : MonoBehaviour
{
public delegate void OnButtonPressedDelegate();
public event OnButtonPressedDelegate OnButtonPressed;
public bool startDown;
public Transform movableParts;
public float moveDuration = 0.25f;
public Transform wire;
public Material wireActiveMaterial;
public Material wireInactiveMaterial;
private float upPositionY;
private float downPositionY;
private bool isButtonDown;
private void Awake()
{
upPositionY = movableParts.localPosition.y;
downPositionY = movableParts.localPosition.y - 0.1f;
isButtonDown = false;
}
// Start is called before the first frame update
void Start()
{
if (startDown)
{
// Dont call Activate, we dont want to change wire material here
movableParts.DOLocalMoveY(downPositionY, moveDuration);
isButtonDown = true;
}
}
// Update is called once per frame
void Update()
{
}
private void OnCollisionEnter(Collision collision)
{
if (!isButtonDown && collision.gameObject.tag.EndsWith("Hand"))
{
Activate();
OnButtonPressed?.Invoke();
}
}
private void Activate()
{
movableParts.DOLocalMoveY(downPositionY, moveDuration);
isButtonDown = true;
if (wire != null)
{
foreach (MeshRenderer meshRenderer in wire.GetComponentsInChildren<MeshRenderer>())
{
meshRenderer.material = wireActiveMaterial;
}
}
}
public void Deactivate()
{
movableParts.DOLocalMoveY(upPositionY, moveDuration);
isButtonDown = false;
if (wire != null)
{
foreach (MeshRenderer meshRenderer in wire.GetComponentsInChildren<MeshRenderer>())
{
meshRenderer.material = wireInactiveMaterial;
}
}
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 682848c63dbd4614880393ae570f719c
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 32cc0ecba4f62654583aca9fbc246706
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,87 @@
using FishNet.Component.Transforming;
using FishNet.Object;
using System;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.XR.Interaction.Toolkit;
public class ShapeDetectionMinigameController : MonoBehaviour
{
public MicrophoneStand microphoneStand;
public PushableButton imageGenerationButton;
public PushableButton modelGenerationButton;
public Texture2D GeneratedTexture { get; private set; }
public Image imageDisplay;
public GameObject GeneratedModel { get; private set; }
public Transform modelSpawnPoint;
public string shapeScannerTag = "ShapeScannable";
private bool modelGenerationInProgress;
// Start is called before the first frame update
void Start()
{
imageGenerationButton.OnButtonPressed += InvokeImageGeneration;
modelGenerationButton.OnButtonPressed += InvokeModelGeneration;
modelGenerationInProgress = false;
}
// Update is called once per frame
void Update()
{
}
private async void InvokeImageGeneration()
{
string inputPrompt = microphoneStand.GetTextOutput();
byte[] imageBytes = await InvokeAiClient.Instance.GenerateImage(inputPrompt);
GeneratedTexture = ModelGenerationUtils.CreateTexture(imageBytes);
Sprite sprite = ModelGenerationUtils.CreateSprite(GeneratedTexture);
imageDisplay.sprite = sprite;
imageGenerationButton.Deactivate();
if (!modelGenerationInProgress)
{
modelGenerationButton.Deactivate();
}
}
private async void InvokeModelGeneration()
{
modelGenerationInProgress = true;
string encodedTexture = Convert.ToBase64String(GeneratedTexture.EncodeToJPG());
byte[] encodedModel = await TrellisClient.Instance.GenerateModel(encodedTexture);
GameObject spawnedObject = await ModelGenerationUtils.Instance.SpawnModel(encodedModel);
InitializeSpawnedObject(spawnedObject);
// Destroy previous generated object
Destroy(GeneratedModel);
GeneratedModel = spawnedObject;
modelGenerationButton.Deactivate();
modelGenerationInProgress = false;
}
private void InitializeSpawnedObject(GameObject spawnedObject)
{
GameObject spawnedObjectParent = new GameObject("SpawnedModelParent");
spawnedObjectParent.transform.parent = modelSpawnPoint;
spawnedObjectParent.transform.position = modelSpawnPoint.transform.position;
Rigidbody rigidbody = spawnedObjectParent.AddComponent<Rigidbody>();
rigidbody.isKinematic = true;
//spawnedObject.AddComponent<NetworkObject>();
//spawnedObject.AddComponent<NetworkTransform>();
MeshCollider spawnedObjectCollider = spawnedObject.GetComponent<MeshCollider>();
spawnedObjectCollider.convex = false;
spawnedObject.transform.parent = spawnedObjectParent.transform;
spawnedObject.transform.position = spawnedObjectParent.transform.position;
spawnedObject.tag = shapeScannerTag;
spawnedObjectParent.AddComponent<TwoHandScaleGrabInteractable>();
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 7000d3fd17422c74e9f86757bc8529f0
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,141 @@
using System;
using System.Collections.Generic;
using System.Linq;
using TMPro;
using UnityEngine;
[Serializable]
public class BoolRow
{
public List<bool> cells = new List<bool>();
}
[Serializable]
public class ShapeScannerConfiguration
{
public int columns = 6;
public float requiredCorrectPercentage = 80.0f;
public List<BoolRow> rows = new List<BoolRow>();
}
public class ShapeScanner : MonoBehaviour
{
public List<ShapeScannerConfiguration> configurations = new List<ShapeScannerConfiguration>();
public ShapeScannerRay rayPrefab;
public Transform raySpawnCorner1;
public Transform raySpawnCorner2;
public Transform rayParent;
public TextMeshProUGUI currentConfigurationDisplay;
public TextMeshProUGUI correctPercentageDisplay;
public Material requiredAndActive;
public Material requiredAndPassive;
public Material notRequiredAndActive;
public Material notRequiredAndPassive;
private List<GameObject> existingRays;
private float raySpawnDistanceX;
private float raySpawnDistanceZ;
private int currentConfiguration;
private int rayCount;
private int correctRayStates;
// Start is called before the first frame update
void Start()
{
existingRays = new List<GameObject>();
raySpawnDistanceX = raySpawnCorner2.localPosition.x - raySpawnCorner1.localPosition.x;
raySpawnDistanceZ = raySpawnCorner2.localPosition.z - raySpawnCorner1.localPosition.z;
currentConfiguration = 0;
InitializeConfiguration();
}
// Update is called once per frame
void Update()
{
}
private void InitializeConfiguration()
{
// Delete all existing rays first
foreach (GameObject ray in existingRays)
{
Destroy(ray);
}
ShapeScannerConfiguration configuration = configurations[currentConfiguration];
int rayRowCount = configuration.rows.Count;
for (int i = 0; i < rayRowCount; i++)
{
float rayPosX = raySpawnCorner1.localPosition.x + i * raySpawnDistanceX / (rayRowCount - 1);
for (int j = 0; j < rayRowCount; j++)
{
// Local position
float rayPosZ = raySpawnCorner1.localPosition.z + j * raySpawnDistanceZ / (rayRowCount - 1);
Vector3 rayPos = new Vector3(rayPosX, 0, rayPosZ);
ShapeScannerRay ray = Instantiate(rayPrefab, rayParent);
ray.transform.localPosition = rayPos;
existingRays.Add(ray.gameObject);
bool rayCollisionRequired = configuration.rows[i].cells[j];
if (rayCollisionRequired)
{
ray.Initialize(this, rayCollisionRequired, requiredAndActive, requiredAndPassive);
}
else
{
ray.Initialize(this, rayCollisionRequired, notRequiredAndActive, notRequiredAndPassive);
}
}
}
// Count total rays and required collision rays
rayCount = configuration.rows.SelectMany(row => row.cells).Count();
correctRayStates = configuration.rows.SelectMany(row => row.cells).Count(cell => !cell);
UpdateDisplay(calculateCorrectPercentage());
}
private float calculateCorrectPercentage()
{
return Mathf.RoundToInt((float)correctRayStates / rayCount * 100);
}
public void IncrementCorrectRayCount()
{
correctRayStates++;
float correctPercentage = calculateCorrectPercentage();
if (correctPercentage >= configurations[currentConfiguration].requiredCorrectPercentage)
{
UpdateCurrentConfigurationDisplay(currentConfiguration + 1);
if (currentConfiguration + 1 < configurations.Count)
{
currentConfiguration++;
InitializeConfiguration();
} else
{
Debug.Log("Shape checker completed");
}
}
UpdateDisplay(correctPercentage);
}
public void DecrementCorrectRayCount()
{
correctRayStates--;
UpdateDisplay(calculateCorrectPercentage());
}
private void UpdateDisplay(float percentage)
{
correctPercentageDisplay.text = Mathf.Round(percentage).ToString() + " %";
}
private void UpdateCurrentConfigurationDisplay(int confNumber)
{
currentConfigurationDisplay.text = confNumber.ToString() + " / " + configurations.Count;
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: b2226de466bbe814d8bfe0cb0fce83f6
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,65 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ShapeScannerRay : MonoBehaviour
{
public Material _activeMaterial;
public Material _passiveMaterial;
public string scannableTag = "ShapeScannable";
private ShapeScanner _scanner;
private MeshRenderer meshRenderer;
private bool _collisionRequired;
void Awake()
{
meshRenderer = GetComponent<MeshRenderer>();
}
// Update is called once per frame
void Update()
{
}
public void Initialize(ShapeScanner scanner, bool collisionRequired, Material activeMaterial, Material passiveMaterial)
{
_scanner = scanner;
_collisionRequired = collisionRequired;
_activeMaterial = activeMaterial;
_passiveMaterial = passiveMaterial;
meshRenderer.material = _passiveMaterial;
}
private void OnTriggerEnter(Collider other)
{
if (other.gameObject.tag == scannableTag)
{
meshRenderer.material = _activeMaterial;
if (_collisionRequired)
{
_scanner.IncrementCorrectRayCount();
} else
{
_scanner.DecrementCorrectRayCount();
}
}
}
private void OnTriggerExit(Collider other)
{
if (other.gameObject.tag == "ShapeScannable")
{
meshRenderer.material = _passiveMaterial;
if (_collisionRequired)
{
_scanner.DecrementCorrectRayCount();
} else
{
_scanner.IncrementCorrectRayCount();
}
}
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: db942dc95bda5a149b7e9358de43a923
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,88 @@
using UnityEditor;
using UnityEngine;
using UnityEngine.XR.Interaction.Toolkit;
public class TwoHandScaleGrabInteractable : XRGrabInteractable
{
[Header("Two-Hand Scaling")]
public float minScale = 0.1f;
public float maxScale = 5f;
public float scaleLerpSpeed = 0f;
private Transform scalingTransform;
private float initialHandsDistance;
private Vector3 initialScale;
private bool twoHandsGrabbing;
void Start()
{
selectMode = InteractableSelectMode.Multiple;
useDynamicAttach = true;
reinitializeDynamicAttachEverySingleGrab = false;
scalingTransform = transform.GetChild(0);
}
protected override void OnSelectEntered(SelectEnterEventArgs args)
{
base.OnSelectEntered(args);
UpdateTwoHandState();
}
protected override void OnSelectExited(SelectExitEventArgs args)
{
Debug.Log("current local scale: " + transform.localScale);
base.OnSelectExited(args);
UpdateTwoHandState();
}
void UpdateTwoHandState()
{
if (interactorsSelecting.Count >= 2)
{
var a = interactorsSelecting[0];
var b = interactorsSelecting[1];
var pA = a.GetAttachTransform(this).position;
var pB = b.GetAttachTransform(this).position;
initialHandsDistance = Vector3.Distance(pA, pB);
initialScale = scalingTransform.localScale;
twoHandsGrabbing = initialHandsDistance > 0.0001f;
}
else
{
twoHandsGrabbing = false;
}
}
public override void ProcessInteractable(XRInteractionUpdateOrder.UpdatePhase updatePhase)
{
base.ProcessInteractable(updatePhase);
if (!twoHandsGrabbing || interactorsSelecting.Count < 2 || initialHandsDistance <= 0.0001f)
return;
var a = interactorsSelecting[0];
var b = interactorsSelecting[1];
var pA = a.GetAttachTransform(this).position;
var pB = b.GetAttachTransform(this).position;
float current = Vector3.Distance(pA, pB);
if (current <= 0.0001f)
return;
float ratio = current / initialHandsDistance;
Debug.Log("distance ratio: " + ratio);
Vector3 desired = initialScale * ratio;
float uniform = Mathf.Clamp(desired.x, minScale, maxScale);
desired = new Vector3(uniform, uniform, uniform);
if (scaleLerpSpeed > 0f)
desired = Vector3.Lerp(transform.localScale, desired, Time.deltaTime * scaleLerpSpeed);
scalingTransform.localScale = desired;
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 22c2ea15df0386746b1b1bc7b58bced7
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -2,7 +2,6 @@ using Newtonsoft.Json.Linq;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Net.Http; using System.Net.Http;
using System.Threading;
using System.Threading.Tasks; using System.Threading.Tasks;
using UnityEngine; using UnityEngine;
@@ -10,16 +9,16 @@ public class TrellisClient : MonoBehaviour
{ {
public static TrellisClient Instance { get; private set; } public static TrellisClient Instance { get; private set; }
public string TRELLIS_BASE_URL;
private HttpClient httpClient; private HttpClient httpClient;
private void Awake() private void Awake()
{ {
httpClient = new HttpClient(); httpClient = new HttpClient();
httpClient.BaseAddress = new Uri(TRELLIS_BASE_URL); httpClient.BaseAddress = new Uri(ConfigManager.Instance.Config.TrellisUrl);
Instance = this; Instance = this;
TestConnection();
} }
// Start is called before the first frame update // Start is called before the first frame update
@@ -34,12 +33,19 @@ public class TrellisClient : MonoBehaviour
} }
private async void TestConnection()
{
var statusResp = await httpClient.GetAsync("status");
Debug.Log("Trellis status: " + statusResp.StatusCode);
}
public async Task<byte[]> GenerateModel( public async Task<byte[]> GenerateModel(
string imageBase64, string imageBase64,
int seed = 42,
int pollIntervalMs = 1000) int pollIntervalMs = 1000)
{ {
int seed = UnityEngine.Random.Range(0, 999999);
// --- Set generation parameters (form-encoded, like Python requests.post(data=params)) --- // --- Set generation parameters (form-encoded, like Python requests.post(data=params)) ---
var form = new Dictionary<string, string> var form = new Dictionary<string, string>
{ {

View File

@@ -35,7 +35,6 @@ public class NPCController : MonoBehaviour
private void OnTriggerEnter(Collider other) private void OnTriggerEnter(Collider other)
{ {
Debug.Log("Collided with " + other);
KbmController controller = other.GetComponent<KbmController>(); KbmController controller = other.GetComponent<KbmController>();
XROrigin playerOrigin = other.GetComponent<XROrigin>(); XROrigin playerOrigin = other.GetComponent<XROrigin>();
if (controller != null) if (controller != null)

View File

@@ -0,0 +1,14 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!200 &20000000
ShaderVariantCollection:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: glTFPbrMetallicRoughness
m_Shaders:
- first: {fileID: -6465566751694194690, guid: b9d29dfa1474148e792ac720cbd45122,
type: 3}
second:
variants: []

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: b852f2aeb9fb71a4aaab9e2d500dc3dc
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 20000000
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

Binary file not shown.

View File

@@ -169,7 +169,7 @@
{ {
"type": "System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089", "type": "System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089",
"key": "ShapeBuilder.ActiveShapeIndex", "key": "ShapeBuilder.ActiveShapeIndex",
"value": "{\"m_Value\":2}" "value": "{\"m_Value\":11}"
}, },
{ {
"type": "System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089", "type": "System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089",
@@ -189,7 +189,7 @@
{ {
"type": "UnityEngine.Vector3, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", "type": "UnityEngine.Vector3, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null",
"key": "ShapeBuilder.LastSize", "key": "ShapeBuilder.LastSize",
"value": "{\"m_Value\":{\"x\":49.08480453491211,\"y\":0.10000000149011612,\"z\":-30.85292625427246}}" "value": "{\"m_Value\":{\"x\":1.3506088256835938,\"y\":0.41489124298095705,\"z\":1.3857231140136719}}"
}, },
{ {
"type": "UnityEngine.Vector3, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", "type": "UnityEngine.Vector3, UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null",
@@ -246,6 +246,21 @@
"key": "ShapeBuilder.Plane", "key": "ShapeBuilder.Plane",
"value": "{}" "value": "{}"
}, },
{
"type": "UnityEngine.ProBuilder.Shapes.Shape, Unity.ProBuilder, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null",
"key": "ShapeBuilder.Prism",
"value": "{}"
},
{
"type": "UnityEngine.ProBuilder.Shapes.Shape, Unity.ProBuilder, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null",
"key": "ShapeBuilder.Torus",
"value": "{}"
},
{
"type": "UnityEngine.ProBuilder.Shapes.Shape, Unity.ProBuilder, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null",
"key": "ShapeBuilder.Pipe",
"value": "{}"
},
{ {
"type": "System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089", "type": "System.Single, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089",
"key": "uv.uvEditorGridSnapIncrement", "key": "uv.uvEditorGridSnapIncrement",

Binary file not shown.

Binary file not shown.