Merge branch 'main' into ssl/250428
All checks were successful
Code Review / code-review (pull_request) Successful in 11s

This commit is contained in:
SullyunShin
2025-04-30 17:58:45 +09:00
15 changed files with 1004 additions and 4 deletions

View File

@@ -0,0 +1,9 @@
{
"configs": [
{
"host": "http://220.90.135.42",
"port": 3037,
"accessToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6MSwidXNlcmlkIjoic3lzdGVtIiwibmFtZSI6IuyLnOyKpO2FnOq0gOumrOyekCIsImF1dGgiOiJzeXN0ZW0iLCJjb21wYW55SWQiOm51bGwsImlhdCI6MTczNTYwOTgyOCwiZXhwIjoxNzcxNjA5ODI4fQ.ApXLL_RsWWaa2KwRKrg1z8iT9MNYdZFqN-6Mn1Lvq8Q"
}
]
}

View File

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

View File

@@ -0,0 +1,25 @@
using UnityEngine;
using System;
using System.Collections.Generic;
namespace Octopus.Simulator
{
public enum SimulationType
{
generator_event,
transporter_event,
processor_event,
resource_component_event
}
[Serializable]
public class BaseSimulationMessage
{
public string type;
public string _event;
public string component_type;
public string component_id;
//public List<string> data;
public string timestamp;
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: ba32b616352b8374d9b54c448e19ae15

View File

@@ -8,6 +8,7 @@ using System;
using System.Collections.Generic;
using System.Text;
using System.Collections;
using Octopus.Simulator;
namespace Octopus.Simulator.Networks
{
@@ -16,16 +17,33 @@ namespace Octopus.Simulator.Networks
public static MQTTManager mqttManager;
public Dictionary<string, MQTTClient> clientTable = new Dictionary<string, MQTTClient>();
public BaseSimulationMessage basemessage;
[SerializeField]
string MQTTpath = "";
MQTTClient client;
[SerializeField]
string _topic;
[SerializeField]
public string topic
{
get
{
return _topic;
}
set
{
_topic = value;
}
}
public event Action onConnectedEvent;
public event Action<DisconnectReasonCodes, string> onDisconnectedEvent;
public event Action<string, string> onMessageReceived;
public event Action<string> onErrorEvent;
public event Action onCompletedTimerEvent;
public
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Awake()
{
@@ -52,7 +70,7 @@ namespace Octopus.Simulator.Networks
}
}
public void SubscriptionTopic(MQTTClient client, string topic)
public void SubscribeTopic(MQTTClient client, string topic)
{
client.AddTopicAlias(topic);
@@ -60,7 +78,11 @@ namespace Octopus.Simulator.Networks
.WithMessageCallback(OnMessage)
.WithMaximumQoS(QoSLevels.ExactlyOnceDelivery)
.BeginSubscribe();
}
public void UnsubscribeTopic(MQTTClient client,string topic)
{
client.CreateUnsubscribePacketBuilder(topic).BeginUnsubscribe();
}
public void Connect(string clientName, string host,int port)
@@ -79,10 +101,10 @@ namespace Octopus.Simulator.Networks
public event Action<MQTTClient> onConnected;
private void OnConnected(MQTTClient client,string clientName)
{
Debug.Log("connect");
clientTable.Add(clientName, client);
onConnected?.Invoke(client);
SubscriptionTopic(client, "simulation/435faabb-6183-4690-a81f-027dd96d5827/#");
SubscribeTopic(client, topic);
}
private ConnectPacketBuilder ConnectPacketBuilderCallback(MQTTClient client, ConnectPacketBuilder builder)
@@ -99,6 +121,7 @@ namespace Octopus.Simulator.Networks
{
var payload = Encoding.UTF8.GetString(message.Payload.Data, message.Payload.Offset, message.Payload.Count);
Debug.Log(payload);
basemessage = JsonConvert.DeserializeObject<BaseSimulationMessage>(payload);
onMessageReceived?.Invoke(topicName, payload);
}

View File

@@ -0,0 +1,151 @@
using UnityEngine;
using System;
using System.Collections.Generic;
using Newtonsoft.Json;
namespace Octopus.Simulator
{
[Serializable]
public class SimulationInfo
{
public int status;
public string code;
public string message;
public SimulationData data;
public Meta meta;
public string timestamp;
}
[Serializable]
public class SimulationData
{
public int id;
public int projectId;
public int logicId;
public int userId;
public string name;
public string simulationCode;
public logicData logicData;
public Parameters parameters;
public string status;
public string resultData;
public string createdAt;
public string updatedAt;
public string deletedAt;
public SimulationProject project;
public SimulationComponent component;
public SimulationUser user;
}
[Serializable]
public class logicData
{
public string name;
public bool trace;
public List<LogicQueue> queues;
public List<LogicResources> resources;
public List<LogicComponents> components;
public int simulation_time;
}
public class Parameters
{
public int speed;
public int duration;
public bool realtime;
}
[Serializable]
public class LogicQueue
{
public string name;
public string description;
}
[Serializable]
public class LogicResources
{
public string name;
public int capacity;
public string description;
public int repair_time;
public double speed_factor;
public OperationHours OperationHours;
public int breakdown_interval;
}
[Serializable]
public class OperationHours
{
public int end;
public int start;
}
[Serializable]
public class LogicComponents
{
public string name;
public int rate;
public string type;
public string description;
public string output_queue;
public string output_resource;
public int transport_time;
public string required_resource;
public int processing_time;
}
[Serializable]
public class SimulationProject
{
public int id;
public int userId;
public string name;
public string description;
public string createdAt;
public string updatedAt;
}
[Serializable]
public class SimulationComponent
{
public int id;
public int userId;
public string name;
public string description;
public string createdAt;
public string updatedAt;
}
public class SimulationUser
{
public int id;
public string ccPositionId;
public string userid;
public string name;
public string auth;
public string email;
public bool active;
public string joinDate;
public bool activeClassifyRule;
public string signatureId;
public string employeeNumber;
public string resignationDate;
public string profileId;
public string createdAt;
public string updatedAt;
}
[Serializable]
public class Meta
{
public Param param;
}
[Serializable]
public class Param
{
public int id;
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 1072c1c763a385641be459bd4dec0d37

View File

@@ -0,0 +1,17 @@
using UnityEngine;
using System.Collections.Generic;
namespace Octopus.Simulator.Networks
{
public class WebConfigList
{
public List<WebConfig> configs = new List<WebConfig>();
}
public class WebConfig
{
public string host;
public int port;
public string accessToken;
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 9fb125d8e16ae974e916d72c4b58ea5a

View File

@@ -0,0 +1,171 @@
using Newtonsoft.Json;
using Octopus.Simulator.Networks;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using Unity.VisualScripting.Antlr3.Runtime;
using UnityEngine;
using UnityEngine.Networking;
using Octopus.Simulator;
namespace Octopus.Simulator.Networks
{
//API를 통해 서버와 통신하기 위한 함수들이 내장되어 있습니다.
//Post, Get. Put을 사용하며, Post의 경우엔 Class를 입력으로 받아 Json형식으로 변환하여 업로드합니다.
//비동기로 실행하기 위해 Coroutine으로 제작되었으며, callback의 bool값을 통해 서버로부터
//정상적으로 API가 입력, 결과가 출력되었는지를 확인할 수 있습니다.
public class WebManager : MonoBehaviour
{
public static WebManager webManager;
public SimulationInfo info;
[SerializeField]
string WebPath = "";
string host = "";
string token = "";
int port;
string http;
void Awake()
{
webManager = this;
SetMqttConfig();
Request_Get("/simulation/histories/3", (flag, value) =>
{
if (flag)
{
Debug.Log(value);
info = JsonConvert.DeserializeObject<SimulationInfo>(value);
}
});
}
private void SetMqttConfig()
{
string path = Application.streamingAssetsPath + WebPath;
string json;
using (StreamReader reader = new StreamReader(path))
{
json = reader.ReadToEnd();
}
WebConfigList ConfigList = JsonConvert.DeserializeObject<WebConfigList>(json);
var config = ConfigList.configs[0];
host = config.host;
port = config.port;
token = config.accessToken;
http = $"{host}:{port}";
Debug.Log(http);
}
//Post동작을 실행하는 함수입니다
public void Request_Post(object inputclass, string type, System.Action<bool, string> ResultCallback)
{
//입력된 클래스를 json데이터로 변환합니다.
string json = JsonConvert.SerializeObject(inputclass);
StartCoroutine(Web_Post(http + type, json, (result, text) =>
{
ResultCallback(result, text);
}));
}
//Get동작을 실행하는 함수입니다.
public void Request_Get(string type, System.Action<bool, string> ResultCallback)
{
StartCoroutine(Web_Get(http + type, (result, text) =>
{
ResultCallback(result, text);
}));
}
//Put동작을 실행하는 함수입니다.
public void Request_Put(string type, System.Action<bool, string> ResultCallback)
{
StartCoroutine(Web_Put(http + type, (result, text) =>
{
ResultCallback(result, text);
}));
}
IEnumerator Web_Post(string URL, string json, System.Action<bool, string> callback)
{
using (UnityWebRequest request = UnityWebRequest.PostWwwForm(URL, json))
{
byte[] jsonToSend = new System.Text.UTF8Encoding().GetBytes(json);
request.uploadHandler.Dispose();
request.uploadHandler = new UploadHandlerRaw(jsonToSend);
request.downloadHandler = (DownloadHandler)new DownloadHandlerBuffer();
request.SetRequestHeader("Content-Type", "application/json");
yield return request.SendWebRequest();
//result가 에러로 왔다면
if ((request.result == UnityWebRequest.Result.ConnectionError) || (request.result == UnityWebRequest.Result.ProtocolError))
{
Debug.Log(request.error);
//callback을 false로 하고 텍스트를 리턴합니다.
callback(false, request.downloadHandler.text);
}
else
{
//result가 에러가 아니라면, callback을 true로 하고 텍스트를 리턴합니다.
Debug.Log(request.downloadHandler.text);
callback(true, request.downloadHandler.text);
}
}
}
IEnumerator Web_Get(string URL, System.Action<bool, string> callback)
{
using (UnityWebRequest request = UnityWebRequest.Get(URL))
{
request.downloadHandler = (DownloadHandler)new DownloadHandlerBuffer();
request.SetRequestHeader("Authorization", "Bearer " + token);
yield return request.SendWebRequest();
//result가 에러로 왔다면
if ((request.result == UnityWebRequest.Result.ConnectionError) || (request.result == UnityWebRequest.Result.ProtocolError))
{
Debug.Log(request.error);
//callback을 false로 하고 텍스트를 리턴합니다.
callback(false, request.downloadHandler.text);
}
else
{
//result가 에러가 아니라면, callback을 true로 하고 텍스트를 리턴합니다.
Debug.Log(request.downloadHandler.text);
callback(true, request.downloadHandler.text);
}
}
}
IEnumerator Web_Put(string URL, System.Action<bool, string> callback)
{
byte[] data = { };
using (UnityWebRequest request = UnityWebRequest.Put(URL, data))
{
request.downloadHandler = (DownloadHandler)new DownloadHandlerBuffer();
request.SetRequestHeader("Content-Type", "application/json");
yield return request.SendWebRequest();
//result가 에러로 왔다면
if ((request.result == UnityWebRequest.Result.ConnectionError) || (request.result == UnityWebRequest.Result.ProtocolError))
{
Debug.Log(request.error);
//callback을 false로 하고 텍스트를 리턴합니다.
callback(false, request.downloadHandler.text);
}
else
{
//result가 에러가 아니라면, callback을 true로 하고 텍스트를 리턴합니다.
Debug.Log(request.downloadHandler.text);
callback(true, request.downloadHandler.text);
}
}
}
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 128c906b71c22fb428a05e13831af396

461
Assets/asdf.unity Normal file
View File

@@ -0,0 +1,461 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!29 &1
OcclusionCullingSettings:
m_ObjectHideFlags: 0
serializedVersion: 2
m_OcclusionBakeSettings:
smallestOccluder: 5
smallestHole: 0.25
backfaceThreshold: 100
m_SceneGUID: 00000000000000000000000000000000
m_OcclusionCullingData: {fileID: 0}
--- !u!104 &2
RenderSettings:
m_ObjectHideFlags: 0
serializedVersion: 10
m_Fog: 0
m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
m_FogMode: 3
m_FogDensity: 0.01
m_LinearFogStart: 0
m_LinearFogEnd: 300
m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1}
m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1}
m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1}
m_AmbientIntensity: 1
m_AmbientMode: 0
m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0}
m_HaloStrength: 0.5
m_FlareStrength: 1
m_FlareFadeSpeed: 3
m_HaloTexture: {fileID: 0}
m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
m_DefaultReflectionMode: 0
m_DefaultReflectionResolution: 128
m_ReflectionBounces: 1
m_ReflectionIntensity: 1
m_CustomReflection: {fileID: 0}
m_Sun: {fileID: 0}
m_UseRadianceAmbientProbe: 0
--- !u!157 &3
LightmapSettings:
m_ObjectHideFlags: 0
serializedVersion: 13
m_BakeOnSceneLoad: 0
m_GISettings:
serializedVersion: 2
m_BounceScale: 1
m_IndirectOutputScale: 1
m_AlbedoBoost: 1
m_EnvironmentLightingMode: 0
m_EnableBakedLightmaps: 1
m_EnableRealtimeLightmaps: 0
m_LightmapEditorSettings:
serializedVersion: 12
m_Resolution: 2
m_BakeResolution: 40
m_AtlasSize: 1024
m_AO: 0
m_AOMaxDistance: 1
m_CompAOExponent: 1
m_CompAOExponentDirect: 0
m_ExtractAmbientOcclusion: 0
m_Padding: 2
m_LightmapParameters: {fileID: 0}
m_LightmapsBakeMode: 1
m_TextureCompression: 1
m_ReflectionCompression: 2
m_MixedBakeMode: 2
m_BakeBackend: 1
m_PVRSampling: 1
m_PVRDirectSampleCount: 32
m_PVRSampleCount: 512
m_PVRBounces: 2
m_PVREnvironmentSampleCount: 256
m_PVREnvironmentReferencePointCount: 2048
m_PVRFilteringMode: 1
m_PVRDenoiserTypeDirect: 1
m_PVRDenoiserTypeIndirect: 1
m_PVRDenoiserTypeAO: 1
m_PVRFilterTypeDirect: 0
m_PVRFilterTypeIndirect: 0
m_PVRFilterTypeAO: 0
m_PVREnvironmentMIS: 1
m_PVRCulling: 1
m_PVRFilteringGaussRadiusDirect: 1
m_PVRFilteringGaussRadiusIndirect: 1
m_PVRFilteringGaussRadiusAO: 1
m_PVRFilteringAtrousPositionSigmaDirect: 0.5
m_PVRFilteringAtrousPositionSigmaIndirect: 2
m_PVRFilteringAtrousPositionSigmaAO: 1
m_ExportTrainingData: 0
m_TrainingDataDestination: TrainingData
m_LightProbeSampleCountMultiplier: 4
m_LightingDataAsset: {fileID: 20201, guid: 0000000000000000f000000000000000, type: 0}
m_LightingSettings: {fileID: 0}
--- !u!196 &4
NavMeshSettings:
serializedVersion: 2
m_ObjectHideFlags: 0
m_BuildSettings:
serializedVersion: 3
agentTypeID: 0
agentRadius: 0.5
agentHeight: 2
agentSlope: 45
agentClimb: 0.4
ledgeDropHeight: 0
maxJumpAcrossDistance: 0
minRegionArea: 2
manualCellSize: 0
cellSize: 0.16666667
manualTileSize: 0
tileSize: 256
buildHeightMesh: 0
maxJobWorkers: 0
preserveTilesOutsideBounds: 0
debug:
m_Flags: 0
m_NavMeshData: {fileID: 0}
--- !u!1 &139504208
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 139504211}
- component: {fileID: 139504210}
- component: {fileID: 139504209}
- component: {fileID: 139504213}
- component: {fileID: 139504212}
- component: {fileID: 139504214}
m_Layer: 0
m_Name: Main Camera
m_TagString: MainCamera
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!81 &139504209
AudioListener:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 139504208}
m_Enabled: 1
--- !u!20 &139504210
Camera:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 139504208}
m_Enabled: 1
serializedVersion: 2
m_ClearFlags: 1
m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0}
m_projectionMatrixMode: 1
m_GateFitMode: 2
m_FOVAxisMode: 0
m_Iso: 200
m_ShutterSpeed: 0.005
m_Aperture: 16
m_FocusDistance: 10
m_FocalLength: 50
m_BladeCount: 5
m_Curvature: {x: 2, y: 11}
m_BarrelClipping: 0.25
m_Anamorphism: 0
m_SensorSize: {x: 36, y: 24}
m_LensShift: {x: 0, y: 0}
m_NormalizedViewPortRect:
serializedVersion: 2
x: 0
y: 0
width: 1
height: 1
near clip plane: 0.3
far clip plane: 1000
field of view: 60
orthographic: 0
orthographic size: 5
m_Depth: -1
m_CullingMask:
serializedVersion: 2
m_Bits: 4294967295
m_RenderingPath: -1
m_TargetTexture: {fileID: 0}
m_TargetDisplay: 0
m_TargetEye: 3
m_HDR: 1
m_AllowMSAA: 1
m_AllowDynamicResolution: 0
m_ForceIntoRT: 0
m_OcclusionCulling: 1
m_StereoConvergence: 10
m_StereoSeparation: 0.022
--- !u!4 &139504211
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 139504208}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 1, z: -10}
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!114 &139504212
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 139504208}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6c81b4b1ce2fb4345950d24862ca380c, type: 3}
m_Name:
m_EditorClassIdentifier:
basemessage:
type:
_event:
component_type:
component_id:
timestamp:
MQTTpath: /mqttconfig.json
_topic: simulation/7da9c033-5c75-4212-8eba-bf28f325e122/#
--- !u!114 &139504213
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 139504208}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3}
m_Name:
m_EditorClassIdentifier:
m_RenderShadows: 1
m_RequiresDepthTextureOption: 2
m_RequiresOpaqueTextureOption: 2
m_CameraType: 0
m_Cameras: []
m_RendererIndex: -1
m_VolumeLayerMask:
serializedVersion: 2
m_Bits: 1
m_VolumeTrigger: {fileID: 0}
m_VolumeFrameworkUpdateModeOption: 2
m_RenderPostProcessing: 0
m_Antialiasing: 0
m_AntialiasingQuality: 2
m_StopNaN: 0
m_Dithering: 0
m_ClearDepth: 1
m_AllowXRRendering: 1
m_AllowHDROutput: 1
m_UseScreenCoordOverride: 0
m_ScreenSizeOverride: {x: 0, y: 0, z: 0, w: 0}
m_ScreenCoordScaleBias: {x: 0, y: 0, z: 0, w: 0}
m_RequiresDepthTexture: 0
m_RequiresColorTexture: 0
m_Version: 2
m_TaaSettings:
m_Quality: 3
m_FrameInfluence: 0.1
m_JitterScale: 1
m_MipBias: 0
m_VarianceClampScale: 0.9
m_ContrastAdaptiveSharpening: 0
--- !u!114 &139504214
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 139504208}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 128c906b71c22fb428a05e13831af396, type: 3}
m_Name:
m_EditorClassIdentifier:
info:
status: 0
code:
message:
data:
id: 0
projectId: 0
logicId: 0
userId: 0
name:
simulationCode:
logicData:
name:
trace: 0
queues: []
resources: []
components: []
simulation_time: 0
status:
resultData:
createdAt:
updatedAt:
deletedAt:
project:
id: 0
userId: 0
name:
description:
createdAt:
updatedAt:
component:
id: 0
userId: 0
name:
description:
createdAt:
updatedAt:
meta:
param:
id: 0
timestamp:
WebPath: /webconfig.json
--- !u!1 &1724353346
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1724353349}
- component: {fileID: 1724353348}
- component: {fileID: 1724353347}
m_Layer: 0
m_Name: Directional Light
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &1724353347
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1724353346}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Version: 3
m_UsePipelineSettings: 1
m_AdditionalLightsShadowResolutionTier: 2
m_LightLayerMask: 1
m_RenderingLayers: 1
m_CustomShadowLayers: 0
m_ShadowLayerMask: 1
m_ShadowRenderingLayers: 1
m_LightCookieSize: {x: 1, y: 1}
m_LightCookieOffset: {x: 0, y: 0}
m_SoftShadowQuality: 0
--- !u!108 &1724353348
Light:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1724353346}
m_Enabled: 1
serializedVersion: 11
m_Type: 1
m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1}
m_Intensity: 1
m_Range: 10
m_SpotAngle: 30
m_InnerSpotAngle: 21.80208
m_CookieSize: 10
m_Shadows:
m_Type: 2
m_Resolution: -1
m_CustomResolution: -1
m_Strength: 1
m_Bias: 0.05
m_NormalBias: 0.4
m_NearPlane: 0.2
m_CullingMatrixOverride:
e00: 1
e01: 0
e02: 0
e03: 0
e10: 0
e11: 1
e12: 0
e13: 0
e20: 0
e21: 0
e22: 1
e23: 0
e30: 0
e31: 0
e32: 0
e33: 1
m_UseCullingMatrixOverride: 0
m_Cookie: {fileID: 0}
m_DrawHalo: 0
m_Flare: {fileID: 0}
m_RenderMode: 0
m_CullingMask:
serializedVersion: 2
m_Bits: 4294967295
m_RenderingLayerMask: 1
m_Lightmapping: 4
m_LightShadowCasterMode: 0
m_AreaSize: {x: 1, y: 1}
m_BounceIntensity: 1
m_ColorTemperature: 6570
m_UseColorTemperature: 0
m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0}
m_UseBoundingSphereOverride: 0
m_UseViewFrustumForShadowCasterCull: 1
m_ForceVisible: 0
m_ShadowRadius: 0
m_ShadowAngle: 0
m_LightUnit: 1
m_LuxAtDistance: 1
m_EnableSpotReflector: 1
--- !u!4 &1724353349
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1724353346}
serializedVersion: 2
m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261}
m_LocalPosition: {x: 0, y: 3, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0}
--- !u!1660057539 &9223372036854775807
SceneRoots:
m_ObjectHideFlags: 0
m_Roots:
- {fileID: 139504211}
- {fileID: 1724353349}

7
Assets/asdf.unity.meta Normal file
View File

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

View File

@@ -925,6 +925,6 @@ PlayerSettings:
hmiLoadingImage: {fileID: 0}
platformRequiresReadableAssets: 0
virtualTexturingSupportEnabled: 0
insecureHttpOption: 0
insecureHttpOption: 2
androidVulkanDenyFilterList: []
androidVulkanAllowFilterList: []

View File

@@ -0,0 +1,121 @@
{
"templatePinStates": [],
"dependencyTypeInfos": [
{
"userAdded": false,
"type": "UnityEngine.AnimationClip",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEditor.Animations.AnimatorController",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEngine.AnimatorOverrideController",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEditor.Audio.AudioMixerController",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEngine.ComputeShader",
"defaultInstantiationMode": 1
},
{
"userAdded": false,
"type": "UnityEngine.Cubemap",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEngine.GameObject",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEditor.LightingDataAsset",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEngine.LightingSettings",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEngine.Material",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEditor.MonoScript",
"defaultInstantiationMode": 1
},
{
"userAdded": false,
"type": "UnityEngine.PhysicsMaterial",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEngine.PhysicsMaterial2D",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEngine.Rendering.PostProcessing.PostProcessProfile",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEngine.Rendering.PostProcessing.PostProcessResources",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEngine.Rendering.VolumeProfile",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEditor.SceneAsset",
"defaultInstantiationMode": 1
},
{
"userAdded": false,
"type": "UnityEngine.Shader",
"defaultInstantiationMode": 1
},
{
"userAdded": false,
"type": "UnityEngine.ShaderVariantCollection",
"defaultInstantiationMode": 1
},
{
"userAdded": false,
"type": "UnityEngine.Texture",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEngine.Texture2D",
"defaultInstantiationMode": 0
},
{
"userAdded": false,
"type": "UnityEngine.Timeline.TimelineAsset",
"defaultInstantiationMode": 0
}
],
"defaultDependencyTypeInfo": {
"userAdded": false,
"type": "<default_scene_template_dependencies>",
"defaultInstantiationMode": 1
},
"newSceneOverride": 0
}