43 lines
1.3 KiB
C#
43 lines
1.3 KiB
C#
using UnityEngine;
|
|
using YooAsset;
|
|
|
|
namespace HK
|
|
{
|
|
public interface IResourceManager
|
|
{
|
|
T Load<T>(string assetPath) where T : Object;
|
|
GameObject LoadGameObject(string assetPath);
|
|
}
|
|
|
|
internal class ResourcesManager : ManagerBase<ResourcesManager>, IResourceManager
|
|
{
|
|
public T Load<T>(string assetPath) where T : Object
|
|
{
|
|
var o = YooAssets.LoadAssetSync<T>(assetPath).AssetObject as T;
|
|
return o;
|
|
}
|
|
|
|
public GameObject LoadGameObject(string assetPath)
|
|
{
|
|
var o = Load<GameObject>(assetPath);
|
|
var gameObject = GameObject.Instantiate(o,null);
|
|
return gameObject;
|
|
}
|
|
|
|
public GameObject LoadGameObject(string assetPath,Transform parent)
|
|
{
|
|
var o = Load<GameObject>(assetPath);
|
|
var gameObject = GameObject.Instantiate(o,parent);
|
|
return gameObject;
|
|
}
|
|
public GameObject Load3DModelGameObject(string assetPath)
|
|
{
|
|
var transform = GameObject.Find("3dModel").transform;
|
|
var gameObject = LoadGameObject(assetPath);
|
|
gameObject.transform.SetParent(transform);
|
|
gameObject.transform.localScale = Vector3.one;
|
|
gameObject.transform.localPosition = Vector3.zero;
|
|
return gameObject;
|
|
}
|
|
}
|
|
} |