add CapsuleAO
This commit is contained in:
parent
ed2954890d
commit
5c90956582
@ -376,6 +376,34 @@ Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 1895808927420028092, guid: e0307081c164aaf4a90933f08206654c, type: 3}
|
||||
m_PrefabInstance: {fileID: 16137617}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1 &16288157 stripped
|
||||
GameObject:
|
||||
m_CorrespondingSourceObject: {fileID: 7646894525478430618, guid: c708a3b79cd542b42bbfedb17e213bc1, type: 3}
|
||||
m_PrefabInstance: {fileID: 304572533}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!136 &16288159
|
||||
CapsuleCollider:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 16288157}
|
||||
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: 0
|
||||
serializedVersion: 2
|
||||
m_Radius: 0.06
|
||||
m_Height: 0.5
|
||||
m_Direction: 1
|
||||
m_Center: {x: 0, y: 0.2, z: 0}
|
||||
--- !u!1001 &16809590
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -2052,6 +2080,34 @@ Transform:
|
||||
- {fileID: 1986950423}
|
||||
m_Father: {fileID: 284166188}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 123.226, z: 0}
|
||||
--- !u!1 &155078580 stripped
|
||||
GameObject:
|
||||
m_CorrespondingSourceObject: {fileID: 6588263712964672146, guid: c708a3b79cd542b42bbfedb17e213bc1, type: 3}
|
||||
m_PrefabInstance: {fileID: 304572533}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!136 &155078582
|
||||
CapsuleCollider:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 155078580}
|
||||
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: 0
|
||||
serializedVersion: 2
|
||||
m_Radius: 0.05
|
||||
m_Height: 0.4
|
||||
m_Direction: 1
|
||||
m_Center: {x: 0, y: 0.1, z: 0}
|
||||
--- !u!43 &156464892
|
||||
Mesh:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -3183,6 +3239,81 @@ Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 7548273142197716425, guid: 74aeec6002edd31428364ee5a1c44741, type: 3}
|
||||
m_PrefabInstance: {fileID: 212415847}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1 &217261638
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 217261640}
|
||||
- component: {fileID: 217261639}
|
||||
m_Layer: 0
|
||||
m_Name: GameObject
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!114 &217261639
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 217261638}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 18dca6cc0a0961049ba14d81b04c5678, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
TestLightTrans: {fileID: 634813099}
|
||||
TestCharacterTrans: {fileID: 1880735404}
|
||||
TestW: 1
|
||||
--- !u!4 &217261640
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 217261638}
|
||||
serializedVersion: 2
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: -15.869873, y: -8.55654, z: -127.40423}
|
||||
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!1 &221918180 stripped
|
||||
GameObject:
|
||||
m_CorrespondingSourceObject: {fileID: 726316068312649072, guid: c708a3b79cd542b42bbfedb17e213bc1, type: 3}
|
||||
m_PrefabInstance: {fileID: 304572533}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!136 &221918182
|
||||
CapsuleCollider:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 221918180}
|
||||
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: 0
|
||||
serializedVersion: 2
|
||||
m_Radius: 0.06
|
||||
m_Height: 0.5
|
||||
m_Direction: 1
|
||||
m_Center: {x: 0, y: -0.2, z: 0}
|
||||
--- !u!1001 &224593616
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -3517,6 +3648,34 @@ Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 599465214307944399, guid: 6d3e30d12bb32d545b4735d5456a5597, type: 3}
|
||||
m_PrefabInstance: {fileID: 244337793}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1 &248131133 stripped
|
||||
GameObject:
|
||||
m_CorrespondingSourceObject: {fileID: 9132198516135759330, guid: c708a3b79cd542b42bbfedb17e213bc1, type: 3}
|
||||
m_PrefabInstance: {fileID: 304572533}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!136 &248131135
|
||||
CapsuleCollider:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 248131133}
|
||||
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: 0
|
||||
serializedVersion: 2
|
||||
m_Radius: 0.15
|
||||
m_Height: 0.6
|
||||
m_Direction: 1
|
||||
m_Center: {x: 0, y: 0, z: 0}
|
||||
--- !u!1001 &250216734
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -4611,6 +4770,10 @@ PrefabInstance:
|
||||
serializedVersion: 3
|
||||
m_TransformParent: {fileID: 923183666}
|
||||
m_Modifications:
|
||||
- target: {fileID: 726847751471669454, guid: c708a3b79cd542b42bbfedb17e213bc1, type: 3}
|
||||
propertyPath: m_IsActive
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2119775930974504096, guid: c708a3b79cd542b42bbfedb17e213bc1, type: 3}
|
||||
propertyPath: m_LocalPosition.x
|
||||
value: -2.1526937
|
||||
@ -4719,6 +4882,36 @@ PrefabInstance:
|
||||
- targetCorrespondingSourceObject: {fileID: 974238578668270704, guid: c708a3b79cd542b42bbfedb17e213bc1, type: 3}
|
||||
insertIndex: 5
|
||||
addedObject: {fileID: 1880735403}
|
||||
- targetCorrespondingSourceObject: {fileID: 7646894525478430618, guid: c708a3b79cd542b42bbfedb17e213bc1, type: 3}
|
||||
insertIndex: -1
|
||||
addedObject: {fileID: 16288159}
|
||||
- targetCorrespondingSourceObject: {fileID: 6914555784360000931, guid: c708a3b79cd542b42bbfedb17e213bc1, type: 3}
|
||||
insertIndex: -1
|
||||
addedObject: {fileID: 392442271}
|
||||
- targetCorrespondingSourceObject: {fileID: 726316068312649072, guid: c708a3b79cd542b42bbfedb17e213bc1, type: 3}
|
||||
insertIndex: -1
|
||||
addedObject: {fileID: 221918182}
|
||||
- targetCorrespondingSourceObject: {fileID: 5659908917665969580, guid: c708a3b79cd542b42bbfedb17e213bc1, type: 3}
|
||||
insertIndex: -1
|
||||
addedObject: {fileID: 1627800589}
|
||||
- targetCorrespondingSourceObject: {fileID: 9132198516135759330, guid: c708a3b79cd542b42bbfedb17e213bc1, type: 3}
|
||||
insertIndex: -1
|
||||
addedObject: {fileID: 248131135}
|
||||
- targetCorrespondingSourceObject: {fileID: 124843582331875961, guid: c708a3b79cd542b42bbfedb17e213bc1, type: 3}
|
||||
insertIndex: -1
|
||||
addedObject: {fileID: 760015824}
|
||||
- targetCorrespondingSourceObject: {fileID: 6588263712964672146, guid: c708a3b79cd542b42bbfedb17e213bc1, type: 3}
|
||||
insertIndex: -1
|
||||
addedObject: {fileID: 155078582}
|
||||
- targetCorrespondingSourceObject: {fileID: 2568582057033876513, guid: c708a3b79cd542b42bbfedb17e213bc1, type: 3}
|
||||
insertIndex: -1
|
||||
addedObject: {fileID: 687245747}
|
||||
- targetCorrespondingSourceObject: {fileID: 4222942335510494491, guid: c708a3b79cd542b42bbfedb17e213bc1, type: 3}
|
||||
insertIndex: -1
|
||||
addedObject: {fileID: 907298662}
|
||||
- targetCorrespondingSourceObject: {fileID: 6266682369814660209, guid: c708a3b79cd542b42bbfedb17e213bc1, type: 3}
|
||||
insertIndex: -1
|
||||
addedObject: {fileID: 858172680}
|
||||
m_SourcePrefab: {fileID: 100100000, guid: c708a3b79cd542b42bbfedb17e213bc1, type: 3}
|
||||
--- !u!1001 &314797079
|
||||
PrefabInstance:
|
||||
@ -6327,6 +6520,34 @@ Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 7107073529148260412, guid: bc81300db299d274dac8ed5b40994572, type: 3}
|
||||
m_PrefabInstance: {fileID: 390621313}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1 &392442269 stripped
|
||||
GameObject:
|
||||
m_CorrespondingSourceObject: {fileID: 6914555784360000931, guid: c708a3b79cd542b42bbfedb17e213bc1, type: 3}
|
||||
m_PrefabInstance: {fileID: 304572533}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!136 &392442271
|
||||
CapsuleCollider:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 392442269}
|
||||
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: 0
|
||||
serializedVersion: 2
|
||||
m_Radius: 0.06
|
||||
m_Height: 0.5
|
||||
m_Direction: 1
|
||||
m_Center: {x: 0, y: 0.2, z: 0}
|
||||
--- !u!1001 &393591539
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -10691,6 +10912,34 @@ Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 7548273142197716425, guid: 0789421bfb938644babec4c8798c163c, type: 3}
|
||||
m_PrefabInstance: {fileID: 683165268}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1 &687245745 stripped
|
||||
GameObject:
|
||||
m_CorrespondingSourceObject: {fileID: 2568582057033876513, guid: c708a3b79cd542b42bbfedb17e213bc1, type: 3}
|
||||
m_PrefabInstance: {fileID: 304572533}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!136 &687245747
|
||||
CapsuleCollider:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 687245745}
|
||||
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: 0
|
||||
serializedVersion: 2
|
||||
m_Radius: 0.08
|
||||
m_Height: 0.2
|
||||
m_Direction: 1
|
||||
m_Center: {x: 0, y: 0, z: 0}
|
||||
--- !u!1001 &687906363
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -11456,6 +11705,34 @@ Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 5060791035251562319, guid: d0951faa8cb830b4780fb7bb92974214, type: 3}
|
||||
m_PrefabInstance: {fileID: 740467519}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1 &760015822 stripped
|
||||
GameObject:
|
||||
m_CorrespondingSourceObject: {fileID: 124843582331875961, guid: c708a3b79cd542b42bbfedb17e213bc1, type: 3}
|
||||
m_PrefabInstance: {fileID: 304572533}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!136 &760015824
|
||||
CapsuleCollider:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 760015822}
|
||||
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: 0
|
||||
serializedVersion: 2
|
||||
m_Radius: 0.05
|
||||
m_Height: 0.4
|
||||
m_Direction: 1
|
||||
m_Center: {x: 0, y: 0.1, z: 0}
|
||||
--- !u!1001 &766643854
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -12699,6 +12976,34 @@ Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 1895808927420028092, guid: 7cb78e83e6bfa414f972dedaff480361, type: 3}
|
||||
m_PrefabInstance: {fileID: 857137368}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1 &858172678 stripped
|
||||
GameObject:
|
||||
m_CorrespondingSourceObject: {fileID: 6266682369814660209, guid: c708a3b79cd542b42bbfedb17e213bc1, type: 3}
|
||||
m_PrefabInstance: {fileID: 304572533}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!136 &858172680
|
||||
CapsuleCollider:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 858172678}
|
||||
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: 0
|
||||
serializedVersion: 2
|
||||
m_Radius: 0.05
|
||||
m_Height: 0.4
|
||||
m_Direction: 1
|
||||
m_Center: {x: 0, y: -0.1, z: 0}
|
||||
--- !u!1001 &858961373
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -13250,6 +13555,34 @@ Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 599465214307944399, guid: 95cf80858ee0c4940b72f62b17aefd41, type: 3}
|
||||
m_PrefabInstance: {fileID: 896709644}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1 &907298660 stripped
|
||||
GameObject:
|
||||
m_CorrespondingSourceObject: {fileID: 4222942335510494491, guid: c708a3b79cd542b42bbfedb17e213bc1, type: 3}
|
||||
m_PrefabInstance: {fileID: 304572533}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!136 &907298662
|
||||
CapsuleCollider:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 907298660}
|
||||
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: 0
|
||||
serializedVersion: 2
|
||||
m_Radius: 0.05
|
||||
m_Height: 0.4
|
||||
m_Direction: 1
|
||||
m_Center: {x: 0, y: -0.1, z: 0}
|
||||
--- !u!1001 &911513622
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -14779,9 +15112,9 @@ MonoBehaviour:
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
targetCamera: {fileID: 2077227757}
|
||||
showCullingSpheres: 1
|
||||
showCullingSpheres: 0
|
||||
showCameraFrustums: 0
|
||||
showCascadeFrustums: 1
|
||||
showCascadeFrustums: 0
|
||||
showMaxCascade: 4
|
||||
cascadeColors:
|
||||
- {r: 1, g: 0, b: 0, a: 0.5}
|
||||
@ -24426,6 +24759,34 @@ Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 599465214307944399, guid: 6d3e30d12bb32d545b4735d5456a5597, type: 3}
|
||||
m_PrefabInstance: {fileID: 1619228713}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1 &1627800587 stripped
|
||||
GameObject:
|
||||
m_CorrespondingSourceObject: {fileID: 5659908917665969580, guid: c708a3b79cd542b42bbfedb17e213bc1, type: 3}
|
||||
m_PrefabInstance: {fileID: 304572533}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!136 &1627800589
|
||||
CapsuleCollider:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1627800587}
|
||||
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: 0
|
||||
serializedVersion: 2
|
||||
m_Radius: 0.06
|
||||
m_Height: 0.5
|
||||
m_Direction: 1
|
||||
m_Center: {x: 0, y: -0.2, z: 0}
|
||||
--- !u!1001 &1630315300
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -28703,6 +29064,11 @@ MonoBehaviour:
|
||||
analogMovement: 0
|
||||
cursorLocked: 1
|
||||
cursorInputForLook: 1
|
||||
--- !u!4 &1880735404 stripped
|
||||
Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 490576248761790154, guid: c708a3b79cd542b42bbfedb17e213bc1, type: 3}
|
||||
m_PrefabInstance: {fileID: 304572533}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1001 &1886587897
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -34325,3 +34691,4 @@ SceneRoots:
|
||||
- {fileID: 915045435}
|
||||
- {fileID: 1641590535}
|
||||
- {fileID: 1415788265}
|
||||
- {fileID: 217261640}
|
||||
|
||||
@ -120,13 +120,32 @@ MonoBehaviour:
|
||||
m_Script: {fileID: 11500000, guid: d34dacd53c1ace84a8c6ac5ff4afb555, type: 3}
|
||||
m_Name: AutoExposure
|
||||
m_EditorClassIdentifier:
|
||||
m_Active: 1
|
||||
m_Active: 0
|
||||
settings:
|
||||
HistogramRenderPassEvent: 300
|
||||
AutoExposureRenderPassEvent: 550
|
||||
BlitMat: {fileID: 2100000, guid: b04591ed716b35e41857f554d491ef4b, type: 2}
|
||||
ComputeHistogramComputeShader: {fileID: 7200000, guid: b140e27dc74a1fb4d9ae30f8566b8919, type: 3}
|
||||
AutoExposureComputeShader: {fileID: 7200000, guid: 6febb5a945f3510429c58ed4a45c1846, type: 3}
|
||||
--- !u!114 &-5770411415856688072
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 1eadf15e5222b6546b5c84a97197f414, type: 3}
|
||||
m_Name: CapsuleAO
|
||||
m_EditorClassIdentifier:
|
||||
m_Active: 1
|
||||
settings:
|
||||
RenderPassEvent: 450
|
||||
AmbientIntensity: 0.32
|
||||
ShadowIntensity: 0.28
|
||||
ShadowSharpness: 0.27
|
||||
CapsuleAOMat: {fileID: 2100000, guid: c90d40f0d9828744b916dbed0eed9db6, type: 2}
|
||||
--- !u!114 &-5418649131825517062
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -357,7 +376,8 @@ MonoBehaviour:
|
||||
- {fileID: 5808157236138506604}
|
||||
- {fileID: -5418649131825517062}
|
||||
- {fileID: -7143664486661302651}
|
||||
m_RendererFeatureMap: bc3f630842f2e70dd6a559c442a94bfd4529d15534f2d3de228858dca8d12222716523fbf3439fdb7a327b7bff4bdd446ac59dfa966ffa88ca6373cd5da9013d6cff55ca297e5e908a7b3653203b82383b2141bb05fbe69aec5704e48e2763e90bc6ff9f19caa7686c79a6bb3bb89a50faad0fe75217cdb485d6fa85ff9adc9c
|
||||
- {fileID: -5770411415856688072}
|
||||
m_RendererFeatureMap: bc3f630842f2e70dd6a559c442a94bfd4529d15534f2d3de228858dca8d12222716523fbf3439fdb7a327b7bff4bdd446ac59dfa966ffa88ca6373cd5da9013d6cff55ca297e5e908a7b3653203b82383b2141bb05fbe69aec5704e48e2763e90bc6ff9f19caa7686c79a6bb3bb89a50faad0fe75217cdb485d6fa85ff9adc9c38d400e66361ebaf
|
||||
m_UseNativeRenderPass: 0
|
||||
postProcessData: {fileID: 11400000, guid: 41439944d30ece34e96484bdb6645b55, type: 2}
|
||||
shaders:
|
||||
|
||||
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9903d27781b459a4084b253699fff228
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -0,0 +1,129 @@
|
||||
using System;
|
||||
using System.Runtime.InteropServices;
|
||||
using Unity.Collections.LowLevel.Unsafe;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Rendering;
|
||||
using UnityEngine.Rendering.Universal;
|
||||
|
||||
namespace X.Rendering.Feature
|
||||
{
|
||||
[StructLayout(LayoutKind.Sequential)]
|
||||
public struct Capsule
|
||||
{
|
||||
public Vector3 a, b;
|
||||
public float radius;
|
||||
}
|
||||
|
||||
[StructLayout(LayoutKind.Sequential)]
|
||||
public struct Character
|
||||
{
|
||||
public Vector3 position;
|
||||
public float radius;
|
||||
public Vector4 lightDir; //xyz:lightDir, w:根据lightColor 算个系数
|
||||
public int startID, endID;
|
||||
}
|
||||
|
||||
public class CapsuleAO : ScriptableRendererFeature
|
||||
{
|
||||
[Serializable]
|
||||
public class Settings
|
||||
{
|
||||
public RenderPassEvent RenderPassEvent = RenderPassEvent.BeforeRenderingTransparents;
|
||||
public float AmbientIntensity = 0.2f;
|
||||
public float ShadowIntensity = 0.4f;
|
||||
public float ShadowSharpness = 20;
|
||||
public Material CapsuleAOMat;
|
||||
}
|
||||
|
||||
[SerializeField]
|
||||
Settings settings;
|
||||
CapsuleAOPass capsuleAOPass;
|
||||
public override void AddRenderPasses(ScriptableRenderer renderer, ref RenderingData renderingData)
|
||||
{
|
||||
if (renderingData.cameraData.cameraType == CameraType.Game)
|
||||
{
|
||||
renderer.EnqueuePass(capsuleAOPass);
|
||||
}
|
||||
}
|
||||
|
||||
public override void Create()
|
||||
{
|
||||
capsuleAOPass = new(settings);
|
||||
}
|
||||
|
||||
class CapsuleAOPass : ScriptableRenderPass, IDisposable
|
||||
{
|
||||
private Settings settings;
|
||||
private GraphicsBuffer capsuleDataBuffer;
|
||||
private GraphicsBuffer characterDataBuffer;
|
||||
private ProfilingSampler profiler;
|
||||
|
||||
|
||||
|
||||
public CapsuleAOPass(Settings settings)
|
||||
{
|
||||
this.settings = settings;
|
||||
profiler = new (nameof(CapsuleAOPass));
|
||||
renderPassEvent = settings.RenderPassEvent;
|
||||
}
|
||||
|
||||
|
||||
public override void Configure(CommandBuffer cmd, RenderTextureDescriptor cameraTextureDescriptor)
|
||||
{
|
||||
base.Configure(cmd, cameraTextureDescriptor);
|
||||
ConfigureInput(ScriptableRenderPassInput.Depth | ScriptableRenderPassInput.Normal);
|
||||
}
|
||||
|
||||
public void Dispose()
|
||||
{
|
||||
capsuleDataBuffer?.Dispose();
|
||||
capsuleDataBuffer = null;
|
||||
characterDataBuffer?.Dispose();
|
||||
characterDataBuffer = null;
|
||||
}
|
||||
|
||||
public override void Execute(ScriptableRenderContext context, ref RenderingData renderingData)
|
||||
{
|
||||
if (!XRenderFeatureManager.Instance)
|
||||
{
|
||||
return;
|
||||
}
|
||||
ref var characterArray = ref XRenderFeatureManager.Instance.CharacterArray;
|
||||
ref var capsuleArray = ref XRenderFeatureManager.Instance.CapsuleArray;
|
||||
if (!capsuleArray.IsCreated)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if(capsuleDataBuffer == null || capsuleDataBuffer.count != capsuleArray.Length)
|
||||
{
|
||||
capsuleDataBuffer?.Release();
|
||||
capsuleDataBuffer = new GraphicsBuffer(GraphicsBuffer.Target.Structured, capsuleArray.Length, UnsafeUtility.SizeOf<Capsule>());
|
||||
}
|
||||
|
||||
if (characterDataBuffer == null || characterDataBuffer.count != characterArray.Length)
|
||||
{
|
||||
characterDataBuffer?.Release();
|
||||
characterDataBuffer = new GraphicsBuffer(GraphicsBuffer.Target.Structured, characterArray.Length, UnsafeUtility.SizeOf<Character>());
|
||||
}
|
||||
|
||||
capsuleDataBuffer.SetData(capsuleArray);
|
||||
characterDataBuffer.SetData(characterArray);
|
||||
|
||||
var cmd = renderingData.commandBuffer;
|
||||
using var scp = new ProfilingScope(cmd, profiler);
|
||||
cmd.SetGlobalBuffer("_CapsuleData", capsuleDataBuffer);
|
||||
cmd.SetGlobalBuffer("_CharacterData", characterDataBuffer);
|
||||
cmd.SetGlobalInt("_CapsulesCount", capsuleArray.Length);
|
||||
cmd.SetGlobalInt("_CharactersCount", characterArray.Length);
|
||||
cmd.SetGlobalFloat("_AmbientIntensity", settings.AmbientIntensity);
|
||||
cmd.SetGlobalFloat("_ShadowIntensity", settings.ShadowIntensity);
|
||||
cmd.SetGlobalFloat("_ShadowSharpness", settings.ShadowSharpness);
|
||||
var renderer = renderingData.cameraData.renderer;
|
||||
|
||||
cmd.SetRenderTarget(renderer.cameraColorTargetHandle, loadAction: RenderBufferLoadAction.Load, storeAction: RenderBufferStoreAction.Store);
|
||||
cmd.DrawProcedural(Matrix4x4.identity, settings.CapsuleAOMat, 0, MeshTopology.Triangles, 3);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1eadf15e5222b6546b5c84a97197f414
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 77bc625bade3844478f784ee7024ab69
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -0,0 +1,176 @@
|
||||
Shader "XRP/CapsuleAO"
|
||||
{
|
||||
SubShader
|
||||
{
|
||||
Pass
|
||||
{
|
||||
Cull Off
|
||||
ZWrite Off
|
||||
ZTest Always
|
||||
Blend Zero SrcAlpha
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma vertex vert
|
||||
#pragma fragment frag
|
||||
|
||||
#pragma enable_d3d11_debug_symbols
|
||||
|
||||
#pragma multi_compile _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.core/Runtime/Utilities/Blit.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/DeclareDepthTexture.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/DeclareNormalsTexture.hlsl"
|
||||
|
||||
struct Capsule
|
||||
{
|
||||
float3 a;
|
||||
float3 b;
|
||||
float radius;
|
||||
};
|
||||
|
||||
struct Character
|
||||
{
|
||||
float3 position;
|
||||
float radius;
|
||||
float4 lightDir;
|
||||
int startID;
|
||||
int endID;
|
||||
};
|
||||
|
||||
|
||||
StructuredBuffer<Capsule> _CapsuleData;
|
||||
uint _CapsulesCount;
|
||||
StructuredBuffer<Character> _CharacterData;
|
||||
uint _CharactersCount;
|
||||
float _AmbientIntensity;
|
||||
float _ShadowIntensity;
|
||||
float _ShadowSharpness;
|
||||
|
||||
|
||||
Varyings vert(uint vertexID: SV_VertexID)
|
||||
{
|
||||
Varyings o;
|
||||
o.positionCS = GetFullScreenTriangleVertexPosition(vertexID);
|
||||
o.texcoord = GetFullScreenTriangleTexCoord(vertexID);
|
||||
return o;
|
||||
}
|
||||
|
||||
float CalcCapsuleShadowByIndex(float3 ro, float3 rd, uint s, uint e, in float k, float intensity)
|
||||
{
|
||||
float shadow = 1.0;
|
||||
for (uint i = s; i < e; ++i)
|
||||
{
|
||||
Capsule c = _CapsuleData[i];
|
||||
float3 a = c.a;
|
||||
float3 b = c.b;
|
||||
float r = c.radius;
|
||||
float3 ba = b - a;
|
||||
float3 oa = ro - a;
|
||||
|
||||
float oad = dot(oa, rd);
|
||||
float dba = dot(rd, ba);
|
||||
float baba = dot(ba, ba);
|
||||
float oaba = dot(oa, ba);
|
||||
float2 th = float2(-oad * baba + dba * oaba, oaba - oad * dba) / (baba - dba * dba);
|
||||
|
||||
th.x = max(th.x, 0.0001);
|
||||
th.y = saturate(th.y);
|
||||
|
||||
float3 p = a + ba * th.y;
|
||||
float3 q = ro + rd * th.x;
|
||||
float d = length(p - q) - r;
|
||||
|
||||
float s = saturate(k * d / th.x + 0.3);
|
||||
s = s * s * (3.0 - 2.0 * s);
|
||||
shadow *= s;
|
||||
}
|
||||
|
||||
shadow = saturate(lerp(shadow, 1, intensity));
|
||||
return saturate(lerp(shadow, 1, _ShadowIntensity));
|
||||
}
|
||||
|
||||
float CalcCapsuleOcclusionByIndex(float3 p, float3 n, uint s, uint e, float intensity)
|
||||
{
|
||||
float ao = 1.0;
|
||||
for (uint i = s; i < e; ++i)
|
||||
{
|
||||
Capsule capsule = _CapsuleData[i];
|
||||
float3 a = capsule.a;
|
||||
float3 b = capsule.b;
|
||||
float r = capsule.radius;
|
||||
float3 ba = b - a;
|
||||
float3 pa = p - a;
|
||||
float h = saturate(dot(pa, ba) / dot(ba, ba));
|
||||
float3 d = pa - h * ba;
|
||||
float l = length(d);
|
||||
float o = 1.0 - max(0.0, dot(-d, n)) * r * r / (l * l * l);
|
||||
o = sqrt(o * o * o);
|
||||
ao *= o;
|
||||
}
|
||||
|
||||
ao = saturate(lerp(ao, 1, intensity));
|
||||
return saturate(lerp(ao, 1, _AmbientIntensity));
|
||||
}
|
||||
|
||||
bool IsInBounds(float3 p, float3 c, float b, out float intensity)
|
||||
{
|
||||
float3 diff = abs(p - c);
|
||||
if (diff.x < b && diff.y < b && diff.z < b)
|
||||
{
|
||||
intensity = saturate(dot(diff, diff) / dot(b, b));
|
||||
return true;
|
||||
}
|
||||
intensity = 0;
|
||||
return false;
|
||||
}
|
||||
|
||||
float CalcAmbientOcclusion(float3 worldPos, float3 worldNormal)
|
||||
{
|
||||
float shadow = 1.0;
|
||||
float occlusion = 1.0;
|
||||
for (uint i = 0; i < _CharactersCount; ++i)
|
||||
{
|
||||
float intensity;
|
||||
Character c = _CharacterData[i];
|
||||
if (IsInBounds(worldPos, c.position, c.radius, intensity))
|
||||
{
|
||||
float tempIntensity = intensity / saturate(1 * smoothstep(0.001, 1, c.lightDir.w));
|
||||
float tempShadow = CalcCapsuleShadowByIndex(worldPos, _MainLightPosition.xyz, c.startID, c.endID, _ShadowSharpness, tempIntensity);
|
||||
shadow = min(shadow, tempShadow);
|
||||
occlusion *= CalcCapsuleOcclusionByIndex(worldPos, worldNormal, c.startID, c.endID, intensity);
|
||||
}
|
||||
}
|
||||
return shadow * occlusion;
|
||||
}
|
||||
|
||||
float4 frag(Varyings input) : SV_Target
|
||||
{
|
||||
const float2 uv = input.texcoord;
|
||||
float depth = SampleSceneDepth(uv);
|
||||
#if !UNITY_REVERSED_Z
|
||||
depth = depth * 2.0 - 1.0;
|
||||
#endif
|
||||
|
||||
float2 sceneUV = uv;
|
||||
sceneUV.y = 1 - sceneUV.y;
|
||||
sceneUV = sceneUV * 2 - 1;
|
||||
|
||||
float4 worldPos = mul(UNITY_MATRIX_I_VP, float4(sceneUV, depth, 1));
|
||||
worldPos /= worldPos.w;
|
||||
float3 worldNormal = SampleSceneNormals(uv);
|
||||
float ao = CalcAmbientOcclusion(worldPos.xyz, worldNormal);
|
||||
|
||||
// float4 shadowCoord = TransformWorldToShadowCoord(worldPos.xyz);
|
||||
// Light mainLight = GetMainLight(shadowCoord, worldPos.xyz, half4(1, 1, 1, 1));
|
||||
// //只在阴影处产生AO
|
||||
// ao = lerp(ao, 1, step(0.5, mainLight.shadowAttenuation));
|
||||
|
||||
return half4(1, 0, 0, ao);
|
||||
}
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1a25077d410e0844dbf6a3067a4967aa
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
nonModifiableTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -0,0 +1,29 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 8
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: XRP_CapsuleAO
|
||||
m_Shader: {fileID: 4800000, guid: 1a25077d410e0844dbf6a3067a4967aa, type: 3}
|
||||
m_Parent: {fileID: 0}
|
||||
m_ModifiedSerializedProperties: 0
|
||||
m_ValidKeywords: []
|
||||
m_InvalidKeywords: []
|
||||
m_LightmapFlags: 4
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap: {}
|
||||
disabledShaderPasses: []
|
||||
m_LockedProperties:
|
||||
m_SavedProperties:
|
||||
serializedVersion: 3
|
||||
m_TexEnvs: []
|
||||
m_Ints: []
|
||||
m_Floats: []
|
||||
m_Colors: []
|
||||
m_BuildTextureStacks: []
|
||||
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c90d40f0d9828744b916dbed0eed9db6
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 2100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -12,7 +12,7 @@ Shader "XRP/SoftShadowMask"
|
||||
#pragma vertex vert
|
||||
#pragma fragment frag
|
||||
|
||||
#pragma enable_d3d11_debug_symbols
|
||||
// #pragma enable_d3d11_debug_symbols
|
||||
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/CommonMaterial.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Shadows.hlsl"
|
||||
|
||||
@ -0,0 +1,116 @@
|
||||
using System.Collections.Generic;
|
||||
using Unity.Collections;
|
||||
using UnityEngine;
|
||||
namespace X.Rendering.Feature
|
||||
{
|
||||
public class XRenderFeatureManager : MonoBehaviour
|
||||
{
|
||||
public static XRenderFeatureManager Instance
|
||||
{
|
||||
get; private set;
|
||||
}
|
||||
|
||||
#region CapsuleAO
|
||||
public NativeArray<Character> CharacterArray;
|
||||
public NativeArray<Capsule> CapsuleArray;
|
||||
|
||||
public Transform TestLightTrans;
|
||||
public Transform TestCharacterTrans;
|
||||
public float TestW;
|
||||
|
||||
private Dictionary<Transform, CapsuleCollider[]> characterTransform2CapsuleCollider = new();
|
||||
private int capsuleColliderCount = 0;
|
||||
|
||||
public void AddCapsuleAOCharacter(Transform transform)
|
||||
{
|
||||
var oldCapsuleArray = CapsuleArray;
|
||||
var oldCharacterArray = CharacterArray;
|
||||
|
||||
var capsules = transform.GetComponentsInChildren<CapsuleCollider>(true);
|
||||
characterTransform2CapsuleCollider.Add(transform, capsules);
|
||||
capsuleColliderCount += capsules.Length;
|
||||
CapsuleArray = new (capsuleColliderCount, Allocator.Persistent);
|
||||
CharacterArray = new (characterTransform2CapsuleCollider.Count, Allocator.Persistent);
|
||||
|
||||
if (oldCharacterArray.IsCreated)
|
||||
{
|
||||
oldCharacterArray.Dispose();
|
||||
oldCapsuleArray.Dispose();
|
||||
}
|
||||
}
|
||||
|
||||
public void RemoveCapsuleAOCharacter(Transform transform)
|
||||
{
|
||||
capsuleColliderCount -= characterTransform2CapsuleCollider[transform].Length;
|
||||
characterTransform2CapsuleCollider.Remove(transform);
|
||||
var oldCapsuleArray = CapsuleArray;
|
||||
var oldCharacterArray = CharacterArray;
|
||||
|
||||
CapsuleArray = new(capsuleColliderCount, Allocator.Persistent);
|
||||
CharacterArray = new(characterTransform2CapsuleCollider.Count, Allocator.Persistent);
|
||||
|
||||
if (oldCharacterArray.IsCreated)
|
||||
{
|
||||
oldCharacterArray.Dispose();
|
||||
oldCapsuleArray.Dispose();
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
Instance = this;
|
||||
}
|
||||
|
||||
|
||||
private void Start()
|
||||
{
|
||||
AddCapsuleAOCharacter(TestCharacterTrans);
|
||||
}
|
||||
|
||||
private void Update()
|
||||
{
|
||||
Transform transform = null;
|
||||
int capsuleArrayIndex = 0;
|
||||
int characterArrayIndex = 0;
|
||||
int startID = 0;
|
||||
Instance = this;
|
||||
|
||||
foreach (var item in characterTransform2CapsuleCollider)
|
||||
{
|
||||
for (int i = 0; i < item.Value.Length; i++)
|
||||
{
|
||||
var capsule = item.Value[i];
|
||||
//capsule.direction
|
||||
var a = capsule.center - new Vector3(0, capsule.height / 2, 0);
|
||||
var b = capsule.center + new Vector3(0, capsule.height / 2, 0);
|
||||
a = capsule.transform.TransformPoint(a);
|
||||
b = capsule.transform.TransformPoint(b);
|
||||
CapsuleArray[capsuleArrayIndex++] = new()
|
||||
{
|
||||
a = a,
|
||||
b = b,
|
||||
radius = capsule.radius,
|
||||
};
|
||||
}
|
||||
|
||||
if (transform != item.Key)
|
||||
{
|
||||
transform = item.Key;
|
||||
CharacterArray[characterArrayIndex++] = new()
|
||||
{
|
||||
position = transform.position,
|
||||
radius = 5,
|
||||
lightDir = -new Vector4(TestLightTrans.position.x, TestLightTrans.position.y, TestLightTrans.position.z, -TestW),
|
||||
startID = startID,
|
||||
endID = capsuleArrayIndex,
|
||||
};
|
||||
startID = capsuleArrayIndex;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 18dca6cc0a0961049ba14d81b04c5678
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Loading…
x
Reference in New Issue
Block a user