Загрузка текстуры с использованием строки, чтобы заменить проблему
Согласно моему журналу отладки проблема заключается в том, что мои целые числа считаются без проблем, однако преобразование int в строку продолжает применяться к исходному значению, а не к обновленному счетчику во время выполнения. (здесь есть несколько неиспользуемых приватных объектов для тестирования) и все значения кадра хороши. снимок экрана моего журнала отладки: http://c2n.me/39GlfuI - как вы можете видеть, счетчик увеличивается, а "frame" - нет.
Надеюсь, это говорит само за себя
using UnityEngine;
using System.Collections;
public class imagecycle : MonoBehaviour
{
public string Startingframe;
private string Nextframe;
private int framecomp = 0;
private int frameint;
private int framestep = 1;
private int maxframe = 119;
private string framestring;
// Use this for initialization
void Start ()
{
Nextframe = ("frame_000");
frameint = 20; // currently adding one to this and resetting on update
}
// Update is called once per frame
void Update ()
{
frameint += framestep;
//Converts framestring to int of frameint -updating frame
framestring = frameint.ToString();
Debug.Log (frameint);
// replaces loaded texture recourse with frame string:
Nextframe = Nextframe.Replace ("000", framestring);
// Loads texture into Currentframe:
Texture Currentframe = Resources.Load (Nextframe) as Texture;
// Applies texture:
renderer.material.mainTexture = Currentframe;
Debug.Log (Currentframe);
if (frameint > 119)
{
frameint = 1;
}
}
void LateUpdate()
{
}
}
2 ответа
Это потому, что в первом ваш следующий кадр "frame_000"
поэтому метод замены заменит 000
с 21
как вы можете видеть, но после этого ваша переменная nextFrame "frame_21"
так нет "000"
в вашей строке, так что ваш метод замены не будет ничего делать так nextFrame
останется в frame_21
Nextframe = Nextframe.Replace ("000", framestring);
ничего не будет делать после первой замены, потому что его строка не содержит 000
Ах, большое спасибо, поэтому мое понимание функции замены было неверным, я предполагал, что она будет сбрасываться до frame_000 при каждом обновлении. Большое спасибо, ребята. И да, я постараюсь сделать это более эффективным. Кроме того, извините, я не могу голосовать еще; недостаточно реп.