Upgraded original RothenburgAR to Unity version 2017.4.5f1 (and upgrading from standalone vuforia to the version integrated in unity)
This commit is contained in:
BIN
AssetBundles/Android/Android
Normal file
BIN
AssetBundles/Android/Android
Normal file
Binary file not shown.
34
AssetBundles/Android/Android.manifest
Normal file
34
AssetBundles/Android/Android.manifest
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
ManifestFileVersion: 0
|
||||||
|
CRC: 1532756662
|
||||||
|
AssetBundleManifest:
|
||||||
|
AssetBundleInfos:
|
||||||
|
Info_0:
|
||||||
|
Name: malchus
|
||||||
|
Dependencies: {}
|
||||||
|
Info_1:
|
||||||
|
Name: nierendolch
|
||||||
|
Dependencies: {}
|
||||||
|
Info_2:
|
||||||
|
Name: morgenstern
|
||||||
|
Dependencies: {}
|
||||||
|
Info_3:
|
||||||
|
Name: kelch
|
||||||
|
Dependencies: {}
|
||||||
|
Info_4:
|
||||||
|
Name: degen
|
||||||
|
Dependencies: {}
|
||||||
|
Info_5:
|
||||||
|
Name: armbrust
|
||||||
|
Dependencies: {}
|
||||||
|
Info_6:
|
||||||
|
Name: eisenhut
|
||||||
|
Dependencies: {}
|
||||||
|
Info_7:
|
||||||
|
Name: speer
|
||||||
|
Dependencies: {}
|
||||||
|
Info_8:
|
||||||
|
Name: sturmgabel
|
||||||
|
Dependencies: {}
|
||||||
|
Info_9:
|
||||||
|
Name: hellebarde
|
||||||
|
Dependencies: {}
|
||||||
BIN
AssetBundles/Android/armbrust
Normal file
BIN
AssetBundles/Android/armbrust
Normal file
Binary file not shown.
32
AssetBundles/Android/armbrust.manifest
Normal file
32
AssetBundles/Android/armbrust.manifest
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
ManifestFileVersion: 0
|
||||||
|
CRC: 712128317
|
||||||
|
Hashes:
|
||||||
|
AssetFileHash:
|
||||||
|
serializedVersion: 2
|
||||||
|
Hash: 338fb1ec3d24614208273648ac4eedd4
|
||||||
|
TypeTreeHash:
|
||||||
|
serializedVersion: 2
|
||||||
|
Hash: 21570c0632ea56fe868a7ed8a9f6981c
|
||||||
|
HashAppended: 0
|
||||||
|
ClassTypes:
|
||||||
|
- Class: 1
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 4
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 21
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 23
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 28
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 33
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 43
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 48
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
Assets:
|
||||||
|
- Assets/AssetBundleSource/armbrust/Materials/Material.003.mat
|
||||||
|
- Assets/AssetBundleSource/armbrust/armbrust_final.obj
|
||||||
|
- Assets/AssetBundleSource/armbrust/armbrust_final.mtl
|
||||||
|
Dependencies: []
|
||||||
BIN
AssetBundles/Android/degen
Normal file
BIN
AssetBundles/Android/degen
Normal file
Binary file not shown.
33
AssetBundles/Android/degen.manifest
Normal file
33
AssetBundles/Android/degen.manifest
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
ManifestFileVersion: 0
|
||||||
|
CRC: 1765327116
|
||||||
|
Hashes:
|
||||||
|
AssetFileHash:
|
||||||
|
serializedVersion: 2
|
||||||
|
Hash: bab37abaf73e11060ff6b6d956f7566c
|
||||||
|
TypeTreeHash:
|
||||||
|
serializedVersion: 2
|
||||||
|
Hash: 21570c0632ea56fe868a7ed8a9f6981c
|
||||||
|
HashAppended: 0
|
||||||
|
ClassTypes:
|
||||||
|
- Class: 1
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 4
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 21
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 23
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 28
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 33
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 43
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 48
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
Assets:
|
||||||
|
- Assets/AssetBundleSource/schweizer degen/tex.png
|
||||||
|
- Assets/AssetBundleSource/schweizer degen/degen.obj
|
||||||
|
- Assets/AssetBundleSource/schweizer degen/Materials/material_0.mat
|
||||||
|
- Assets/AssetBundleSource/schweizer degen/Materials/Material.002.mat
|
||||||
|
Dependencies: []
|
||||||
BIN
AssetBundles/Android/eisenhut
Normal file
BIN
AssetBundles/Android/eisenhut
Normal file
Binary file not shown.
33
AssetBundles/Android/eisenhut.manifest
Normal file
33
AssetBundles/Android/eisenhut.manifest
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
ManifestFileVersion: 0
|
||||||
|
CRC: 1937192608
|
||||||
|
Hashes:
|
||||||
|
AssetFileHash:
|
||||||
|
serializedVersion: 2
|
||||||
|
Hash: fd530234d6aff27c37da83743d39e9a3
|
||||||
|
TypeTreeHash:
|
||||||
|
serializedVersion: 2
|
||||||
|
Hash: 21570c0632ea56fe868a7ed8a9f6981c
|
||||||
|
HashAppended: 0
|
||||||
|
ClassTypes:
|
||||||
|
- Class: 1
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 4
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 21
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 23
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 28
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 33
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 43
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 48
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
Assets:
|
||||||
|
- Assets/AssetBundleSource/helm/Materials/Material.002.mat
|
||||||
|
- Assets/AssetBundleSource/helm/helm.obj
|
||||||
|
- Assets/AssetBundleSource/helm/tex.png
|
||||||
|
- Assets/AssetBundleSource/helm/helm.mtl
|
||||||
|
Dependencies: []
|
||||||
BIN
AssetBundles/Android/hellebarde
Normal file
BIN
AssetBundles/Android/hellebarde
Normal file
Binary file not shown.
33
AssetBundles/Android/hellebarde.manifest
Normal file
33
AssetBundles/Android/hellebarde.manifest
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
ManifestFileVersion: 0
|
||||||
|
CRC: 394950140
|
||||||
|
Hashes:
|
||||||
|
AssetFileHash:
|
||||||
|
serializedVersion: 2
|
||||||
|
Hash: 85b5e734f25c088941d355d516318ce5
|
||||||
|
TypeTreeHash:
|
||||||
|
serializedVersion: 2
|
||||||
|
Hash: 21570c0632ea56fe868a7ed8a9f6981c
|
||||||
|
HashAppended: 0
|
||||||
|
ClassTypes:
|
||||||
|
- Class: 1
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 4
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 21
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 23
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 28
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 33
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 43
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 48
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
Assets:
|
||||||
|
- Assets/AssetBundleSource/hellebarde/tex.png
|
||||||
|
- Assets/AssetBundleSource/hellebarde/hellebarde.mtl
|
||||||
|
- Assets/AssetBundleSource/hellebarde/hellebarde.obj
|
||||||
|
- Assets/AssetBundleSource/hellebarde/Materials/Material.002.mat
|
||||||
|
Dependencies: []
|
||||||
BIN
AssetBundles/Android/kelch
Normal file
BIN
AssetBundles/Android/kelch
Normal file
Binary file not shown.
33
AssetBundles/Android/kelch.manifest
Normal file
33
AssetBundles/Android/kelch.manifest
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
ManifestFileVersion: 0
|
||||||
|
CRC: 1822602370
|
||||||
|
Hashes:
|
||||||
|
AssetFileHash:
|
||||||
|
serializedVersion: 2
|
||||||
|
Hash: 1e1a0cbbbd535f6a04d0a901da4b393f
|
||||||
|
TypeTreeHash:
|
||||||
|
serializedVersion: 2
|
||||||
|
Hash: 21570c0632ea56fe868a7ed8a9f6981c
|
||||||
|
HashAppended: 0
|
||||||
|
ClassTypes:
|
||||||
|
- Class: 1
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 4
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 21
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 23
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 28
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 33
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 43
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 48
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
Assets:
|
||||||
|
- Assets/AssetBundleSource/kelch/Materials/Material.002.mat
|
||||||
|
- Assets/AssetBundleSource/kelch/tex.png
|
||||||
|
- Assets/AssetBundleSource/kelch/kelch.mtl
|
||||||
|
- Assets/AssetBundleSource/kelch/kelch.obj
|
||||||
|
Dependencies: []
|
||||||
BIN
AssetBundles/Android/malchus
Normal file
BIN
AssetBundles/Android/malchus
Normal file
Binary file not shown.
33
AssetBundles/Android/malchus.manifest
Normal file
33
AssetBundles/Android/malchus.manifest
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
ManifestFileVersion: 0
|
||||||
|
CRC: 4178364554
|
||||||
|
Hashes:
|
||||||
|
AssetFileHash:
|
||||||
|
serializedVersion: 2
|
||||||
|
Hash: fd832355f46ee4b8e7215687724a85d1
|
||||||
|
TypeTreeHash:
|
||||||
|
serializedVersion: 2
|
||||||
|
Hash: 21570c0632ea56fe868a7ed8a9f6981c
|
||||||
|
HashAppended: 0
|
||||||
|
ClassTypes:
|
||||||
|
- Class: 1
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 4
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 21
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 23
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 28
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 33
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 43
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 48
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
Assets:
|
||||||
|
- Assets/AssetBundleSource/malchus/tex.png
|
||||||
|
- Assets/AssetBundleSource/malchus/malchus.obj
|
||||||
|
- Assets/AssetBundleSource/malchus/malchus.mtl
|
||||||
|
- Assets/AssetBundleSource/malchus/Materials/Material.002.mat
|
||||||
|
Dependencies: []
|
||||||
BIN
AssetBundles/Android/morgenstern
Normal file
BIN
AssetBundles/Android/morgenstern
Normal file
Binary file not shown.
33
AssetBundles/Android/morgenstern.manifest
Normal file
33
AssetBundles/Android/morgenstern.manifest
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
ManifestFileVersion: 0
|
||||||
|
CRC: 4131679183
|
||||||
|
Hashes:
|
||||||
|
AssetFileHash:
|
||||||
|
serializedVersion: 2
|
||||||
|
Hash: bd1ae776e4ffbe7eafc929be084756b7
|
||||||
|
TypeTreeHash:
|
||||||
|
serializedVersion: 2
|
||||||
|
Hash: 21570c0632ea56fe868a7ed8a9f6981c
|
||||||
|
HashAppended: 0
|
||||||
|
ClassTypes:
|
||||||
|
- Class: 1
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 4
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 21
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 23
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 28
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 33
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 43
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 48
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
Assets:
|
||||||
|
- Assets/AssetBundleSource/morgenstern/Materials/Material.002.mat
|
||||||
|
- Assets/AssetBundleSource/morgenstern/morgenstern.obj
|
||||||
|
- Assets/AssetBundleSource/morgenstern/morgenstern.mtl
|
||||||
|
- Assets/AssetBundleSource/morgenstern/tex.png
|
||||||
|
Dependencies: []
|
||||||
BIN
AssetBundles/Android/nierendolch
Normal file
BIN
AssetBundles/Android/nierendolch
Normal file
Binary file not shown.
33
AssetBundles/Android/nierendolch.manifest
Normal file
33
AssetBundles/Android/nierendolch.manifest
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
ManifestFileVersion: 0
|
||||||
|
CRC: 1448348843
|
||||||
|
Hashes:
|
||||||
|
AssetFileHash:
|
||||||
|
serializedVersion: 2
|
||||||
|
Hash: 0085dbd0f5030ee21c41b51600754d30
|
||||||
|
TypeTreeHash:
|
||||||
|
serializedVersion: 2
|
||||||
|
Hash: 21570c0632ea56fe868a7ed8a9f6981c
|
||||||
|
HashAppended: 0
|
||||||
|
ClassTypes:
|
||||||
|
- Class: 1
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 4
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 21
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 23
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 28
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 33
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 43
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 48
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
Assets:
|
||||||
|
- Assets/AssetBundleSource/nierendolch/Materials/material_0.mat
|
||||||
|
- Assets/AssetBundleSource/nierendolch/dolch.obj
|
||||||
|
- Assets/AssetBundleSource/nierendolch/Materials/Material.002.mat
|
||||||
|
- Assets/AssetBundleSource/nierendolch/dolch.mtl
|
||||||
|
Dependencies: []
|
||||||
BIN
AssetBundles/Android/speer
Normal file
BIN
AssetBundles/Android/speer
Normal file
Binary file not shown.
33
AssetBundles/Android/speer.manifest
Normal file
33
AssetBundles/Android/speer.manifest
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
ManifestFileVersion: 0
|
||||||
|
CRC: 1099251497
|
||||||
|
Hashes:
|
||||||
|
AssetFileHash:
|
||||||
|
serializedVersion: 2
|
||||||
|
Hash: 4004836f256d87b8cf713b07e666f619
|
||||||
|
TypeTreeHash:
|
||||||
|
serializedVersion: 2
|
||||||
|
Hash: 21570c0632ea56fe868a7ed8a9f6981c
|
||||||
|
HashAppended: 0
|
||||||
|
ClassTypes:
|
||||||
|
- Class: 1
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 4
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 21
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 23
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 28
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 33
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 43
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 48
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
Assets:
|
||||||
|
- Assets/AssetBundleSource/speer/speer.mtl
|
||||||
|
- Assets/AssetBundleSource/speer/speer.obj
|
||||||
|
- Assets/AssetBundleSource/speer/tex.png
|
||||||
|
- Assets/AssetBundleSource/speer/Materials/Material.002.mat
|
||||||
|
Dependencies: []
|
||||||
BIN
AssetBundles/Android/sturmgabel
Normal file
BIN
AssetBundles/Android/sturmgabel
Normal file
Binary file not shown.
33
AssetBundles/Android/sturmgabel.manifest
Normal file
33
AssetBundles/Android/sturmgabel.manifest
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
ManifestFileVersion: 0
|
||||||
|
CRC: 1411073018
|
||||||
|
Hashes:
|
||||||
|
AssetFileHash:
|
||||||
|
serializedVersion: 2
|
||||||
|
Hash: 1cff57aa215260caffe7acc0172914b8
|
||||||
|
TypeTreeHash:
|
||||||
|
serializedVersion: 2
|
||||||
|
Hash: 21570c0632ea56fe868a7ed8a9f6981c
|
||||||
|
HashAppended: 0
|
||||||
|
ClassTypes:
|
||||||
|
- Class: 1
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 4
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 21
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 23
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 28
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 33
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 43
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
- Class: 48
|
||||||
|
Script: {instanceID: 0}
|
||||||
|
Assets:
|
||||||
|
- Assets/AssetBundleSource/sturmgabel/sturmgabel.mtl
|
||||||
|
- Assets/AssetBundleSource/sturmgabel/tex.png
|
||||||
|
- Assets/AssetBundleSource/sturmgabel/Materials/Material.002.mat
|
||||||
|
- Assets/AssetBundleSource/sturmgabel/sturmgabel.obj
|
||||||
|
Dependencies: []
|
||||||
9
Assets/AssetBundleManager.meta
Normal file
9
Assets/AssetBundleManager.meta
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 5655f2df14d0849eb806dc1f452f8730
|
||||||
|
folderAsset: yes
|
||||||
|
timeCreated: 1431881326
|
||||||
|
licenseType: Store
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
220
Assets/AssetBundleManager/AssetBundleLoadOperation.cs
Normal file
220
Assets/AssetBundleManager/AssetBundleLoadOperation.cs
Normal file
@@ -0,0 +1,220 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
using System.Collections;
|
||||||
|
|
||||||
|
namespace AssetBundles
|
||||||
|
{
|
||||||
|
public abstract class AssetBundleLoadOperation : IEnumerator
|
||||||
|
{
|
||||||
|
public object Current
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
public bool MoveNext()
|
||||||
|
{
|
||||||
|
return !IsDone();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Reset()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
abstract public bool Update ();
|
||||||
|
|
||||||
|
abstract public bool IsDone ();
|
||||||
|
}
|
||||||
|
|
||||||
|
#if UNITY_EDITOR
|
||||||
|
public class AssetBundleLoadLevelSimulationOperation : AssetBundleLoadOperation
|
||||||
|
{
|
||||||
|
AsyncOperation m_Operation = null;
|
||||||
|
|
||||||
|
|
||||||
|
public AssetBundleLoadLevelSimulationOperation (string assetBundleName, string levelName, bool isAdditive)
|
||||||
|
{
|
||||||
|
string[] levelPaths = UnityEditor.AssetDatabase.GetAssetPathsFromAssetBundleAndAssetName(assetBundleName, levelName);
|
||||||
|
if (levelPaths.Length == 0)
|
||||||
|
{
|
||||||
|
///@TODO: The error needs to differentiate that an asset bundle name doesn't exist
|
||||||
|
// from that there right scene does not exist in the asset bundle...
|
||||||
|
|
||||||
|
Debug.LogError("There is no scene with name \"" + levelName + "\" in " + assetBundleName);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (isAdditive)
|
||||||
|
m_Operation = UnityEditor.EditorApplication.LoadLevelAdditiveAsyncInPlayMode(levelPaths[0]);
|
||||||
|
else
|
||||||
|
m_Operation = UnityEditor.EditorApplication.LoadLevelAsyncInPlayMode(levelPaths[0]);
|
||||||
|
}
|
||||||
|
|
||||||
|
public override bool Update ()
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override bool IsDone ()
|
||||||
|
{
|
||||||
|
return m_Operation == null || m_Operation.isDone;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
|
public class AssetBundleLoadLevelOperation : AssetBundleLoadOperation
|
||||||
|
{
|
||||||
|
protected string m_AssetBundleName;
|
||||||
|
protected string m_LevelName;
|
||||||
|
protected bool m_IsAdditive;
|
||||||
|
protected string m_DownloadingError;
|
||||||
|
protected AsyncOperation m_Request;
|
||||||
|
|
||||||
|
public AssetBundleLoadLevelOperation (string assetbundleName, string levelName, bool isAdditive)
|
||||||
|
{
|
||||||
|
m_AssetBundleName = assetbundleName;
|
||||||
|
m_LevelName = levelName;
|
||||||
|
m_IsAdditive = isAdditive;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override bool Update ()
|
||||||
|
{
|
||||||
|
if (m_Request != null)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
LoadedAssetBundle bundle = AssetBundleManager.GetLoadedAssetBundle (m_AssetBundleName, out m_DownloadingError);
|
||||||
|
if (bundle != null)
|
||||||
|
{
|
||||||
|
if (m_IsAdditive)
|
||||||
|
m_Request = Application.LoadLevelAdditiveAsync (m_LevelName);
|
||||||
|
else
|
||||||
|
m_Request = Application.LoadLevelAsync (m_LevelName);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override bool IsDone ()
|
||||||
|
{
|
||||||
|
// Return if meeting downloading error.
|
||||||
|
// m_DownloadingError might come from the dependency downloading.
|
||||||
|
if (m_Request == null && m_DownloadingError != null)
|
||||||
|
{
|
||||||
|
Debug.LogError(m_DownloadingError);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return m_Request != null && m_Request.isDone;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public abstract class AssetBundleLoadAssetOperation : AssetBundleLoadOperation
|
||||||
|
{
|
||||||
|
public abstract T GetAsset<T>() where T : UnityEngine.Object;
|
||||||
|
}
|
||||||
|
|
||||||
|
public class AssetBundleLoadAssetOperationSimulation : AssetBundleLoadAssetOperation
|
||||||
|
{
|
||||||
|
Object m_SimulatedObject;
|
||||||
|
|
||||||
|
public AssetBundleLoadAssetOperationSimulation (Object simulatedObject)
|
||||||
|
{
|
||||||
|
m_SimulatedObject = simulatedObject;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override T GetAsset<T>()
|
||||||
|
{
|
||||||
|
return m_SimulatedObject as T;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override bool Update ()
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override bool IsDone ()
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public class AssetBundleLoadAssetOperationFull : AssetBundleLoadAssetOperation
|
||||||
|
{
|
||||||
|
protected string m_AssetBundleName;
|
||||||
|
protected string m_AssetName;
|
||||||
|
protected string m_DownloadingError;
|
||||||
|
protected System.Type m_Type;
|
||||||
|
protected AssetBundleRequest m_Request = null;
|
||||||
|
|
||||||
|
public AssetBundleLoadAssetOperationFull (string bundleName, string assetName, System.Type type)
|
||||||
|
{
|
||||||
|
m_AssetBundleName = bundleName;
|
||||||
|
m_AssetName = assetName;
|
||||||
|
m_Type = type;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override T GetAsset<T>()
|
||||||
|
{
|
||||||
|
if (m_Request != null && m_Request.isDone)
|
||||||
|
return m_Request.asset as T;
|
||||||
|
else
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Returns true if more Update calls are required.
|
||||||
|
public override bool Update ()
|
||||||
|
{
|
||||||
|
if (m_Request != null)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
LoadedAssetBundle bundle = AssetBundleManager.GetLoadedAssetBundle (m_AssetBundleName, out m_DownloadingError);
|
||||||
|
if (bundle != null)
|
||||||
|
{
|
||||||
|
///@TODO: When asset bundle download fails this throws an exception...
|
||||||
|
m_Request = bundle.m_AssetBundle.LoadAssetAsync (m_AssetName, m_Type);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public override bool IsDone ()
|
||||||
|
{
|
||||||
|
// Return if meeting downloading error.
|
||||||
|
// m_DownloadingError might come from the dependency downloading.
|
||||||
|
if (m_Request == null && m_DownloadingError != null)
|
||||||
|
{
|
||||||
|
Debug.LogError(m_DownloadingError);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return m_Request != null && m_Request.isDone;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public class AssetBundleLoadManifestOperation : AssetBundleLoadAssetOperationFull
|
||||||
|
{
|
||||||
|
public AssetBundleLoadManifestOperation (string bundleName, string assetName, System.Type type)
|
||||||
|
: base(bundleName, assetName, type)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public override bool Update ()
|
||||||
|
{
|
||||||
|
base.Update();
|
||||||
|
|
||||||
|
if (m_Request != null && m_Request.isDone)
|
||||||
|
{
|
||||||
|
AssetBundleManager.AssetBundleManifestObject = GetAsset<AssetBundleManifest>();
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: c487cbb6e41638c48ad9675dcfafb3ce
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
503
Assets/AssetBundleManager/AssetBundleManager.cs
Normal file
503
Assets/AssetBundleManager/AssetBundleManager.cs
Normal file
@@ -0,0 +1,503 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
#if UNITY_EDITOR
|
||||||
|
using UnityEditor;
|
||||||
|
#endif
|
||||||
|
using System.Collections;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
|
/*
|
||||||
|
In this demo, we demonstrate:
|
||||||
|
1. Automatic asset bundle dependency resolving & loading.
|
||||||
|
It shows how to use the manifest assetbundle like how to get the dependencies etc.
|
||||||
|
2. Automatic unloading of asset bundles (When an asset bundle or a dependency thereof is no longer needed, the asset bundle is unloaded)
|
||||||
|
3. Editor simulation. A bool defines if we load asset bundles from the project or are actually using asset bundles(doesn't work with assetbundle variants for now.)
|
||||||
|
With this, you can player in editor mode without actually building the assetBundles.
|
||||||
|
4. Optional setup where to download all asset bundles
|
||||||
|
5. Build pipeline build postprocessor, integration so that building a player builds the asset bundles and puts them into the player data (Default implmenetation for loading assetbundles from disk on any platform)
|
||||||
|
6. Use WWW.LoadFromCacheOrDownload and feed 128 bit hash to it when downloading via web
|
||||||
|
You can get the hash from the manifest assetbundle.
|
||||||
|
7. AssetBundle variants. A prioritized list of variants that should be used if the asset bundle with that variant exists, first variant in the list is the most preferred etc.
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace AssetBundles
|
||||||
|
{
|
||||||
|
// Loaded assetBundle contains the references count which can be used to unload dependent assetBundles automatically.
|
||||||
|
public class LoadedAssetBundle
|
||||||
|
{
|
||||||
|
public AssetBundle m_AssetBundle;
|
||||||
|
public int m_ReferencedCount;
|
||||||
|
|
||||||
|
public LoadedAssetBundle(AssetBundle assetBundle)
|
||||||
|
{
|
||||||
|
m_AssetBundle = assetBundle;
|
||||||
|
m_ReferencedCount = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Class takes care of loading assetBundle and its dependencies automatically, loading variants automatically.
|
||||||
|
public class AssetBundleManager : MonoBehaviour
|
||||||
|
{
|
||||||
|
public enum LogMode { All, JustErrors };
|
||||||
|
public enum LogType { Info, Warning, Error };
|
||||||
|
|
||||||
|
static LogMode m_LogMode = LogMode.All;
|
||||||
|
static string m_BaseDownloadingURL = "";
|
||||||
|
static string[] m_ActiveVariants = { };
|
||||||
|
static AssetBundleManifest m_AssetBundleManifest = null;
|
||||||
|
#if UNITY_EDITOR
|
||||||
|
static int m_SimulateAssetBundleInEditor = -1;
|
||||||
|
const string kSimulateAssetBundles = "SimulateAssetBundles";
|
||||||
|
#endif
|
||||||
|
|
||||||
|
static Dictionary<string, LoadedAssetBundle> m_LoadedAssetBundles = new Dictionary<string, LoadedAssetBundle> ();
|
||||||
|
static Dictionary<string, WWW> m_DownloadingWWWs = new Dictionary<string, WWW> ();
|
||||||
|
static Dictionary<string, string> m_DownloadingErrors = new Dictionary<string, string> ();
|
||||||
|
static List<AssetBundleLoadOperation> m_InProgressOperations = new List<AssetBundleLoadOperation> ();
|
||||||
|
static Dictionary<string, string[]> m_Dependencies = new Dictionary<string, string[]> ();
|
||||||
|
|
||||||
|
public static LogMode logMode
|
||||||
|
{
|
||||||
|
get { return m_LogMode; }
|
||||||
|
set { m_LogMode = value; }
|
||||||
|
}
|
||||||
|
|
||||||
|
// The base downloading url which is used to generate the full downloading url with the assetBundle names.
|
||||||
|
public static string BaseDownloadingURL
|
||||||
|
{
|
||||||
|
get { return m_BaseDownloadingURL; }
|
||||||
|
set { m_BaseDownloadingURL = value; }
|
||||||
|
}
|
||||||
|
|
||||||
|
// Variants which is used to define the active variants.
|
||||||
|
public static string[] ActiveVariants
|
||||||
|
{
|
||||||
|
get { return m_ActiveVariants; }
|
||||||
|
set { m_ActiveVariants = value; }
|
||||||
|
}
|
||||||
|
|
||||||
|
// AssetBundleManifest object which can be used to load the dependecies and check suitable assetBundle variants.
|
||||||
|
public static AssetBundleManifest AssetBundleManifestObject
|
||||||
|
{
|
||||||
|
set {m_AssetBundleManifest = value; }
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void Log(LogType logType, string text)
|
||||||
|
{
|
||||||
|
if (logType == LogType.Error)
|
||||||
|
Debug.LogError("[AssetBundleManager] " + text);
|
||||||
|
else if (m_LogMode == LogMode.All)
|
||||||
|
Debug.Log("[AssetBundleManager] " + text);
|
||||||
|
}
|
||||||
|
|
||||||
|
#if UNITY_EDITOR
|
||||||
|
// Flag to indicate if we want to simulate assetBundles in Editor without building them actually.
|
||||||
|
public static bool SimulateAssetBundleInEditor
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
if (m_SimulateAssetBundleInEditor == -1)
|
||||||
|
m_SimulateAssetBundleInEditor = EditorPrefs.GetBool(kSimulateAssetBundles, true) ? 1 : 0;
|
||||||
|
|
||||||
|
return m_SimulateAssetBundleInEditor != 0;
|
||||||
|
}
|
||||||
|
set
|
||||||
|
{
|
||||||
|
int newValue = value ? 1 : 0;
|
||||||
|
if (newValue != m_SimulateAssetBundleInEditor)
|
||||||
|
{
|
||||||
|
m_SimulateAssetBundleInEditor = newValue;
|
||||||
|
EditorPrefs.SetBool(kSimulateAssetBundles, value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
private static string GetStreamingAssetsPath()
|
||||||
|
{
|
||||||
|
if (Application.isEditor)
|
||||||
|
return "file://" + System.Environment.CurrentDirectory.Replace("\\", "/"); // Use the build output folder directly.
|
||||||
|
else if (Application.isMobilePlatform || Application.isConsolePlatform)
|
||||||
|
return Application.streamingAssetsPath;
|
||||||
|
else // For standalone player.
|
||||||
|
return "file://" + Application.streamingAssetsPath;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void SetSourceAssetBundleDirectory(string relativePath)
|
||||||
|
{
|
||||||
|
BaseDownloadingURL = GetStreamingAssetsPath() + relativePath;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void SetSourceAssetBundleURL(string absolutePath)
|
||||||
|
{
|
||||||
|
BaseDownloadingURL = absolutePath + Utility.GetPlatformName() + "/";
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void SetDevelopmentAssetBundleServer()
|
||||||
|
{
|
||||||
|
#if UNITY_EDITOR
|
||||||
|
// If we're in Editor simulation mode, we don't have to setup a download URL
|
||||||
|
if (SimulateAssetBundleInEditor)
|
||||||
|
return;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
TextAsset urlFile = Resources.Load("AssetBundleServerURL") as TextAsset;
|
||||||
|
string url = (urlFile != null) ? urlFile.text.Trim() : null;
|
||||||
|
if (url == null || url.Length == 0)
|
||||||
|
{
|
||||||
|
Debug.LogError("Development Server URL could not be found.");
|
||||||
|
//AssetBundleManager.SetSourceAssetBundleURL("http://localhost:7888/" + UnityHelper.GetPlatformName() + "/");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
AssetBundleManager.SetSourceAssetBundleURL(url);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get loaded AssetBundle, only return vaild object when all the dependencies are downloaded successfully.
|
||||||
|
static public LoadedAssetBundle GetLoadedAssetBundle (string assetBundleName, out string error)
|
||||||
|
{
|
||||||
|
if (m_DownloadingErrors.TryGetValue(assetBundleName, out error) )
|
||||||
|
return null;
|
||||||
|
|
||||||
|
LoadedAssetBundle bundle = null;
|
||||||
|
m_LoadedAssetBundles.TryGetValue(assetBundleName, out bundle);
|
||||||
|
if (bundle == null)
|
||||||
|
return null;
|
||||||
|
|
||||||
|
// No dependencies are recorded, only the bundle itself is required.
|
||||||
|
string[] dependencies = null;
|
||||||
|
if (!m_Dependencies.TryGetValue(assetBundleName, out dependencies) )
|
||||||
|
return bundle;
|
||||||
|
|
||||||
|
// Make sure all dependencies are loaded
|
||||||
|
foreach(var dependency in dependencies)
|
||||||
|
{
|
||||||
|
if (m_DownloadingErrors.TryGetValue(assetBundleName, out error) )
|
||||||
|
return bundle;
|
||||||
|
|
||||||
|
// Wait all the dependent assetBundles being loaded.
|
||||||
|
LoadedAssetBundle dependentBundle;
|
||||||
|
m_LoadedAssetBundles.TryGetValue(dependency, out dependentBundle);
|
||||||
|
if (dependentBundle == null)
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
return bundle;
|
||||||
|
}
|
||||||
|
|
||||||
|
static public AssetBundleLoadManifestOperation Initialize ()
|
||||||
|
{
|
||||||
|
return Initialize(Utility.GetPlatformName());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Load AssetBundleManifest.
|
||||||
|
static public AssetBundleLoadManifestOperation Initialize (string manifestAssetBundleName)
|
||||||
|
{
|
||||||
|
#if UNITY_EDITOR
|
||||||
|
Log (LogType.Info, "Simulation Mode: " + (SimulateAssetBundleInEditor ? "Enabled" : "Disabled"));
|
||||||
|
#endif
|
||||||
|
|
||||||
|
var go = new GameObject("AssetBundleManager", typeof(AssetBundleManager));
|
||||||
|
DontDestroyOnLoad(go);
|
||||||
|
|
||||||
|
#if UNITY_EDITOR
|
||||||
|
// If we're in Editor simulation mode, we don't need the manifest assetBundle.
|
||||||
|
if (SimulateAssetBundleInEditor)
|
||||||
|
return null;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
LoadAssetBundle(manifestAssetBundleName, true);
|
||||||
|
var operation = new AssetBundleLoadManifestOperation (manifestAssetBundleName, "AssetBundleManifest", typeof(AssetBundleManifest));
|
||||||
|
m_InProgressOperations.Add (operation);
|
||||||
|
return operation;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Load AssetBundle and its dependencies.
|
||||||
|
static protected void LoadAssetBundle(string assetBundleName, bool isLoadingAssetBundleManifest = false)
|
||||||
|
{
|
||||||
|
Log(LogType.Info, "Loading Asset Bundle " + (isLoadingAssetBundleManifest ? "Manifest: " : ": ") + assetBundleName);
|
||||||
|
|
||||||
|
#if UNITY_EDITOR
|
||||||
|
// If we're in Editor simulation mode, we don't have to really load the assetBundle and its dependencies.
|
||||||
|
if (SimulateAssetBundleInEditor)
|
||||||
|
return;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (!isLoadingAssetBundleManifest)
|
||||||
|
{
|
||||||
|
if (m_AssetBundleManifest == null)
|
||||||
|
{
|
||||||
|
Debug.LogError("Please initialize AssetBundleManifest by calling AssetBundleManager.Initialize()");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Check if the assetBundle has already been processed.
|
||||||
|
bool isAlreadyProcessed = LoadAssetBundleInternal(assetBundleName, isLoadingAssetBundleManifest);
|
||||||
|
|
||||||
|
// Load dependencies.
|
||||||
|
if (!isAlreadyProcessed && !isLoadingAssetBundleManifest)
|
||||||
|
LoadDependencies(assetBundleName);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Remaps the asset bundle name to the best fitting asset bundle variant.
|
||||||
|
static protected string RemapVariantName(string assetBundleName)
|
||||||
|
{
|
||||||
|
string[] bundlesWithVariant = m_AssetBundleManifest.GetAllAssetBundlesWithVariant();
|
||||||
|
|
||||||
|
string[] split = assetBundleName.Split('.');
|
||||||
|
|
||||||
|
int bestFit = int.MaxValue;
|
||||||
|
int bestFitIndex = -1;
|
||||||
|
// Loop all the assetBundles with variant to find the best fit variant assetBundle.
|
||||||
|
for (int i = 0; i < bundlesWithVariant.Length; i++)
|
||||||
|
{
|
||||||
|
string[] curSplit = bundlesWithVariant[i].Split('.');
|
||||||
|
if (curSplit[0] != split[0])
|
||||||
|
continue;
|
||||||
|
|
||||||
|
int found = System.Array.IndexOf(m_ActiveVariants, curSplit[1]);
|
||||||
|
|
||||||
|
// If there is no active variant found. We still want to use the first
|
||||||
|
if (found == -1)
|
||||||
|
found = int.MaxValue-1;
|
||||||
|
|
||||||
|
if (found < bestFit)
|
||||||
|
{
|
||||||
|
bestFit = found;
|
||||||
|
bestFitIndex = i;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (bestFit == int.MaxValue-1)
|
||||||
|
{
|
||||||
|
Debug.LogWarning("Ambigious asset bundle variant chosen because there was no matching active variant: " + bundlesWithVariant[bestFitIndex]);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (bestFitIndex != -1)
|
||||||
|
{
|
||||||
|
return bundlesWithVariant[bestFitIndex];
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return assetBundleName;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Where we actuall call WWW to download the assetBundle.
|
||||||
|
static protected bool LoadAssetBundleInternal (string assetBundleName, bool isLoadingAssetBundleManifest)
|
||||||
|
{
|
||||||
|
// Already loaded.
|
||||||
|
LoadedAssetBundle bundle = null;
|
||||||
|
m_LoadedAssetBundles.TryGetValue(assetBundleName, out bundle);
|
||||||
|
if (bundle != null)
|
||||||
|
{
|
||||||
|
bundle.m_ReferencedCount++;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
// @TODO: Do we need to consider the referenced count of WWWs?
|
||||||
|
// In the demo, we never have duplicate WWWs as we wait LoadAssetAsync()/LoadLevelAsync() to be finished before calling another LoadAssetAsync()/LoadLevelAsync().
|
||||||
|
// But in the real case, users can call LoadAssetAsync()/LoadLevelAsync() several times then wait them to be finished which might have duplicate WWWs.
|
||||||
|
if (m_DownloadingWWWs.ContainsKey(assetBundleName) )
|
||||||
|
return true;
|
||||||
|
|
||||||
|
WWW download = null;
|
||||||
|
string url = m_BaseDownloadingURL + assetBundleName;
|
||||||
|
|
||||||
|
// For manifest assetbundle, always download it as we don't have hash for it.
|
||||||
|
if (isLoadingAssetBundleManifest)
|
||||||
|
download = new WWW(url);
|
||||||
|
else
|
||||||
|
download = WWW.LoadFromCacheOrDownload(url, m_AssetBundleManifest.GetAssetBundleHash(assetBundleName), 0);
|
||||||
|
|
||||||
|
m_DownloadingWWWs.Add(assetBundleName, download);
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Where we get all the dependencies and load them all.
|
||||||
|
static protected void LoadDependencies(string assetBundleName)
|
||||||
|
{
|
||||||
|
if (m_AssetBundleManifest == null)
|
||||||
|
{
|
||||||
|
Debug.LogError("Please initialize AssetBundleManifest by calling AssetBundleManager.Initialize()");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get dependecies from the AssetBundleManifest object..
|
||||||
|
string[] dependencies = m_AssetBundleManifest.GetAllDependencies(assetBundleName);
|
||||||
|
if (dependencies.Length == 0)
|
||||||
|
return;
|
||||||
|
|
||||||
|
for (int i=0;i<dependencies.Length;i++)
|
||||||
|
dependencies[i] = RemapVariantName (dependencies[i]);
|
||||||
|
|
||||||
|
// Record and load all dependencies.
|
||||||
|
m_Dependencies.Add(assetBundleName, dependencies);
|
||||||
|
for (int i=0;i<dependencies.Length;i++)
|
||||||
|
LoadAssetBundleInternal(dependencies[i], false);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Unload assetbundle and its dependencies.
|
||||||
|
static public void UnloadAssetBundle(string assetBundleName)
|
||||||
|
{
|
||||||
|
#if UNITY_EDITOR
|
||||||
|
// If we're in Editor simulation mode, we don't have to load the manifest assetBundle.
|
||||||
|
if (SimulateAssetBundleInEditor)
|
||||||
|
return;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
//Debug.Log(m_LoadedAssetBundles.Count + " assetbundle(s) in memory before unloading " + assetBundleName);
|
||||||
|
|
||||||
|
UnloadAssetBundleInternal(assetBundleName);
|
||||||
|
UnloadDependencies(assetBundleName);
|
||||||
|
|
||||||
|
//Debug.Log(m_LoadedAssetBundles.Count + " assetbundle(s) in memory after unloading " + assetBundleName);
|
||||||
|
}
|
||||||
|
|
||||||
|
static protected void UnloadDependencies(string assetBundleName)
|
||||||
|
{
|
||||||
|
string[] dependencies = null;
|
||||||
|
if (!m_Dependencies.TryGetValue(assetBundleName, out dependencies) )
|
||||||
|
return;
|
||||||
|
|
||||||
|
// Loop dependencies.
|
||||||
|
foreach(var dependency in dependencies)
|
||||||
|
{
|
||||||
|
UnloadAssetBundleInternal(dependency);
|
||||||
|
}
|
||||||
|
|
||||||
|
m_Dependencies.Remove(assetBundleName);
|
||||||
|
}
|
||||||
|
|
||||||
|
static protected void UnloadAssetBundleInternal(string assetBundleName)
|
||||||
|
{
|
||||||
|
string error;
|
||||||
|
LoadedAssetBundle bundle = GetLoadedAssetBundle(assetBundleName, out error);
|
||||||
|
if (bundle == null)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (--bundle.m_ReferencedCount == 0)
|
||||||
|
{
|
||||||
|
bundle.m_AssetBundle.Unload(false);
|
||||||
|
m_LoadedAssetBundles.Remove(assetBundleName);
|
||||||
|
|
||||||
|
Log(LogType.Info, assetBundleName + " has been unloaded successfully");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void Update()
|
||||||
|
{
|
||||||
|
// Collect all the finished WWWs.
|
||||||
|
var keysToRemove = new List<string>();
|
||||||
|
foreach (var keyValue in m_DownloadingWWWs)
|
||||||
|
{
|
||||||
|
WWW download = keyValue.Value;
|
||||||
|
|
||||||
|
// If downloading fails.
|
||||||
|
if (download.error != null)
|
||||||
|
{
|
||||||
|
m_DownloadingErrors.Add(keyValue.Key, string.Format("Failed downloading bundle {0} from {1}: {2}", keyValue.Key, download.url, download.error));
|
||||||
|
keysToRemove.Add(keyValue.Key);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
// If downloading succeeds.
|
||||||
|
if(download.isDone)
|
||||||
|
{
|
||||||
|
AssetBundle bundle = download.assetBundle;
|
||||||
|
if (bundle == null)
|
||||||
|
{
|
||||||
|
m_DownloadingErrors.Add(keyValue.Key, string.Format("{0} is not a valid asset bundle.", keyValue.Key));
|
||||||
|
keysToRemove.Add(keyValue.Key);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
//Debug.Log("Downloading " + keyValue.Key + " is done at frame " + Time.frameCount);
|
||||||
|
m_LoadedAssetBundles.Add(keyValue.Key, new LoadedAssetBundle(download.assetBundle) );
|
||||||
|
keysToRemove.Add(keyValue.Key);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Remove the finished WWWs.
|
||||||
|
foreach( var key in keysToRemove)
|
||||||
|
{
|
||||||
|
WWW download = m_DownloadingWWWs[key];
|
||||||
|
m_DownloadingWWWs.Remove(key);
|
||||||
|
download.Dispose();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update all in progress operations
|
||||||
|
for (int i=0;i<m_InProgressOperations.Count;)
|
||||||
|
{
|
||||||
|
if (!m_InProgressOperations[i].Update())
|
||||||
|
{
|
||||||
|
m_InProgressOperations.RemoveAt(i);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Load asset from the given assetBundle.
|
||||||
|
static public AssetBundleLoadAssetOperation LoadAssetAsync (string assetBundleName, string assetName, System.Type type)
|
||||||
|
{
|
||||||
|
Log(LogType.Info, "Loading " + assetName + " from " + assetBundleName + " bundle");
|
||||||
|
|
||||||
|
AssetBundleLoadAssetOperation operation = null;
|
||||||
|
#if UNITY_EDITOR
|
||||||
|
if (SimulateAssetBundleInEditor)
|
||||||
|
{
|
||||||
|
string[] assetPaths = AssetDatabase.GetAssetPathsFromAssetBundleAndAssetName(assetBundleName, assetName);
|
||||||
|
if (assetPaths.Length == 0)
|
||||||
|
{
|
||||||
|
Debug.LogError("There is no asset with name \"" + assetName + "\" in " + assetBundleName);
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
// @TODO: Now we only get the main object from the first asset. Should consider type also.
|
||||||
|
Object target = AssetDatabase.LoadMainAssetAtPath(assetPaths[0]);
|
||||||
|
operation = new AssetBundleLoadAssetOperationSimulation (target);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
#endif
|
||||||
|
{
|
||||||
|
assetBundleName = RemapVariantName (assetBundleName);
|
||||||
|
LoadAssetBundle (assetBundleName);
|
||||||
|
operation = new AssetBundleLoadAssetOperationFull (assetBundleName, assetName, type);
|
||||||
|
|
||||||
|
m_InProgressOperations.Add (operation);
|
||||||
|
}
|
||||||
|
|
||||||
|
return operation;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Load level from the given assetBundle.
|
||||||
|
static public AssetBundleLoadOperation LoadLevelAsync (string assetBundleName, string levelName, bool isAdditive)
|
||||||
|
{
|
||||||
|
Log(LogType.Info, "Loading " + levelName + " from " + assetBundleName + " bundle");
|
||||||
|
|
||||||
|
AssetBundleLoadOperation operation = null;
|
||||||
|
#if UNITY_EDITOR
|
||||||
|
if (SimulateAssetBundleInEditor)
|
||||||
|
{
|
||||||
|
operation = new AssetBundleLoadLevelSimulationOperation(assetBundleName, levelName, isAdditive);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
#endif
|
||||||
|
{
|
||||||
|
assetBundleName = RemapVariantName(assetBundleName);
|
||||||
|
LoadAssetBundle (assetBundleName);
|
||||||
|
operation = new AssetBundleLoadLevelOperation (assetBundleName, levelName, isAdditive);
|
||||||
|
|
||||||
|
m_InProgressOperations.Add (operation);
|
||||||
|
}
|
||||||
|
|
||||||
|
return operation;
|
||||||
|
}
|
||||||
|
} // End of AssetBundleManager.
|
||||||
|
}
|
||||||
9
Assets/AssetBundleManager/AssetBundleManager.cs.meta
Normal file
9
Assets/AssetBundleManager/AssetBundleManager.cs.meta
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 6309cb12c9f62482c8451f716f97d470
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
7
Assets/AssetBundleManager/Editor.meta
Normal file
7
Assets/AssetBundleManager/Editor.meta
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: ff5782c7c93fa460fb79d0aa4097c52b
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/AssetBundleManager/Editor/AssetBundleServer.exe
Normal file
BIN
Assets/AssetBundleManager/Editor/AssetBundleServer.exe
Normal file
Binary file not shown.
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 59c71df8bbeda4a1a994a635b0aa6675
|
||||||
|
timeCreated: 1431456701
|
||||||
|
licenseType: Store
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
30
Assets/AssetBundleManager/Editor/AssetbundlesMenuItems.cs
Normal file
30
Assets/AssetBundleManager/Editor/AssetbundlesMenuItems.cs
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
using UnityEditor;
|
||||||
|
using System.Collections;
|
||||||
|
|
||||||
|
namespace AssetBundles
|
||||||
|
{
|
||||||
|
public class AssetBundlesMenuItems
|
||||||
|
{
|
||||||
|
const string kSimulationMode = "Assets/AssetBundles/Simulation Mode";
|
||||||
|
|
||||||
|
[MenuItem(kSimulationMode)]
|
||||||
|
public static void ToggleSimulationMode ()
|
||||||
|
{
|
||||||
|
AssetBundleManager.SimulateAssetBundleInEditor = !AssetBundleManager.SimulateAssetBundleInEditor;
|
||||||
|
}
|
||||||
|
|
||||||
|
[MenuItem(kSimulationMode, true)]
|
||||||
|
public static bool ToggleSimulationModeValidate ()
|
||||||
|
{
|
||||||
|
Menu.SetChecked(kSimulationMode, AssetBundleManager.SimulateAssetBundleInEditor);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
[MenuItem ("Assets/AssetBundles/Build AssetBundles")]
|
||||||
|
static public void BuildAssetBundles ()
|
||||||
|
{
|
||||||
|
BuildScript.BuildAssetBundles();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 0906f670aa52147688cf79b1e471f36d
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
161
Assets/AssetBundleManager/Editor/BuildScript.cs
Normal file
161
Assets/AssetBundleManager/Editor/BuildScript.cs
Normal file
@@ -0,0 +1,161 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
using UnityEditor;
|
||||||
|
using UnityEditor.Callbacks;
|
||||||
|
using System.Collections;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.IO;
|
||||||
|
using System.Net;
|
||||||
|
using System.Net.Sockets;
|
||||||
|
|
||||||
|
namespace AssetBundles
|
||||||
|
{
|
||||||
|
public class BuildScript
|
||||||
|
{
|
||||||
|
public static string overloadedDevelopmentServerURL = "";
|
||||||
|
|
||||||
|
public static void BuildAssetBundles()
|
||||||
|
{
|
||||||
|
// Choose the output path according to the build target.
|
||||||
|
string outputPath = Path.Combine(Utility.AssetBundlesOutputPath, Utility.GetPlatformName());
|
||||||
|
if (!Directory.Exists(outputPath) )
|
||||||
|
Directory.CreateDirectory (outputPath);
|
||||||
|
|
||||||
|
//@TODO: use append hash... (Make sure pipeline works correctly with it.)
|
||||||
|
BuildPipeline.BuildAssetBundles (outputPath, BuildAssetBundleOptions.None, EditorUserBuildSettings.activeBuildTarget);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void WriteServerURL()
|
||||||
|
{
|
||||||
|
string downloadURL;
|
||||||
|
if (string.IsNullOrEmpty(overloadedDevelopmentServerURL) == false)
|
||||||
|
{
|
||||||
|
downloadURL = overloadedDevelopmentServerURL;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
IPHostEntry host;
|
||||||
|
string localIP = "";
|
||||||
|
host = Dns.GetHostEntry(Dns.GetHostName());
|
||||||
|
foreach (IPAddress ip in host.AddressList)
|
||||||
|
{
|
||||||
|
if (ip.AddressFamily == AddressFamily.InterNetwork)
|
||||||
|
{
|
||||||
|
localIP = ip.ToString();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
downloadURL = "http://"+localIP+":7888/";
|
||||||
|
}
|
||||||
|
|
||||||
|
string assetBundleManagerResourcesDirectory = "Assets/AssetBundleManager/Resources";
|
||||||
|
string assetBundleUrlPath = Path.Combine (assetBundleManagerResourcesDirectory, "AssetBundleServerURL.bytes");
|
||||||
|
Directory.CreateDirectory(assetBundleManagerResourcesDirectory);
|
||||||
|
File.WriteAllText(assetBundleUrlPath, downloadURL);
|
||||||
|
AssetDatabase.Refresh();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void BuildPlayer()
|
||||||
|
{
|
||||||
|
var outputPath = EditorUtility.SaveFolderPanel("Choose Location of the Built Game", "", "");
|
||||||
|
if (outputPath.Length == 0)
|
||||||
|
return;
|
||||||
|
|
||||||
|
string[] levels = GetLevelsFromBuildSettings();
|
||||||
|
if (levels.Length == 0)
|
||||||
|
{
|
||||||
|
Debug.Log("Nothing to build.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
string targetName = GetBuildTargetName(EditorUserBuildSettings.activeBuildTarget);
|
||||||
|
if (targetName == null)
|
||||||
|
return;
|
||||||
|
|
||||||
|
// Build and copy AssetBundles.
|
||||||
|
BuildScript.BuildAssetBundles();
|
||||||
|
WriteServerURL();
|
||||||
|
|
||||||
|
BuildOptions option = EditorUserBuildSettings.development ? BuildOptions.Development : BuildOptions.None;
|
||||||
|
BuildPipeline.BuildPlayer(levels, outputPath + targetName, EditorUserBuildSettings.activeBuildTarget, option);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void BuildStandalonePlayer()
|
||||||
|
{
|
||||||
|
var outputPath = EditorUtility.SaveFolderPanel("Choose Location of the Built Game", "", "");
|
||||||
|
if (outputPath.Length == 0)
|
||||||
|
return;
|
||||||
|
|
||||||
|
string[] levels = GetLevelsFromBuildSettings();
|
||||||
|
if (levels.Length == 0)
|
||||||
|
{
|
||||||
|
Debug.Log("Nothing to build.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
string targetName = GetBuildTargetName(EditorUserBuildSettings.activeBuildTarget);
|
||||||
|
if (targetName == null)
|
||||||
|
return;
|
||||||
|
|
||||||
|
// Build and copy AssetBundles.
|
||||||
|
BuildScript.BuildAssetBundles();
|
||||||
|
BuildScript.CopyAssetBundlesTo(Path.Combine(Application.streamingAssetsPath, Utility.AssetBundlesOutputPath) );
|
||||||
|
AssetDatabase.Refresh();
|
||||||
|
|
||||||
|
BuildOptions option = EditorUserBuildSettings.development ? BuildOptions.Development : BuildOptions.None;
|
||||||
|
BuildPipeline.BuildPlayer(levels, outputPath + targetName, EditorUserBuildSettings.activeBuildTarget, option);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static string GetBuildTargetName(BuildTarget target)
|
||||||
|
{
|
||||||
|
switch(target)
|
||||||
|
{
|
||||||
|
case BuildTarget.Android :
|
||||||
|
return "/test.apk";
|
||||||
|
case BuildTarget.StandaloneWindows:
|
||||||
|
case BuildTarget.StandaloneWindows64:
|
||||||
|
return "/test.exe";
|
||||||
|
case BuildTarget.StandaloneOSX:
|
||||||
|
return "/test.app";
|
||||||
|
case BuildTarget.WebGL:
|
||||||
|
return "";
|
||||||
|
// Add more build targets for your own.
|
||||||
|
default:
|
||||||
|
Debug.Log("Target not implemented.");
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static void CopyAssetBundlesTo(string outputPath)
|
||||||
|
{
|
||||||
|
// Clear streaming assets folder.
|
||||||
|
FileUtil.DeleteFileOrDirectory(Application.streamingAssetsPath);
|
||||||
|
Directory.CreateDirectory(outputPath);
|
||||||
|
|
||||||
|
string outputFolder = Utility.GetPlatformName();
|
||||||
|
|
||||||
|
// Setup the source folder for assetbundles.
|
||||||
|
var source = Path.Combine(Path.Combine(System.Environment.CurrentDirectory, Utility.AssetBundlesOutputPath), outputFolder);
|
||||||
|
if (!System.IO.Directory.Exists(source) )
|
||||||
|
Debug.Log("No assetBundle output folder, try to build the assetBundles first.");
|
||||||
|
|
||||||
|
// Setup the destination folder for assetbundles.
|
||||||
|
var destination = System.IO.Path.Combine(outputPath, outputFolder);
|
||||||
|
if (System.IO.Directory.Exists(destination) )
|
||||||
|
FileUtil.DeleteFileOrDirectory(destination);
|
||||||
|
|
||||||
|
FileUtil.CopyFileOrDirectory(source, destination);
|
||||||
|
}
|
||||||
|
|
||||||
|
static string[] GetLevelsFromBuildSettings()
|
||||||
|
{
|
||||||
|
List<string> levels = new List<string>();
|
||||||
|
for(int i = 0 ; i < EditorBuildSettings.scenes.Length; ++i)
|
||||||
|
{
|
||||||
|
if (EditorBuildSettings.scenes[i].enabled)
|
||||||
|
levels.Add(EditorBuildSettings.scenes[i].path);
|
||||||
|
}
|
||||||
|
|
||||||
|
return levels.ToArray();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
9
Assets/AssetBundleManager/Editor/BuildScript.cs.meta
Normal file
9
Assets/AssetBundleManager/Editor/BuildScript.cs.meta
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: f19ef23648157ec49ab02b99bee74403
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
128
Assets/AssetBundleManager/Editor/ExecuteInternalMono.cs
Normal file
128
Assets/AssetBundleManager/Editor/ExecuteInternalMono.cs
Normal file
@@ -0,0 +1,128 @@
|
|||||||
|
using UnityEditor;
|
||||||
|
using UnityEngine;
|
||||||
|
using System.Text.RegularExpressions;
|
||||||
|
using System.Collections;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Diagnostics;
|
||||||
|
using System.IO;
|
||||||
|
using System;
|
||||||
|
|
||||||
|
namespace AssetBundles
|
||||||
|
{
|
||||||
|
class MonoInstallationFinder
|
||||||
|
{
|
||||||
|
public static string GetFrameWorksFolder()
|
||||||
|
{
|
||||||
|
var editorAppPath = EditorApplication.applicationPath;
|
||||||
|
if (Application.platform == RuntimePlatform.WindowsEditor)
|
||||||
|
return Path.Combine(Path.GetDirectoryName(editorAppPath), "Data");
|
||||||
|
else if (Application.platform == RuntimePlatform.OSXEditor)
|
||||||
|
return Path.Combine(editorAppPath, Path.Combine("Contents", "Frameworks"));
|
||||||
|
else // Linux...?
|
||||||
|
return Path.Combine(Path.GetDirectoryName(editorAppPath), "Data");
|
||||||
|
}
|
||||||
|
|
||||||
|
public static string GetProfileDirectory (BuildTarget target, string profile)
|
||||||
|
{
|
||||||
|
var monoprefix = GetMonoInstallation();
|
||||||
|
return Path.Combine(monoprefix, Path.Combine("lib", Path.Combine("mono", profile)));
|
||||||
|
}
|
||||||
|
|
||||||
|
public static string GetMonoInstallation()
|
||||||
|
{
|
||||||
|
#if INCLUDE_MONO_2_12
|
||||||
|
return GetMonoInstallation("MonoBleedingEdge");
|
||||||
|
#else
|
||||||
|
return GetMonoInstallation("Mono");
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
public static string GetMonoInstallation(string monoName)
|
||||||
|
{
|
||||||
|
return Path.Combine(GetFrameWorksFolder(), monoName);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class ExecuteInternalMono
|
||||||
|
{
|
||||||
|
private static readonly Regex UnsafeCharsWindows = new Regex("[^A-Za-z0-9\\_\\-\\.\\:\\,\\/\\@\\\\]");
|
||||||
|
private static readonly Regex UnescapeableChars = new Regex("[\\x00-\\x08\\x10-\\x1a\\x1c-\\x1f\\x7f\\xff]");
|
||||||
|
private static readonly Regex Quotes = new Regex("\"");
|
||||||
|
|
||||||
|
public ProcessStartInfo processStartInfo = null;
|
||||||
|
|
||||||
|
public static string PrepareFileName(string input)
|
||||||
|
{
|
||||||
|
if (Application.platform == RuntimePlatform.OSXEditor)
|
||||||
|
{
|
||||||
|
return EscapeCharsQuote(input);
|
||||||
|
}
|
||||||
|
return EscapeCharsWindows(input);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static string EscapeCharsQuote(string input)
|
||||||
|
{
|
||||||
|
if (input.IndexOf('\'') == -1)
|
||||||
|
{
|
||||||
|
return "'" + input + "'";
|
||||||
|
}
|
||||||
|
if (input.IndexOf('"') == -1)
|
||||||
|
{
|
||||||
|
return "\"" + input + "\"";
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static string EscapeCharsWindows(string input)
|
||||||
|
{
|
||||||
|
if (input.Length == 0)
|
||||||
|
{
|
||||||
|
return "\"\"";
|
||||||
|
}
|
||||||
|
if (UnescapeableChars.IsMatch(input))
|
||||||
|
{
|
||||||
|
UnityEngine.Debug.LogWarning("Cannot escape control characters in string");
|
||||||
|
return "\"\"";
|
||||||
|
}
|
||||||
|
if (UnsafeCharsWindows.IsMatch(input))
|
||||||
|
{
|
||||||
|
return "\"" + Quotes.Replace(input, "\"\"") + "\"";
|
||||||
|
}
|
||||||
|
return input;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static ProcessStartInfo GetProfileStartInfoForMono(string monodistribution, string profile, string executable, string arguments, bool setMonoEnvironmentVariables)
|
||||||
|
{
|
||||||
|
var monoexe = PathCombine(monodistribution, "bin", "mono");
|
||||||
|
var profileAbspath = PathCombine(monodistribution, "lib", "mono", profile);
|
||||||
|
if (Application.platform == RuntimePlatform.WindowsEditor)
|
||||||
|
monoexe = PrepareFileName(monoexe + ".exe");
|
||||||
|
|
||||||
|
var startInfo = new ProcessStartInfo
|
||||||
|
{
|
||||||
|
Arguments = PrepareFileName(executable) + " " + arguments,
|
||||||
|
CreateNoWindow = true,
|
||||||
|
FileName = monoexe,
|
||||||
|
RedirectStandardError = true,
|
||||||
|
RedirectStandardOutput = true,
|
||||||
|
WorkingDirectory = Application.dataPath + "/..",
|
||||||
|
UseShellExecute = false
|
||||||
|
};
|
||||||
|
|
||||||
|
if (setMonoEnvironmentVariables)
|
||||||
|
{
|
||||||
|
startInfo.EnvironmentVariables["MONO_PATH"] = profileAbspath;
|
||||||
|
startInfo.EnvironmentVariables["MONO_CFG_DIR"] = PathCombine(monodistribution, "etc");
|
||||||
|
}
|
||||||
|
return startInfo;
|
||||||
|
}
|
||||||
|
|
||||||
|
static string PathCombine(params string[] parts)
|
||||||
|
{
|
||||||
|
var path = parts[0];
|
||||||
|
for (var i = 1; i < parts.Length; ++i)
|
||||||
|
path = Path.Combine(path, parts[i]);
|
||||||
|
return path;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
12
Assets/AssetBundleManager/Editor/ExecuteInternalMono.cs.meta
Normal file
12
Assets/AssetBundleManager/Editor/ExecuteInternalMono.cs.meta
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 8127c6674aa9d419ebdf60f64e3bfbb9
|
||||||
|
timeCreated: 1431509895
|
||||||
|
licenseType: Store
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
99
Assets/AssetBundleManager/Editor/LaunchAssetBundleServer.cs
Normal file
99
Assets/AssetBundleManager/Editor/LaunchAssetBundleServer.cs
Normal file
@@ -0,0 +1,99 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
using UnityEditor;
|
||||||
|
using System.Collections;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Diagnostics;
|
||||||
|
using System.IO;
|
||||||
|
using System;
|
||||||
|
using System.Net;
|
||||||
|
using System.Threading;
|
||||||
|
using UnityEditor.Utils;
|
||||||
|
|
||||||
|
namespace AssetBundles
|
||||||
|
{
|
||||||
|
internal class LaunchAssetBundleServer : ScriptableSingleton<LaunchAssetBundleServer>
|
||||||
|
{
|
||||||
|
const string kLocalAssetbundleServerMenu = "Assets/AssetBundles/Local AssetBundle Server";
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
int m_ServerPID = 0;
|
||||||
|
|
||||||
|
[MenuItem (kLocalAssetbundleServerMenu)]
|
||||||
|
public static void ToggleLocalAssetBundleServer ()
|
||||||
|
{
|
||||||
|
bool isRunning = IsRunning();
|
||||||
|
if (!isRunning)
|
||||||
|
{
|
||||||
|
Run ();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
KillRunningAssetBundleServer ();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[MenuItem (kLocalAssetbundleServerMenu, true)]
|
||||||
|
public static bool ToggleLocalAssetBundleServerValidate ()
|
||||||
|
{
|
||||||
|
bool isRunnning = IsRunning ();
|
||||||
|
Menu.SetChecked(kLocalAssetbundleServerMenu, isRunnning);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
static bool IsRunning ()
|
||||||
|
{
|
||||||
|
if (instance.m_ServerPID == 0)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
var process = Process.GetProcessById (instance.m_ServerPID);
|
||||||
|
if (process == null)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
return !process.HasExited;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void KillRunningAssetBundleServer ()
|
||||||
|
{
|
||||||
|
// Kill the last time we ran
|
||||||
|
try
|
||||||
|
{
|
||||||
|
if (instance.m_ServerPID == 0)
|
||||||
|
return;
|
||||||
|
|
||||||
|
var lastProcess = Process.GetProcessById (instance.m_ServerPID);
|
||||||
|
lastProcess.Kill();
|
||||||
|
instance.m_ServerPID = 0;
|
||||||
|
}
|
||||||
|
catch
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static void Run ()
|
||||||
|
{
|
||||||
|
string pathToAssetServer = Path.Combine(Application.dataPath, "AssetBundleManager/Editor/AssetBundleServer.exe");
|
||||||
|
string pathToApp = Application.dataPath.Substring(0, Application.dataPath.LastIndexOf('/'));
|
||||||
|
|
||||||
|
KillRunningAssetBundleServer();
|
||||||
|
|
||||||
|
BuildScript.WriteServerURL();
|
||||||
|
|
||||||
|
string args = Path.Combine (pathToApp, "AssetBundles");
|
||||||
|
args = string.Format("\"{0}\" {1}", args, Process.GetCurrentProcess().Id);
|
||||||
|
ProcessStartInfo startInfo = ExecuteInternalMono.GetProfileStartInfoForMono(MonoInstallationFinder.GetMonoInstallation("MonoBleedingEdge"), "4.0", pathToAssetServer, args, true);
|
||||||
|
startInfo.WorkingDirectory = Path.Combine(System.Environment.CurrentDirectory, "AssetBundles");
|
||||||
|
startInfo.UseShellExecute = false;
|
||||||
|
Process launchProcess = Process.Start(startInfo);
|
||||||
|
if (launchProcess == null || launchProcess.HasExited == true || launchProcess.Id == 0)
|
||||||
|
{
|
||||||
|
//Unable to start process
|
||||||
|
UnityEngine.Debug.LogError ("Unable Start AssetBundleServer process");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
//We seem to have launched, let's save the PID
|
||||||
|
instance.m_ServerPID = launchProcess.Id;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 23a84bb10f0e2473bbe44fcb9c23e157
|
||||||
|
timeCreated: 1429472835
|
||||||
|
licenseType: Store
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
9
Assets/AssetBundleManager/Resources.meta
Normal file
9
Assets/AssetBundleManager/Resources.meta
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 22022de167524490db7116e26e11c5ba
|
||||||
|
folderAsset: yes
|
||||||
|
timeCreated: 1431881731
|
||||||
|
licenseType: Store
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
http://192.168.1.115:7888/
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 412195e63b8901646adb12ef3f33f415
|
||||||
|
timeCreated: 1438698780
|
||||||
|
licenseType: Store
|
||||||
|
TextScriptImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
66
Assets/AssetBundleManager/Utility.cs
Normal file
66
Assets/AssetBundleManager/Utility.cs
Normal file
@@ -0,0 +1,66 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
#if UNITY_EDITOR
|
||||||
|
using UnityEditor;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
namespace AssetBundles
|
||||||
|
{
|
||||||
|
public class Utility
|
||||||
|
{
|
||||||
|
public const string AssetBundlesOutputPath = "AssetBundles";
|
||||||
|
|
||||||
|
public static string GetPlatformName()
|
||||||
|
{
|
||||||
|
#if UNITY_EDITOR
|
||||||
|
return GetPlatformForAssetBundles(EditorUserBuildSettings.activeBuildTarget);
|
||||||
|
#else
|
||||||
|
return GetPlatformForAssetBundles(Application.platform);
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
#if UNITY_EDITOR
|
||||||
|
private static string GetPlatformForAssetBundles(BuildTarget target)
|
||||||
|
{
|
||||||
|
switch(target)
|
||||||
|
{
|
||||||
|
case BuildTarget.Android:
|
||||||
|
return "Android";
|
||||||
|
case BuildTarget.iOS:
|
||||||
|
return "iOS";
|
||||||
|
case BuildTarget.WebGL:
|
||||||
|
return "WebGL";
|
||||||
|
case BuildTarget.StandaloneWindows:
|
||||||
|
case BuildTarget.StandaloneWindows64:
|
||||||
|
return "Windows";
|
||||||
|
case BuildTarget.StandaloneOSX:
|
||||||
|
return "OSX";
|
||||||
|
// Add more build targets for your own.
|
||||||
|
// If you add more targets, don't forget to add the same platforms to GetPlatformForAssetBundles(RuntimePlatform) function.
|
||||||
|
default:
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
private static string GetPlatformForAssetBundles(RuntimePlatform platform)
|
||||||
|
{
|
||||||
|
switch(platform)
|
||||||
|
{
|
||||||
|
case RuntimePlatform.Android:
|
||||||
|
return "Android";
|
||||||
|
case RuntimePlatform.IPhonePlayer:
|
||||||
|
return "iOS";
|
||||||
|
case RuntimePlatform.WebGLPlayer:
|
||||||
|
return "WebGL";
|
||||||
|
case RuntimePlatform.WindowsPlayer:
|
||||||
|
return "Windows";
|
||||||
|
case RuntimePlatform.OSXPlayer:
|
||||||
|
return "OSX";
|
||||||
|
// Add more build targets for your own.
|
||||||
|
// If you add more targets, don't forget to add the same platforms to GetPlatformForAssetBundles(RuntimePlatform) function.
|
||||||
|
default:
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
12
Assets/AssetBundleManager/Utility.cs.meta
Normal file
12
Assets/AssetBundleManager/Utility.cs.meta
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: e5eb071745f174d8b8fd080714b40b93
|
||||||
|
timeCreated: 1431883330
|
||||||
|
licenseType: Store
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
9
Assets/AssetBundleSource.meta
Normal file
9
Assets/AssetBundleSource.meta
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: a757002bdc8f9044a9a9dfe4c387eada
|
||||||
|
folderAsset: yes
|
||||||
|
timeCreated: 1505023916
|
||||||
|
licenseType: Free
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
9
Assets/AssetBundleSource/armbrust.meta
Normal file
9
Assets/AssetBundleSource/armbrust.meta
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: a333fb7ce9e947f43a40b7b8d1eaae6b
|
||||||
|
folderAsset: yes
|
||||||
|
timeCreated: 1506094464
|
||||||
|
licenseType: Free
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
9
Assets/AssetBundleSource/armbrust/Materials.meta
Normal file
9
Assets/AssetBundleSource/armbrust/Materials.meta
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: efc2f80251754fd4bbc474d693432382
|
||||||
|
folderAsset: yes
|
||||||
|
timeCreated: 1506094466
|
||||||
|
licenseType: Free
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName: armbrust
|
||||||
|
assetBundleVariant:
|
||||||
75
Assets/AssetBundleSource/armbrust/Materials/Material.003.mat
Normal file
75
Assets/AssetBundleSource/armbrust/Materials/Material.003.mat
Normal file
@@ -0,0 +1,75 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!21 &2100000
|
||||||
|
Material:
|
||||||
|
serializedVersion: 6
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_PrefabParentObject: {fileID: 0}
|
||||||
|
m_PrefabInternal: {fileID: 0}
|
||||||
|
m_Name: Material.003
|
||||||
|
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
|
||||||
|
m_ShaderKeywords:
|
||||||
|
m_LightmapFlags: 4
|
||||||
|
m_EnableInstancingVariants: 0
|
||||||
|
m_CustomRenderQueue: -1
|
||||||
|
stringTagMap: {}
|
||||||
|
disabledShaderPasses: []
|
||||||
|
m_SavedProperties:
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TexEnvs:
|
||||||
|
- _BumpMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _DetailAlbedoMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _DetailMask:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _DetailNormalMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _EmissionMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _MainTex:
|
||||||
|
m_Texture: {fileID: 2800000, guid: 9094fadfa196d4847968cb810446d759, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _MetallicGlossMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _OcclusionMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _ParallaxMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
m_Floats:
|
||||||
|
- _BumpScale: 1
|
||||||
|
- _Cutoff: 0.5
|
||||||
|
- _DetailNormalMapScale: 1
|
||||||
|
- _DstBlend: 0
|
||||||
|
- _GlossMapScale: 1
|
||||||
|
- _Glossiness: 0.5
|
||||||
|
- _GlossyReflections: 1
|
||||||
|
- _Metallic: 0
|
||||||
|
- _Mode: 0
|
||||||
|
- _OcclusionStrength: 1
|
||||||
|
- _Parallax: 0.02
|
||||||
|
- _SmoothnessTextureChannel: 0
|
||||||
|
- _SpecularHighlights: 1
|
||||||
|
- _SrcBlend: 1
|
||||||
|
- _UVSec: 0
|
||||||
|
- _ZWrite: 1
|
||||||
|
m_Colors:
|
||||||
|
- _Color: {r: 0.8, g: 0.8, b: 0.8, a: 1}
|
||||||
|
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 432479053c545bf49a9d7983afc5b5f0
|
||||||
|
timeCreated: 1506178210
|
||||||
|
licenseType: Free
|
||||||
|
NativeFormatImporter:
|
||||||
|
mainObjectFileID: 2100000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
12
Assets/AssetBundleSource/armbrust/armbrust_final.mtl
Normal file
12
Assets/AssetBundleSource/armbrust/armbrust_final.mtl
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
# Blender MTL File: 'final_cleaning.blend'
|
||||||
|
# Material Count: 1
|
||||||
|
|
||||||
|
newmtl Material.003
|
||||||
|
Ns 96.078431
|
||||||
|
Ka 0.000000 0.000000 0.000000
|
||||||
|
Kd 0.800000 0.800000 0.800000
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ni 1.000000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
map_Kd tex.png
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: cae06bbd226934a4d9ad25522747fbc3
|
||||||
|
timeCreated: 1506370976
|
||||||
|
licenseType: Free
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName: armbrust
|
||||||
|
assetBundleVariant:
|
||||||
29123
Assets/AssetBundleSource/armbrust/armbrust_final.obj
Normal file
29123
Assets/AssetBundleSource/armbrust/armbrust_final.obj
Normal file
File diff suppressed because it is too large
Load Diff
84
Assets/AssetBundleSource/armbrust/armbrust_final.obj.meta
Normal file
84
Assets/AssetBundleSource/armbrust/armbrust_final.obj.meta
Normal file
@@ -0,0 +1,84 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 59fcc15b4e2612f43aa0d24358ae5b54
|
||||||
|
timeCreated: 1506370977
|
||||||
|
licenseType: Free
|
||||||
|
ModelImporter:
|
||||||
|
serializedVersion: 19
|
||||||
|
fileIDToRecycleName:
|
||||||
|
100000: //RootNode
|
||||||
|
100002: default
|
||||||
|
400000: //RootNode
|
||||||
|
400002: default
|
||||||
|
2300000: default
|
||||||
|
3300000: default
|
||||||
|
4300000: default
|
||||||
|
materials:
|
||||||
|
importMaterials: 1
|
||||||
|
materialName: 0
|
||||||
|
materialSearch: 1
|
||||||
|
animations:
|
||||||
|
legacyGenerateAnimations: 4
|
||||||
|
bakeSimulation: 0
|
||||||
|
resampleCurves: 1
|
||||||
|
optimizeGameObjects: 0
|
||||||
|
motionNodeName:
|
||||||
|
rigImportErrors:
|
||||||
|
rigImportWarnings:
|
||||||
|
animationImportErrors:
|
||||||
|
animationImportWarnings:
|
||||||
|
animationRetargetingWarnings:
|
||||||
|
animationDoRetargetingWarnings: 0
|
||||||
|
animationCompression: 1
|
||||||
|
animationRotationError: 0.5
|
||||||
|
animationPositionError: 0.5
|
||||||
|
animationScaleError: 0.5
|
||||||
|
animationWrapMode: 0
|
||||||
|
extraExposedTransformPaths: []
|
||||||
|
clipAnimations: []
|
||||||
|
isReadable: 1
|
||||||
|
meshes:
|
||||||
|
lODScreenPercentages: []
|
||||||
|
globalScale: 1
|
||||||
|
meshCompression: 0
|
||||||
|
addColliders: 0
|
||||||
|
importBlendShapes: 1
|
||||||
|
swapUVChannels: 0
|
||||||
|
generateSecondaryUV: 0
|
||||||
|
useFileUnits: 1
|
||||||
|
optimizeMeshForGPU: 1
|
||||||
|
keepQuads: 0
|
||||||
|
weldVertices: 1
|
||||||
|
secondaryUVAngleDistortion: 8
|
||||||
|
secondaryUVAreaDistortion: 15.000001
|
||||||
|
secondaryUVHardAngle: 88
|
||||||
|
secondaryUVPackMargin: 4
|
||||||
|
useFileScale: 1
|
||||||
|
tangentSpace:
|
||||||
|
normalSmoothAngle: 60
|
||||||
|
normalImportMode: 0
|
||||||
|
tangentImportMode: 3
|
||||||
|
importAnimation: 1
|
||||||
|
copyAvatar: 0
|
||||||
|
humanDescription:
|
||||||
|
serializedVersion: 2
|
||||||
|
human: []
|
||||||
|
skeleton: []
|
||||||
|
armTwist: 0.5
|
||||||
|
foreArmTwist: 0.5
|
||||||
|
upperLegTwist: 0.5
|
||||||
|
legTwist: 0.5
|
||||||
|
armStretch: 0.05
|
||||||
|
legStretch: 0.05
|
||||||
|
feetSpacing: 0
|
||||||
|
rootMotionBoneName:
|
||||||
|
rootMotionBoneRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
hasTranslationDoF: 0
|
||||||
|
hasExtraRoot: 0
|
||||||
|
skeletonHasParents: 1
|
||||||
|
lastHumanDescriptionAvatarSource: {instanceID: 0}
|
||||||
|
animationType: 0
|
||||||
|
humanoidOversampling: 1
|
||||||
|
additionalBone: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName: armbrust
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/AssetBundleSource/armbrust/tex.png
Normal file
BIN
Assets/AssetBundleSource/armbrust/tex.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 377 KiB |
68
Assets/AssetBundleSource/armbrust/tex.png.meta
Normal file
68
Assets/AssetBundleSource/armbrust/tex.png.meta
Normal file
@@ -0,0 +1,68 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 9094fadfa196d4847968cb810446d759
|
||||||
|
timeCreated: 1506177003
|
||||||
|
licenseType: Free
|
||||||
|
TextureImporter:
|
||||||
|
fileIDToRecycleName: {}
|
||||||
|
serializedVersion: 4
|
||||||
|
mipmaps:
|
||||||
|
mipMapMode: 0
|
||||||
|
enableMipMap: 1
|
||||||
|
sRGBTexture: 1
|
||||||
|
linearTexture: 0
|
||||||
|
fadeOut: 0
|
||||||
|
borderMipMap: 0
|
||||||
|
mipMapFadeDistanceStart: 1
|
||||||
|
mipMapFadeDistanceEnd: 3
|
||||||
|
bumpmap:
|
||||||
|
convertToNormalMap: 0
|
||||||
|
externalNormalMap: 0
|
||||||
|
heightScale: 0.25
|
||||||
|
normalMapFilter: 0
|
||||||
|
isReadable: 0
|
||||||
|
grayScaleToAlpha: 0
|
||||||
|
generateCubemap: 6
|
||||||
|
cubemapConvolution: 0
|
||||||
|
seamlessCubemap: 0
|
||||||
|
textureFormat: 1
|
||||||
|
maxTextureSize: 2048
|
||||||
|
textureSettings:
|
||||||
|
filterMode: -1
|
||||||
|
aniso: -1
|
||||||
|
mipBias: -1
|
||||||
|
wrapMode: -1
|
||||||
|
nPOTScale: 1
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 0
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 0
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 0
|
||||||
|
textureShape: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
platformSettings:
|
||||||
|
- buildTarget: DefaultTexturePlatform
|
||||||
|
maxTextureSize: 2048
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
spritePackingTag:
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
9
Assets/AssetBundleSource/hellebarde.meta
Normal file
9
Assets/AssetBundleSource/hellebarde.meta
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: af35fa6d78207ae48b4526ac6b0f43aa
|
||||||
|
folderAsset: yes
|
||||||
|
timeCreated: 1506338870
|
||||||
|
licenseType: Free
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
9
Assets/AssetBundleSource/hellebarde/Materials.meta
Normal file
9
Assets/AssetBundleSource/hellebarde/Materials.meta
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 04d074bb01cf5fe40be6aab1f042ac39
|
||||||
|
folderAsset: yes
|
||||||
|
timeCreated: 1506339388
|
||||||
|
licenseType: Free
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName: hellebarde
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,75 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!21 &2100000
|
||||||
|
Material:
|
||||||
|
serializedVersion: 6
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_PrefabParentObject: {fileID: 0}
|
||||||
|
m_PrefabInternal: {fileID: 0}
|
||||||
|
m_Name: Material.002
|
||||||
|
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
|
||||||
|
m_ShaderKeywords:
|
||||||
|
m_LightmapFlags: 4
|
||||||
|
m_EnableInstancingVariants: 0
|
||||||
|
m_CustomRenderQueue: -1
|
||||||
|
stringTagMap: {}
|
||||||
|
disabledShaderPasses: []
|
||||||
|
m_SavedProperties:
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TexEnvs:
|
||||||
|
- _BumpMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _DetailAlbedoMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _DetailMask:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _DetailNormalMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _EmissionMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _MainTex:
|
||||||
|
m_Texture: {fileID: 2800000, guid: ab29058008f6609448ba9f53d1e0aaf7, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _MetallicGlossMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _OcclusionMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _ParallaxMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
m_Floats:
|
||||||
|
- _BumpScale: 1
|
||||||
|
- _Cutoff: 0.5
|
||||||
|
- _DetailNormalMapScale: 1
|
||||||
|
- _DstBlend: 0
|
||||||
|
- _GlossMapScale: 1
|
||||||
|
- _Glossiness: 0.5
|
||||||
|
- _GlossyReflections: 1
|
||||||
|
- _Metallic: 0
|
||||||
|
- _Mode: 0
|
||||||
|
- _OcclusionStrength: 1
|
||||||
|
- _Parallax: 0.02
|
||||||
|
- _SmoothnessTextureChannel: 0
|
||||||
|
- _SpecularHighlights: 1
|
||||||
|
- _SrcBlend: 1
|
||||||
|
- _UVSec: 0
|
||||||
|
- _ZWrite: 1
|
||||||
|
m_Colors:
|
||||||
|
- _Color: {r: 0.8, g: 0.8, b: 0.8, a: 1}
|
||||||
|
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: a72e09bc57579f248b51ba6c5dfda94b
|
||||||
|
timeCreated: 1506339388
|
||||||
|
licenseType: Free
|
||||||
|
NativeFormatImporter:
|
||||||
|
mainObjectFileID: 2100000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
12
Assets/AssetBundleSource/hellebarde/hellebarde.mtl
Normal file
12
Assets/AssetBundleSource/hellebarde/hellebarde.mtl
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
# Blender MTL File: 'cleaned.blend'
|
||||||
|
# Material Count: 1
|
||||||
|
|
||||||
|
newmtl Material.002
|
||||||
|
Ns 92.156863
|
||||||
|
Ka 0.000000 0.000000 0.000000
|
||||||
|
Kd 0.640000 0.640000 0.640000
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ni 1.000000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
map_Kd tex.png
|
||||||
8
Assets/AssetBundleSource/hellebarde/hellebarde.mtl.meta
Normal file
8
Assets/AssetBundleSource/hellebarde/hellebarde.mtl.meta
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: f360e332511cdee41abba83ef89c0a1c
|
||||||
|
timeCreated: 1506371164
|
||||||
|
licenseType: Free
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName: hellebarde
|
||||||
|
assetBundleVariant:
|
||||||
30784
Assets/AssetBundleSource/hellebarde/hellebarde.obj
Normal file
30784
Assets/AssetBundleSource/hellebarde/hellebarde.obj
Normal file
File diff suppressed because it is too large
Load Diff
84
Assets/AssetBundleSource/hellebarde/hellebarde.obj.meta
Normal file
84
Assets/AssetBundleSource/hellebarde/hellebarde.obj.meta
Normal file
@@ -0,0 +1,84 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: b69b289b5f4569e4fa9e0588cad56dbe
|
||||||
|
timeCreated: 1506371165
|
||||||
|
licenseType: Free
|
||||||
|
ModelImporter:
|
||||||
|
serializedVersion: 19
|
||||||
|
fileIDToRecycleName:
|
||||||
|
100000: default
|
||||||
|
100002: //RootNode
|
||||||
|
400000: default
|
||||||
|
400002: //RootNode
|
||||||
|
2300000: default
|
||||||
|
3300000: default
|
||||||
|
4300000: default
|
||||||
|
materials:
|
||||||
|
importMaterials: 1
|
||||||
|
materialName: 0
|
||||||
|
materialSearch: 1
|
||||||
|
animations:
|
||||||
|
legacyGenerateAnimations: 4
|
||||||
|
bakeSimulation: 0
|
||||||
|
resampleCurves: 1
|
||||||
|
optimizeGameObjects: 0
|
||||||
|
motionNodeName:
|
||||||
|
rigImportErrors:
|
||||||
|
rigImportWarnings:
|
||||||
|
animationImportErrors:
|
||||||
|
animationImportWarnings:
|
||||||
|
animationRetargetingWarnings:
|
||||||
|
animationDoRetargetingWarnings: 0
|
||||||
|
animationCompression: 1
|
||||||
|
animationRotationError: 0.5
|
||||||
|
animationPositionError: 0.5
|
||||||
|
animationScaleError: 0.5
|
||||||
|
animationWrapMode: 0
|
||||||
|
extraExposedTransformPaths: []
|
||||||
|
clipAnimations: []
|
||||||
|
isReadable: 1
|
||||||
|
meshes:
|
||||||
|
lODScreenPercentages: []
|
||||||
|
globalScale: 1
|
||||||
|
meshCompression: 0
|
||||||
|
addColliders: 0
|
||||||
|
importBlendShapes: 1
|
||||||
|
swapUVChannels: 0
|
||||||
|
generateSecondaryUV: 0
|
||||||
|
useFileUnits: 1
|
||||||
|
optimizeMeshForGPU: 1
|
||||||
|
keepQuads: 0
|
||||||
|
weldVertices: 1
|
||||||
|
secondaryUVAngleDistortion: 8
|
||||||
|
secondaryUVAreaDistortion: 15.000001
|
||||||
|
secondaryUVHardAngle: 88
|
||||||
|
secondaryUVPackMargin: 4
|
||||||
|
useFileScale: 1
|
||||||
|
tangentSpace:
|
||||||
|
normalSmoothAngle: 60
|
||||||
|
normalImportMode: 0
|
||||||
|
tangentImportMode: 3
|
||||||
|
importAnimation: 1
|
||||||
|
copyAvatar: 0
|
||||||
|
humanDescription:
|
||||||
|
serializedVersion: 2
|
||||||
|
human: []
|
||||||
|
skeleton: []
|
||||||
|
armTwist: 0.5
|
||||||
|
foreArmTwist: 0.5
|
||||||
|
upperLegTwist: 0.5
|
||||||
|
legTwist: 0.5
|
||||||
|
armStretch: 0.05
|
||||||
|
legStretch: 0.05
|
||||||
|
feetSpacing: 0
|
||||||
|
rootMotionBoneName:
|
||||||
|
rootMotionBoneRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
hasTranslationDoF: 0
|
||||||
|
hasExtraRoot: 0
|
||||||
|
skeletonHasParents: 1
|
||||||
|
lastHumanDescriptionAvatarSource: {instanceID: 0}
|
||||||
|
animationType: 0
|
||||||
|
humanoidOversampling: 1
|
||||||
|
additionalBone: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName: hellebarde
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/AssetBundleSource/hellebarde/tex.png
Normal file
BIN
Assets/AssetBundleSource/hellebarde/tex.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 630 KiB |
68
Assets/AssetBundleSource/hellebarde/tex.png.meta
Normal file
68
Assets/AssetBundleSource/hellebarde/tex.png.meta
Normal file
@@ -0,0 +1,68 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: ab29058008f6609448ba9f53d1e0aaf7
|
||||||
|
timeCreated: 1506339380
|
||||||
|
licenseType: Free
|
||||||
|
TextureImporter:
|
||||||
|
fileIDToRecycleName: {}
|
||||||
|
serializedVersion: 4
|
||||||
|
mipmaps:
|
||||||
|
mipMapMode: 0
|
||||||
|
enableMipMap: 1
|
||||||
|
sRGBTexture: 1
|
||||||
|
linearTexture: 0
|
||||||
|
fadeOut: 0
|
||||||
|
borderMipMap: 0
|
||||||
|
mipMapFadeDistanceStart: 1
|
||||||
|
mipMapFadeDistanceEnd: 3
|
||||||
|
bumpmap:
|
||||||
|
convertToNormalMap: 0
|
||||||
|
externalNormalMap: 0
|
||||||
|
heightScale: 0.25
|
||||||
|
normalMapFilter: 0
|
||||||
|
isReadable: 0
|
||||||
|
grayScaleToAlpha: 0
|
||||||
|
generateCubemap: 6
|
||||||
|
cubemapConvolution: 0
|
||||||
|
seamlessCubemap: 0
|
||||||
|
textureFormat: 1
|
||||||
|
maxTextureSize: 2048
|
||||||
|
textureSettings:
|
||||||
|
filterMode: -1
|
||||||
|
aniso: -1
|
||||||
|
mipBias: -1
|
||||||
|
wrapMode: -1
|
||||||
|
nPOTScale: 1
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 0
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 0
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 0
|
||||||
|
textureShape: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
platformSettings:
|
||||||
|
- buildTarget: DefaultTexturePlatform
|
||||||
|
maxTextureSize: 2048
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
spritePackingTag:
|
||||||
|
userData:
|
||||||
|
assetBundleName: hellebarde
|
||||||
|
assetBundleVariant:
|
||||||
9
Assets/AssetBundleSource/helm.meta
Normal file
9
Assets/AssetBundleSource/helm.meta
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: b58a68e84e08e3b429eb840b85a36f22
|
||||||
|
folderAsset: yes
|
||||||
|
timeCreated: 1506349225
|
||||||
|
licenseType: Free
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
9
Assets/AssetBundleSource/helm/Materials.meta
Normal file
9
Assets/AssetBundleSource/helm/Materials.meta
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 5ece0ddee9c8d134b9bdd35ce571dd31
|
||||||
|
folderAsset: yes
|
||||||
|
timeCreated: 1506349371
|
||||||
|
licenseType: Free
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName: eisenhut
|
||||||
|
assetBundleVariant:
|
||||||
75
Assets/AssetBundleSource/helm/Materials/Material.002.mat
Normal file
75
Assets/AssetBundleSource/helm/Materials/Material.002.mat
Normal file
@@ -0,0 +1,75 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!21 &2100000
|
||||||
|
Material:
|
||||||
|
serializedVersion: 6
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_PrefabParentObject: {fileID: 0}
|
||||||
|
m_PrefabInternal: {fileID: 0}
|
||||||
|
m_Name: Material.002
|
||||||
|
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
|
||||||
|
m_ShaderKeywords:
|
||||||
|
m_LightmapFlags: 4
|
||||||
|
m_EnableInstancingVariants: 0
|
||||||
|
m_CustomRenderQueue: -1
|
||||||
|
stringTagMap: {}
|
||||||
|
disabledShaderPasses: []
|
||||||
|
m_SavedProperties:
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TexEnvs:
|
||||||
|
- _BumpMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _DetailAlbedoMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _DetailMask:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _DetailNormalMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _EmissionMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _MainTex:
|
||||||
|
m_Texture: {fileID: 2800000, guid: 06203de9c00659d4b956fff73ab08ae2, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _MetallicGlossMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _OcclusionMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _ParallaxMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
m_Floats:
|
||||||
|
- _BumpScale: 1
|
||||||
|
- _Cutoff: 0.5
|
||||||
|
- _DetailNormalMapScale: 1
|
||||||
|
- _DstBlend: 0
|
||||||
|
- _GlossMapScale: 1
|
||||||
|
- _Glossiness: 0.5
|
||||||
|
- _GlossyReflections: 1
|
||||||
|
- _Metallic: 0
|
||||||
|
- _Mode: 0
|
||||||
|
- _OcclusionStrength: 1
|
||||||
|
- _Parallax: 0.02
|
||||||
|
- _SmoothnessTextureChannel: 0
|
||||||
|
- _SpecularHighlights: 1
|
||||||
|
- _SrcBlend: 1
|
||||||
|
- _UVSec: 0
|
||||||
|
- _ZWrite: 1
|
||||||
|
m_Colors:
|
||||||
|
- _Color: {r: 0.8, g: 0.8, b: 0.8, a: 1}
|
||||||
|
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 1e0c68a1ea5634a4d94653ad85366651
|
||||||
|
timeCreated: 1506349371
|
||||||
|
licenseType: Free
|
||||||
|
NativeFormatImporter:
|
||||||
|
mainObjectFileID: 2100000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
12
Assets/AssetBundleSource/helm/helm.mtl
Normal file
12
Assets/AssetBundleSource/helm/helm.mtl
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
# Blender MTL File: 'cleaned.blend'
|
||||||
|
# Material Count: 1
|
||||||
|
|
||||||
|
newmtl Material.002
|
||||||
|
Ns 96.078431
|
||||||
|
Ka 0.000000 0.000000 0.000000
|
||||||
|
Kd 0.800000 0.800000 0.800000
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ni 1.000000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
map_Kd tex.png
|
||||||
8
Assets/AssetBundleSource/helm/helm.mtl.meta
Normal file
8
Assets/AssetBundleSource/helm/helm.mtl.meta
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: dfe6fbcacaeb5a345a8b387767de0d2a
|
||||||
|
timeCreated: 1506349371
|
||||||
|
licenseType: Free
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName: eisenhut
|
||||||
|
assetBundleVariant:
|
||||||
30612
Assets/AssetBundleSource/helm/helm.obj
Normal file
30612
Assets/AssetBundleSource/helm/helm.obj
Normal file
File diff suppressed because it is too large
Load Diff
84
Assets/AssetBundleSource/helm/helm.obj.meta
Normal file
84
Assets/AssetBundleSource/helm/helm.obj.meta
Normal file
@@ -0,0 +1,84 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: a15192b70c059a7498b80fd9be16fc45
|
||||||
|
timeCreated: 1506349371
|
||||||
|
licenseType: Free
|
||||||
|
ModelImporter:
|
||||||
|
serializedVersion: 19
|
||||||
|
fileIDToRecycleName:
|
||||||
|
100000: default
|
||||||
|
100002: //RootNode
|
||||||
|
400000: default
|
||||||
|
400002: //RootNode
|
||||||
|
2300000: default
|
||||||
|
3300000: default
|
||||||
|
4300000: default
|
||||||
|
materials:
|
||||||
|
importMaterials: 1
|
||||||
|
materialName: 0
|
||||||
|
materialSearch: 1
|
||||||
|
animations:
|
||||||
|
legacyGenerateAnimations: 4
|
||||||
|
bakeSimulation: 0
|
||||||
|
resampleCurves: 1
|
||||||
|
optimizeGameObjects: 0
|
||||||
|
motionNodeName:
|
||||||
|
rigImportErrors:
|
||||||
|
rigImportWarnings:
|
||||||
|
animationImportErrors:
|
||||||
|
animationImportWarnings:
|
||||||
|
animationRetargetingWarnings:
|
||||||
|
animationDoRetargetingWarnings: 0
|
||||||
|
animationCompression: 1
|
||||||
|
animationRotationError: 0.5
|
||||||
|
animationPositionError: 0.5
|
||||||
|
animationScaleError: 0.5
|
||||||
|
animationWrapMode: 0
|
||||||
|
extraExposedTransformPaths: []
|
||||||
|
clipAnimations: []
|
||||||
|
isReadable: 1
|
||||||
|
meshes:
|
||||||
|
lODScreenPercentages: []
|
||||||
|
globalScale: 1
|
||||||
|
meshCompression: 0
|
||||||
|
addColliders: 0
|
||||||
|
importBlendShapes: 1
|
||||||
|
swapUVChannels: 0
|
||||||
|
generateSecondaryUV: 0
|
||||||
|
useFileUnits: 1
|
||||||
|
optimizeMeshForGPU: 1
|
||||||
|
keepQuads: 0
|
||||||
|
weldVertices: 1
|
||||||
|
secondaryUVAngleDistortion: 8
|
||||||
|
secondaryUVAreaDistortion: 15.000001
|
||||||
|
secondaryUVHardAngle: 88
|
||||||
|
secondaryUVPackMargin: 4
|
||||||
|
useFileScale: 1
|
||||||
|
tangentSpace:
|
||||||
|
normalSmoothAngle: 60
|
||||||
|
normalImportMode: 0
|
||||||
|
tangentImportMode: 3
|
||||||
|
importAnimation: 1
|
||||||
|
copyAvatar: 0
|
||||||
|
humanDescription:
|
||||||
|
serializedVersion: 2
|
||||||
|
human: []
|
||||||
|
skeleton: []
|
||||||
|
armTwist: 0.5
|
||||||
|
foreArmTwist: 0.5
|
||||||
|
upperLegTwist: 0.5
|
||||||
|
legTwist: 0.5
|
||||||
|
armStretch: 0.05
|
||||||
|
legStretch: 0.05
|
||||||
|
feetSpacing: 0
|
||||||
|
rootMotionBoneName:
|
||||||
|
rootMotionBoneRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
hasTranslationDoF: 0
|
||||||
|
hasExtraRoot: 0
|
||||||
|
skeletonHasParents: 1
|
||||||
|
lastHumanDescriptionAvatarSource: {instanceID: 0}
|
||||||
|
animationType: 0
|
||||||
|
humanoidOversampling: 1
|
||||||
|
additionalBone: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName: eisenhut
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/AssetBundleSource/helm/tex.png
Normal file
BIN
Assets/AssetBundleSource/helm/tex.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 770 KiB |
68
Assets/AssetBundleSource/helm/tex.png.meta
Normal file
68
Assets/AssetBundleSource/helm/tex.png.meta
Normal file
@@ -0,0 +1,68 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 06203de9c00659d4b956fff73ab08ae2
|
||||||
|
timeCreated: 1506349226
|
||||||
|
licenseType: Free
|
||||||
|
TextureImporter:
|
||||||
|
fileIDToRecycleName: {}
|
||||||
|
serializedVersion: 4
|
||||||
|
mipmaps:
|
||||||
|
mipMapMode: 0
|
||||||
|
enableMipMap: 1
|
||||||
|
sRGBTexture: 1
|
||||||
|
linearTexture: 0
|
||||||
|
fadeOut: 0
|
||||||
|
borderMipMap: 0
|
||||||
|
mipMapFadeDistanceStart: 1
|
||||||
|
mipMapFadeDistanceEnd: 3
|
||||||
|
bumpmap:
|
||||||
|
convertToNormalMap: 0
|
||||||
|
externalNormalMap: 0
|
||||||
|
heightScale: 0.25
|
||||||
|
normalMapFilter: 0
|
||||||
|
isReadable: 0
|
||||||
|
grayScaleToAlpha: 0
|
||||||
|
generateCubemap: 6
|
||||||
|
cubemapConvolution: 0
|
||||||
|
seamlessCubemap: 0
|
||||||
|
textureFormat: 1
|
||||||
|
maxTextureSize: 2048
|
||||||
|
textureSettings:
|
||||||
|
filterMode: -1
|
||||||
|
aniso: -1
|
||||||
|
mipBias: -1
|
||||||
|
wrapMode: -1
|
||||||
|
nPOTScale: 1
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 0
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 0
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 0
|
||||||
|
textureShape: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
platformSettings:
|
||||||
|
- buildTarget: DefaultTexturePlatform
|
||||||
|
maxTextureSize: 2048
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
spritePackingTag:
|
||||||
|
userData:
|
||||||
|
assetBundleName: eisenhut
|
||||||
|
assetBundleVariant:
|
||||||
9
Assets/AssetBundleSource/kelch.meta
Normal file
9
Assets/AssetBundleSource/kelch.meta
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 38cab49d750fbfa49a7aebe7f4465ffa
|
||||||
|
folderAsset: yes
|
||||||
|
timeCreated: 1506270733
|
||||||
|
licenseType: Free
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
9
Assets/AssetBundleSource/kelch/Materials.meta
Normal file
9
Assets/AssetBundleSource/kelch/Materials.meta
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: c9cd21b29b1f06c43918d9f12974fd1b
|
||||||
|
folderAsset: yes
|
||||||
|
timeCreated: 1506270741
|
||||||
|
licenseType: Free
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName: kelch
|
||||||
|
assetBundleVariant:
|
||||||
75
Assets/AssetBundleSource/kelch/Materials/Material.002.mat
Normal file
75
Assets/AssetBundleSource/kelch/Materials/Material.002.mat
Normal file
@@ -0,0 +1,75 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!21 &2100000
|
||||||
|
Material:
|
||||||
|
serializedVersion: 6
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_PrefabParentObject: {fileID: 0}
|
||||||
|
m_PrefabInternal: {fileID: 0}
|
||||||
|
m_Name: Material.002
|
||||||
|
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
|
||||||
|
m_ShaderKeywords:
|
||||||
|
m_LightmapFlags: 4
|
||||||
|
m_EnableInstancingVariants: 0
|
||||||
|
m_CustomRenderQueue: -1
|
||||||
|
stringTagMap: {}
|
||||||
|
disabledShaderPasses: []
|
||||||
|
m_SavedProperties:
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TexEnvs:
|
||||||
|
- _BumpMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _DetailAlbedoMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _DetailMask:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _DetailNormalMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _EmissionMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _MainTex:
|
||||||
|
m_Texture: {fileID: 2800000, guid: 95d81dc09de70b94abbe7030d6467635, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _MetallicGlossMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _OcclusionMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _ParallaxMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
m_Floats:
|
||||||
|
- _BumpScale: 1
|
||||||
|
- _Cutoff: 0.5
|
||||||
|
- _DetailNormalMapScale: 1
|
||||||
|
- _DstBlend: 0
|
||||||
|
- _GlossMapScale: 1
|
||||||
|
- _Glossiness: 0.5
|
||||||
|
- _GlossyReflections: 1
|
||||||
|
- _Metallic: 0
|
||||||
|
- _Mode: 0
|
||||||
|
- _OcclusionStrength: 1
|
||||||
|
- _Parallax: 0.02
|
||||||
|
- _SmoothnessTextureChannel: 0
|
||||||
|
- _SpecularHighlights: 1
|
||||||
|
- _SrcBlend: 1
|
||||||
|
- _UVSec: 0
|
||||||
|
- _ZWrite: 1
|
||||||
|
m_Colors:
|
||||||
|
- _Color: {r: 0.8, g: 0.8, b: 0.8, a: 1}
|
||||||
|
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 192b7a50ebf983c469c4c77ed22c721c
|
||||||
|
timeCreated: 1506270741
|
||||||
|
licenseType: Free
|
||||||
|
NativeFormatImporter:
|
||||||
|
mainObjectFileID: 2100000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
12
Assets/AssetBundleSource/kelch/kelch.mtl
Normal file
12
Assets/AssetBundleSource/kelch/kelch.mtl
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
# Blender MTL File: 'cleaning.blend'
|
||||||
|
# Material Count: 1
|
||||||
|
|
||||||
|
newmtl Material.002
|
||||||
|
Ns 96.078431
|
||||||
|
Ka 0.000000 0.000000 0.000000
|
||||||
|
Kd 0.800000 0.800000 0.800000
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ni 1.000000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
map_Kd tex.png
|
||||||
8
Assets/AssetBundleSource/kelch/kelch.mtl.meta
Normal file
8
Assets/AssetBundleSource/kelch/kelch.mtl.meta
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 3ce1ef6171b67dd4c96629bd660981f2
|
||||||
|
timeCreated: 1506370796
|
||||||
|
licenseType: Free
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName: kelch
|
||||||
|
assetBundleVariant:
|
||||||
67568
Assets/AssetBundleSource/kelch/kelch.obj
Normal file
67568
Assets/AssetBundleSource/kelch/kelch.obj
Normal file
File diff suppressed because it is too large
Load Diff
84
Assets/AssetBundleSource/kelch/kelch.obj.meta
Normal file
84
Assets/AssetBundleSource/kelch/kelch.obj.meta
Normal file
@@ -0,0 +1,84 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 2c2f494c659d0144cbd32235150565df
|
||||||
|
timeCreated: 1506370797
|
||||||
|
licenseType: Free
|
||||||
|
ModelImporter:
|
||||||
|
serializedVersion: 19
|
||||||
|
fileIDToRecycleName:
|
||||||
|
100000: default
|
||||||
|
100002: //RootNode
|
||||||
|
400000: default
|
||||||
|
400002: //RootNode
|
||||||
|
2300000: default
|
||||||
|
3300000: default
|
||||||
|
4300000: default
|
||||||
|
materials:
|
||||||
|
importMaterials: 1
|
||||||
|
materialName: 0
|
||||||
|
materialSearch: 1
|
||||||
|
animations:
|
||||||
|
legacyGenerateAnimations: 4
|
||||||
|
bakeSimulation: 0
|
||||||
|
resampleCurves: 1
|
||||||
|
optimizeGameObjects: 0
|
||||||
|
motionNodeName:
|
||||||
|
rigImportErrors:
|
||||||
|
rigImportWarnings:
|
||||||
|
animationImportErrors:
|
||||||
|
animationImportWarnings:
|
||||||
|
animationRetargetingWarnings:
|
||||||
|
animationDoRetargetingWarnings: 0
|
||||||
|
animationCompression: 1
|
||||||
|
animationRotationError: 0.5
|
||||||
|
animationPositionError: 0.5
|
||||||
|
animationScaleError: 0.5
|
||||||
|
animationWrapMode: 0
|
||||||
|
extraExposedTransformPaths: []
|
||||||
|
clipAnimations: []
|
||||||
|
isReadable: 1
|
||||||
|
meshes:
|
||||||
|
lODScreenPercentages: []
|
||||||
|
globalScale: 1
|
||||||
|
meshCompression: 0
|
||||||
|
addColliders: 0
|
||||||
|
importBlendShapes: 1
|
||||||
|
swapUVChannels: 0
|
||||||
|
generateSecondaryUV: 0
|
||||||
|
useFileUnits: 1
|
||||||
|
optimizeMeshForGPU: 1
|
||||||
|
keepQuads: 0
|
||||||
|
weldVertices: 1
|
||||||
|
secondaryUVAngleDistortion: 8
|
||||||
|
secondaryUVAreaDistortion: 15.000001
|
||||||
|
secondaryUVHardAngle: 88
|
||||||
|
secondaryUVPackMargin: 4
|
||||||
|
useFileScale: 1
|
||||||
|
tangentSpace:
|
||||||
|
normalSmoothAngle: 60
|
||||||
|
normalImportMode: 0
|
||||||
|
tangentImportMode: 3
|
||||||
|
importAnimation: 1
|
||||||
|
copyAvatar: 0
|
||||||
|
humanDescription:
|
||||||
|
serializedVersion: 2
|
||||||
|
human: []
|
||||||
|
skeleton: []
|
||||||
|
armTwist: 0.5
|
||||||
|
foreArmTwist: 0.5
|
||||||
|
upperLegTwist: 0.5
|
||||||
|
legTwist: 0.5
|
||||||
|
armStretch: 0.05
|
||||||
|
legStretch: 0.05
|
||||||
|
feetSpacing: 0
|
||||||
|
rootMotionBoneName:
|
||||||
|
rootMotionBoneRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
hasTranslationDoF: 0
|
||||||
|
hasExtraRoot: 0
|
||||||
|
skeletonHasParents: 1
|
||||||
|
lastHumanDescriptionAvatarSource: {instanceID: 0}
|
||||||
|
animationType: 0
|
||||||
|
humanoidOversampling: 1
|
||||||
|
additionalBone: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName: kelch
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/AssetBundleSource/kelch/tex.png
Normal file
BIN
Assets/AssetBundleSource/kelch/tex.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.6 MiB |
84
Assets/AssetBundleSource/kelch/tex.png.meta
Normal file
84
Assets/AssetBundleSource/kelch/tex.png.meta
Normal file
@@ -0,0 +1,84 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 95d81dc09de70b94abbe7030d6467635
|
||||||
|
timeCreated: 1506344112
|
||||||
|
licenseType: Free
|
||||||
|
TextureImporter:
|
||||||
|
fileIDToRecycleName: {}
|
||||||
|
serializedVersion: 4
|
||||||
|
mipmaps:
|
||||||
|
mipMapMode: 0
|
||||||
|
enableMipMap: 1
|
||||||
|
sRGBTexture: 1
|
||||||
|
linearTexture: 0
|
||||||
|
fadeOut: 0
|
||||||
|
borderMipMap: 0
|
||||||
|
mipMapFadeDistanceStart: 1
|
||||||
|
mipMapFadeDistanceEnd: 3
|
||||||
|
bumpmap:
|
||||||
|
convertToNormalMap: 0
|
||||||
|
externalNormalMap: 0
|
||||||
|
heightScale: 0.25
|
||||||
|
normalMapFilter: 0
|
||||||
|
isReadable: 0
|
||||||
|
grayScaleToAlpha: 0
|
||||||
|
generateCubemap: 6
|
||||||
|
cubemapConvolution: 0
|
||||||
|
seamlessCubemap: 0
|
||||||
|
textureFormat: 1
|
||||||
|
maxTextureSize: 2048
|
||||||
|
textureSettings:
|
||||||
|
filterMode: -1
|
||||||
|
aniso: -1
|
||||||
|
mipBias: -1
|
||||||
|
wrapMode: -1
|
||||||
|
nPOTScale: 1
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 0
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 0
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 0
|
||||||
|
textureShape: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
platformSettings:
|
||||||
|
- buildTarget: DefaultTexturePlatform
|
||||||
|
maxTextureSize: 2048
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
- buildTarget: Standalone
|
||||||
|
maxTextureSize: 2048
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
- buildTarget: Android
|
||||||
|
maxTextureSize: 2048
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
spritePackingTag:
|
||||||
|
userData:
|
||||||
|
assetBundleName: kelch
|
||||||
|
assetBundleVariant:
|
||||||
9
Assets/AssetBundleSource/malchus.meta
Normal file
9
Assets/AssetBundleSource/malchus.meta
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 76e90ed97fe78f84dba4720985caeb66
|
||||||
|
folderAsset: yes
|
||||||
|
timeCreated: 1504981791
|
||||||
|
licenseType: Free
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
9
Assets/AssetBundleSource/malchus/Materials.meta
Normal file
9
Assets/AssetBundleSource/malchus/Materials.meta
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: d92f00207dc7c234587c3425d5d26774
|
||||||
|
folderAsset: yes
|
||||||
|
timeCreated: 1506435271
|
||||||
|
licenseType: Free
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName: malchus
|
||||||
|
assetBundleVariant:
|
||||||
75
Assets/AssetBundleSource/malchus/Materials/Material.002.mat
Normal file
75
Assets/AssetBundleSource/malchus/Materials/Material.002.mat
Normal file
@@ -0,0 +1,75 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!21 &2100000
|
||||||
|
Material:
|
||||||
|
serializedVersion: 6
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_PrefabParentObject: {fileID: 0}
|
||||||
|
m_PrefabInternal: {fileID: 0}
|
||||||
|
m_Name: Material.002
|
||||||
|
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
|
||||||
|
m_ShaderKeywords:
|
||||||
|
m_LightmapFlags: 4
|
||||||
|
m_EnableInstancingVariants: 0
|
||||||
|
m_CustomRenderQueue: -1
|
||||||
|
stringTagMap: {}
|
||||||
|
disabledShaderPasses: []
|
||||||
|
m_SavedProperties:
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TexEnvs:
|
||||||
|
- _BumpMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _DetailAlbedoMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _DetailMask:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _DetailNormalMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _EmissionMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _MainTex:
|
||||||
|
m_Texture: {fileID: 2800000, guid: 5d354e583f3c9bb46a8a86f4315a55e4, type: 3}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _MetallicGlossMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _OcclusionMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
- _ParallaxMap:
|
||||||
|
m_Texture: {fileID: 0}
|
||||||
|
m_Scale: {x: 1, y: 1}
|
||||||
|
m_Offset: {x: 0, y: 0}
|
||||||
|
m_Floats:
|
||||||
|
- _BumpScale: 1
|
||||||
|
- _Cutoff: 0.5
|
||||||
|
- _DetailNormalMapScale: 1
|
||||||
|
- _DstBlend: 0
|
||||||
|
- _GlossMapScale: 1
|
||||||
|
- _Glossiness: 0.5
|
||||||
|
- _GlossyReflections: 1
|
||||||
|
- _Metallic: 0
|
||||||
|
- _Mode: 0
|
||||||
|
- _OcclusionStrength: 1
|
||||||
|
- _Parallax: 0.02
|
||||||
|
- _SmoothnessTextureChannel: 0
|
||||||
|
- _SpecularHighlights: 1
|
||||||
|
- _SrcBlend: 1
|
||||||
|
- _UVSec: 0
|
||||||
|
- _ZWrite: 1
|
||||||
|
m_Colors:
|
||||||
|
- _Color: {r: 0.8, g: 0.8, b: 0.8, a: 1}
|
||||||
|
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 907f9cced2626ac47a2c3a6acce46e8e
|
||||||
|
timeCreated: 1506435271
|
||||||
|
licenseType: Free
|
||||||
|
NativeFormatImporter:
|
||||||
|
mainObjectFileID: 2100000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
12
Assets/AssetBundleSource/malchus/malchus.mtl
Normal file
12
Assets/AssetBundleSource/malchus/malchus.mtl
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
# Blender MTL File: 'malchus.blend'
|
||||||
|
# Material Count: 1
|
||||||
|
|
||||||
|
newmtl Material.002
|
||||||
|
Ns 96.078431
|
||||||
|
Ka 0.000000 0.000000 0.000000
|
||||||
|
Kd 0.800000 0.800000 0.800000
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ni 1.000000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
map_Kd tex.png
|
||||||
8
Assets/AssetBundleSource/malchus/malchus.mtl.meta
Normal file
8
Assets/AssetBundleSource/malchus/malchus.mtl.meta
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 1b77922d4c0d76c44b1046efb4cd93ea
|
||||||
|
timeCreated: 1506436032
|
||||||
|
licenseType: Free
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName: malchus
|
||||||
|
assetBundleVariant:
|
||||||
54936
Assets/AssetBundleSource/malchus/malchus.obj
Normal file
54936
Assets/AssetBundleSource/malchus/malchus.obj
Normal file
File diff suppressed because it is too large
Load Diff
104
Assets/AssetBundleSource/malchus/malchus.obj.meta
Normal file
104
Assets/AssetBundleSource/malchus/malchus.obj.meta
Normal file
@@ -0,0 +1,104 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 3810a72bbdf18f748b6c430a2c1297e7
|
||||||
|
timeCreated: 1506436033
|
||||||
|
licenseType: Free
|
||||||
|
ModelImporter:
|
||||||
|
serializedVersion: 19
|
||||||
|
fileIDToRecycleName:
|
||||||
|
100000: default
|
||||||
|
100002: default_MeshPart0
|
||||||
|
100004: default_MeshPart1
|
||||||
|
100006: default_MeshPart2
|
||||||
|
100008: default_MeshPart3
|
||||||
|
100010: //RootNode
|
||||||
|
400000: default
|
||||||
|
400002: default_MeshPart0
|
||||||
|
400004: default_MeshPart1
|
||||||
|
400006: default_MeshPart2
|
||||||
|
400008: default_MeshPart3
|
||||||
|
400010: //RootNode
|
||||||
|
2300000: default_MeshPart0
|
||||||
|
2300002: default_MeshPart1
|
||||||
|
2300004: default_MeshPart2
|
||||||
|
2300006: default_MeshPart3
|
||||||
|
2300008: default
|
||||||
|
3300000: default_MeshPart0
|
||||||
|
3300002: default_MeshPart1
|
||||||
|
3300004: default_MeshPart2
|
||||||
|
3300006: default_MeshPart3
|
||||||
|
3300008: default
|
||||||
|
4300000: default_MeshPart0
|
||||||
|
4300002: default_MeshPart1
|
||||||
|
4300004: default_MeshPart2
|
||||||
|
4300006: default_MeshPart3
|
||||||
|
4300008: default
|
||||||
|
materials:
|
||||||
|
importMaterials: 1
|
||||||
|
materialName: 0
|
||||||
|
materialSearch: 1
|
||||||
|
animations:
|
||||||
|
legacyGenerateAnimations: 4
|
||||||
|
bakeSimulation: 0
|
||||||
|
resampleCurves: 1
|
||||||
|
optimizeGameObjects: 0
|
||||||
|
motionNodeName:
|
||||||
|
rigImportErrors:
|
||||||
|
rigImportWarnings:
|
||||||
|
animationImportErrors:
|
||||||
|
animationImportWarnings:
|
||||||
|
animationRetargetingWarnings:
|
||||||
|
animationDoRetargetingWarnings: 0
|
||||||
|
animationCompression: 1
|
||||||
|
animationRotationError: 0.5
|
||||||
|
animationPositionError: 0.5
|
||||||
|
animationScaleError: 0.5
|
||||||
|
animationWrapMode: 0
|
||||||
|
extraExposedTransformPaths: []
|
||||||
|
clipAnimations: []
|
||||||
|
isReadable: 1
|
||||||
|
meshes:
|
||||||
|
lODScreenPercentages: []
|
||||||
|
globalScale: 1
|
||||||
|
meshCompression: 0
|
||||||
|
addColliders: 0
|
||||||
|
importBlendShapes: 1
|
||||||
|
swapUVChannels: 0
|
||||||
|
generateSecondaryUV: 0
|
||||||
|
useFileUnits: 1
|
||||||
|
optimizeMeshForGPU: 1
|
||||||
|
keepQuads: 0
|
||||||
|
weldVertices: 1
|
||||||
|
secondaryUVAngleDistortion: 8
|
||||||
|
secondaryUVAreaDistortion: 15.000001
|
||||||
|
secondaryUVHardAngle: 88
|
||||||
|
secondaryUVPackMargin: 4
|
||||||
|
useFileScale: 1
|
||||||
|
tangentSpace:
|
||||||
|
normalSmoothAngle: 60
|
||||||
|
normalImportMode: 0
|
||||||
|
tangentImportMode: 3
|
||||||
|
importAnimation: 1
|
||||||
|
copyAvatar: 0
|
||||||
|
humanDescription:
|
||||||
|
serializedVersion: 2
|
||||||
|
human: []
|
||||||
|
skeleton: []
|
||||||
|
armTwist: 0.5
|
||||||
|
foreArmTwist: 0.5
|
||||||
|
upperLegTwist: 0.5
|
||||||
|
legTwist: 0.5
|
||||||
|
armStretch: 0.05
|
||||||
|
legStretch: 0.05
|
||||||
|
feetSpacing: 0
|
||||||
|
rootMotionBoneName:
|
||||||
|
rootMotionBoneRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
hasTranslationDoF: 0
|
||||||
|
hasExtraRoot: 0
|
||||||
|
skeletonHasParents: 1
|
||||||
|
lastHumanDescriptionAvatarSource: {instanceID: 0}
|
||||||
|
animationType: 0
|
||||||
|
humanoidOversampling: 1
|
||||||
|
additionalBone: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName: malchus
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/AssetBundleSource/malchus/tex.png
Normal file
BIN
Assets/AssetBundleSource/malchus/tex.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 852 KiB |
84
Assets/AssetBundleSource/malchus/tex.png.meta
Normal file
84
Assets/AssetBundleSource/malchus/tex.png.meta
Normal file
@@ -0,0 +1,84 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 5d354e583f3c9bb46a8a86f4315a55e4
|
||||||
|
timeCreated: 1506445100
|
||||||
|
licenseType: Free
|
||||||
|
TextureImporter:
|
||||||
|
fileIDToRecycleName: {}
|
||||||
|
serializedVersion: 4
|
||||||
|
mipmaps:
|
||||||
|
mipMapMode: 0
|
||||||
|
enableMipMap: 1
|
||||||
|
sRGBTexture: 1
|
||||||
|
linearTexture: 0
|
||||||
|
fadeOut: 0
|
||||||
|
borderMipMap: 0
|
||||||
|
mipMapFadeDistanceStart: 1
|
||||||
|
mipMapFadeDistanceEnd: 3
|
||||||
|
bumpmap:
|
||||||
|
convertToNormalMap: 0
|
||||||
|
externalNormalMap: 0
|
||||||
|
heightScale: 0.25
|
||||||
|
normalMapFilter: 0
|
||||||
|
isReadable: 0
|
||||||
|
grayScaleToAlpha: 0
|
||||||
|
generateCubemap: 6
|
||||||
|
cubemapConvolution: 0
|
||||||
|
seamlessCubemap: 0
|
||||||
|
textureFormat: 1
|
||||||
|
maxTextureSize: 2048
|
||||||
|
textureSettings:
|
||||||
|
filterMode: -1
|
||||||
|
aniso: -1
|
||||||
|
mipBias: -1
|
||||||
|
wrapMode: -1
|
||||||
|
nPOTScale: 1
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 0
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 0
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 0
|
||||||
|
textureShape: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
platformSettings:
|
||||||
|
- buildTarget: DefaultTexturePlatform
|
||||||
|
maxTextureSize: 2048
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
- buildTarget: Standalone
|
||||||
|
maxTextureSize: 2048
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
- buildTarget: Android
|
||||||
|
maxTextureSize: 2048
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
spritePackingTag:
|
||||||
|
userData:
|
||||||
|
assetBundleName: malchus
|
||||||
|
assetBundleVariant:
|
||||||
10
Assets/AssetBundleSource/mohrenkopf.meta
Normal file
10
Assets/AssetBundleSource/mohrenkopf.meta
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: e2ea8e2133a65ec4c94da11deeb2124c
|
||||||
|
folderAsset: yes
|
||||||
|
timeCreated: 1531223267
|
||||||
|
licenseType: Free
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
BIN
Assets/AssetBundleSource/mohrenkopf/Tex.png
Normal file
BIN
Assets/AssetBundleSource/mohrenkopf/Tex.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.5 MiB |
98
Assets/AssetBundleSource/mohrenkopf/Tex.png.meta
Normal file
98
Assets/AssetBundleSource/mohrenkopf/Tex.png.meta
Normal file
@@ -0,0 +1,98 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: ff285bb554e9fc143a9886e59b184f80
|
||||||
|
timeCreated: 1531223360
|
||||||
|
licenseType: Free
|
||||||
|
TextureImporter:
|
||||||
|
fileIDToRecycleName: {}
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 4
|
||||||
|
mipmaps:
|
||||||
|
mipMapMode: 0
|
||||||
|
enableMipMap: 1
|
||||||
|
sRGBTexture: 1
|
||||||
|
linearTexture: 0
|
||||||
|
fadeOut: 0
|
||||||
|
borderMipMap: 0
|
||||||
|
mipMapsPreserveCoverage: 0
|
||||||
|
alphaTestReferenceValue: 0.5
|
||||||
|
mipMapFadeDistanceStart: 1
|
||||||
|
mipMapFadeDistanceEnd: 3
|
||||||
|
bumpmap:
|
||||||
|
convertToNormalMap: 0
|
||||||
|
externalNormalMap: 0
|
||||||
|
heightScale: 0.25
|
||||||
|
normalMapFilter: 0
|
||||||
|
isReadable: 0
|
||||||
|
grayScaleToAlpha: 0
|
||||||
|
generateCubemap: 6
|
||||||
|
cubemapConvolution: 0
|
||||||
|
seamlessCubemap: 0
|
||||||
|
textureFormat: 1
|
||||||
|
maxTextureSize: 2048
|
||||||
|
textureSettings:
|
||||||
|
serializedVersion: 2
|
||||||
|
filterMode: -1
|
||||||
|
aniso: -1
|
||||||
|
mipBias: -1
|
||||||
|
wrapU: -1
|
||||||
|
wrapV: -1
|
||||||
|
wrapW: -1
|
||||||
|
nPOTScale: 1
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 0
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 0
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 0
|
||||||
|
textureShape: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
platformSettings:
|
||||||
|
- buildTarget: DefaultTexturePlatform
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
- buildTarget: Standalone
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
- buildTarget: Android
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
physicsShape: []
|
||||||
|
spritePackingTag:
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
13
Assets/AssetBundleSource/mohrenkopf/final.mtl
Normal file
13
Assets/AssetBundleSource/mohrenkopf/final.mtl
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
# Blender MTL File: 'final.blend'
|
||||||
|
# Material Count: 1
|
||||||
|
|
||||||
|
newmtl MaterialFinal
|
||||||
|
Ns 96.078431
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 1.000000 1.000000 1.000000
|
||||||
|
Ks 0.100000 0.100000 0.100000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.000000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
map_Kd Tex.png
|
||||||
9
Assets/AssetBundleSource/mohrenkopf/final.mtl.meta
Normal file
9
Assets/AssetBundleSource/mohrenkopf/final.mtl.meta
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: bb4dcea7a1d930940abd7cbfd2a75a13
|
||||||
|
timeCreated: 1531223359
|
||||||
|
licenseType: Free
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
33918
Assets/AssetBundleSource/mohrenkopf/final.obj
Normal file
33918
Assets/AssetBundleSource/mohrenkopf/final.obj
Normal file
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user