Опитвам се да подобря производителността на моята игра на iphone. В повечето случаи правя зареждането на цялата си текстура точно преди изобразяване на текущия кадър. Това прави голям срив в честотата на кадрите. Някой опитвал ли е да зареди текстура във вторична нишка или нещо подобно?
Някой постигнал ли е успех в зареждането на текстури с помощта на вторична нишка на iphone?
comment
Изглежда въпросът ми е дубликат на stackoverflow.com/questions/1253145/
- person shakthi   schedule 15.06.2010
Отговори (2)
Има ли някаква конкретна причина, поради която зареждате текстурите си преди всеки кадър, а не веднъж за цялата сцена?
person
caahab
schedule
15.06.2010
Не искам да казвам това преди всеки кадър. Вместо това търсене на натоварване; Ако необходимата текстура за изобразяване не е заредена, тогава ще я заредя.
- person shakthi; 15.06.2010
Ааа, добре. Така че вече можете да проверите кои текстури трябва да заредите. В зависимост от вашата сцена може да направите някои прогнози за това какво ще се изобрази в следващия(ите) кадър(и) и да заредите това преди това паралелно. В зависимост от вашата стратегия за зареждане можете да заредите текстурите в системната памет преди това и да ги изтеглите в opengl, ако е необходимо.
- person caahab; 15.06.2010
Моят опит показва, че трябва да заредите всички текстури, преди да започнете играта. IPhone е устройство с един процесор, така че зареждането на текстурите в отделна нишка няма да помогне много.
person
Jens Utbult
schedule
15.06.2010
Здравейте, опитвали ли сте EAGLSharegroup (вижте темата, която споменах)? Ще пробвам.
- person shakthi; 15.06.2010
Честно казано, не мисля, че ще имате късмет при зареждане на текстури, докато играта работи. Просто не са останали достатъчно ресурси и стартирането на зареждане на текстури в отделна нишка няма да промени този факт. Най-вероятно трябва да заредите всички текстури, преди да започнете играта. Ние използваме нишки и EAGLSharegroupb в нашата игра, но само за да не блокираме потребителския интерфейс, докато зареждаме текстури преди играта да започне.
- person Jens Utbult; 16.06.2010