每日自动提交 2026-04-13 18:30
@@ -10,5 +10,4 @@ public class GameData
|
||||
public RoomChangeResponse currRoomData;
|
||||
|
||||
public string currUser;
|
||||
public string a;
|
||||
}
|
||||
|
||||
@@ -10,10 +10,21 @@ using UnityEngine.SceneManagement;
|
||||
public class GameManager : MonoSingleton<GameManager>
|
||||
{
|
||||
public GameConfig gameConfig;
|
||||
public UserToken user;
|
||||
public UserData user;
|
||||
public GameData gameData = new GameData();
|
||||
public Scene scene;
|
||||
public CameraShaker cameraShake;
|
||||
|
||||
public void UpdataUserData(UserData user)
|
||||
{
|
||||
this.user = user;
|
||||
var a = UIManager.Instance.Get<UIHomeMain>(UIPanel.HomeMainPanel);
|
||||
if (a!=null)
|
||||
{
|
||||
a.UpdateUserData();
|
||||
}
|
||||
|
||||
}
|
||||
protected override async void Awake()
|
||||
{
|
||||
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Assets.MyGame.Scripts.Net.APIRequest.Params
|
||||
{
|
||||
[Serializable]
|
||||
public class GetUserParam:RequestParamBase
|
||||
{
|
||||
public string userid;
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3c56ed098f6dd7c4c99acaad8c769ed7
|
||||
guid: b51e71cd9738bbf40be414078e722e0d
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
@@ -42,42 +42,62 @@ namespace Assets.MyGame.Scripts.Net.APIRequest.Params
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 购买月卡请求参数
|
||||
/// 购买月卡请求参数(GET)
|
||||
/// Swagger: GET /api/Hall/BuyMonthCard
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class BuyMonthCardParam : RequestParamBase
|
||||
{
|
||||
public int cardType; // 月卡类型
|
||||
/// <summary>月卡类型 1=周卡 2=月卡 3=年卡</summary>
|
||||
public int type;
|
||||
|
||||
/// <summary>金币价格(用于校验)</summary>
|
||||
public int gold;
|
||||
|
||||
/// <summary>现金价格</summary>
|
||||
public double money;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 购买道具请求参数
|
||||
/// 购买道具请求参数(GET)
|
||||
/// Swagger: GET /api/Hall/BuyProp
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class BuyPropParam : RequestParamBase
|
||||
{
|
||||
public int propId; // 道具ID
|
||||
public int count; // 数量
|
||||
/// <summary>道具编号</summary>
|
||||
public string propNumber;
|
||||
|
||||
/// <summary>购买数量</summary>
|
||||
public int count;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 购买金币请求参数
|
||||
/// 购买金币请求参数(GET)
|
||||
/// Swagger: GET /api/Hall/BuyGold
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class BuyGoldParam : RequestParamBase
|
||||
{
|
||||
/// <summary>商品编号(GoldShopConfig.number)</summary>
|
||||
public string number;
|
||||
|
||||
public long goldAmount; // 金币数量
|
||||
/// <summary>购买数量</summary>
|
||||
public int count;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 购买钻石请求参数
|
||||
/// 购买钻石请求参数(GET)
|
||||
/// Swagger: GET /api/Hall/BuyDiamond
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class BuyDiamondParam : RequestParamBase
|
||||
{
|
||||
|
||||
public int diamondAmount; // 钻石数量
|
||||
/// <summary>商品编号(DiamondShopConfig.number)</summary>
|
||||
public string number;
|
||||
|
||||
/// <summary>购买数量</summary>
|
||||
public int count;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -71,43 +71,43 @@ namespace Assets.MyGame.Scripts.Net
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 购买月卡(POST)
|
||||
/// 参数:用户ID、月卡类型
|
||||
/// 返回:MonthCardInfo(月卡信息)
|
||||
/// 购买月卡(GET)
|
||||
/// 参数:type(1=周卡 2=月卡 3=年卡)、gold(金币价)、money(现金价)
|
||||
/// 返回:string(data 为结果描述字符串)
|
||||
/// </summary>
|
||||
public static void BuyMonthCard(BuyMonthCardParam req, Action<MonthCardInfo> callback)
|
||||
public static void BuyMonthCard(BuyMonthCardParam req, Action<string> callback)
|
||||
{
|
||||
APIManager.Response<MonthCardInfo>(APIType.Hall_BuyMonthCard, req, callback);
|
||||
APIManager.Response<string>(APIType.Hall_BuyMonthCard, req, callback);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 购买道具(POST)
|
||||
/// 参数:道具ID、数量
|
||||
/// 返回:PropInfo(道具信息)
|
||||
/// 购买道具(GET)
|
||||
/// 参数:propNumber(道具编号)、count(数量)
|
||||
/// 返回:string(data 为结果描述字符串)
|
||||
/// </summary>
|
||||
public static void BuyProp(BuyPropParam req, Action<PropInfo> callback)
|
||||
public static void BuyProp(BuyPropParam req, Action<string> callback)
|
||||
{
|
||||
APIManager.Response<PropInfo>(APIType.Hall_BuyProp, req, callback);
|
||||
APIManager.Response<string>(APIType.Hall_BuyProp, req, callback);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 购买金币(POST)
|
||||
/// 参数:用户ID、金币数量
|
||||
/// 返回:GoldInfo(金币信息)
|
||||
/// 购买金币(GET)
|
||||
/// 参数:number(GoldShopConfig.number)、count(数量)
|
||||
/// 返回:string(data 为结果描述字符串)
|
||||
/// </summary>
|
||||
public static void BuyGold(BuyGoldParam req, Action<GoldInfo> callback)
|
||||
public static void BuyGold(BuyGoldParam req, Action<string> callback)
|
||||
{
|
||||
APIManager.Response<GoldInfo>(APIType.Hall_BuyGold, req, callback);
|
||||
APIManager.Response<string>(APIType.Hall_BuyGold, req, callback);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 购买钻石(POST)
|
||||
/// 参数:用户ID、钻石数量
|
||||
/// 返回:DiamondInfo(钻石信息)
|
||||
/// 购买钻石(GET)
|
||||
/// 参数:number(DiamondShopConfig.number)、count(数量)
|
||||
/// 返回:string(data 为结果描述字符串)
|
||||
/// </summary>
|
||||
public static void BuyDiamond(BuyDiamondParam req, Action<DiamondInfo> callback)
|
||||
public static void BuyDiamond(BuyDiamondParam req, Action<string> callback)
|
||||
{
|
||||
APIManager.Response<DiamondInfo>(APIType.Hall_BuyDiamond, req, callback);
|
||||
APIManager.Response<string>(APIType.Hall_BuyDiamond, req, callback);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
using Assets.MyGame.Scripts.Net.APIRequest.Objs;
|
||||
using Assets.MyGame.Scripts.Net.API;
|
||||
using Assets.MyGame.Scripts.Net.APIRequest;
|
||||
using Assets.MyGame.Scripts.Net.APIRequest.Objs;
|
||||
using Assets.MyGame.Scripts.Net.APIRequest.Params;
|
||||
using Assets.MyGame.Scripts.Net.APIResponses.HomeMain_User;
|
||||
using Newtonsoft.Json.Linq;
|
||||
@@ -68,7 +70,17 @@ namespace Assets.MyGame.Scripts.Net
|
||||
{
|
||||
APIManager.Response<long>(APIType.User_GetNoReadCount, callback);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取未读邮件数量(GET,无参)
|
||||
/// 返回:long(未读数量)
|
||||
/// </summary>
|
||||
public static void GetUser(string userID,Action<UserData> callback)
|
||||
{
|
||||
APIManager.Response<UserData>(APIType.User_GetUser,new GetUserParam
|
||||
{
|
||||
userid=userID
|
||||
}, callback);
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using UnityEngine;
|
||||
|
||||
namespace Assets.MyGame.Scripts.Net.API.GameConfig_SubClass
|
||||
{
|
||||
@@ -8,6 +9,7 @@ namespace Assets.MyGame.Scripts.Net.API.GameConfig_SubClass
|
||||
[Serializable]
|
||||
public class DiamondShopConfig
|
||||
{
|
||||
public Sprite sprite_Icon;
|
||||
/// <summary>
|
||||
/// 商品编号
|
||||
/// </summary>
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using UnityEngine;
|
||||
|
||||
namespace Assets.MyGame.Scripts.Net.API.GameConfig_SubClass
|
||||
{
|
||||
@@ -8,6 +9,7 @@ namespace Assets.MyGame.Scripts.Net.API.GameConfig_SubClass
|
||||
[Serializable]
|
||||
public class GoldShopConfig
|
||||
{
|
||||
public Sprite sprite_Icon;
|
||||
/// <summary>
|
||||
/// 商品编号
|
||||
/// </summary>
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using UnityEngine;
|
||||
|
||||
namespace Assets.MyGame.Scripts.Net.API.GameConfig_SubClass
|
||||
{
|
||||
@@ -8,6 +9,7 @@ namespace Assets.MyGame.Scripts.Net.API.GameConfig_SubClass
|
||||
[Serializable]
|
||||
public class PropFragmentConfig : BasePropInfo
|
||||
{
|
||||
public Sprite sprite_Icon;
|
||||
/// <summary>
|
||||
/// 合成所需碎片数量
|
||||
/// </summary>
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
namespace Assets.MyGame.Scripts.Net.API.GameConfig_SubClass
|
||||
{
|
||||
@@ -9,6 +10,7 @@ namespace Assets.MyGame.Scripts.Net.API.GameConfig_SubClass
|
||||
[Serializable]
|
||||
public class PropInfConfig : BasePropInfo
|
||||
{
|
||||
public Sprite sprite_Icon;
|
||||
/// <summary>
|
||||
/// 关联游戏编号(空表示全部)
|
||||
/// </summary>
|
||||
|
||||
@@ -1,16 +0,0 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Assets.MyGame.Scripts.Net.APIResponses.Login_SubClass
|
||||
{
|
||||
[Serializable]
|
||||
public class DefaultAPIResponse
|
||||
{
|
||||
public int code;
|
||||
public string? info;
|
||||
public string data;
|
||||
}
|
||||
}
|
||||
@@ -1,8 +1,10 @@
|
||||
using System;
|
||||
using UnityEngine;
|
||||
|
||||
[Serializable]
|
||||
public class UserBaseInfo
|
||||
{
|
||||
public Sprite avatarSprite;
|
||||
public string userName { get; set; }
|
||||
public string password { get; set; }
|
||||
public string number { get; set; }
|
||||
|
||||
@@ -11,7 +11,15 @@ namespace Assets.MyGame.Scripts.Net.API
|
||||
/// 用户 Token 及完整用户信息(Swagger: UserToken)
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class UserToken
|
||||
public class UserToken:UserData
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// 登录 Token
|
||||
/// </summary>
|
||||
public string token;
|
||||
}
|
||||
public class UserData
|
||||
{
|
||||
/// <summary>
|
||||
/// 基础信息,包括昵称、头像等基本信息
|
||||
@@ -65,7 +73,7 @@ namespace Assets.MyGame.Scripts.Net.API
|
||||
/// <summary>
|
||||
/// 拥有的翅膀列表
|
||||
/// </summary>
|
||||
public List< BaseUserProp> wingList;
|
||||
public List<BaseUserProp> wingList;
|
||||
|
||||
/// <summary>
|
||||
/// 当前使用的战神
|
||||
@@ -101,10 +109,7 @@ namespace Assets.MyGame.Scripts.Net.API
|
||||
/// </summary>
|
||||
public StaticInfo @static;
|
||||
|
||||
/// <summary>
|
||||
/// 登录 Token
|
||||
/// </summary>
|
||||
public string token;
|
||||
|
||||
/// <summary>
|
||||
/// 玩家因子
|
||||
/// </summary>
|
||||
|
||||
@@ -2310,6 +2310,8 @@ MonoBehaviour:
|
||||
m_EditorClassIdentifier:
|
||||
panelAddressConfig: {fileID: 11400000, guid: af4956c52185f7248afa632ba0ba63d7, type: 2}
|
||||
SubPanelParent: {fileID: 2598784230285573744}
|
||||
tMP_GoldCoinNum: {fileID: 1330864841708033395}
|
||||
tMP_DiamondNum: {fileID: 6733070567402786631}
|
||||
FXYButton: {fileID: 5660061971336108277}
|
||||
XJMHButton: {fileID: 675111198059572776}
|
||||
TGXXButton: {fileID: 9215424427851389888}
|
||||
|
||||
@@ -1655,7 +1655,7 @@ MonoBehaviour:
|
||||
m_fontColor32:
|
||||
serializedVersion: 2
|
||||
rgba: 4278255577
|
||||
m_fontColor: {r: 0.8509928, g: 1, b: 0, a: 1}
|
||||
m_fontColor: {r: 0, g: 1, b: 0.9250941, a: 1}
|
||||
m_enableVertexGradient: 0
|
||||
m_colorMode: 3
|
||||
m_fontColorGradient:
|
||||
@@ -1768,6 +1768,7 @@ MonoBehaviour:
|
||||
btn_Close: {fileID: 8274301648789745216}
|
||||
tMPText_Header: {fileID: 118118469195421749}
|
||||
tMPText_Content: {fileID: 8331406854104295500}
|
||||
tMPText_EmailCount: {fileID: 1578311975270780186}
|
||||
btn_Receive: {fileID: 1015959014050646896}
|
||||
btn_Dlete: {fileID: 6610209709396860820}
|
||||
btn_AllDlete: {fileID: 1656486209904210043}
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using Assets.Framework.Tool;
|
||||
using Assets.MyGame.Scripts.Net;
|
||||
using Assets.MyGame.Scripts.Net.API.UserData_SubClass;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
@@ -65,7 +66,7 @@ public class UIHome_BY_BackPackPanel : SubUIBase
|
||||
tMP_Description.text = product.desc;
|
||||
}
|
||||
});
|
||||
WebTool.DownImage(product.imageUrl, (texture) =>
|
||||
WebTool.DownImage(APIManager.baseURL+product.imageUrl, (texture) =>
|
||||
{
|
||||
obj.transform.GetChild(0).GetComponent<Image>().sprite = Sprite.Create(texture,new Rect(0f,0f,90,90),Vector2.one*0.5f) ;
|
||||
|
||||
|
||||
@@ -16,6 +16,7 @@ public class UIHome_BY_EmailPanel : SubUIBase
|
||||
{
|
||||
public TextMeshProUGUI tMPText_Header;
|
||||
public TextMeshProUGUI tMPText_Content;
|
||||
public TextMeshProUGUI tMPText_EmailCount;
|
||||
public Button btn_Receive;
|
||||
public Button btn_Dlete;
|
||||
public Button btn_AllDlete;
|
||||
@@ -77,6 +78,8 @@ public class UIHome_BY_EmailPanel : SubUIBase
|
||||
dic_GetEmailByPageResponses.Remove(currEmailID);
|
||||
; Destroy(dic_EmalItems[currEmailID].gameObject);
|
||||
dic_EmalItems.Remove(currEmailID);
|
||||
tMPText_EmailCount.text = itemPrefabParent.childCount.ToString();
|
||||
|
||||
});
|
||||
|
||||
});
|
||||
@@ -117,6 +120,8 @@ public class UIHome_BY_EmailPanel : SubUIBase
|
||||
}
|
||||
}
|
||||
}
|
||||
tMPText_EmailCount.text = itemPrefabParent.childCount.ToString();
|
||||
|
||||
});
|
||||
|
||||
});
|
||||
@@ -134,6 +139,7 @@ public class UIHome_BY_EmailPanel : SubUIBase
|
||||
{
|
||||
propPrefabParent.GetChild(i).GetChild(1).gameObject.SetActive(true);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
protected override void OnShow(object args = null)
|
||||
@@ -263,6 +269,7 @@ public class UIHome_BY_EmailPanel : SubUIBase
|
||||
}
|
||||
});
|
||||
}
|
||||
tMPText_EmailCount.text=itemPrefabParent.childCount.ToString();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -17,14 +17,14 @@ public class UIHome_BY_MonthCardPanel : SubUIBase
|
||||
base.Awake();
|
||||
btn_Open.onClick.AddListener(() =>
|
||||
{
|
||||
APIRequestList.BuyMonthCard(new BuyMonthCardParam
|
||||
{
|
||||
cardType = 1
|
||||
//APIRequestList.BuyMonthCard(new BuyMonthCardParam
|
||||
//{
|
||||
// cardType = 1
|
||||
|
||||
}, (response) =>
|
||||
{
|
||||
Debug.Log("购买月卡成功,月卡ID:" + response.cardId + ",名称:" + response.name);
|
||||
});
|
||||
//}, (response) =>
|
||||
//{
|
||||
// Debug.Log("购买月卡成功,月卡ID:" + response.cardId + ",名称:" + response.name);
|
||||
//});
|
||||
});
|
||||
}
|
||||
// Start is called before the first frame update
|
||||
|
||||
@@ -1,21 +1,246 @@
|
||||
using System.Collections;
|
||||
using Assets.Framework.Tool;
|
||||
using Assets.MyGame.Scripts.Net;
|
||||
using Assets.MyGame.Scripts.Net.API.GameConfig_SubClass;
|
||||
using Assets.MyGame.Scripts.Net.APIRequest.Params;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using TMPro;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
|
||||
public class UIHome_BY_ShopPanel : SubUIBase
|
||||
{
|
||||
public GameObject obj_PropPrefab;
|
||||
[Header("左侧按钮")]
|
||||
public Button btn_GlodCoins;
|
||||
public Button btn_Diamond;
|
||||
public Button btn_Prop;
|
||||
public GameObject obj_ItemPrefab; // 0-图标 1-首充 2-购买按钮 2-0-价值 3-名字
|
||||
public Transform tra_PrefabParent;
|
||||
public TextMeshProUGUI tMP_GoldCoinNum;
|
||||
public TextMeshProUGUI tMP_DiamondNum;
|
||||
|
||||
[Header("左侧按钮")]
|
||||
public Toggle btn_GlodCoins;
|
||||
public Toggle btn_Diamond;
|
||||
public Toggle btn_Prop;
|
||||
|
||||
public List< GameObject> vipIcon=new List<GameObject>();
|
||||
Dictionary<string, GoldShopConfig> dic_GoldItems=new Dictionary<string, GoldShopConfig>();
|
||||
Dictionary<string, DiamondShopConfig> dic_DiamondItems=new Dictionary<string, DiamondShopConfig>();
|
||||
Dictionary<string, BasePropInfo> dic_PropItems=new Dictionary<string, BasePropInfo>();
|
||||
public override void Awake()
|
||||
{
|
||||
base.Awake();
|
||||
}
|
||||
var gameConfig = GameManager.Instance.gameConfig;
|
||||
btn_GlodCoins.onValueChanged.AddListener((a) =>
|
||||
{
|
||||
for (int i = tra_PrefabParent.childCount-1; i >=0; i--)
|
||||
{
|
||||
Destroy(tra_PrefabParent.GetChild(i).gameObject);
|
||||
|
||||
}
|
||||
foreach (var item in gameConfig.goldShopConfigs)
|
||||
{
|
||||
var obj = Instantiate(obj_ItemPrefab, tra_PrefabParent).transform;
|
||||
|
||||
if (item.sprite_Icon==null)
|
||||
{
|
||||
WebTool.DownImage(APIManager.baseURL + item.icon, (texture) =>
|
||||
{
|
||||
item.sprite_Icon = Sprite.Create(texture,new Rect(0,0, texture.width,texture.height),new Vector2(0.5f,0.5f));
|
||||
obj.GetChild(0).GetComponent<Image>().sprite= item.sprite_Icon;
|
||||
});
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
obj.GetChild(0).GetComponent<Image>().sprite = item.sprite_Icon;
|
||||
}
|
||||
obj.name = item.number;
|
||||
dic_GoldItems[item.number] = item;
|
||||
obj.GetChild(2).GetComponent<Button>().onClick.AddListener(() =>
|
||||
{
|
||||
//这里调用api
|
||||
APIRequestList.BuyGold(new BuyGoldParam { number = item.number, count = 1 }, (response) =>
|
||||
{
|
||||
UIManager.Instance.ShowBoardError(response);
|
||||
|
||||
APIRequestList.GetUser(GameManager.Instance.user.id, (a) =>
|
||||
{
|
||||
GameManager.Instance.UpdataUserData(a);
|
||||
tMP_GoldCoinNum.text = GameManager.Instance.user.assets.gold.ToString();
|
||||
tMP_DiamondNum.text = GameManager.Instance.user.assets.diamond.ToString();
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
obj.GetChild(2).GetChild(0).GetComponent<TextMeshProUGUI>().text ="\ue002"+item.diamond.ToString();
|
||||
obj.GetChild(3).GetComponent<TextMeshProUGUI>().text = item.gold.ToString();
|
||||
}
|
||||
|
||||
//
|
||||
});
|
||||
btn_Diamond.onValueChanged.AddListener((a) =>
|
||||
{
|
||||
for (int i = tra_PrefabParent.childCount - 1; i >= 0; i--)
|
||||
{
|
||||
Destroy(tra_PrefabParent.GetChild(i).gameObject);
|
||||
|
||||
}
|
||||
foreach (var item in gameConfig.diamondShopConfigs)
|
||||
{
|
||||
var obj = Instantiate(obj_ItemPrefab, tra_PrefabParent).transform;
|
||||
|
||||
if (item.sprite_Icon == null)
|
||||
{
|
||||
WebTool.DownImage(APIManager.baseURL + item.icon, (texture) =>
|
||||
{
|
||||
item.sprite_Icon = Sprite.Create(texture, new Rect(0, 0, texture.width, texture.height), new Vector2(0.5f, 0.5f));
|
||||
obj.GetChild(0).GetComponent<Image>().sprite = item.sprite_Icon;
|
||||
});
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
obj.GetChild(0).GetComponent<Image>().sprite = item.sprite_Icon;
|
||||
}
|
||||
obj.name = item.number;
|
||||
dic_DiamondItems[item.number] = item;
|
||||
obj.GetChild(2).GetComponent<Button>().onClick.AddListener(() =>
|
||||
{
|
||||
//这里调用api
|
||||
APIRequestList.BuyDiamond(new BuyDiamondParam { number = item.number, count = 1 }, (response) =>
|
||||
{
|
||||
UIManager.Instance.ShowBoardError(response);
|
||||
|
||||
APIRequestList.GetUser(GameManager.Instance.user.id, (a) =>
|
||||
{
|
||||
GameManager.Instance.UpdataUserData(a);
|
||||
tMP_GoldCoinNum.text = GameManager.Instance.user.assets.gold.ToString();
|
||||
tMP_DiamondNum.text = GameManager.Instance.user.assets.diamond.ToString();
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
obj.GetChild(2).GetChild(0).GetComponent<TextMeshProUGUI>().text = item.money.ToString()+"元";
|
||||
obj.GetChild(3).GetComponent<TextMeshProUGUI>().text = item.diamond.ToString();
|
||||
}
|
||||
|
||||
//
|
||||
});
|
||||
btn_Prop.onValueChanged.AddListener((a) =>
|
||||
{
|
||||
for (int i = tra_PrefabParent.childCount - 1; i >= 0; i--)
|
||||
{
|
||||
Destroy(tra_PrefabParent.GetChild(i).gameObject);
|
||||
}
|
||||
foreach (var item in gameConfig.propConfig)
|
||||
{
|
||||
if (item.isSale == false || item.isEnable == false)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
var obj = Instantiate(obj_ItemPrefab, tra_PrefabParent).transform;
|
||||
|
||||
if (item.sprite_Icon == null)
|
||||
{
|
||||
WebTool.DownImage(APIManager.baseURL + item.imageUrl, (texture) =>
|
||||
{
|
||||
item.sprite_Icon = Sprite.Create(texture, new Rect(0, 0, texture.width, texture.height), new Vector2(0.5f, 0.5f));
|
||||
obj.GetChild(0).GetComponent<Image>().sprite = item.sprite_Icon;
|
||||
});
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
obj.GetChild(0).GetComponent<Image>().sprite = item.sprite_Icon;
|
||||
}
|
||||
obj.name = item.number;
|
||||
dic_PropItems[item.number] = item;
|
||||
obj.GetChild(2).GetComponent<Button>().onClick.AddListener(() =>
|
||||
{
|
||||
//这里调用api
|
||||
APIRequestList.BuyProp(new BuyPropParam { propNumber = item.number, count = 1 }, (response) =>
|
||||
{
|
||||
UIManager.Instance.ShowBoardError(response);
|
||||
|
||||
APIRequestList.GetUser(GameManager.Instance.user.id, (a) =>
|
||||
{
|
||||
GameManager.Instance.UpdataUserData(a);
|
||||
tMP_GoldCoinNum.text = GameManager.Instance.user.assets.gold.ToString();
|
||||
tMP_DiamondNum.text = GameManager.Instance.user.assets.diamond.ToString();
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
obj.GetChild(3).GetComponent<TextMeshProUGUI>().text = item.name.ToString();
|
||||
if (item.saleType == 1)
|
||||
{
|
||||
obj.GetChild(2).GetChild(0).GetComponent<TextMeshProUGUI>().text = "\ue001" + item.price.ToString();
|
||||
|
||||
}
|
||||
else if (item.saleType == 2)
|
||||
{
|
||||
obj.GetChild(2).GetChild(0).GetComponent<TextMeshProUGUI>().text = "\ue002" + item.price.ToString();
|
||||
|
||||
}
|
||||
}
|
||||
foreach (var item in gameConfig.propFragments)
|
||||
{
|
||||
if (item.isSale==false||item.isEnable==false)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
var obj = Instantiate(obj_ItemPrefab, tra_PrefabParent).transform;
|
||||
|
||||
if (item.sprite_Icon == null)
|
||||
{
|
||||
WebTool.DownImage(APIManager.baseURL + item.imageUrl, (texture) =>
|
||||
{
|
||||
item.sprite_Icon = Sprite.Create(texture, new Rect(0, 0, texture.width, texture.height), new Vector2(0.5f, 0.5f));
|
||||
obj.GetChild(0).GetComponent<Image>().sprite = item.sprite_Icon;
|
||||
});
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
obj.GetChild(0).GetComponent<Image>().sprite = item.sprite_Icon;
|
||||
}
|
||||
obj.name = item.number;
|
||||
dic_PropItems[item.number] = item;
|
||||
obj.GetChild(2).GetComponent<Button>().onClick.AddListener(() =>
|
||||
{
|
||||
//这里调用api
|
||||
APIRequestList.BuyProp(new BuyPropParam { propNumber = item.number, count = 1 }, (response) =>
|
||||
{
|
||||
UIManager.Instance.ShowBoardError(response);
|
||||
|
||||
APIRequestList.GetUser(GameManager.Instance.user.id, (a) =>
|
||||
{
|
||||
GameManager.Instance.UpdataUserData(a);
|
||||
tMP_GoldCoinNum.text = GameManager.Instance.user.assets.gold.ToString();
|
||||
tMP_DiamondNum.text = GameManager.Instance.user.assets.diamond.ToString();
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
obj.GetChild(3).GetComponent<TextMeshProUGUI>().text = item.name.ToString();
|
||||
if (item.saleType == 1)
|
||||
{
|
||||
obj.GetChild(2).GetChild(0).GetComponent<TextMeshProUGUI>().text = "\ue001" + item.price.ToString();
|
||||
|
||||
}
|
||||
else if (item.saleType == 2)
|
||||
{
|
||||
obj.GetChild(2).GetChild(0).GetComponent<TextMeshProUGUI>().text = "\ue002" + item.price.ToString();
|
||||
|
||||
}
|
||||
}
|
||||
//
|
||||
});
|
||||
}
|
||||
protected override void OnShow(object args = null)
|
||||
{
|
||||
base.OnShow(args);
|
||||
tMP_GoldCoinNum.text = GameManager.Instance.user.assets.gold.ToString();
|
||||
tMP_DiamondNum.text = GameManager.Instance.user.assets.diamond.ToString();
|
||||
}
|
||||
// Update is called once per frame
|
||||
void Update()
|
||||
{
|
||||
|
||||
@@ -4,6 +4,7 @@ using Assets.MyGame.Scripts.Net.APIRequest.Objs;
|
||||
using Assets.MyGame.Scripts.Net.APIResponses.HomeMain_User;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using TMPro;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
|
||||
@@ -12,6 +13,8 @@ public class UIHomeMain : UIBase
|
||||
public SubUIManager subUIManager;
|
||||
public UIPanelAddressConfig panelAddressConfig;
|
||||
public Transform SubPanelParent;
|
||||
public TextMeshProUGUI tMP_GoldCoinNum;
|
||||
public TextMeshProUGUI tMP_DiamondNum;
|
||||
#region 中间
|
||||
[Header("风雷之渊")]
|
||||
public Button FXYButton;
|
||||
@@ -168,7 +171,16 @@ public class UIHomeMain : UIBase
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
protected override void OnShow(object args = null)
|
||||
{
|
||||
base.OnShow(args);
|
||||
UpdateUserData();
|
||||
}
|
||||
public void UpdateUserData()
|
||||
{
|
||||
tMP_GoldCoinNum.text = GameManager.Instance.user.assets.gold.ToString();
|
||||
tMP_DiamondNum.text = GameManager.Instance.user.assets.diamond.ToString();
|
||||
//user数据
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 28f5bc2030be6bd41a6066dd84d44902
|
||||
folderAsset: yes
|
||||
timeCreated: 1523020534
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0da2e9db10b6016438ab2af9dacde435
|
||||
folderAsset: yes
|
||||
timeCreated: 1523817013
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c9c3a8b1d560a0146b500a8fc3b06487
|
||||
timeCreated: 1523817215
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,89 @@
|
||||
using System.Collections;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
|
||||
namespace ImageCropperNamespace
|
||||
{
|
||||
public class ImageCropperDemo : MonoBehaviour
|
||||
{
|
||||
public RawImage croppedImageHolder;
|
||||
public Text croppedImageSize;
|
||||
|
||||
public Toggle ovalSelectionInput, autoZoomInput;
|
||||
public InputField minAspectRatioInput, maxAspectRatioInput;
|
||||
|
||||
public void Crop()
|
||||
{
|
||||
// If image cropper is already open, do nothing
|
||||
if( ImageCropper.Instance.IsOpen )
|
||||
return;
|
||||
|
||||
StartCoroutine( TakeScreenshotAndCrop() );
|
||||
}
|
||||
|
||||
private IEnumerator TakeScreenshotAndCrop()
|
||||
{
|
||||
yield return new WaitForEndOfFrame();
|
||||
|
||||
bool ovalSelection = ovalSelectionInput.isOn;
|
||||
bool autoZoom = autoZoomInput.isOn;
|
||||
|
||||
float minAspectRatio, maxAspectRatio;
|
||||
if( !float.TryParse( minAspectRatioInput.text, out minAspectRatio ) )
|
||||
minAspectRatio = 0f;
|
||||
if( !float.TryParse( maxAspectRatioInput.text, out maxAspectRatio ) )
|
||||
maxAspectRatio = 0f;
|
||||
|
||||
Texture2D screenshot = new Texture2D( Screen.width, Screen.height, TextureFormat.RGB24, false );
|
||||
screenshot.ReadPixels( new Rect( 0, 0, Screen.width, Screen.height ), 0, 0 );
|
||||
screenshot.Apply();
|
||||
|
||||
ImageCropper.Instance.Show( screenshot, ( bool result, Texture originalImage, Texture2D croppedImage ) =>
|
||||
{
|
||||
// Destroy previously cropped texture (if any) to free memory
|
||||
Destroy( croppedImageHolder.texture, 5f );
|
||||
|
||||
// If screenshot was cropped successfully
|
||||
if( result )
|
||||
{
|
||||
// Assign cropped texture to the RawImage
|
||||
croppedImageHolder.enabled = true;
|
||||
croppedImageHolder.texture = croppedImage;
|
||||
|
||||
Vector2 size = croppedImageHolder.rectTransform.sizeDelta;
|
||||
if( croppedImage.height <= croppedImage.width )
|
||||
size = new Vector2( 400f, 400f * ( croppedImage.height / (float) croppedImage.width ) );
|
||||
else
|
||||
size = new Vector2( 400f * ( croppedImage.width / (float) croppedImage.height ), 400f );
|
||||
croppedImageHolder.rectTransform.sizeDelta = size;
|
||||
|
||||
croppedImageSize.enabled = true;
|
||||
croppedImageSize.text = "Image size: " + croppedImage.width + ", " + croppedImage.height;
|
||||
}
|
||||
else
|
||||
{
|
||||
croppedImageHolder.enabled = false;
|
||||
croppedImageSize.enabled = false;
|
||||
}
|
||||
|
||||
// Destroy the screenshot as we no longer need it in this case
|
||||
Destroy( screenshot );
|
||||
},
|
||||
settings: new ImageCropper.Settings()
|
||||
{
|
||||
ovalSelection = ovalSelection,
|
||||
autoZoomEnabled = autoZoom,
|
||||
imageBackground = Color.clear, // transparent background
|
||||
selectionMinAspectRatio = minAspectRatio,
|
||||
selectionMaxAspectRatio = maxAspectRatio
|
||||
|
||||
},
|
||||
croppedImageResizePolicy: ( ref int width, ref int height ) =>
|
||||
{
|
||||
// uncomment lines below to save cropped image at half resolution
|
||||
//width /= 2;
|
||||
//height /= 2;
|
||||
} );
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 69027feb3ce406745b1f9c00f61d4b70
|
||||
timeCreated: 1523818595
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"name": "ImageCropper.Runtime",
|
||||
"references": [
|
||||
"Unity.InputSystem"
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 58b8905714dedd04693f1fb3fd955437
|
||||
AssemblyDefinitionImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,6 @@
|
||||
= Image Cropper (v1.0.8) =
|
||||
|
||||
Documentation: https://github.com/yasirkula/UnityImageCropper
|
||||
FAQ: https://github.com/yasirkula/UnityImageCropper#faq
|
||||
Example code: https://github.com/yasirkula/UnityImageCropper#example-code
|
||||
E-mail: yasirkula@gmail.com
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f2524c1e4c1b07d4892037793e8a9404
|
||||
timeCreated: 1563307881
|
||||
licenseType: Store
|
||||
TextScriptImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9e8f5004af78dcf4283d0cf22bbb48a5
|
||||
folderAsset: yes
|
||||
timeCreated: 1523020546
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c3ec8097647d9e54daa56be589f9a12b
|
||||
timeCreated: 1523020550
|
||||
licenseType: Store
|
||||
NativeFormatImporter:
|
||||
mainObjectFileID: 100100000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: bd4231b281c79d24099b410dcffb0660
|
||||
folderAsset: yes
|
||||
timeCreated: 1523023285
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,150 @@
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
|
||||
namespace ImageCropperNamespace
|
||||
{
|
||||
[RequireComponent( typeof( CanvasRenderer ) )]
|
||||
public class CircleGraphic : MaskableGraphic
|
||||
{
|
||||
public enum Mode { FillInside = 0, FillOutside = 1, Edge = 2 };
|
||||
|
||||
[SerializeField]
|
||||
private Sprite renderSprite;
|
||||
|
||||
[SerializeField]
|
||||
private int detail = 64;
|
||||
|
||||
[SerializeField]
|
||||
private Mode mode;
|
||||
|
||||
[SerializeField]
|
||||
private float edgeThickness = 1;
|
||||
|
||||
private Vector2 uv;
|
||||
private Color32 color32;
|
||||
|
||||
private float width, height;
|
||||
private float deltaWidth, deltaHeight;
|
||||
private float deltaRadians;
|
||||
|
||||
public override Texture mainTexture { get { return renderSprite != null ? renderSprite.texture : s_WhiteTexture; } }
|
||||
|
||||
protected override void Awake()
|
||||
{
|
||||
base.Awake();
|
||||
|
||||
if( renderSprite != null )
|
||||
{
|
||||
Vector4 packedUv = UnityEngine.Sprites.DataUtility.GetOuterUV( renderSprite );
|
||||
uv = new Vector2( packedUv.x + packedUv.z, packedUv.y + packedUv.w ) * 0.5f; // uv center point
|
||||
}
|
||||
}
|
||||
|
||||
protected override void OnPopulateMesh( VertexHelper vh )
|
||||
{
|
||||
Rect r = GetPixelAdjustedRect();
|
||||
|
||||
color32 = color;
|
||||
width = r.width * 0.5f;
|
||||
height = r.height * 0.5f;
|
||||
|
||||
vh.Clear();
|
||||
|
||||
Vector2 pivot = rectTransform.pivot;
|
||||
deltaWidth = r.width * ( 0.5f - pivot.x );
|
||||
deltaHeight = r.height * ( 0.5f - pivot.y );
|
||||
|
||||
if( mode == Mode.FillInside )
|
||||
{
|
||||
deltaRadians = 360f / detail * Mathf.Deg2Rad;
|
||||
FillInside( vh );
|
||||
}
|
||||
else if( mode == Mode.FillOutside )
|
||||
{
|
||||
int quarterDetail = ( detail + 3 ) / 4;
|
||||
deltaRadians = 360f / ( quarterDetail * 4 ) * Mathf.Deg2Rad;
|
||||
|
||||
vh.AddVert( new Vector3( width + deltaWidth, height + deltaHeight, 0f ), color32, uv );
|
||||
vh.AddVert( new Vector3( -width + deltaWidth, height + deltaHeight, 0f ), color32, uv );
|
||||
vh.AddVert( new Vector3( -width + deltaWidth, -height + deltaHeight, 0f ), color32, uv );
|
||||
vh.AddVert( new Vector3( width + deltaWidth, -height + deltaHeight, 0f ), color32, uv );
|
||||
|
||||
int triangleIndex = 4;
|
||||
FillOutside( vh, new Vector3( width + deltaWidth, deltaHeight, 0f ), 0, quarterDetail, ref triangleIndex );
|
||||
FillOutside( vh, new Vector3( deltaWidth, height + deltaHeight, 0f ), 1, quarterDetail, ref triangleIndex );
|
||||
FillOutside( vh, new Vector3( -width + deltaWidth, deltaHeight, 0f ), 2, quarterDetail, ref triangleIndex );
|
||||
FillOutside( vh, new Vector3( deltaWidth, -height + deltaHeight, 0f ), 3, quarterDetail, ref triangleIndex );
|
||||
}
|
||||
else
|
||||
{
|
||||
deltaRadians = 360f / detail * Mathf.Deg2Rad;
|
||||
GenerateEdges( vh );
|
||||
}
|
||||
}
|
||||
|
||||
public override void Cull( Rect clipRect, bool validRect )
|
||||
{
|
||||
canvasRenderer.cull = false;
|
||||
}
|
||||
|
||||
private void FillInside( VertexHelper vh )
|
||||
{
|
||||
vh.AddVert( new Vector3( deltaWidth, deltaHeight, 0f ), color32, uv );
|
||||
vh.AddVert( new Vector3( width + deltaWidth, deltaHeight, 0f ), color32, uv );
|
||||
|
||||
int triangleIndex = 2;
|
||||
for( int i = 1; i < detail; i++, triangleIndex++ )
|
||||
{
|
||||
float radians = i * deltaRadians;
|
||||
|
||||
vh.AddVert( new Vector3( Mathf.Cos( radians ) * width + deltaWidth, Mathf.Sin( radians ) * height + deltaHeight, 0f ), color32, uv );
|
||||
vh.AddTriangle( triangleIndex, triangleIndex - 1, 0 );
|
||||
}
|
||||
|
||||
vh.AddTriangle( 1, triangleIndex - 1, 0 );
|
||||
}
|
||||
|
||||
private void FillOutside( VertexHelper vh, Vector3 initialPoint, int quarterIndex, int detail, ref int triangleIndex )
|
||||
{
|
||||
int startIndex = quarterIndex * detail;
|
||||
int endIndex = ( quarterIndex + 1 ) * detail;
|
||||
|
||||
vh.AddVert( initialPoint, color32, uv );
|
||||
triangleIndex++;
|
||||
|
||||
for( int i = startIndex + 1; i <= endIndex; i++, triangleIndex++ )
|
||||
{
|
||||
float radians = i * deltaRadians;
|
||||
|
||||
vh.AddVert( new Vector3( Mathf.Cos( radians ) * width + deltaWidth, Mathf.Sin( radians ) * height + deltaHeight, 0f ), color32, uv );
|
||||
vh.AddTriangle( quarterIndex, triangleIndex - 1, triangleIndex );
|
||||
}
|
||||
}
|
||||
|
||||
private void GenerateEdges( VertexHelper vh )
|
||||
{
|
||||
float innerWidth = width - edgeThickness;
|
||||
float innerHeight = height - edgeThickness;
|
||||
|
||||
vh.AddVert( new Vector3( width + deltaWidth, deltaHeight, 0f ), color32, uv );
|
||||
vh.AddVert( new Vector3( innerWidth + deltaWidth, deltaHeight, 0f ), color32, uv );
|
||||
|
||||
int triangleIndex = 2;
|
||||
for( int i = 1; i < detail; i++, triangleIndex += 2 )
|
||||
{
|
||||
float radians = i * deltaRadians;
|
||||
float cos = Mathf.Cos( radians );
|
||||
float sin = Mathf.Sin( radians );
|
||||
|
||||
vh.AddVert( new Vector3( cos * width + deltaWidth, sin * height + deltaHeight, 0f ), color32, uv );
|
||||
vh.AddVert( new Vector3( cos * innerWidth + deltaWidth, sin * innerHeight + deltaHeight, 0f ), color32, uv );
|
||||
|
||||
vh.AddTriangle( triangleIndex, triangleIndex - 2, triangleIndex - 1 );
|
||||
vh.AddTriangle( triangleIndex, triangleIndex - 1, triangleIndex + 1 );
|
||||
}
|
||||
|
||||
vh.AddTriangle( 0, triangleIndex - 2, triangleIndex - 1 );
|
||||
vh.AddTriangle( 0, triangleIndex - 1, 1 );
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 713600372b4defb458fcaf7bb47fedbc
|
||||
timeCreated: 1523363091
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,71 @@
|
||||
using UnityEngine;
|
||||
using UnityEngine.EventSystems;
|
||||
using UnityEngine.SceneManagement;
|
||||
#if ENABLE_INPUT_SYSTEM && !ENABLE_LEGACY_INPUT_MANAGER
|
||||
using UnityEngine.InputSystem.UI;
|
||||
#endif
|
||||
|
||||
namespace ImageCropperNamespace
|
||||
{
|
||||
// Avoid multiple EventSystems in the scene by activating the embedded EventSystem only if one doesn't already exist in the scene
|
||||
[DefaultExecutionOrder( 1000 )]
|
||||
public class EventSystemHandler : MonoBehaviour
|
||||
{
|
||||
[SerializeField]
|
||||
private GameObject embeddedEventSystem;
|
||||
|
||||
#if ENABLE_INPUT_SYSTEM && !ENABLE_LEGACY_INPUT_MANAGER
|
||||
private void Awake()
|
||||
{
|
||||
StandaloneInputModule legacyInputModule = embeddedEventSystem.GetComponent<StandaloneInputModule>();
|
||||
if( legacyInputModule )
|
||||
{
|
||||
DestroyImmediate( legacyInputModule );
|
||||
embeddedEventSystem.AddComponent<InputSystemUIInputModule>();
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
private void OnEnable()
|
||||
{
|
||||
SceneManager.sceneLoaded -= OnSceneLoaded;
|
||||
SceneManager.sceneLoaded += OnSceneLoaded;
|
||||
SceneManager.sceneUnloaded -= OnSceneUnloaded;
|
||||
SceneManager.sceneUnloaded += OnSceneUnloaded;
|
||||
|
||||
ActivateEventSystemIfNeeded();
|
||||
}
|
||||
|
||||
private void OnDisable()
|
||||
{
|
||||
SceneManager.sceneLoaded -= OnSceneLoaded;
|
||||
SceneManager.sceneUnloaded -= OnSceneUnloaded;
|
||||
|
||||
DeactivateEventSystem();
|
||||
}
|
||||
|
||||
private void OnSceneLoaded( Scene scene, LoadSceneMode mode )
|
||||
{
|
||||
DeactivateEventSystem();
|
||||
ActivateEventSystemIfNeeded();
|
||||
}
|
||||
|
||||
private void OnSceneUnloaded( Scene current )
|
||||
{
|
||||
// Deactivate the embedded EventSystem before changing scenes because the new scene might have its own EventSystem
|
||||
DeactivateEventSystem();
|
||||
}
|
||||
|
||||
private void ActivateEventSystemIfNeeded()
|
||||
{
|
||||
if( embeddedEventSystem && !EventSystem.current )
|
||||
embeddedEventSystem.SetActive( true );
|
||||
}
|
||||
|
||||
private void DeactivateEventSystem()
|
||||
{
|
||||
if( embeddedEventSystem )
|
||||
embeddedEventSystem.SetActive( false );
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5a39d7b3bb056d340842cf64a2bdf500
|
||||
timeCreated: 1658741613
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,57 @@
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
|
||||
namespace ImageCropperNamespace
|
||||
{
|
||||
[RequireComponent( typeof( CanvasRenderer ) )]
|
||||
public class FadeOverlayGraphic : Graphic
|
||||
{
|
||||
private const float OFFSET = 20000f;
|
||||
|
||||
[SerializeField]
|
||||
private Sprite renderSprite;
|
||||
|
||||
private Vector2 uv = Vector2.zero;
|
||||
private Color32 color32;
|
||||
|
||||
public override Texture mainTexture { get { return renderSprite != null ? renderSprite.texture : s_WhiteTexture; } }
|
||||
|
||||
protected override void Awake()
|
||||
{
|
||||
base.Awake();
|
||||
|
||||
if( renderSprite != null )
|
||||
{
|
||||
Vector4 packedUv = UnityEngine.Sprites.DataUtility.GetOuterUV( renderSprite );
|
||||
uv = new Vector2( packedUv.x + packedUv.z, packedUv.y + packedUv.w ) * 0.5f; // uv center point
|
||||
}
|
||||
}
|
||||
|
||||
protected override void OnPopulateMesh( VertexHelper vh )
|
||||
{
|
||||
Rect r = GetPixelAdjustedRect();
|
||||
|
||||
float xMin = r.x, xMax = r.x + r.width;
|
||||
float yMin = r.y, yMax = r.y + r.height;
|
||||
|
||||
color32 = color;
|
||||
vh.Clear();
|
||||
|
||||
GenerateMesh( vh, -OFFSET, yMax, OFFSET, OFFSET, 0 );
|
||||
GenerateMesh( vh, -OFFSET, -OFFSET, OFFSET, yMin, 4 );
|
||||
GenerateMesh( vh, -OFFSET, yMin, xMin, yMax, 8 );
|
||||
GenerateMesh( vh, xMax, yMin, OFFSET, yMax, 12 );
|
||||
}
|
||||
|
||||
private void GenerateMesh( VertexHelper vh, float xMin, float yMin, float xMax, float yMax, int triangleIndex )
|
||||
{
|
||||
vh.AddVert( new Vector3( xMin, yMin ), color32, uv );
|
||||
vh.AddVert( new Vector3( xMin, yMax ), color32, uv );
|
||||
vh.AddVert( new Vector3( xMax, yMax ), color32, uv );
|
||||
vh.AddVert( new Vector3( xMax, yMin ), color32, uv );
|
||||
|
||||
vh.AddTriangle( triangleIndex, triangleIndex + 1, triangleIndex + 2 );
|
||||
vh.AddTriangle( triangleIndex + 2, triangleIndex + 3, triangleIndex );
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e8c3d44f0736eda4f83e452134543b3b
|
||||
timeCreated: 1523363091
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,53 @@
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
|
||||
namespace ImageCropperNamespace
|
||||
{
|
||||
public class FontSizeSynchronizer : MonoBehaviour
|
||||
{
|
||||
[SerializeField]
|
||||
private Text[] texts;
|
||||
|
||||
private int[] initialBestFitSizes;
|
||||
private Canvas canvas;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
if( texts.Length == 0 )
|
||||
return;
|
||||
|
||||
canvas = texts[0].canvas;
|
||||
|
||||
initialBestFitSizes = new int[texts.Length];
|
||||
for( int i = 0; i < texts.Length; i++ )
|
||||
initialBestFitSizes[i] = texts[i].resizeTextMaxSize;
|
||||
}
|
||||
|
||||
public void Synchronize()
|
||||
{
|
||||
if( canvas == null || !gameObject.activeInHierarchy )
|
||||
return;
|
||||
|
||||
int minSize = int.MaxValue;
|
||||
for( int i = 0; i < texts.Length; i++ )
|
||||
{
|
||||
Text text = texts[i];
|
||||
|
||||
text.resizeTextMaxSize = initialBestFitSizes[i];
|
||||
text.resizeTextForBestFit = true;
|
||||
text.cachedTextGenerator.Populate( text.text, text.GetGenerationSettings( text.rectTransform.rect.size ) );
|
||||
|
||||
int fontSize = text.cachedTextGenerator.fontSizeUsedForBestFit;
|
||||
if( fontSize < minSize )
|
||||
minSize = fontSize;
|
||||
}
|
||||
|
||||
int fontSizeScaled = (int) ( minSize / canvas.scaleFactor );
|
||||
for( int i = 0; i < texts.Length; i++ )
|
||||
{
|
||||
texts[i].fontSize = fontSizeScaled;
|
||||
texts[i].resizeTextForBestFit = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9c7e2faa58cd3d546baa167999dbf7d9
|
||||
timeCreated: 1523634406
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
namespace ImageCropperNamespace
|
||||
{
|
||||
public interface ISelectionHandler
|
||||
{
|
||||
void OnUpdate();
|
||||
void Stop();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d78547850cdc3d0449c56b20bdebdbdf
|
||||
timeCreated: 1523306212
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 36771194e183b9644a5e8a7da8266967
|
||||
timeCreated: 1523026864
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,97 @@
|
||||
using UnityEngine;
|
||||
using Orientation = ImageCropper.Orientation;
|
||||
|
||||
namespace ImageCropperNamespace
|
||||
{
|
||||
public static class ImageCropperUtils
|
||||
{
|
||||
public static Vector2 RoundToInt( this Vector2 vector )
|
||||
{
|
||||
vector.x = (int) ( vector.x + 0.5f );
|
||||
vector.y = (int) ( vector.y + 0.5f );
|
||||
|
||||
return vector;
|
||||
}
|
||||
|
||||
public static Vector2 CeilToInt( this Vector2 vector )
|
||||
{
|
||||
vector.x = (int) ( vector.x + 0.999f );
|
||||
vector.y = (int) ( vector.y + 0.999f );
|
||||
|
||||
return vector;
|
||||
}
|
||||
|
||||
public static Vector2 FloorToInt( this Vector2 vector )
|
||||
{
|
||||
vector.x = (int) vector.x;
|
||||
vector.y = (int) vector.y;
|
||||
|
||||
return vector;
|
||||
}
|
||||
|
||||
public static Vector2 ClampBetween( this Vector2 vector, Vector2 min, Vector2 max )
|
||||
{
|
||||
if( min.x < max.x )
|
||||
{
|
||||
if( vector.x < min.x )
|
||||
vector.x = min.x;
|
||||
else if( vector.x > max.x )
|
||||
vector.x = max.x;
|
||||
}
|
||||
else
|
||||
{
|
||||
if( vector.x < max.x )
|
||||
vector.x = max.x;
|
||||
else if( vector.x > min.x )
|
||||
vector.x = min.x;
|
||||
}
|
||||
|
||||
if( min.y < max.y )
|
||||
{
|
||||
if( vector.y < min.y )
|
||||
vector.y = min.y;
|
||||
else if( vector.y > max.y )
|
||||
vector.y = max.y;
|
||||
}
|
||||
else
|
||||
{
|
||||
if( vector.y < max.y )
|
||||
vector.y = max.y;
|
||||
else if( vector.y > min.y )
|
||||
vector.y = min.y;
|
||||
}
|
||||
|
||||
return vector;
|
||||
}
|
||||
|
||||
public static Vector2 LerpTo( this Vector2 from, Vector2 to, float t )
|
||||
{
|
||||
return new Vector2( from.x + ( to.x - from.x ) * t, from.y + ( to.y - from.y ) * t );
|
||||
}
|
||||
|
||||
public static Vector2 ScaleWith( this Vector2 vector, Vector2 scale )
|
||||
{
|
||||
return new Vector2( vector.x * scale.x, vector.y * scale.y );
|
||||
}
|
||||
|
||||
public static Orientation GetExifFixOrientation( this Orientation exifOrientation )
|
||||
{
|
||||
if( exifOrientation == Orientation.Normal )
|
||||
return Orientation.Normal;
|
||||
else if( exifOrientation == Orientation.Rotate90 )
|
||||
return Orientation.Rotate270;
|
||||
else if( exifOrientation == Orientation.Rotate180 )
|
||||
return Orientation.Rotate180;
|
||||
else if( exifOrientation == Orientation.Rotate270 )
|
||||
return Orientation.Rotate90;
|
||||
else if( exifOrientation == Orientation.FlipHorizontal )
|
||||
return Orientation.FlipHorizontal;
|
||||
else if( exifOrientation == Orientation.Transpose )
|
||||
return Orientation.Transverse;
|
||||
else if( exifOrientation == Orientation.FlipVertical )
|
||||
return Orientation.FlipVertical;
|
||||
else
|
||||
return Orientation.Transpose;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c47fc29e548efd848bef67581c69904e
|
||||
timeCreated: 1523298806
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,80 @@
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
#if UNITY_EDITOR
|
||||
using Screen = UnityEngine.Device.Screen; // To support Device Simulator on Unity 2021.1+
|
||||
#endif
|
||||
|
||||
namespace ImageCropperNamespace
|
||||
{
|
||||
public class NotchCompensator : MonoBehaviour
|
||||
{
|
||||
#if UNITY_EDITOR || UNITY_ANDROID || UNITY_IOS
|
||||
[SerializeField]
|
||||
[Tooltip( "If enabled, on Android and iOS devices with notch screens, top buttons will be repositioned so that the cutout(s) don't obscure them" )]
|
||||
private bool avoidScreenCutout = true;
|
||||
|
||||
[SerializeField]
|
||||
private RectTransform buttons;
|
||||
[SerializeField]
|
||||
private RectTransform viewport;
|
||||
[SerializeField]
|
||||
private Image notchBackground;
|
||||
|
||||
private RectTransform canvasTR;
|
||||
|
||||
private bool screenDimensionsChanged = true;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
canvasTR = (RectTransform) transform;
|
||||
}
|
||||
|
||||
// Window is resized, update the list
|
||||
private void OnRectTransformDimensionsChange()
|
||||
{
|
||||
screenDimensionsChanged = true;
|
||||
}
|
||||
|
||||
private void LateUpdate()
|
||||
{
|
||||
if( screenDimensionsChanged )
|
||||
{
|
||||
CheckScreenCutout();
|
||||
screenDimensionsChanged = false;
|
||||
}
|
||||
}
|
||||
|
||||
// If a cutout is intersecting with the buttons at the top on notch screens, shift these buttons downwards
|
||||
private void CheckScreenCutout()
|
||||
{
|
||||
if( !avoidScreenCutout )
|
||||
return;
|
||||
|
||||
// Check if there is a cutout at the top of the screen
|
||||
int screenHeight = Screen.height;
|
||||
float safeYMax = Screen.safeArea.yMax;
|
||||
if( safeYMax < screenHeight - 1 ) // 1: a small threshold
|
||||
{
|
||||
// There is a cutout, shift the top buttons downwards
|
||||
float cutoutPercentage = ( screenHeight - safeYMax ) / Screen.height;
|
||||
float cutoutLocalSize = cutoutPercentage * canvasTR.rect.height;
|
||||
|
||||
buttons.anchoredPosition = new Vector2( 0f, -cutoutLocalSize );
|
||||
viewport.sizeDelta = new Vector2( 0f, -cutoutLocalSize );
|
||||
notchBackground.rectTransform.sizeDelta = new Vector2( 0f, cutoutLocalSize + 5f ); // 5f: to prevent a thin black line from appearing when canvas is scaled with screen size
|
||||
|
||||
if( !notchBackground.enabled )
|
||||
notchBackground.enabled = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
buttons.anchoredPosition = Vector2.zero;
|
||||
viewport.sizeDelta = Vector2.zero;
|
||||
|
||||
if( notchBackground.enabled )
|
||||
notchBackground.enabled = false;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e8515777b12faab4aa32d26f9037af5c
|
||||
timeCreated: 1617958394
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,63 @@
|
||||
using UnityEngine;
|
||||
|
||||
namespace ImageCropperNamespace
|
||||
{
|
||||
public class SelectionCornersFitter : MonoBehaviour
|
||||
{
|
||||
[SerializeField]
|
||||
private RectTransform selection;
|
||||
|
||||
[SerializeField]
|
||||
private RectTransform bottomLeft;
|
||||
|
||||
[SerializeField]
|
||||
private RectTransform bottomRight;
|
||||
|
||||
[SerializeField]
|
||||
private RectTransform topLeft;
|
||||
|
||||
[SerializeField]
|
||||
private RectTransform topRight;
|
||||
|
||||
[SerializeField]
|
||||
private float preferredCornerSize = 30f;
|
||||
|
||||
[SerializeField]
|
||||
private float cornerSizeMaxRatio = 0.3f;
|
||||
|
||||
private Vector2 inset;
|
||||
|
||||
private void OnEnable()
|
||||
{
|
||||
inset = ( (RectTransform) transform ).sizeDelta * 0.5f;
|
||||
OnRectTransformDimensionsChange();
|
||||
}
|
||||
|
||||
private void OnRectTransformDimensionsChange()
|
||||
{
|
||||
if( !gameObject.activeInHierarchy )
|
||||
return;
|
||||
|
||||
Vector2 cornerSize;
|
||||
Vector2 maxCornerSize = selection.rect.size * cornerSizeMaxRatio + inset;
|
||||
if( preferredCornerSize <= maxCornerSize.x && preferredCornerSize <= maxCornerSize.y )
|
||||
cornerSize = new Vector2( preferredCornerSize, preferredCornerSize );
|
||||
else
|
||||
cornerSize = Vector2.one * Mathf.Min( maxCornerSize.x, maxCornerSize.y );
|
||||
|
||||
float halfCornerSize = cornerSize.x * 0.5f;
|
||||
|
||||
bottomLeft.anchoredPosition = new Vector2( halfCornerSize, halfCornerSize );
|
||||
bottomLeft.sizeDelta = cornerSize;
|
||||
|
||||
bottomRight.anchoredPosition = new Vector2( -halfCornerSize, halfCornerSize );
|
||||
bottomRight.sizeDelta = cornerSize;
|
||||
|
||||
topLeft.anchoredPosition = new Vector2( halfCornerSize, -halfCornerSize );
|
||||
topLeft.sizeDelta = cornerSize;
|
||||
|
||||
topRight.anchoredPosition = new Vector2( -halfCornerSize, -halfCornerSize );
|
||||
topRight.sizeDelta = cornerSize;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3f6e5203b9596d34c9c93b34dc5c2444
|
||||
timeCreated: 1523373445
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,56 @@
|
||||
using UnityEngine;
|
||||
|
||||
namespace ImageCropperNamespace
|
||||
{
|
||||
public class SelectionGraphicsSynchronizer : MonoBehaviour
|
||||
{
|
||||
[SerializeField]
|
||||
private ImageCropper manager;
|
||||
|
||||
[SerializeField]
|
||||
private RectTransform selectionBottomLeft;
|
||||
|
||||
[SerializeField]
|
||||
private RectTransform selectionTopRight;
|
||||
|
||||
private RectTransform viewport;
|
||||
private RectTransform selectionGraphics;
|
||||
|
||||
private Vector2 bottomLeftPrevPosition, topRightPrevPosition;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
viewport = manager.Viewport;
|
||||
selectionGraphics = manager.SelectionGraphics;
|
||||
}
|
||||
|
||||
private void Start()
|
||||
{
|
||||
bottomLeftPrevPosition = selectionBottomLeft.position;
|
||||
topRightPrevPosition = selectionTopRight.position;
|
||||
|
||||
Synchronize( selectionBottomLeft.position, selectionTopRight.position );
|
||||
}
|
||||
|
||||
public void Synchronize()
|
||||
{
|
||||
Vector2 bottomLeftPosition = selectionBottomLeft.position;
|
||||
Vector2 topRightPosition = selectionTopRight.position;
|
||||
|
||||
if( bottomLeftPosition != bottomLeftPrevPosition || topRightPosition != topRightPrevPosition )
|
||||
Synchronize( bottomLeftPosition, topRightPosition );
|
||||
}
|
||||
|
||||
private void Synchronize( Vector2 bottomLeft, Vector2 topRight )
|
||||
{
|
||||
Vector2 position = viewport.InverseTransformPoint( bottomLeft );
|
||||
Vector2 size = (Vector2) viewport.InverseTransformPoint( topRight ) - position;
|
||||
|
||||
selectionGraphics.anchoredPosition = position;
|
||||
selectionGraphics.sizeDelta = size;
|
||||
|
||||
bottomLeftPrevPosition = bottomLeft;
|
||||
topRightPrevPosition = topRight;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e2fed2a2c78b61c4e86034296678669c
|
||||
timeCreated: 1523270788
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,116 @@
|
||||
using UnityEngine;
|
||||
using UnityEngine.EventSystems;
|
||||
using Direction = ImageCropper.Direction;
|
||||
|
||||
namespace ImageCropperNamespace
|
||||
{
|
||||
public class SelectionMovementHandler : MonoBehaviour, IBeginDragHandler, IDragHandler, IEndDragHandler, ISelectionHandler
|
||||
{
|
||||
private const float SCROLL_DISTANCE = 5f;
|
||||
|
||||
[SerializeField]
|
||||
private ImageCropper manager;
|
||||
|
||||
private RectTransform selection;
|
||||
|
||||
private Vector2 initialPosition;
|
||||
private Vector2 initialTouchPosition;
|
||||
|
||||
private int draggingPointer;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
selection = manager.Selection;
|
||||
}
|
||||
|
||||
private void OnDisable()
|
||||
{
|
||||
manager.StopModifySelectionWith( this );
|
||||
}
|
||||
|
||||
public void OnBeginDrag( PointerEventData eventData )
|
||||
{
|
||||
if( !manager.CanModifySelectionWith( this ) )
|
||||
{
|
||||
eventData.pointerDrag = null;
|
||||
return;
|
||||
}
|
||||
|
||||
draggingPointer = eventData.pointerId;
|
||||
|
||||
initialPosition = selection.anchoredPosition;
|
||||
initialTouchPosition = manager.GetTouchPosition( eventData.pressPosition, eventData.pressEventCamera );
|
||||
}
|
||||
|
||||
public void OnDrag( PointerEventData eventData )
|
||||
{
|
||||
if( eventData.pointerId != draggingPointer )
|
||||
{
|
||||
eventData.pointerDrag = null;
|
||||
return;
|
||||
}
|
||||
|
||||
manager.UpdateSelection( initialPosition + manager.GetTouchPosition( eventData.position, eventData.pressEventCamera ) - initialTouchPosition );
|
||||
}
|
||||
|
||||
public void OnEndDrag( PointerEventData eventData )
|
||||
{
|
||||
if( eventData.pointerId == draggingPointer )
|
||||
manager.StopModifySelectionWith( this );
|
||||
}
|
||||
|
||||
public void OnUpdate()
|
||||
{
|
||||
bool shouldUpdateViewport = false;
|
||||
float scale = manager.ImageHolder.localScale.z;
|
||||
|
||||
Vector2 imagePosition = manager.ImageHolder.anchoredPosition;
|
||||
Vector2 selectionBottomLeft = imagePosition + selection.anchoredPosition * scale;
|
||||
Vector2 selectionTopRight = selectionBottomLeft + selection.sizeDelta * scale;
|
||||
Vector2 selectionSize = selectionTopRight - selectionBottomLeft;
|
||||
|
||||
Vector2 viewportSize = manager.ViewportSize;
|
||||
|
||||
if( selectionBottomLeft.x <= SCROLL_DISTANCE )
|
||||
{
|
||||
imagePosition = manager.ScrollImage( imagePosition, Direction.Left );
|
||||
selectionBottomLeft.x = 0f;
|
||||
|
||||
shouldUpdateViewport = true;
|
||||
}
|
||||
else if( selectionTopRight.x >= viewportSize.x - SCROLL_DISTANCE )
|
||||
{
|
||||
imagePosition = manager.ScrollImage( imagePosition, Direction.Right );
|
||||
selectionBottomLeft.x = viewportSize.x - selectionSize.x;
|
||||
|
||||
shouldUpdateViewport = true;
|
||||
}
|
||||
|
||||
if( selectionBottomLeft.y <= SCROLL_DISTANCE )
|
||||
{
|
||||
imagePosition = manager.ScrollImage( imagePosition, Direction.Bottom );
|
||||
selectionBottomLeft.y = 0f;
|
||||
|
||||
shouldUpdateViewport = true;
|
||||
}
|
||||
else if( selectionTopRight.y >= viewportSize.y - SCROLL_DISTANCE )
|
||||
{
|
||||
imagePosition = manager.ScrollImage( imagePosition, Direction.Top );
|
||||
selectionBottomLeft.y = viewportSize.y - selectionSize.y;
|
||||
|
||||
shouldUpdateViewport = true;
|
||||
}
|
||||
|
||||
if( shouldUpdateViewport )
|
||||
{
|
||||
manager.ImageHolder.anchoredPosition = imagePosition;
|
||||
manager.UpdateSelection( ( selectionBottomLeft - imagePosition ) / scale );
|
||||
}
|
||||
}
|
||||
|
||||
public void Stop()
|
||||
{
|
||||
draggingPointer--;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 33348899dae70cc46b4343a8838195cf
|
||||
timeCreated: 1523023329
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,223 @@
|
||||
using UnityEngine;
|
||||
using UnityEngine.EventSystems;
|
||||
using Direction = ImageCropper.Direction;
|
||||
|
||||
namespace ImageCropperNamespace
|
||||
{
|
||||
public class SelectionResizeHandler : MonoBehaviour, IBeginDragHandler, IDragHandler, IEndDragHandler, ISelectionHandler
|
||||
{
|
||||
private const float SCROLL_DISTANCE = 70f;
|
||||
private const float SELECTION_MAX_DISTANCE_FOR_SCROLL = 50f;
|
||||
|
||||
[SerializeField]
|
||||
private ImageCropper manager;
|
||||
|
||||
[SerializeField]
|
||||
private Direction direction;
|
||||
|
||||
[SerializeField]
|
||||
private Direction secondaryDirection = Direction.None;
|
||||
|
||||
private Direction directions;
|
||||
private Direction pivot;
|
||||
|
||||
private RectTransform selection;
|
||||
|
||||
private Vector2 initialPosition;
|
||||
private Vector2 initialTouchPosition;
|
||||
|
||||
private Vector2 initialSelectionPosition;
|
||||
private Vector2 initialSelectionSize;
|
||||
|
||||
private int draggingPointer;
|
||||
private PointerEventData draggingPointerEventData;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
selection = manager.Selection;
|
||||
|
||||
if( direction == Direction.None )
|
||||
{
|
||||
Direction temp = direction;
|
||||
direction = secondaryDirection;
|
||||
secondaryDirection = temp;
|
||||
}
|
||||
|
||||
directions = direction | secondaryDirection;
|
||||
|
||||
pivot = Direction.None;
|
||||
if( ( directions & Direction.Left ) == Direction.Left )
|
||||
pivot |= Direction.Right;
|
||||
else if( ( directions & Direction.Right ) == Direction.Right )
|
||||
pivot |= Direction.Left;
|
||||
|
||||
if( ( directions & Direction.Top ) == Direction.Top )
|
||||
pivot |= Direction.Bottom;
|
||||
else if( ( directions & Direction.Bottom ) == Direction.Bottom )
|
||||
pivot |= Direction.Top;
|
||||
}
|
||||
|
||||
private void OnDisable()
|
||||
{
|
||||
manager.StopModifySelectionWith( this );
|
||||
}
|
||||
|
||||
public void OnBeginDrag( PointerEventData eventData )
|
||||
{
|
||||
if( !manager.CanModifySelectionWith( this ) )
|
||||
{
|
||||
eventData.pointerDrag = null;
|
||||
return;
|
||||
}
|
||||
|
||||
draggingPointer = eventData.pointerId;
|
||||
draggingPointerEventData = eventData;
|
||||
|
||||
if( ( directions & Direction.Left ) == Direction.Left )
|
||||
initialPosition.x = selection.anchoredPosition.x;
|
||||
else if( ( directions & Direction.Right ) == Direction.Right )
|
||||
initialPosition.x = selection.anchoredPosition.x + selection.sizeDelta.x;
|
||||
|
||||
if( ( directions & Direction.Top ) == Direction.Top )
|
||||
initialPosition.y = selection.anchoredPosition.y + selection.sizeDelta.y;
|
||||
else if( ( directions & Direction.Bottom ) == Direction.Bottom )
|
||||
initialPosition.y = selection.anchoredPosition.y;
|
||||
|
||||
initialTouchPosition = manager.GetTouchPosition( eventData.pressPosition, eventData.pressEventCamera );
|
||||
|
||||
initialSelectionPosition = selection.anchoredPosition;
|
||||
initialSelectionSize = selection.sizeDelta;
|
||||
}
|
||||
|
||||
public void OnDrag( PointerEventData eventData )
|
||||
{
|
||||
if( eventData.pointerId != draggingPointer )
|
||||
{
|
||||
eventData.pointerDrag = null;
|
||||
return;
|
||||
}
|
||||
|
||||
draggingPointerEventData = eventData;
|
||||
|
||||
Vector2 newPosition = initialPosition + manager.GetTouchPosition( eventData.position, eventData.pressEventCamera ) - initialTouchPosition;
|
||||
Vector2 selectionPosition = initialSelectionPosition;
|
||||
Vector2 selectionSize = initialSelectionSize;
|
||||
|
||||
if( ( directions & Direction.Left ) == Direction.Left )
|
||||
{
|
||||
if( newPosition.x < manager.SelectionSnapToEdgeThreshold )
|
||||
newPosition.x = 0f;
|
||||
|
||||
selectionSize.x -= newPosition.x - selectionPosition.x;
|
||||
selectionPosition.x = newPosition.x;
|
||||
}
|
||||
else if( ( directions & Direction.Right ) == Direction.Right )
|
||||
{
|
||||
if( newPosition.x > manager.OrientedImageSize.x - manager.SelectionSnapToEdgeThreshold )
|
||||
newPosition.x = manager.OrientedImageSize.x;
|
||||
|
||||
selectionSize.x = newPosition.x - selectionPosition.x;
|
||||
}
|
||||
|
||||
if( ( directions & Direction.Top ) == Direction.Top )
|
||||
{
|
||||
if( newPosition.y > manager.OrientedImageSize.y - manager.SelectionSnapToEdgeThreshold )
|
||||
newPosition.y = manager.OrientedImageSize.y;
|
||||
|
||||
selectionSize.y = newPosition.y - selectionPosition.y;
|
||||
}
|
||||
else if( ( directions & Direction.Bottom ) == Direction.Bottom )
|
||||
{
|
||||
if( newPosition.y < manager.SelectionSnapToEdgeThreshold )
|
||||
newPosition.y = 0f;
|
||||
|
||||
selectionSize.y -= newPosition.y - selectionPosition.y;
|
||||
selectionPosition.y = newPosition.y;
|
||||
}
|
||||
|
||||
bool shouldExpand = false;
|
||||
if( secondaryDirection == Direction.None )
|
||||
{
|
||||
if( direction == Direction.Left || direction == Direction.Right )
|
||||
{
|
||||
if( selectionSize.x > initialSelectionSize.x )
|
||||
shouldExpand = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
if( selectionSize.y > initialSelectionSize.y )
|
||||
shouldExpand = true;
|
||||
}
|
||||
}
|
||||
|
||||
manager.UpdateSelection( selectionPosition, selectionSize, pivot, !shouldExpand );
|
||||
}
|
||||
|
||||
public void OnEndDrag( PointerEventData eventData )
|
||||
{
|
||||
if( eventData.pointerId == draggingPointer )
|
||||
{
|
||||
draggingPointerEventData = null;
|
||||
manager.StopModifySelectionWith( this );
|
||||
}
|
||||
}
|
||||
|
||||
public void OnUpdate()
|
||||
{
|
||||
if( draggingPointerEventData == null )
|
||||
return;
|
||||
|
||||
Vector2 pointerLocalPos;
|
||||
RectTransformUtility.ScreenPointToLocalPointInRectangle( manager.Viewport, draggingPointerEventData.position, draggingPointerEventData.pressEventCamera, out pointerLocalPos );
|
||||
|
||||
bool shouldUpdateViewport = false;
|
||||
float scale = manager.ImageHolder.localScale.z;
|
||||
|
||||
Vector2 imagePosition = manager.ImageHolder.anchoredPosition;
|
||||
Vector2 selectionBottomLeft = imagePosition + selection.anchoredPosition * scale;
|
||||
Vector2 selectionTopRight = selectionBottomLeft + selection.sizeDelta * scale;
|
||||
|
||||
Vector2 viewportSize = manager.ViewportSize;
|
||||
|
||||
if( ( directions & Direction.Left ) == Direction.Left || ( directions & Direction.Right ) == Direction.Right )
|
||||
{
|
||||
if( pointerLocalPos.x <= SCROLL_DISTANCE && selectionBottomLeft.x <= SELECTION_MAX_DISTANCE_FOR_SCROLL )
|
||||
{
|
||||
imagePosition = manager.ScrollImage( imagePosition, Direction.Left );
|
||||
shouldUpdateViewport = true;
|
||||
}
|
||||
else if( pointerLocalPos.x >= viewportSize.x - SCROLL_DISTANCE && selectionTopRight.x >= viewportSize.x - SELECTION_MAX_DISTANCE_FOR_SCROLL )
|
||||
{
|
||||
imagePosition = manager.ScrollImage( imagePosition, Direction.Right );
|
||||
shouldUpdateViewport = true;
|
||||
}
|
||||
}
|
||||
|
||||
if( ( directions & Direction.Bottom ) == Direction.Bottom || ( directions & Direction.Top ) == Direction.Top )
|
||||
{
|
||||
if( pointerLocalPos.y <= SCROLL_DISTANCE && selectionBottomLeft.y <= SELECTION_MAX_DISTANCE_FOR_SCROLL )
|
||||
{
|
||||
imagePosition = manager.ScrollImage( imagePosition, Direction.Bottom );
|
||||
shouldUpdateViewport = true;
|
||||
}
|
||||
else if( pointerLocalPos.y >= viewportSize.y - SCROLL_DISTANCE && selectionTopRight.y >= viewportSize.y - SELECTION_MAX_DISTANCE_FOR_SCROLL )
|
||||
{
|
||||
imagePosition = manager.ScrollImage( imagePosition, Direction.Top );
|
||||
shouldUpdateViewport = true;
|
||||
}
|
||||
}
|
||||
|
||||
if( shouldUpdateViewport )
|
||||
{
|
||||
manager.ImageHolder.anchoredPosition = imagePosition;
|
||||
OnDrag( draggingPointerEventData );
|
||||
}
|
||||
}
|
||||
|
||||
public void Stop()
|
||||
{
|
||||
draggingPointer--;
|
||||
draggingPointerEventData = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 493caa6d6a37d2843a59fcc5ac787ea8
|
||||
timeCreated: 1523026423
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,27 @@
|
||||
using UnityEngine;
|
||||
|
||||
namespace ImageCropperNamespace
|
||||
{
|
||||
public class SizeChangeListener : MonoBehaviour
|
||||
{
|
||||
private RectTransform rectTransform;
|
||||
|
||||
public System.Action<Vector2> onSizeChanged;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
rectTransform = (RectTransform) transform;
|
||||
}
|
||||
|
||||
private void Start()
|
||||
{
|
||||
OnRectTransformDimensionsChange();
|
||||
}
|
||||
|
||||
private void OnRectTransformDimensionsChange()
|
||||
{
|
||||
if( onSizeChanged != null && rectTransform != null )
|
||||
onSizeChanged( rectTransform.rect.size );
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9ffb5840d0058c145bcff9f500ab3eae
|
||||
timeCreated: 1523045737
|
||||
licenseType: Store
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: de22cfbccca16af4d878db0e649911b7
|
||||
folderAsset: yes
|
||||
timeCreated: 1523020570
|
||||
licenseType: Store
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,135 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7a0e0abeb9a1e1842b96697e569c4a10
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 12
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 16
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
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: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 1
|
||||
cookieLightType: 1
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: Android
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: WebGL
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag: ImageCropper
|
||||
pSDRemoveMatte: 1
|
||||
pSDShowRemoveMatteOption: 1
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,135 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6fe2779cd5f5f9f4aa47fbb2b2df7c77
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 12
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 16
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
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: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 1
|
||||
cookieLightType: 1
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: Android
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: WebGL
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag: ImageCropper
|
||||
pSDRemoveMatte: 1
|
||||
pSDShowRemoveMatteOption: 1
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,135 @@
|
||||
fileFormatVersion: 2
|
||||
guid: bea2c3bc476233040b1fee52ad90f372
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 12
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 16
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
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: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 1
|
||||
cookieLightType: 1
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: Android
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: WebGL
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag: ImageCropper
|
||||
pSDRemoveMatte: 1
|
||||
pSDShowRemoveMatteOption: 1
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,135 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e2f2c6559fc415b49a19aaa8bf684dc0
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 12
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 16
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 3, y: 3, z: 3, w: 3}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 1
|
||||
cookieLightType: 1
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: Android
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: WebGL
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag: ImageCropper
|
||||
pSDRemoveMatte: 1
|
||||
pSDShowRemoveMatteOption: 1
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,135 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 76197f564ff144b4abdc47609e110582
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 12
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 16
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 5, y: 5, z: 5, w: 5}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 1
|
||||
cookieLightType: 1
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: Android
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: WebGL
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag: ImageCropper
|
||||
pSDRemoveMatte: 1
|
||||
pSDShowRemoveMatteOption: 1
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,135 @@
|
||||
fileFormatVersion: 2
|
||||
guid: bb7ac2c4a1893b24f84696c7e052c463
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 12
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 16
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 7, y: 8, z: 7, w: 8}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 1
|
||||
cookieLightType: 1
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: Android
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: WebGL
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag: ImageCropper
|
||||
pSDRemoveMatte: 1
|
||||
pSDShowRemoveMatteOption: 1
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,135 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0be23f5c35fdf564ab35c16f6ad96f43
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 12
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 16
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 6, y: 6, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 1
|
||||
cookieLightType: 1
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: Android
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: WebGL
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag: ImageCropper
|
||||
pSDRemoveMatte: 1
|
||||
pSDShowRemoveMatteOption: 1
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,135 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f0f3996b413bd4c44b9e5d18e99bc7e9
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 12
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMasterTextureLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 16
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
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: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 1
|
||||
cookieLightType: 1
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: Android
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
- serializedVersion: 3
|
||||
buildTarget: WebGL
|
||||
maxTextureSize: 256
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 1
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
spritePackingTag: ImageCropper
|
||||
pSDRemoveMatte: 1
|
||||
pSDShowRemoveMatteOption: 1
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 52bcc804eca1c4e4296b25b08d1f8be7
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 63e28a2c158698f43ad92a4fbaf3b70f
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
After Width: | Height: | Size: 7.0 KiB |
@@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0c83eaacc9c715349b9599360f518595
|
||||
guid: 854168bf2c833fd4187fe059031d64e8
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
|
After Width: | Height: | Size: 5.5 KiB |
@@ -0,0 +1,166 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 33191a117db34de43ab8bceb193529ad
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 13
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
flipGreenChannel: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMipmapLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
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: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
swizzle: 50462976
|
||||
cookieLightType: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: iPhone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: WebGL
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Windows Store Apps
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c1b9427a253f5ef409cc20ab1a25991c
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
After Width: | Height: | Size: 18 KiB |
@@ -0,0 +1,166 @@
|
||||
fileFormatVersion: 2
|
||||
guid: eead7d5edd83d234b93dc6eb32129389
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 13
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
flipGreenChannel: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMipmapLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
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: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
swizzle: 50462976
|
||||
cookieLightType: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: iPhone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: WebGL
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Windows Store Apps
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
After Width: | Height: | Size: 784 B |
@@ -0,0 +1,166 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c815ca06ab94cd84da876927735c0686
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 13
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
flipGreenChannel: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMipmapLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
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: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
swizzle: 50462976
|
||||
cookieLightType: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: iPhone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: WebGL
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Windows Store Apps
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 13d6987baa90d134c9205966eb3c8b2c
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
After Width: | Height: | Size: 25 KiB |
@@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 41a2b824001a4fb4d816667b582e82dc
|
||||
guid: 721a36156a2e7644bab0e4bab2f0f44d
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
@@ -39,7 +39,7 @@ TextureImporter:
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
|
After Width: | Height: | Size: 2.2 KiB |
@@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3c86496a1196d0a438b6db0d155ff272
|
||||
guid: fba7079c091c4134fa344c9540a55208
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
@@ -39,7 +39,7 @@ TextureImporter:
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
|
After Width: | Height: | Size: 3.7 KiB |
@@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4dfa3836b30b1e04f89046514d63e3b4
|
||||
guid: a1db7f3a5eaec90489e9ec411b5e6004
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
@@ -39,7 +39,7 @@ TextureImporter:
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
|
After Width: | Height: | Size: 9.5 KiB |
@@ -0,0 +1,166 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 280051415c3de0d438e22d6a01367071
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 13
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
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
|
||||
flipGreenChannel: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMipmapLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
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: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
swizzle: 50462976
|
||||
cookieLightType: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: iPhone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: WebGL
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 3
|
||||
buildTarget: VisionOS
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
nameFileIdTable: {}
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||