Как вызвать функцию в начале или каждый фрейм без использования Update & Start
Весь вопрос в заголовке. Как вызвать функцию в начале или каждый фрейм без использования Update & Start в Unity3d (если это важно).
Ответы (2 шт):
Автор решения: Valera Kvip
→ Ссылка
Смотри порядок вызова событий
https://docs.unity3d.com/Manual/ExecutionOrder.html
Тебе подходит LateUpdate
LateUpdate is called once per frame, after Update has finished.
Или "сопрограммы"(Coroutines) https://docs.unity3d.com/ScriptReference/WaitForEndOfFrame.html
public IEnumerator Foo()
{
yield return new WaitForEndOfFrame();
//Do something
}
Автор решения: AdiletB
→ Ссылка
Если хочешь вызвать метод в начале, используй Awake() или Main().
Если тебе не желательно использовать Update, то можно использовать корутины. Ты можешь создать корутин с бесконечным циклом(лучше с условием выхода), который вызовешь в Start().