Проблема Unity с созданием спрайтов - PullRequest
0 голосов
/ 27 октября 2018

Я не совсем уверен, что здесь делать, у меня есть строка кода

Sprite newSprite = Sprite.Create(spriteTexture, 
    new Rect(0, 0, spriteTexture.width, spriteTexture.height), 
    new Vector2(0, 0), 
    pixelsPerUnit, 
    0, 
    spriteType);

И для этой строки кода я получаю сообщение об ошибке

NullReferenceException: ссылка на объект не установлена ​​для экземпляра объекта

Я действительно не знаю, что я здесь делаю не так

Sprite NewSprite = new Sprite();

Не работает, потому что его конструктор, я уверен, что я глупый, но я был бы очень признателен за некоторый вклад:)

РЕДАКТИРОВАТЬ: Извинения за пропуск моего кода:

public static class ImageToSprite
{

public static Texture2D LoadTexture(string filePath)
{
    Texture2D tex2D;
    byte[] fileData;

    if (File.Exists(filePath))
    {
        fileData = File.ReadAllBytes(filePath);
        tex2D = new Texture2D(2, 2);

        if(tex2D.LoadImage(fileData))
        {
            return tex2D;
        }
    }

    return null;
}

public static Sprite LoadNewSprite(string filePath, float pixelsPerUnit = 100.0f, SpriteMeshType spriteType = SpriteMeshType.Tight)
{
    Texture2D spriteTexture = LoadTexture(filePath);
    Sprite newSprite = Sprite.Create(spriteTexture, new Rect(0, 0, spriteTexture.width, spriteTexture.height), new Vector2(0, 0), pixelsPerUnit, 0, spriteType);

    return newSprite;
}

public static Sprite ConvertTextureToSprite(Texture2D texture, float PixelsPerUnit = 100.0f, SpriteMeshType spriteType = SpriteMeshType.Tight)
{
    // Converts a Texture2D to a sprite, assign this texture to a new sprite and return its reference

    Sprite NewSprite = Sprite.Create(texture, new Rect(0, 0, texture.width, texture.height), new Vector2(0, 0), PixelsPerUnit, 0, spriteType);

    return NewSprite;
}
}

А вот ссылка, откуда я получил этот код: https://forum.unity.com/threads/generating-sprites-dynamically-from-png-or-jpeg-files-in-c.343735/

1 Ответ

0 голосов
/ 27 октября 2018

Ах, я извиняюсь за свою глупость, но проблема была решена очень легко, я возвращал ноль (из функции loadtexture) и у меня не было проблем с безопасностью вообще, я извиняюсь за потерю времени.

...