【发布时间】:2018-09-17 04:38:31
【问题描述】:
我正在尝试通过利用流媒体资源在我的 Unity 游戏中进行一定程度的修改。我可以导入单个精灵没问题,但我不确定如何将导入的流媒体资产精灵设置为 Sprite Mode: Multiple 并将该精灵切成其子部分。
这是我现在用于导入的测试类:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using PixelsoftGames.Tools2D;
using System.IO;
public class Sandbox : MonoBehaviour
{
SpriteRenderer sRenderer = null;
private void Awake()
{
sRenderer = GetComponent<SpriteRenderer>();
}
private void Start()
{
DirectoryInfo directoryInfo = new DirectoryInfo(Application.streamingAssetsPath);
FileInfo[] allFiles = directoryInfo.GetFiles("*.*");
foreach(FileInfo file in allFiles)
if(file.Name.Contains("Laser"))
StartCoroutine("LoadSprite", file);
}
IEnumerator LoadSprite(FileInfo file)
{
if (file.Name.Contains("meta"))
yield break;
else
{
string fileWithoutExtension = Path.GetFileNameWithoutExtension(file.ToString());
string finalPath;
WWW localFile;
Texture2D texture;
finalPath = "file://" + file.ToString();
localFile = new WWW(finalPath);
Debug.Log(finalPath);
yield return localFile;
texture = localFile.texture;
texture.filterMode = FilterMode.Point;
Sprite sprite = Sprite.Create(texture as Texture2D, new Rect(0, 0, texture.width, texture.height), new Vector2(0.5f, 0.5f), 32f);
sRenderer.sprite = sprite;
}
}
}
【问题讨论】: