VstyleR, rackamackafån

This commit is contained in:
2016-05-27 06:16:43 +02:00
parent 3efd2a4018
commit 3ed5cd974a
41 changed files with 174 additions and 39 deletions
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
View File
Binary file not shown.
Binary file not shown.
Binary file not shown.
+1
View File
@@ -2,6 +2,7 @@
using System.Collections; using System.Collections;
public class FurnitureMiniature : MonoBehaviour { public class FurnitureMiniature : MonoBehaviour {
public void Grab() { public void Grab() {
transform.parent = null; transform.parent = null;
foreach (var collider in GetComponentsInChildren<Collider>()) { foreach (var collider in GetComponentsInChildren<Collider>()) {
+12 -15
View File
@@ -3,16 +3,13 @@ using System.Collections;
public class LeftController : MonoBehaviour { public class LeftController : MonoBehaviour {
public bool AlwaysCenter = false; public GameObject MainCamera;
public GameObject WarehouseCamera;
Transform controllerRig; Transform controllerRig;
SteamVR_ControllerEvents controllerEvents; SteamVR_ControllerEvents controllerEvents;
GameObject mainCamera;
GameObject warehouseCamera;
CameraFade cameraFade; CameraFade cameraFade;
SteamVR_Camera mainSteamVRCamera;
bool inWarehouse = false; bool inWarehouse = false;
@@ -21,14 +18,11 @@ public class LeftController : MonoBehaviour {
controllerEvents = GetComponent<SteamVR_ControllerEvents>(); controllerEvents = GetComponent<SteamVR_ControllerEvents>();
controllerEvents.TriggerAxisChanged += triggerAxisChanged; controllerEvents.TriggerAxisChanged += triggerAxisChanged;
cameraFade = MainCamera.GetComponentInChildren<CameraFade>();
} }
void Start () { void Start () {
mainCamera = GameObject.Find("Main Camera (origin)");
warehouseCamera = GameObject.Find("Warehouse Camera (origin)");
cameraFade = mainCamera.GetComponentInChildren<CameraFade>();
mainSteamVRCamera = mainCamera.GetComponentInChildren<SteamVR_Camera>();
} }
void triggerAxisChanged(object sender, ControllerClickedEventArgs e) { void triggerAxisChanged(object sender, ControllerClickedEventArgs e) {
@@ -36,18 +30,21 @@ public class LeftController : MonoBehaviour {
if (alpha > 0.05) { if (alpha > 0.05) {
cameraFade.SetFade(alpha); cameraFade.SetFade(alpha);
if (!inWarehouse) { if (!inWarehouse) {
controllerRig.SetParent(warehouseCamera.transform, false); WarehouseCamera.SetActive(true);
if (AlwaysCenter) { controllerRig.SetParent(WarehouseCamera.transform, false);
warehouseCamera.transform.localPosition = new Vector3(-mainSteamVRCamera.head.localPosition.x, warehouseCamera.transform.localPosition.y, -mainSteamVRCamera.head.localPosition.z);
}
inWarehouse = true; inWarehouse = true;
} }
} else { } else {
cameraFade.SetFade(0.0f); cameraFade.SetFade(0.0f);
if (inWarehouse) { if (inWarehouse) {
controllerRig.SetParent(mainCamera.transform, false); controllerRig.SetParent(MainCamera.transform, false);
WarehouseCamera.SetActive(false);
inWarehouse = false; inWarehouse = false;
} }
} }
foreach (var measurement in GameObject.FindObjectsOfType<Measurement>()) {
measurement.InWarehouse = inWarehouse;
}
} }
} }
Binary file not shown.
+15 -4
View File
@@ -15,6 +15,8 @@ public class Measurement : MonoBehaviour {
private float LineWidth; private float LineWidth;
public bool InWarehouse = false;
// Use this for initialization // Use this for initialization
void Start () { void Start () {
@@ -36,6 +38,10 @@ public class Measurement : MonoBehaviour {
float smallestScale = Mathf.Min(transform.lossyScale.x, Mathf.Min(transform.lossyScale.y, transform.lossyScale.z)); float smallestScale = Mathf.Min(transform.lossyScale.x, Mathf.Min(transform.lossyScale.y, transform.lossyScale.z));
if(InWarehouse) {
smallestScale = smallestScale / 10.0f;
}
if (smallestScale < 0.4f) if (smallestScale < 0.4f)
{ {
HoleSize = 0.0f; HoleSize = 0.0f;
@@ -74,7 +80,7 @@ public class Measurement : MonoBehaviour {
textMesh.text = textMagnitude.ToString("0.00") + "m"; textMesh.text = textMagnitude.ToString("0.00") + "m";
textMesh.characterSize = Mathf.Max(0.001f * Math.Min(1.0f , textMagnitude), 0.002f); textMesh.characterSize = Mathf.Max(0.0005f * Math.Min(1.0f , textMagnitude), 0.0005f);
HoleSize = Mathf.Max(0.1f * Math.Min(1.0f, magnitude), 0.05f); HoleSize = Mathf.Max(0.1f * Math.Min(1.0f, magnitude), 0.05f);
@@ -90,8 +96,13 @@ public class Measurement : MonoBehaviour {
line2BaseRenderer.SetPosition(0, LocalEndPosition + lineUp * 0.01f); line2BaseRenderer.SetPosition(0, LocalEndPosition + lineUp * 0.01f);
line2BaseRenderer.SetPosition(1, LocalEndPosition - lineUp * 0.01f); line2BaseRenderer.SetPosition(1, LocalEndPosition - lineUp * 0.01f);
if(InWarehouse) {
LineWidth = 0.007f;
}
else {
LineWidth = Mathf.Min(DefaultLineWith * smallestScale, 0.003f);
}
LineWidth = Mathf.Min(DefaultLineWith*smallestScale, 0.003f);
line1Renderer.SetWidth(LineWidth, LineWidth); line1Renderer.SetWidth(LineWidth, LineWidth);
line2Renderer.SetWidth(LineWidth, LineWidth); line2Renderer.SetWidth(LineWidth, LineWidth);
@@ -105,7 +116,7 @@ public class Measurement : MonoBehaviour {
LineRenderer lineMiddleRenderer = line1BaseTransform.GetComponent<LineRenderer>(); LineRenderer lineMiddleRenderer = line1BaseTransform.GetComponent<LineRenderer>();
lineMiddleRenderer.SetWidth(LineWidth, LineWidth); lineMiddleRenderer.SetWidth(LineWidth, LineWidth);
Vector3 upDistance = new Vector3(0, 2.0f, 0); Vector3 upDistance = new Vector3(0, 20.0f, 0);
upDistance = upDistance*smallestScale; upDistance = upDistance*smallestScale;
textTransform.position = middlePosition + upDistance*1.1f; textTransform.position = middlePosition + upDistance*1.1f;
@@ -115,7 +126,7 @@ public class Measurement : MonoBehaviour {
lineMiddleRenderer.SetPosition(1, middlePosition + upDistance); lineMiddleRenderer.SetPosition(1, middlePosition + upDistance);
} else { } else {
Transform lineMiddleTransform = transform.FindChild("LineMiddle"); Transform lineMiddleTransform = transform.FindChild("LineMiddle");
LineRenderer lineMiddleRenderer = line1BaseTransform.GetComponent<LineRenderer>(); LineRenderer lineMiddleRenderer = lineMiddleTransform.GetComponent<LineRenderer>();
lineMiddleRenderer.SetWidth(0, 0); lineMiddleRenderer.SetWidth(0, 0);
} }
} }
Regular → Executable
+2 -2
View File
@@ -1,6 +1,6 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 90a52fc266c12ff41ab5b486a49bcb9c guid: cf1a2d53d09212446b0d9316c31c7fcb
timeCreated: 1464211843 timeCreated: 1464306843
licenseType: Free licenseType: Free
NativeFormatImporter: NativeFormatImporter:
userData: userData:
+46
View File
@@ -0,0 +1,46 @@
using UnityEngine;
using System.Collections;
using System;
using System.Collections.Generic;
public class Outline : MonoBehaviour {
public Material OutlineMaterial;
void Start() {
OnEnable();
}
void OnEnable() {
foreach (var rend in GetComponentsInChildren<MeshRenderer>()) {
bool end = false;
foreach (var mat in rend.sharedMaterials) {
if (mat == OutlineMaterial) {
end = true;
break;
}
}
if (end) {
continue;
}
var newMats = rend.materials;
Array.Resize(ref newMats, newMats.Length + 1);
newMats[newMats.Length - 1] = OutlineMaterial;
rend.materials = newMats;
}
}
void OnDisable() {
foreach (var rend in GetComponentsInChildren<MeshRenderer>()) {
var newMats = new List<Material>();
foreach (var mat in rend.sharedMaterials) {
if (mat != OutlineMaterial) {
newMats.Add(mat);
}
}
rend.materials = newMats.ToArray();
}
}
}
+12
View File
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: b18ebb98b5928ab489635cfad09a0f2f
timeCreated: 1464301950
licenseType: Free
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+9
View File
@@ -0,0 +1,9 @@
fileFormatVersion: 2
guid: e580c3590072d6743a2d665776ccc971
folderAsset: yes
timeCreated: 1464302284
licenseType: Free
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 90a52fc266c12ff41ab5b486a49bcb9c
timeCreated: 1464211843
licenseType: Free
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 2060575667567594abaf4f8fa1044488
timeCreated: 1464301808
licenseType: Free
NativeFormatImporter:
userData:
assetBundleName:
assetBundleVariant:
+53 -10
View File
@@ -5,6 +5,9 @@ using System.Collections.Generic;
public class RightController : MonoBehaviour { public class RightController : MonoBehaviour {
public Transform MiniatureAttachmentPoint; public Transform MiniatureAttachmentPoint;
public Material OutlineMaterial;
public GameObject MainCamera;
public GameObject WarehouseCamera;
SteamVR_LaserPointer laserPointer; SteamVR_LaserPointer laserPointer;
SteamVR_ControllerEvents controllerEvents; SteamVR_ControllerEvents controllerEvents;
@@ -22,6 +25,8 @@ public class RightController : MonoBehaviour {
float whRowBaseOffset = 0.0f; float whRowBaseOffset = 0.0f;
float whRowScrollOffset = 0.0f; float whRowScrollOffset = 0.0f;
Measurement currentMeasurement = null;
void Awake() { void Awake() {
laserPointer = GetComponent<SteamVR_LaserPointer>(); laserPointer = GetComponent<SteamVR_LaserPointer>();
@@ -30,6 +35,10 @@ public class RightController : MonoBehaviour {
controllerEvents.TriggerUnclicked += triggerUnclicked; controllerEvents.TriggerUnclicked += triggerUnclicked;
controllerEvents.TouchpadClicked += touchpadClicked; controllerEvents.TouchpadClicked += touchpadClicked;
controllerEvents.TouchpadUnclicked += touchpadUnclicked; controllerEvents.TouchpadUnclicked += touchpadUnclicked;
controllerEvents.ApplicationMenuClicked += applicationMenuClicked;
controllerEvents.ApplicationMenuUnclicked += applicationMenuUnclicked;
boxCollider = GetComponent<BoxCollider>();
warehouse = GameObject.Find("Warehouse/Shelves/Column").GetComponent<WarehouseColumn>(); warehouse = GameObject.Find("Warehouse/Shelves/Column").GetComponent<WarehouseColumn>();
} }
@@ -49,6 +58,11 @@ public class RightController : MonoBehaviour {
warehouse.Offset = whBaseOffset + (-whScrollOffset); warehouse.Offset = whBaseOffset + (-whScrollOffset);
whRow.Offset = whRowBaseOffset + whRowScrollOffset; whRow.Offset = whRowBaseOffset + whRowScrollOffset;
} }
// Measurement
if (currentMeasurement != null) {
currentMeasurement.EndPosition = transform.localPosition;
}
} }
void OnTriggerEnter(Collider other) { void OnTriggerEnter(Collider other) {
@@ -57,11 +71,17 @@ public class RightController : MonoBehaviour {
return; return;
} }
touchingItems.Add(other.gameObject); touchingItems.Add(mini.gameObject);
//mini.gameObject.AddComponent<Outline>().OutlineMaterial = Resources.Load<Material>("OutLineMaterialMini");
} }
void OnTriggerExit(Collider other) { void OnTriggerExit(Collider other) {
touchingItems.Remove(other.gameObject); var mini = other.GetComponentInParent<FurnitureMiniature>();
if (mini == null) {
return;
}
touchingItems.Remove(mini.gameObject);
//Destroy(mini.gameObject.GetComponent<Outline>());
} }
// Furniture picking // Furniture picking
@@ -129,12 +149,15 @@ public class RightController : MonoBehaviour {
if (warehouseItem) { if (warehouseItem) {
var mini = warehouseItem.Pick(); var mini = warehouseItem.Pick();
mini.Grab(); mini.Grab();
mini.transform.SetParent(MiniatureAttachmentPoint, false);
mini.transform.localPosition = Vector3.zero;
mini.transform.localScale = Vector3.one / 10.0f;
var anim = mini.gameObject.AddComponent<WarehouseMiniatureAnim>(); //var anim = mini.gameObject.AddComponent<WarehouseMiniatureAnim>();
anim.OriginItem = warehouseItem; //anim.OriginItem = warehouseItem;
anim.DestinationAttachment = MiniatureAttachmentPoint; //anim.DestinationAttachment = MiniatureAttachmentPoint;
anim.GoalScale = new Vector3(0.05f, 0.05f, 0.05f); //anim.GoalScale = new Vector3(0.1f, 0.1f, 0.1f);
anim.Duration = 0.33f; //anim.Duration = 0.33f;
heldItem = mini.gameObject; heldItem = mini.gameObject;
@@ -145,11 +168,17 @@ public class RightController : MonoBehaviour {
var furnitureMini = result.rigidbody.GetComponent<FurnitureMiniature>(); var furnitureMini = result.rigidbody.GetComponent<FurnitureMiniature>();
if (furnitureMini) { if (furnitureMini) {
furnitureMini.Grab(); furnitureMini.Grab();
if (WarehouseCamera.activeSelf) {
furnitureMini.transform.SetParent(MiniatureAttachmentPoint, true);
furnitureMini.transform.localPosition = Vector3.zero;
} else {
furnitureMini.transform.SetParent(MiniatureAttachmentPoint, true);
}
var anim = furnitureMini.gameObject.AddComponent<WarehouseMiniatureAnim>(); //var anim = furnitureMini.gameObject.AddComponent<WarehouseMiniatureAnim>();
//anim.OriginItem = furnitureMini; //anim.OriginItem = furnitureMini;
anim.DestinationAttachment = MiniatureAttachmentPoint; //anim.DestinationAttachment = MiniatureAttachmentPoint;
anim.Duration = 0.33f; //anim.Duration = 0.33f;
heldItem = furnitureMini.gameObject; heldItem = furnitureMini.gameObject;
return true; return true;
@@ -184,4 +213,18 @@ public class RightController : MonoBehaviour {
whScrollStartPos = null; whScrollStartPos = null;
} }
} }
void applicationMenuClicked(object sender, ControllerClickedEventArgs e) {
if (currentMeasurement == null) {
var prefab = Resources.Load<GameObject>("Measurement");
currentMeasurement = Instantiate(prefab).GetComponent<Measurement>();
currentMeasurement.transform.SetParent(GameObject.Find("Scene").transform, false);
currentMeasurement.StartPosition = transform.localPosition;
currentMeasurement.EndPosition = transform.localPosition;
}
}
void applicationMenuUnclicked(object sender, ControllerClickedEventArgs e) {
currentMeasurement = null;
}
} }
@@ -31,7 +31,7 @@ public class SteamVR_LaserPointer : MonoBehaviour
void Start () void Start ()
{ {
holder = new GameObject(); holder = new GameObject();
holder.transform.parent = this.transform; holder.transform.SetParent(transform, false);
holder.transform.localPosition = Vector3.zero; holder.transform.localPosition = Vector3.zero;
pointer = GameObject.CreatePrimitive(PrimitiveType.Cube); pointer = GameObject.CreatePrimitive(PrimitiveType.Cube);
BIN
View File
Binary file not shown.
Binary file not shown.
+4 -4
View File
@@ -14,7 +14,7 @@ public class WarehouseMiniatureAnim : MonoBehaviour {
void Start () { void Start () {
originalPos = transform.position; originalPos = transform.position;
originalScale = Vector3.Scale(transform.localScale, GoalScale); originalScale = transform.localScale;
} }
void Update () { void Update () {
@@ -29,14 +29,14 @@ public class WarehouseMiniatureAnim : MonoBehaviour {
var startPos = OriginItem ? OriginItem.transform.position : originalPos; var startPos = OriginItem ? OriginItem.transform.position : originalPos;
transform.position = Vector3.Lerp(startPos, t2.position, alpha); transform.position = Vector3.Lerp(startPos, t2.position, alpha);
//transform.rotation = Quaternion.Slerp(transform.rotation, t2.rotation, alpha); //transform.rotation = Quaternion.Slerp(transform.rotation, t2.rotation, alpha);
var startScale = OriginItem ? OriginItem.transform.localScale : originalScale; var startScale = OriginItem.transform.localScale;
transform.localScale = Vector3.Lerp(startScale, Vector3.Scale(originalScale, t2.lossyScale), alpha); transform.localScale = Vector3.Lerp(startScale, Vector3.Scale(originalScale, GoalScale), alpha);
} }
public void End() { public void End() {
transform.SetParent(DestinationAttachment, false); transform.SetParent(DestinationAttachment, false);
transform.localPosition = Vector3.zero; transform.localPosition = Vector3.zero;
transform.localScale = originalScale; //transform.localScale = originalScale;
Destroy(this); Destroy(this);
} }
} }
+1 -1
View File
@@ -45,7 +45,7 @@ public class WarehouseRow : MonoBehaviour {
var i = t.GetSiblingIndex(); var i = t.GetSiblingIndex();
var distance = (float)i / (furniture.childCount) * curve.length + Offset; var distance = (float)i / (furniture.childCount) * curve.length + Offset;
distance = Mathf.Repeat(distance, curve.length); distance = Mathf.Repeat(distance, curve.length);
var pos = curve.GetPointAtDistance(distance); var pos = curve.GetUniformPointAtDistance(distance);
t.position = pos; t.position = pos;
} }
} }
Binary file not shown.
+1 -1
View File
@@ -1,2 +1,2 @@
m_EditorVersion: 5.3.5f1 m_EditorVersion: 5.3.4f1
m_StandardAssetsVersion: 0 m_StandardAssetsVersion: 0