lab5
This commit is contained in:
1 parent
8302032c9f
commit
1b564e47e9
16 files changed
+1990
-1
No files matched your search
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 825bb6aa223240bebf6ca69775065adf
|
||||||
|
timeCreated: 1771338957
|
||||||
@@ -0,0 +1,153 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace Code.Lab5
|
||||||
|
{
|
||||||
|
public class Projectile : MonoBehaviour
|
||||||
|
{
|
||||||
|
private bool _set;
|
||||||
|
private Vector3 _firePos;
|
||||||
|
private Vector3 _direction;
|
||||||
|
private float _speed;
|
||||||
|
private float _timeElapsed;
|
||||||
|
|
||||||
|
private void Update()
|
||||||
|
{
|
||||||
|
if (!_set)
|
||||||
|
return;
|
||||||
|
|
||||||
|
_timeElapsed += Time.deltaTime;
|
||||||
|
|
||||||
|
transform.position = _firePos + _direction * (_speed * _timeElapsed);
|
||||||
|
transform.position += Physics.gravity * (_timeElapsed * _timeElapsed) / 2.0f;
|
||||||
|
|
||||||
|
if (transform.position.y < -1.0f)
|
||||||
|
{
|
||||||
|
Destroy(gameObject);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Set(Vector3 firePos, Vector3 direction, float speed)
|
||||||
|
{
|
||||||
|
_firePos = firePos;
|
||||||
|
_direction = direction.normalized;
|
||||||
|
_speed = speed;
|
||||||
|
transform.position = firePos;
|
||||||
|
_set = true;
|
||||||
|
_timeElapsed = 0f;
|
||||||
|
}
|
||||||
|
|
||||||
|
private float GetLandingTime(float height = 0.0f)
|
||||||
|
{
|
||||||
|
var position = transform.position;
|
||||||
|
|
||||||
|
var valueInt = _direction.y * _direction.y * (_speed * _speed);
|
||||||
|
valueInt -= Physics.gravity.y * 2 * (position.y - height);
|
||||||
|
|
||||||
|
if (valueInt < 0)
|
||||||
|
return -1.0f;
|
||||||
|
|
||||||
|
valueInt = Mathf.Sqrt(valueInt);
|
||||||
|
|
||||||
|
var valueAdd = -_direction.y * _speed;
|
||||||
|
var valueSub = -_direction.y * _speed;
|
||||||
|
|
||||||
|
valueAdd = (valueAdd + valueInt) / Physics.gravity.y;
|
||||||
|
valueSub = (valueSub - valueInt) / Physics.gravity.y;
|
||||||
|
|
||||||
|
if (float.IsNaN(valueAdd) && !float.IsNaN(valueSub))
|
||||||
|
return valueSub;
|
||||||
|
if (!float.IsNaN(valueAdd) && float.IsNaN(valueSub))
|
||||||
|
return valueAdd;
|
||||||
|
if (float.IsNaN(valueAdd) && float.IsNaN(valueSub))
|
||||||
|
return -1.0f;
|
||||||
|
|
||||||
|
var time = Mathf.Max(valueAdd, valueSub);
|
||||||
|
return time;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Vector3 GetLandingPos(float height = 0.0f)
|
||||||
|
{
|
||||||
|
var landingPos = Vector3.zero;
|
||||||
|
var time = GetLandingTime(height);
|
||||||
|
|
||||||
|
if (time < 0.0f)
|
||||||
|
return landingPos;
|
||||||
|
|
||||||
|
landingPos.y = height;
|
||||||
|
landingPos.x = _firePos.x + _direction.x * _speed * time;
|
||||||
|
landingPos.z = _firePos.z + _direction.z * _speed * time;
|
||||||
|
|
||||||
|
return landingPos;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static Vector3 GetFireDirection(Vector3 startPos, Vector3 endPos, float speed, bool useHighTrajectory = false)
|
||||||
|
{
|
||||||
|
var direction = Vector3.zero;
|
||||||
|
var delta = endPos - startPos;
|
||||||
|
|
||||||
|
var a = Vector3.Dot(Physics.gravity, Physics.gravity);
|
||||||
|
var b = -4 * (Vector3.Dot(Physics.gravity, delta) + speed * speed);
|
||||||
|
var c = 4 * Vector3.Dot(delta, delta);
|
||||||
|
|
||||||
|
var discriminant = b * b - 4 * a * c;
|
||||||
|
if (discriminant < 0)
|
||||||
|
return direction;
|
||||||
|
|
||||||
|
var sqrtDiscriminant = Mathf.Sqrt(discriminant);
|
||||||
|
|
||||||
|
var time0 = Mathf.Sqrt((-b + sqrtDiscriminant) / (2 * a));
|
||||||
|
var time1 = Mathf.Sqrt((-b - sqrtDiscriminant) / (2 * a));
|
||||||
|
|
||||||
|
float time;
|
||||||
|
|
||||||
|
switch (time0)
|
||||||
|
{
|
||||||
|
case < 0.0f when time1 < 0.0f:
|
||||||
|
return direction;
|
||||||
|
case < 0.0f:
|
||||||
|
time = time1;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
{
|
||||||
|
if (time1 < 0.0f)
|
||||||
|
time = time0;
|
||||||
|
else
|
||||||
|
{
|
||||||
|
time = useHighTrajectory ? Mathf.Max(time0, time1) : Mathf.Min(time0, time1);
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
direction = 2 * delta - Physics.gravity * (time * time);
|
||||||
|
direction /= 2 * speed * time;
|
||||||
|
|
||||||
|
return direction.normalized;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static bool IsTargetReachable(Vector3 startPos, Vector3 endPos, float speed)
|
||||||
|
{
|
||||||
|
var delta = endPos - startPos;
|
||||||
|
|
||||||
|
var a = Vector3.Dot(Physics.gravity, Physics.gravity);
|
||||||
|
var b = -4 * (Vector3.Dot(Physics.gravity, delta) + speed * speed);
|
||||||
|
var c = 4 * Vector3.Dot(delta, delta);
|
||||||
|
|
||||||
|
return b * b - 4 * a * c >= 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static float GetMinimumSpeed(Vector3 startPos, Vector3 endPos)
|
||||||
|
{
|
||||||
|
var delta = endPos - startPos;
|
||||||
|
|
||||||
|
var gravityMagnitude = Physics.gravity.magnitude;
|
||||||
|
var deltaMagnitude = delta.magnitude;
|
||||||
|
var deltaY = delta.y;
|
||||||
|
|
||||||
|
var minSpeedSqr = gravityMagnitude * (deltaY + Mathf.Sqrt(deltaY * deltaY + deltaMagnitude * deltaMagnitude));
|
||||||
|
|
||||||
|
return Mathf.Sqrt(minSpeedSqr);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 061a9f303af54c5c976f1aeaa6581a23
|
||||||
|
timeCreated: 1771338965
|
||||||
@@ -0,0 +1,158 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace Code.Lab5
|
||||||
|
{
|
||||||
|
public class ProjectileLauncher : MonoBehaviour
|
||||||
|
{
|
||||||
|
public GameObject projectilePrefab;
|
||||||
|
public Transform target;
|
||||||
|
public float launchSpeed = 20f;
|
||||||
|
public bool useHighTrajectory;
|
||||||
|
|
||||||
|
public float randomRadius = 10f;
|
||||||
|
public Vector2 centerOffset = Vector2.zero;
|
||||||
|
public GameObject targetCirclePrefab;
|
||||||
|
public bool showTargetCircle = true;
|
||||||
|
public float circleLifetime = 2f;
|
||||||
|
|
||||||
|
private void Start()
|
||||||
|
{
|
||||||
|
if (target == null)
|
||||||
|
{
|
||||||
|
CreateNewRandomTarget();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Update()
|
||||||
|
{
|
||||||
|
if (Input.GetKeyDown(KeyCode.Space))
|
||||||
|
{
|
||||||
|
LaunchProjectile();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Input.GetKeyDown(KeyCode.R))
|
||||||
|
{
|
||||||
|
CreateNewRandomTarget();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void CreateNewRandomTarget()
|
||||||
|
{
|
||||||
|
var center = new Vector3(
|
||||||
|
transform.position.x + centerOffset.x,
|
||||||
|
0.1f,
|
||||||
|
transform.position.z + centerOffset.y
|
||||||
|
);
|
||||||
|
|
||||||
|
var randomCircle = Random.insideUnitCircle * randomRadius;
|
||||||
|
|
||||||
|
var randomPosition = new Vector3(
|
||||||
|
center.x + randomCircle.x,
|
||||||
|
0.1f,
|
||||||
|
center.z + randomCircle.y
|
||||||
|
);
|
||||||
|
|
||||||
|
if (target)
|
||||||
|
{
|
||||||
|
target.position = randomPosition;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
var newTarget = new GameObject("RandomTarget")
|
||||||
|
{
|
||||||
|
transform =
|
||||||
|
{
|
||||||
|
position = randomPosition
|
||||||
|
}
|
||||||
|
};
|
||||||
|
target = newTarget.transform;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (showTargetCircle && targetCirclePrefab)
|
||||||
|
{
|
||||||
|
SpawnTargetCircle(randomPosition);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SpawnTargetCircle(Vector3 position)
|
||||||
|
{
|
||||||
|
var circle = Instantiate(targetCirclePrefab, position, Quaternion.identity);
|
||||||
|
var circlePos = circle.transform.position;
|
||||||
|
circlePos.y = 0.05f;
|
||||||
|
circle.transform.position = circlePos;
|
||||||
|
|
||||||
|
if (circleLifetime > 0)
|
||||||
|
{
|
||||||
|
Destroy(circle, circleLifetime);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void LaunchProjectile()
|
||||||
|
{
|
||||||
|
if (!target) return;
|
||||||
|
|
||||||
|
var direction = Projectile.GetFireDirection(
|
||||||
|
transform.position,
|
||||||
|
target.position,
|
||||||
|
launchSpeed,
|
||||||
|
useHighTrajectory
|
||||||
|
);
|
||||||
|
|
||||||
|
if (direction == Vector3.zero) return;
|
||||||
|
|
||||||
|
var projObj = Instantiate(projectilePrefab, transform.position, Quaternion.identity);
|
||||||
|
var projectile = projObj.GetComponent<Projectile>();
|
||||||
|
projectile.Set(transform.position, direction, launchSpeed);
|
||||||
|
|
||||||
|
CreateNewRandomTarget();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void SetTargetAtPosition(Vector3 position)
|
||||||
|
{
|
||||||
|
var targetPos = position;
|
||||||
|
targetPos.y = 0.1f;
|
||||||
|
|
||||||
|
if (target != null)
|
||||||
|
{
|
||||||
|
target.position = targetPos;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
var newTarget = new GameObject("ManualTarget")
|
||||||
|
{
|
||||||
|
transform =
|
||||||
|
{
|
||||||
|
position = targetPos
|
||||||
|
}
|
||||||
|
};
|
||||||
|
target = newTarget.transform;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (showTargetCircle && targetCirclePrefab != null)
|
||||||
|
{
|
||||||
|
SpawnTargetCircle(targetPos);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnDrawGizmosSelected()
|
||||||
|
{
|
||||||
|
Gizmos.color = new Color(1f, 0f, 0f, 0.2f);
|
||||||
|
var center = new Vector3(
|
||||||
|
transform.position.x + centerOffset.x,
|
||||||
|
0.1f,
|
||||||
|
transform.position.z + centerOffset.y
|
||||||
|
);
|
||||||
|
Gizmos.DrawWireSphere(center, randomRadius);
|
||||||
|
|
||||||
|
if (target != null)
|
||||||
|
{
|
||||||
|
var reachable = Projectile.IsTargetReachable(transform.position, target.position, launchSpeed);
|
||||||
|
Gizmos.color = reachable ? Color.green : Color.red;
|
||||||
|
Gizmos.DrawLine(transform.position, target.position);
|
||||||
|
|
||||||
|
Gizmos.color = Color.yellow;
|
||||||
|
Gizmos.DrawSphere(target.position, 0.2f);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: b27a3f528aa34fda91c0941bcdecaa7b
|
||||||
|
timeCreated: 1771338982
|
||||||
@@ -0,0 +1,29 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.SceneManagement;
|
||||||
|
using UnityEngine.UI;
|
||||||
|
|
||||||
|
namespace Code.UI
|
||||||
|
{
|
||||||
|
public class Lab5Controller : MonoBehaviour
|
||||||
|
{
|
||||||
|
[SerializeField] private Button toMenuButton;
|
||||||
|
[SerializeField] private Button resetButton;
|
||||||
|
|
||||||
|
private void Awake()
|
||||||
|
{
|
||||||
|
if (toMenuButton != null)
|
||||||
|
toMenuButton.onClick.AddListener(LoadMainMenu);
|
||||||
|
if (resetButton != null)
|
||||||
|
resetButton.onClick.AddListener(Reload);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void LoadMainMenu() => SceneManager.LoadScene("MainMenu");
|
||||||
|
private static void Reload() => SceneManager.LoadScene("Lab5");
|
||||||
|
|
||||||
|
private void OnDestroy()
|
||||||
|
{
|
||||||
|
if (toMenuButton != null) toMenuButton.onClick.RemoveListener(LoadMainMenu);
|
||||||
|
if (resetButton != null) resetButton.onClick.RemoveListener(Reload);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 8c5f2c4a8fc14bdbba67bc7d889e9d6a
|
||||||
|
timeCreated: 1771340087
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 19f3e4ff854dad7af9105d3aeed48826
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,217 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!1 &2932435389804188591
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 1634209849134354867}
|
||||||
|
m_Layer: 0
|
||||||
|
m_Name: Circle
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &1634209849134354867
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 2932435389804188591}
|
||||||
|
serializedVersion: 2
|
||||||
|
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: 277201755933957318}
|
||||||
|
- {fileID: 4599992228440650657}
|
||||||
|
m_Father: {fileID: 0}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!1 &3621161290221032333
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 277201755933957318}
|
||||||
|
- component: {fileID: 8386818569088277367}
|
||||||
|
m_Layer: 0
|
||||||
|
m_Name: Circle1
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &277201755933957318
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 3621161290221032333}
|
||||||
|
serializedVersion: 2
|
||||||
|
m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068}
|
||||||
|
m_LocalPosition: {x: 0, y: 0.1, z: 0}
|
||||||
|
m_LocalScale: {x: 3, y: 3, z: 3}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 1634209849134354867}
|
||||||
|
m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0}
|
||||||
|
--- !u!212 &8386818569088277367
|
||||||
|
SpriteRenderer:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 3621161290221032333}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_CastShadows: 0
|
||||||
|
m_ReceiveShadows: 0
|
||||||
|
m_DynamicOccludee: 1
|
||||||
|
m_StaticShadowCaster: 0
|
||||||
|
m_MotionVectors: 1
|
||||||
|
m_LightProbeUsage: 1
|
||||||
|
m_ReflectionProbeUsage: 1
|
||||||
|
m_RayTracingMode: 0
|
||||||
|
m_RayTraceProcedural: 0
|
||||||
|
m_RayTracingAccelStructBuildFlagsOverride: 0
|
||||||
|
m_RayTracingAccelStructBuildFlags: 1
|
||||||
|
m_SmallMeshCulling: 1
|
||||||
|
m_ForceMeshLod: -1
|
||||||
|
m_MeshLodSelectionBias: 0
|
||||||
|
m_RenderingLayerMask: 1
|
||||||
|
m_RendererPriority: 0
|
||||||
|
m_Materials:
|
||||||
|
- {fileID: 2100000, guid: 9dfc825aed78fcd4ba02077103263b40, 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: 0
|
||||||
|
m_MinimumChartSize: 4
|
||||||
|
m_AutoUVMaxDistance: 0.5
|
||||||
|
m_AutoUVMaxAngle: 89
|
||||||
|
m_LightmapParameters: {fileID: 0}
|
||||||
|
m_GlobalIlluminationMeshLod: 0
|
||||||
|
m_SortingLayerID: 0
|
||||||
|
m_SortingLayer: 0
|
||||||
|
m_SortingOrder: 0
|
||||||
|
m_MaskInteraction: 0
|
||||||
|
m_Sprite: {fileID: -2413806693520163455, guid: a86470a33a6bf42c4b3595704624658b, type: 3}
|
||||||
|
m_Color: {r: 1, g: 0.2688679, b: 0.2688679, a: 1}
|
||||||
|
m_FlipX: 0
|
||||||
|
m_FlipY: 0
|
||||||
|
m_DrawMode: 0
|
||||||
|
m_Size: {x: 1, y: 1}
|
||||||
|
m_AdaptiveModeThreshold: 0.5
|
||||||
|
m_SpriteTileMode: 0
|
||||||
|
m_WasSpriteAssigned: 1
|
||||||
|
m_SpriteSortPoint: 0
|
||||||
|
--- !u!1 &7149942544953387665
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 4599992228440650657}
|
||||||
|
- component: {fileID: 8593647744010509260}
|
||||||
|
m_Layer: 0
|
||||||
|
m_Name: Circle2
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &4599992228440650657
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 7149942544953387665}
|
||||||
|
serializedVersion: 2
|
||||||
|
m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068}
|
||||||
|
m_LocalPosition: {x: 0, y: 0.11, z: 0}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 1634209849134354867}
|
||||||
|
m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0}
|
||||||
|
--- !u!212 &8593647744010509260
|
||||||
|
SpriteRenderer:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 7149942544953387665}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_CastShadows: 0
|
||||||
|
m_ReceiveShadows: 0
|
||||||
|
m_DynamicOccludee: 1
|
||||||
|
m_StaticShadowCaster: 0
|
||||||
|
m_MotionVectors: 1
|
||||||
|
m_LightProbeUsage: 1
|
||||||
|
m_ReflectionProbeUsage: 1
|
||||||
|
m_RayTracingMode: 0
|
||||||
|
m_RayTraceProcedural: 0
|
||||||
|
m_RayTracingAccelStructBuildFlagsOverride: 0
|
||||||
|
m_RayTracingAccelStructBuildFlags: 1
|
||||||
|
m_SmallMeshCulling: 1
|
||||||
|
m_ForceMeshLod: -1
|
||||||
|
m_MeshLodSelectionBias: 0
|
||||||
|
m_RenderingLayerMask: 1
|
||||||
|
m_RendererPriority: 0
|
||||||
|
m_Materials:
|
||||||
|
- {fileID: 2100000, guid: 9dfc825aed78fcd4ba02077103263b40, 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: 0
|
||||||
|
m_MinimumChartSize: 4
|
||||||
|
m_AutoUVMaxDistance: 0.5
|
||||||
|
m_AutoUVMaxAngle: 89
|
||||||
|
m_LightmapParameters: {fileID: 0}
|
||||||
|
m_GlobalIlluminationMeshLod: 0
|
||||||
|
m_SortingLayerID: 0
|
||||||
|
m_SortingLayer: 0
|
||||||
|
m_SortingOrder: 0
|
||||||
|
m_MaskInteraction: 0
|
||||||
|
m_Sprite: {fileID: -2413806693520163455, guid: a86470a33a6bf42c4b3595704624658b, type: 3}
|
||||||
|
m_Color: {r: 0.45724908, g: 1, b: 0.08962262, a: 1}
|
||||||
|
m_FlipX: 0
|
||||||
|
m_FlipY: 0
|
||||||
|
m_DrawMode: 0
|
||||||
|
m_Size: {x: 1, y: 1}
|
||||||
|
m_AdaptiveModeThreshold: 0.5
|
||||||
|
m_SpriteTileMode: 0
|
||||||
|
m_WasSpriteAssigned: 1
|
||||||
|
m_SpriteSortPoint: 0
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 6e138f3bc66810637ab342ec9c2d4f97
|
||||||
|
PrefabImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,127 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!1 &1785419383060186930
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 495935805550002677}
|
||||||
|
- component: {fileID: 8212351846777595044}
|
||||||
|
- component: {fileID: 7821649624900443049}
|
||||||
|
- component: {fileID: 2997481168577177134}
|
||||||
|
- component: {fileID: 6723913554774615184}
|
||||||
|
m_Layer: 0
|
||||||
|
m_Name: Projectile
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &495935805550002677
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1785419383060186930}
|
||||||
|
serializedVersion: 2
|
||||||
|
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: 0}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!33 &8212351846777595044
|
||||||
|
MeshFilter:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1785419383060186930}
|
||||||
|
m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0}
|
||||||
|
--- !u!23 &7821649624900443049
|
||||||
|
MeshRenderer:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1785419383060186930}
|
||||||
|
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_RayTracingAccelStructBuildFlagsOverride: 0
|
||||||
|
m_RayTracingAccelStructBuildFlags: 1
|
||||||
|
m_SmallMeshCulling: 1
|
||||||
|
m_ForceMeshLod: -1
|
||||||
|
m_MeshLodSelectionBias: 0
|
||||||
|
m_RenderingLayerMask: 1
|
||||||
|
m_RendererPriority: 0
|
||||||
|
m_Materials:
|
||||||
|
- {fileID: 2100000, guid: ddfb323e19afdc8a2bc4a12cdadfec71, 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_GlobalIlluminationMeshLod: 0
|
||||||
|
m_SortingLayerID: 0
|
||||||
|
m_SortingLayer: 0
|
||||||
|
m_SortingOrder: 0
|
||||||
|
m_MaskInteraction: 0
|
||||||
|
m_AdditionalVertexStreams: {fileID: 0}
|
||||||
|
--- !u!135 &2997481168577177134
|
||||||
|
SphereCollider:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1785419383060186930}
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_IncludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_ExcludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_LayerOverridePriority: 0
|
||||||
|
m_IsTrigger: 0
|
||||||
|
m_ProvidesContacts: 0
|
||||||
|
m_Enabled: 1
|
||||||
|
serializedVersion: 3
|
||||||
|
m_Radius: 0.5
|
||||||
|
m_Center: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!114 &6723913554774615184
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1785419383060186930}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 061a9f303af54c5c976f1aeaa6581a23, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: Assembly-CSharp::Code.Lab5.Projectile
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: ce49d92ff2beab68b8c86ad68132a791
|
||||||
|
PrefabImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
File diff suppressed because it is too large.
Load diff
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 3654363e0cafefd028f4d816ed53bf71
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -26,6 +26,9 @@ EditorBuildSettings:
|
|||||||
- enabled: 1
|
- enabled: 1
|
||||||
path: Assets/Resources/Scenes/Lab4.unity
|
path: Assets/Resources/Scenes/Lab4.unity
|
||||||
guid: ee8e25040bf8dca46a66cc5bde646eb9
|
guid: ee8e25040bf8dca46a66cc5bde646eb9
|
||||||
|
- enabled: 1
|
||||||
|
path: Assets/Resources/Scenes/Lab5.unity
|
||||||
|
guid: 3654363e0cafefd028f4d816ed53bf71
|
||||||
m_configObjects:
|
m_configObjects:
|
||||||
com.unity.input.settings.actions: {fileID: -944628639613478452, guid: 052faaac586de48259a63d0c4782560b, type: 3}
|
com.unity.input.settings.actions: {fileID: -944628639613478452, guid: 052faaac586de48259a63d0c4782560b, type: 3}
|
||||||
m_UseUCBPForAssetBundles: 0
|
m_UseUCBPForAssetBundles: 0
|
||||||
@@ -922,7 +922,7 @@ PlayerSettings:
|
|||||||
qnxGraphicConfPath:
|
qnxGraphicConfPath:
|
||||||
apiCompatibilityLevel: 6
|
apiCompatibilityLevel: 6
|
||||||
captureStartupLogs: {}
|
captureStartupLogs: {}
|
||||||
activeInputHandler: 1
|
activeInputHandler: 2
|
||||||
windowsGamepadBackendHint: 0
|
windowsGamepadBackendHint: 0
|
||||||
cloudProjectId:
|
cloudProjectId:
|
||||||
framebufferDepthMemorylessMode: 0
|
framebufferDepthMemorylessMode: 0
|
||||||
|
|||||||
Reference in new issue
Block a user