Attach Camera to Player

This commit is contained in:
pelpanagiotis
2026-02-09 21:58:30 +02:00
parent 9bcb47d8f6
commit aa248cda7e
10 changed files with 222 additions and 108 deletions

Binary file not shown.

View File

@@ -3,8 +3,20 @@
"WorkspaceRootPath": "C:\\Users\\pelpa\\Desktop\\Test Multiplayer\\", "WorkspaceRootPath": "C:\\Users\\pelpa\\Desktop\\Test Multiplayer\\",
"Documents": [ "Documents": [
{ {
"AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Users\\pelpa\\Desktop\\Test Multiplayer\\Assets\\Scripts\\PlayerScript.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "AbsoluteMoniker": "D:0:0:{B4CD19DA-EE08-5225-FB19-1D0DFA4113DD}|Assembly-CSharp.csproj|c:\\users\\pelpa\\desktop\\test multiplayer\\assets\\scripts\\charactermovement.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:Assets\\Scripts\\PlayerScript.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" "RelativeMoniker": "D:0:0:{B4CD19DA-EE08-5225-FB19-1D0DFA4113DD}|Assembly-CSharp.csproj|solutionrelative:assets\\scripts\\charactermovement.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{B4CD19DA-EE08-5225-FB19-1D0DFA4113DD}|Assembly-CSharp.csproj|c:\\users\\pelpa\\desktop\\test multiplayer\\assets\\scripts\\chat\\chatui.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{B4CD19DA-EE08-5225-FB19-1D0DFA4113DD}|Assembly-CSharp.csproj|solutionrelative:assets\\scripts\\chat\\chatui.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{B4CD19DA-EE08-5225-FB19-1D0DFA4113DD}|Assembly-CSharp.csproj|c:\\users\\pelpa\\desktop\\test multiplayer\\assets\\scripts\\playerscript.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{B4CD19DA-EE08-5225-FB19-1D0DFA4113DD}|Assembly-CSharp.csproj|solutionrelative:assets\\scripts\\playerscript.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{B4CD19DA-EE08-5225-FB19-1D0DFA4113DD}|Assembly-CSharp.csproj|c:\\users\\pelpa\\desktop\\test multiplayer\\assets\\scripts\\chat\\chatauthenticator.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{B4CD19DA-EE08-5225-FB19-1D0DFA4113DD}|Assembly-CSharp.csproj|solutionrelative:assets\\scripts\\chat\\chatauthenticator.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}, },
{ {
"AbsoluteMoniker": "D:0:0:{B4CD19DA-EE08-5225-FB19-1D0DFA4113DD}|Assembly-CSharp.csproj|c:\\users\\pelpa\\desktop\\test multiplayer\\assets\\scripts\\chat\\player.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "AbsoluteMoniker": "D:0:0:{B4CD19DA-EE08-5225-FB19-1D0DFA4113DD}|Assembly-CSharp.csproj|c:\\users\\pelpa\\desktop\\test multiplayer\\assets\\scripts\\chat\\player.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
@@ -13,18 +25,6 @@
{ {
"AbsoluteMoniker": "D:0:0:{B4CD19DA-EE08-5225-FB19-1D0DFA4113DD}|Assembly-CSharp.csproj|c:\\users\\pelpa\\desktop\\test multiplayer\\assets\\scripts\\chat\\chatnetworkmanager.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", "AbsoluteMoniker": "D:0:0:{B4CD19DA-EE08-5225-FB19-1D0DFA4113DD}|Assembly-CSharp.csproj|c:\\users\\pelpa\\desktop\\test multiplayer\\assets\\scripts\\chat\\chatnetworkmanager.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{B4CD19DA-EE08-5225-FB19-1D0DFA4113DD}|Assembly-CSharp.csproj|solutionrelative:assets\\scripts\\chat\\chatnetworkmanager.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" "RelativeMoniker": "D:0:0:{B4CD19DA-EE08-5225-FB19-1D0DFA4113DD}|Assembly-CSharp.csproj|solutionrelative:assets\\scripts\\chat\\chatnetworkmanager.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{B4CD19DA-EE08-5225-FB19-1D0DFA4113DD}|Assembly-CSharp.csproj|c:\\users\\pelpa\\desktop\\test multiplayer\\assets\\scripts\\chat\\chatauthenticator.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{B4CD19DA-EE08-5225-FB19-1D0DFA4113DD}|Assembly-CSharp.csproj|solutionrelative:assets\\scripts\\chat\\chatauthenticator.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{B4CD19DA-EE08-5225-FB19-1D0DFA4113DD}|Assembly-CSharp.csproj|c:\\users\\pelpa\\desktop\\test multiplayer\\assets\\scripts\\charactermovement.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{B4CD19DA-EE08-5225-FB19-1D0DFA4113DD}|Assembly-CSharp.csproj|solutionrelative:assets\\scripts\\charactermovement.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
"AbsoluteMoniker": "D:0:0:{B4CD19DA-EE08-5225-FB19-1D0DFA4113DD}|Assembly-CSharp.csproj|c:\\users\\pelpa\\desktop\\test multiplayer\\assets\\scripts\\chat\\chatui.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{B4CD19DA-EE08-5225-FB19-1D0DFA4113DD}|Assembly-CSharp.csproj|solutionrelative:assets\\scripts\\chat\\chatui.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
} }
], ],
"DocumentGroupContainers": [ "DocumentGroupContainers": [
@@ -34,7 +34,7 @@
"DocumentGroups": [ "DocumentGroups": [
{ {
"DockedWidth": 200, "DockedWidth": 200,
"SelectedChildIndex": 8, "SelectedChildIndex": 3,
"Children": [ "Children": [
{ {
"$type": "Bookmark", "$type": "Bookmark",
@@ -50,15 +50,16 @@
}, },
{ {
"$type": "Document", "$type": "Document",
"DocumentIndex": 4, "DocumentIndex": 0,
"Title": "CharacterMovement.cs", "Title": "CharacterMovement.cs",
"DocumentMoniker": "C:\\Users\\pelpa\\Desktop\\Test Multiplayer\\Assets\\Scripts\\CharacterMovement.cs", "DocumentMoniker": "C:\\Users\\pelpa\\Desktop\\Test Multiplayer\\Assets\\Scripts\\CharacterMovement.cs",
"RelativeDocumentMoniker": "Assets\\Scripts\\CharacterMovement.cs", "RelativeDocumentMoniker": "Assets\\Scripts\\CharacterMovement.cs",
"ToolTip": "C:\\Users\\pelpa\\Desktop\\Test Multiplayer\\Assets\\Scripts\\CharacterMovement.cs", "ToolTip": "C:\\Users\\pelpa\\Desktop\\Test Multiplayer\\Assets\\Scripts\\CharacterMovement.cs",
"RelativeToolTip": "Assets\\Scripts\\CharacterMovement.cs", "RelativeToolTip": "Assets\\Scripts\\CharacterMovement.cs",
"ViewState": "AgIAACMAAAAAAAAAAAAQwAQAAAANAAAAAAAAAA==", "ViewState": "AgIAAAAAAAAAAAAAAAAAAFYAAAAsAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2026-01-16T10:03:41.564Z" "WhenOpened": "2026-01-16T10:03:41.564Z",
"EditorCaption": ""
}, },
{ {
"$type": "Document", "$type": "Document",
@@ -70,11 +71,12 @@
"RelativeToolTip": "Assets\\Scripts\\Chat\\ChatAuthenticator.cs", "RelativeToolTip": "Assets\\Scripts\\Chat\\ChatAuthenticator.cs",
"ViewState": "AgIAAAAAAAAAAAAAAAAAAGsAAAAuAAAAAAAAAA==", "ViewState": "AgIAAAAAAAAAAAAAAAAAAGsAAAAuAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2026-01-14T18:27:16.926Z" "WhenOpened": "2026-01-14T18:27:16.926Z",
"EditorCaption": ""
}, },
{ {
"$type": "Document", "$type": "Document",
"DocumentIndex": 1, "DocumentIndex": 4,
"Title": "Player.cs", "Title": "Player.cs",
"DocumentMoniker": "C:\\Users\\pelpa\\Desktop\\Test Multiplayer\\Assets\\Scripts\\Chat\\Player.cs", "DocumentMoniker": "C:\\Users\\pelpa\\Desktop\\Test Multiplayer\\Assets\\Scripts\\Chat\\Player.cs",
"RelativeDocumentMoniker": "Assets\\Scripts\\Chat\\Player.cs", "RelativeDocumentMoniker": "Assets\\Scripts\\Chat\\Player.cs",
@@ -87,7 +89,7 @@
}, },
{ {
"$type": "Document", "$type": "Document",
"DocumentIndex": 2, "DocumentIndex": 5,
"Title": "ChatNetworkManager.cs", "Title": "ChatNetworkManager.cs",
"DocumentMoniker": "C:\\Users\\pelpa\\Desktop\\Test Multiplayer\\Assets\\Scripts\\Chat\\ChatNetworkManager.cs", "DocumentMoniker": "C:\\Users\\pelpa\\Desktop\\Test Multiplayer\\Assets\\Scripts\\Chat\\ChatNetworkManager.cs",
"RelativeDocumentMoniker": "Assets\\Scripts\\Chat\\ChatNetworkManager.cs", "RelativeDocumentMoniker": "Assets\\Scripts\\Chat\\ChatNetworkManager.cs",
@@ -99,25 +101,26 @@
}, },
{ {
"$type": "Document", "$type": "Document",
"DocumentIndex": 5, "DocumentIndex": 1,
"Title": "ChatUI.cs", "Title": "ChatUI.cs",
"DocumentMoniker": "C:\\Users\\pelpa\\Desktop\\Test Multiplayer\\Assets\\Scripts\\Chat\\ChatUI.cs", "DocumentMoniker": "C:\\Users\\pelpa\\Desktop\\Test Multiplayer\\Assets\\Scripts\\Chat\\ChatUI.cs",
"RelativeDocumentMoniker": "Assets\\Scripts\\Chat\\ChatUI.cs", "RelativeDocumentMoniker": "Assets\\Scripts\\Chat\\ChatUI.cs",
"ToolTip": "C:\\Users\\pelpa\\Desktop\\Test Multiplayer\\Assets\\Scripts\\Chat\\ChatUI.cs", "ToolTip": "C:\\Users\\pelpa\\Desktop\\Test Multiplayer\\Assets\\Scripts\\Chat\\ChatUI.cs",
"RelativeToolTip": "Assets\\Scripts\\Chat\\ChatUI.cs", "RelativeToolTip": "Assets\\Scripts\\Chat\\ChatUI.cs",
"ViewState": "AgIAAEUAAAAAAAAAAAAmwFUAAAAIAAAAAAAAAA==", "ViewState": "AgIAAAAAAAAAAAAAAAAAAAwAAAA3AAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2026-01-14T17:49:43.718Z" "WhenOpened": "2026-01-14T17:49:43.718Z",
"EditorCaption": ""
}, },
{ {
"$type": "Document", "$type": "Document",
"DocumentIndex": 0, "DocumentIndex": 2,
"Title": "PlayerScript.cs", "Title": "PlayerScript.cs",
"DocumentMoniker": "C:\\Users\\pelpa\\Desktop\\Test Multiplayer\\Assets\\Scripts\\PlayerScript.cs", "DocumentMoniker": "C:\\Users\\pelpa\\Desktop\\Test Multiplayer\\Assets\\Scripts\\PlayerScript.cs",
"RelativeDocumentMoniker": "Assets\\Scripts\\PlayerScript.cs", "RelativeDocumentMoniker": "Assets\\Scripts\\PlayerScript.cs",
"ToolTip": "C:\\Users\\pelpa\\Desktop\\Test Multiplayer\\Assets\\Scripts\\PlayerScript.cs", "ToolTip": "C:\\Users\\pelpa\\Desktop\\Test Multiplayer\\Assets\\Scripts\\PlayerScript.cs",
"RelativeToolTip": "Assets\\Scripts\\PlayerScript.cs", "RelativeToolTip": "Assets\\Scripts\\PlayerScript.cs",
"ViewState": "AgIAAEoAAAAAAAAAAAAIwGIAAAA1AAAAAAAAAA==", "ViewState": "AgIAAD8AAAAAAAAAAAAqwGoAAAANAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2026-02-04T20:24:23.643Z", "WhenOpened": "2026-02-04T20:24:23.643Z",
"EditorCaption": "" "EditorCaption": ""

View File

@@ -20,6 +20,16 @@ public class CharacterMovement : NetworkBehaviour
bool lastSentWalking; bool lastSentWalking;
bool lastSentRunning; bool lastSentRunning;
// assign this in the player prefab to an empty child transform positioned where the camera should sit (e.g. head)
public Transform cameraMount;
// camera follow settings
Camera mainCamera;
Vector3 cameraLocalOffsetStable = new Vector3(0f, 2f, -4f); // fallback offset (local)
public float followSpeed = 5f;
public float idleFollowSpeed = 0.5f; // slower smoothing while idle (keeps camera stable)
public Vector3 cameraLookOffset = new Vector3(0f, 1.5f, 0f); // where camera looks relative to player root
void Awake() void Awake()
{ {
input = new PlayerInput(); input = new PlayerInput();
@@ -56,6 +66,32 @@ public class CharacterMovement : NetworkBehaviour
HandleRotation(); HandleRotation();
} }
// Camera follow should be in LateUpdate so it follows the final character pose for the frame
void LateUpdate()
{
if (!isLocalPlayer) return;
if (mainCamera == null) return;
// Desired world position based on the stable local offset (relative to player root)
Vector3 desiredWorld = transform.TransformPoint(cameraLocalOffsetStable);
if (movementPressed)
{
// while moving: follow the player (smooth)
mainCamera.transform.position = Vector3.Lerp(mainCamera.transform.position, desiredWorld, Time.deltaTime * followSpeed);
}
else
{
// while idle: keep camera stable behind the player (don't follow micro animation bobbing)
// Update only XZ to remain behind, preserve camera's current Y (height) to avoid vertical bob
Vector3 idleTarget = new Vector3(desiredWorld.x, mainCamera.transform.position.y, desiredWorld.z);
mainCamera.transform.position = Vector3.Lerp(mainCamera.transform.position, idleTarget, Time.deltaTime * idleFollowSpeed);
}
// Always look at the player (with an offset so we look near the torso/head)
mainCamera.transform.LookAt(transform.position + cameraLookOffset);
}
void HandleRotation() void HandleRotation()
{ {
Vector3 currentPosition = transform.position; Vector3 currentPosition = transform.position;
@@ -142,11 +178,46 @@ public class CharacterMovement : NetworkBehaviour
{ {
Debug.Log("Local player started: " + netId); Debug.Log("Local player started: " + netId);
input.CharacterControls.Enable(); input.CharacterControls.Enable();
// Setup camera for local player (do not parent to animated mount to avoid animation bobbing)
mainCamera = Camera.main;
if (mainCamera == null)
{
Debug.LogWarning("No Camera.main found in scene to attach to player.");
return;
}
// compute a stable local offset based on cameraMount, but use player root as the reference so animated child motion is ignored
if (cameraMount != null)
{
cameraLocalOffsetStable = transform.InverseTransformPoint(cameraMount.position);
}
else
{
// fallback to a sensible offset if no mount assigned
cameraLocalOffsetStable = new Vector3(0f, 2f, -4f);
Debug.LogWarning("cameraMount not assigned on player prefab. Using fallback offset.");
}
// unparent camera so we control world position directly
mainCamera.transform.SetParent(null, true);
// ensure only the local player's camera has an active AudioListener
var audio = mainCamera.GetComponent<AudioListener>();
if (audio != null) audio.enabled = true;
} }
public override void OnStopLocalPlayer() public override void OnStopLocalPlayer()
{ {
input.CharacterControls.Disable(); input.CharacterControls.Disable();
// optionally disable audio listener to avoid duplicates
if (mainCamera != null)
{
var audio = mainCamera.GetComponent<AudioListener>();
if (audio != null) audio.enabled = false;
}
mainCamera = null;
} }
// Called on the server when client issues the command // Called on the server when client issues the command

View File

@@ -124,7 +124,7 @@ public class Player : NetworkBehaviour
if (nameTagPrefab != null) if (nameTagPrefab != null)
{ {
nameTagInstance = Instantiate(nameTagPrefab, transform); nameTagInstance = Instantiate(nameTagPrefab, transform);
nameTagInstance.transform.localPosition = new Vector3(0f, nameTagHeight, 0f); nameTagInstance.transform.localPosition = new Vector3(0f, 2.0f, 0f);
nameTagInstance.transform.localRotation = Quaternion.identity; nameTagInstance.transform.localRotation = Quaternion.identity;
// try to find either a TextMesh or legacy TextMesh in the prefab // try to find either a TextMesh or legacy TextMesh in the prefab
nameTagTextMesh = nameTagInstance.GetComponentInChildren<TextMesh>(); nameTagTextMesh = nameTagInstance.GetComponentInChildren<TextMesh>();
@@ -134,7 +134,7 @@ public class Player : NetworkBehaviour
// create a simple 3D text (TextMesh) so no extra UI package is required // create a simple 3D text (TextMesh) so no extra UI package is required
nameTagInstance = new GameObject("NameTag"); nameTagInstance = new GameObject("NameTag");
nameTagInstance.transform.SetParent(transform, false); nameTagInstance.transform.SetParent(transform, false);
nameTagInstance.transform.localPosition = new Vector3(0f, nameTagHeight, 0f); nameTagInstance.transform.localPosition = new Vector3(0f, 2.0f, 0f);
nameTagTextMesh = nameTagInstance.AddComponent<TextMesh>(); nameTagTextMesh = nameTagInstance.AddComponent<TextMesh>();
nameTagTextMesh.alignment = TextAlignment.Center; nameTagTextMesh.alignment = TextAlignment.Center;

View File

@@ -34,7 +34,9 @@ namespace QuickStart
Camera.main.transform.SetParent(transform); Camera.main.transform.SetParent(transform);
Camera.main.transform.localPosition = new Vector3(0, 0, 0); Camera.main.transform.localPosition = new Vector3(0, 0, 0);
floatingInfo.transform.localPosition = new Vector3(0, -0.3f, 0.6f); // Move the floatingInfo (player name) above the player instead of below.
// Adjust Y to fit your model height (2.0f is a good starting point for standard humanoid scale).
floatingInfo.transform.localPosition = new Vector3(0, 2.0f, 0.6f);
floatingInfo.transform.localScale = new Vector3(0.1f, 0.1f, 0.1f); floatingInfo.transform.localScale = new Vector3(0.1f, 0.1f, 0.1f);
string name = "Player" + Random.Range(100, 999); string name = "Player" + Random.Range(100, 999);

View File

@@ -1,5 +1,36 @@
%YAML 1.1 %YAML 1.1
%TAG !u! tag:unity3d.com,2011: %TAG !u! tag:unity3d.com,2011:
--- !u!1 &5291219971806440334
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4270643899711320435}
m_Layer: 0
m_Name: Camera Mount
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4270643899711320435
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5291219971806440334}
serializedVersion: 2
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0.294, y: 1.145, z: -2.005}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 8077244700045459333}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1001 &8616118632631556206 --- !u!1001 &8616118632631556206
PrefabInstance: PrefabInstance:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -62,7 +93,10 @@ PrefabInstance:
objectReference: {fileID: 0} objectReference: {fileID: 0}
m_RemovedComponents: [] m_RemovedComponents: []
m_RemovedGameObjects: [] m_RemovedGameObjects: []
m_AddedGameObjects: [] m_AddedGameObjects:
- targetCorrespondingSourceObject: {fileID: -8679921383154817045, guid: e0ac844e563d55c4a8ff510e5409eeae, type: 3}
insertIndex: -1
addedObject: {fileID: 4270643899711320435}
m_AddedComponents: m_AddedComponents:
- targetCorrespondingSourceObject: {fileID: 919132149155446097, guid: e0ac844e563d55c4a8ff510e5409eeae, type: 3} - targetCorrespondingSourceObject: {fileID: 919132149155446097, guid: e0ac844e563d55c4a8ff510e5409eeae, type: 3}
insertIndex: -1 insertIndex: -1
@@ -105,6 +139,7 @@ MonoBehaviour:
syncDirection: 0 syncDirection: 0
syncMode: 0 syncMode: 0
syncInterval: 0 syncInterval: 0
cameraMount: {fileID: 4270643899711320435}
--- !u!65 &2994849115125833078 --- !u!65 &2994849115125833078
BoxCollider: BoxCollider:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@@ -193,3 +228,5 @@ MonoBehaviour:
syncMode: 0 syncMode: 0
syncInterval: 0 syncInterval: 0
playerName: playerName:
nameTagPrefab: {fileID: 0}
nameTagHeight: 0.2

View File

@@ -3,3 +3,4 @@ Cmd: initializeCompiler
Cmd: initializeCompiler Cmd: initializeCompiler
Cmd: shutdown

View File

@@ -14,16 +14,16 @@ MonoBehaviour:
m_EditorClassIdentifier: UnityEditor.dll::UnityEditor.ContainerWindow m_EditorClassIdentifier: UnityEditor.dll::UnityEditor.ContainerWindow
m_PixelRect: m_PixelRect:
serializedVersion: 2 serializedVersion: 2
x: 8 x: -2560
y: 51 y: 43
width: 1904 width: 2560
height: 973 height: 989
m_ShowMode: 4 m_ShowMode: 4
m_Title: Hierarchy m_Title: Inspector
m_RootView: {fileID: 7} m_RootView: {fileID: 7}
m_MinSize: {x: 875, y: 300} m_MinSize: {x: 875, y: 300}
m_MaxSize: {x: 10000, y: 10000} m_MaxSize: {x: 10000, y: 10000}
m_Maximized: 0 m_Maximized: 1
--- !u!114 &2 --- !u!114 &2
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 52 m_ObjectHideFlags: 52
@@ -39,10 +39,10 @@ MonoBehaviour:
m_Children: [] m_Children: []
m_Position: m_Position:
serializedVersion: 2 serializedVersion: 2
x: 871 x: 1170
y: 0 y: 0
width: 718 width: 951
height: 641 height: 627
m_MinSize: {x: 202, y: 226} m_MinSize: {x: 202, y: 226}
m_MaxSize: {x: 4002, y: 4026} m_MaxSize: {x: 4002, y: 4026}
m_ActualView: {fileID: 18} m_ActualView: {fileID: 18}
@@ -69,12 +69,12 @@ MonoBehaviour:
serializedVersion: 2 serializedVersion: 2
x: 0 x: 0
y: 36 y: 36
width: 1904 width: 2560
height: 917 height: 933
m_MinSize: {x: 400, y: 100} m_MinSize: {x: 400, y: 100}
m_MaxSize: {x: 32384, y: 16192} m_MaxSize: {x: 32384, y: 16192}
vertical: 0 vertical: 0
controlID: 40 controlID: 50
draggingID: 0 draggingID: 0
--- !u!114 &4 --- !u!114 &4
MonoBehaviour: MonoBehaviour:
@@ -91,10 +91,10 @@ MonoBehaviour:
m_Children: [] m_Children: []
m_Position: m_Position:
serializedVersion: 2 serializedVersion: 2
x: 1589 x: 2121
y: 0 y: 0
width: 315 width: 439
height: 917 height: 933
m_MinSize: {x: 276, y: 76} m_MinSize: {x: 276, y: 76}
m_MaxSize: {x: 4001, y: 4026} m_MaxSize: {x: 4001, y: 4026}
m_ActualView: {fileID: 15} m_ActualView: {fileID: 15}
@@ -119,8 +119,8 @@ MonoBehaviour:
serializedVersion: 2 serializedVersion: 2
x: 0 x: 0
y: 0 y: 0
width: 254 width: 331
height: 641 height: 627
m_MinSize: {x: 201, y: 226} m_MinSize: {x: 201, y: 226}
m_MaxSize: {x: 4001, y: 4026} m_MaxSize: {x: 4001, y: 4026}
m_ActualView: {fileID: 16} m_ActualView: {fileID: 16}
@@ -144,9 +144,9 @@ MonoBehaviour:
m_Position: m_Position:
serializedVersion: 2 serializedVersion: 2
x: 0 x: 0
y: 641 y: 627
width: 1589 width: 2121
height: 276 height: 306
m_MinSize: {x: 231, y: 276} m_MinSize: {x: 231, y: 276}
m_MaxSize: {x: 10001, y: 10026} m_MaxSize: {x: 10001, y: 10026}
m_ActualView: {fileID: 14} m_ActualView: {fileID: 14}
@@ -175,8 +175,8 @@ MonoBehaviour:
serializedVersion: 2 serializedVersion: 2
x: 0 x: 0
y: 0 y: 0
width: 1904 width: 2560
height: 973 height: 989
m_MinSize: {x: 875, y: 300} m_MinSize: {x: 875, y: 300}
m_MaxSize: {x: 10000, y: 10000} m_MaxSize: {x: 10000, y: 10000}
m_UseTopView: 1 m_UseTopView: 1
@@ -200,7 +200,7 @@ MonoBehaviour:
serializedVersion: 2 serializedVersion: 2
x: 0 x: 0
y: 0 y: 0
width: 1904 width: 2560
height: 36 height: 36
m_MinSize: {x: 0, y: 0} m_MinSize: {x: 0, y: 0}
m_MaxSize: {x: 0, y: 0} m_MaxSize: {x: 0, y: 0}
@@ -221,8 +221,8 @@ MonoBehaviour:
m_Position: m_Position:
serializedVersion: 2 serializedVersion: 2
x: 0 x: 0
y: 953 y: 969
width: 1904 width: 2560
height: 20 height: 20
m_MinSize: {x: 0, y: 0} m_MinSize: {x: 0, y: 0}
m_MaxSize: {x: 0, y: 0} m_MaxSize: {x: 0, y: 0}
@@ -245,12 +245,12 @@ MonoBehaviour:
serializedVersion: 2 serializedVersion: 2
x: 0 x: 0
y: 0 y: 0
width: 1589 width: 2121
height: 917 height: 933
m_MinSize: {x: 300, y: 100} m_MinSize: {x: 300, y: 100}
m_MaxSize: {x: 24288, y: 16192} m_MaxSize: {x: 24288, y: 16192}
vertical: 1 vertical: 1
controlID: 41 controlID: 51
draggingID: 0 draggingID: 0
--- !u!114 &11 --- !u!114 &11
MonoBehaviour: MonoBehaviour:
@@ -272,12 +272,12 @@ MonoBehaviour:
serializedVersion: 2 serializedVersion: 2
x: 0 x: 0
y: 0 y: 0
width: 1589 width: 2121
height: 641 height: 627
m_MinSize: {x: 300, y: 50} m_MinSize: {x: 300, y: 50}
m_MaxSize: {x: 24288, y: 8096} m_MaxSize: {x: 24288, y: 8096}
vertical: 0 vertical: 0
controlID: 42 controlID: 52
draggingID: 0 draggingID: 0
--- !u!114 &12 --- !u!114 &12
MonoBehaviour: MonoBehaviour:
@@ -294,10 +294,10 @@ MonoBehaviour:
m_Children: [] m_Children: []
m_Position: m_Position:
serializedVersion: 2 serializedVersion: 2
x: 254 x: 331
y: 0 y: 0
width: 617 width: 839
height: 641 height: 627
m_MinSize: {x: 202, y: 226} m_MinSize: {x: 202, y: 226}
m_MaxSize: {x: 4002, y: 4026} m_MaxSize: {x: 4002, y: 4026}
m_ActualView: {fileID: 17} m_ActualView: {fileID: 17}
@@ -416,10 +416,10 @@ MonoBehaviour:
m_TextWithWhitespace: "Project\u200B" m_TextWithWhitespace: "Project\u200B"
m_Pos: m_Pos:
serializedVersion: 2 serializedVersion: 2
x: 0 x: -2560
y: 665 y: 706
width: 1588 width: 2120
height: 250 height: 280
m_SerializedDataModeController: m_SerializedDataModeController:
m_DataMode: 0 m_DataMode: 0
m_PreferredDataMode: 0 m_PreferredDataMode: 0
@@ -459,9 +459,9 @@ MonoBehaviour:
m_IsLocked: 0 m_IsLocked: 0
m_FolderTreeState: m_FolderTreeState:
scrollPos: {x: 0, y: 0} scrollPos: {x: 0, y: 0}
m_SelectedIDs: 68dc0000 m_SelectedIDs: d0dc0000
m_LastClickedID: 56424 m_LastClickedID: 56528
m_ExpandedIDs: 0000000068dc00006adc0000 m_ExpandedIDs: 0000000068dc00006adc000000ca9a3b
m_RenameOverlay: m_RenameOverlay:
m_UserAcceptedRename: 0 m_UserAcceptedRename: 0
m_Name: m_Name:
@@ -518,7 +518,7 @@ MonoBehaviour:
m_ListAreaState: m_ListAreaState:
m_SelectedInstanceIDs: m_SelectedInstanceIDs:
m_LastClickedInstanceID: 0 m_LastClickedInstanceID: 0
m_HadKeyboardFocusLastEvent: 0 m_HadKeyboardFocusLastEvent: 1
m_ExpandedInstanceIDs: c623000000000000 m_ExpandedInstanceIDs: c623000000000000
m_RenameOverlay: m_RenameOverlay:
m_UserAcceptedRename: 0 m_UserAcceptedRename: 0
@@ -544,7 +544,7 @@ MonoBehaviour:
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_ResourceFile: m_ResourceFile:
m_NewAssetIndexInList: -1 m_NewAssetIndexInList: -1
m_ScrollPosition: {x: 0, y: 52} m_ScrollPosition: {x: 0, y: 22}
m_GridSize: 88 m_GridSize: 88
m_SkipHiddenPackages: 0 m_SkipHiddenPackages: 0
m_DirectoriesAreaWidth: 241 m_DirectoriesAreaWidth: 241
@@ -569,10 +569,10 @@ MonoBehaviour:
m_TextWithWhitespace: "Inspector\u200B" m_TextWithWhitespace: "Inspector\u200B"
m_Pos: m_Pos:
serializedVersion: 2 serializedVersion: 2
x: 1590 x: -439
y: 24 y: 79
width: 314 width: 438
height: 891 height: 907
m_SerializedDataModeController: m_SerializedDataModeController:
m_DataMode: 0 m_DataMode: 0
m_PreferredDataMode: 0 m_PreferredDataMode: 0
@@ -618,10 +618,10 @@ MonoBehaviour:
m_TextWithWhitespace: "Hierarchy\u200B" m_TextWithWhitespace: "Hierarchy\u200B"
m_Pos: m_Pos:
serializedVersion: 2 serializedVersion: 2
x: 0 x: -2560
y: 24 y: 79
width: 253 width: 330
height: 615 height: 601
m_SerializedDataModeController: m_SerializedDataModeController:
m_DataMode: 0 m_DataMode: 0
m_PreferredDataMode: 0 m_PreferredDataMode: 0
@@ -638,7 +638,7 @@ MonoBehaviour:
scrollPos: {x: 0, y: 0} scrollPos: {x: 0, y: 0}
m_SelectedIDs: m_SelectedIDs:
m_LastClickedID: 0 m_LastClickedID: 0
m_ExpandedIDs: fcfaffff m_ExpandedIDs: 824dfeffee62feff4e9efefffcfaffff
m_RenameOverlay: m_RenameOverlay:
m_UserAcceptedRename: 0 m_UserAcceptedRename: 0
m_Name: m_Name:
@@ -655,7 +655,7 @@ MonoBehaviour:
m_OriginalEventType: 11 m_OriginalEventType: 11
m_IsRenamingFilename: 0 m_IsRenamingFilename: 0
m_TrimLeadingAndTrailingWhitespace: 0 m_TrimLeadingAndTrailingWhitespace: 0
m_ClientGUIView: {fileID: 5} m_ClientGUIView: {fileID: 0}
m_SearchString: m_SearchString:
m_ExpandedScenes: [] m_ExpandedScenes: []
m_CurrenRootInstanceID: 0 m_CurrenRootInstanceID: 0
@@ -684,10 +684,10 @@ MonoBehaviour:
m_TextWithWhitespace: "Scene\u200B" m_TextWithWhitespace: "Scene\u200B"
m_Pos: m_Pos:
serializedVersion: 2 serializedVersion: 2
x: 255 x: -2229
y: 24 y: 79
width: 615 width: 837
height: 615 height: 601
m_SerializedDataModeController: m_SerializedDataModeController:
m_DataMode: 0 m_DataMode: 0
m_PreferredDataMode: 0 m_PreferredDataMode: 0
@@ -1256,9 +1256,9 @@ MonoBehaviour:
m_AudioPlay: 0 m_AudioPlay: 0
m_DebugDrawModesUseInteractiveLightBakingData: 0 m_DebugDrawModesUseInteractiveLightBakingData: 0
m_Position: m_Position:
m_Target: {x: 6.951852, y: 0.2686872, z: 13.243528} m_Target: {x: 18.998749, y: -2.2667222, z: -13.916144}
speed: 2 speed: 2
m_Value: {x: 6.951852, y: 0.2686872, z: 13.243528} m_Value: {x: 18.998749, y: -2.2667222, z: -13.916144}
m_RenderMode: 0 m_RenderMode: 0
m_CameraMode: m_CameraMode:
drawMode: 0 drawMode: 0
@@ -1304,9 +1304,9 @@ MonoBehaviour:
m_GridAxis: 1 m_GridAxis: 1
m_gridOpacity: 0.5 m_gridOpacity: 0.5
m_Rotation: m_Rotation:
m_Target: {x: 0.012097208, y: 0.1849107, z: -0.0022767063, w: 0.9826799} m_Target: {x: 0.03521548, y: 0.91418284, z: -0.081402756, w: 0.39548633}
speed: 2 speed: 2
m_Value: {x: -0.012097208, y: -0.1849107, z: 0.0022767063, w: -0.9826799} m_Value: {x: 0.03521537, y: 0.91418, z: -0.0814025, w: 0.3954851}
m_Size: m_Size:
m_Target: 10 m_Target: 10
speed: 2 speed: 2
@@ -1365,10 +1365,10 @@ MonoBehaviour:
m_TextWithWhitespace: "Game\u200B" m_TextWithWhitespace: "Game\u200B"
m_Pos: m_Pos:
serializedVersion: 2 serializedVersion: 2
x: 872 x: -1390
y: 24 y: 79
width: 716 width: 949
height: 615 height: 601
m_SerializedDataModeController: m_SerializedDataModeController:
m_DataMode: 0 m_DataMode: 0
m_PreferredDataMode: 0 m_PreferredDataMode: 0
@@ -1386,7 +1386,7 @@ MonoBehaviour:
m_ShowGizmos: 0 m_ShowGizmos: 0
m_TargetDisplay: 0 m_TargetDisplay: 0
m_ClearColor: {r: 0, g: 0, b: 0, a: 0} m_ClearColor: {r: 0, g: 0, b: 0, a: 0}
m_TargetSize: {x: 716, y: 594} m_TargetSize: {x: 949, y: 580}
m_TextureFilterMode: 0 m_TextureFilterMode: 0
m_TextureHideFlags: 61 m_TextureHideFlags: 61
m_RenderIMGUI: 1 m_RenderIMGUI: 1
@@ -1401,10 +1401,10 @@ MonoBehaviour:
m_VRangeLocked: 0 m_VRangeLocked: 0
hZoomLockedByDefault: 0 hZoomLockedByDefault: 0
vZoomLockedByDefault: 0 vZoomLockedByDefault: 0
m_HBaseRangeMin: -358 m_HBaseRangeMin: -474.5
m_HBaseRangeMax: 358 m_HBaseRangeMax: 474.5
m_VBaseRangeMin: -297 m_VBaseRangeMin: -290
m_VBaseRangeMax: 297 m_VBaseRangeMax: 290
m_HAllowExceedBaseRangeMin: 1 m_HAllowExceedBaseRangeMin: 1
m_HAllowExceedBaseRangeMax: 1 m_HAllowExceedBaseRangeMax: 1
m_VAllowExceedBaseRangeMin: 1 m_VAllowExceedBaseRangeMin: 1
@@ -1422,23 +1422,23 @@ MonoBehaviour:
serializedVersion: 2 serializedVersion: 2
x: 0 x: 0
y: 21 y: 21
width: 716 width: 949
height: 594 height: 580
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Translation: {x: 358, y: 297} m_Translation: {x: 474.5, y: 290}
m_MarginLeft: 0 m_MarginLeft: 0
m_MarginRight: 0 m_MarginRight: 0
m_MarginTop: 0 m_MarginTop: 0
m_MarginBottom: 0 m_MarginBottom: 0
m_LastShownAreaInsideMargins: m_LastShownAreaInsideMargins:
serializedVersion: 2 serializedVersion: 2
x: -358 x: -474.5
y: -297 y: -290
width: 716 width: 949
height: 594 height: 580
m_MinimalGUI: 1 m_MinimalGUI: 1
m_defaultScale: 1 m_defaultScale: 1
m_LastWindowPixelSize: {x: 716, y: 615} m_LastWindowPixelSize: {x: 949, y: 601}
m_ClearInEditMode: 1 m_ClearInEditMode: 1
m_NoCameraWarning: 1 m_NoCameraWarning: 1
m_LowResolutionForAspectRatios: 01000000000000000000 m_LowResolutionForAspectRatios: 01000000000000000000