Unity3d本身自带的机制MonoBehavior的Update(), LateUpdate()可以实现代码调用更新,一般情况下可以直接使用,但是如果你想自己控制调用的频率了 该如何是好 这里我提供一个之前项目里 我自己写的代码 可以自己定制 更新的频率 使用起来也是非常的方便 喜欢的朋友自己拿走吧
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
/// <summary>
/// 优化Update的一个举措
/// </summary>
public class ApplicationUpdater
{
private static ApplicationUpdater instance = null;
public static ApplicationUpdater Instance { get { return instance; } }
public static void SCreate() { instance = new ApplicationUpdater(); }
private int mostImportantListUpdateCounter = 0;
private int importantListUpdateCounter = 0;
private int commonListUpdateCounter = 0;
private long lastMostImportantListUpdateTime = 0;
private long lastImportantListUpdateTime = 0;
private long lastCommonListUpdateTime = 0;
private int mostImportantListLateUpdateCounter = 0;
private int importantListLateUpdateCounter = 0;
private int commonListLateUpdateCounter = 0;
private long lastMostImportantListLateUpdateTime = 0;
private long lastImportantListLateUpdateTime = 0;
private long lastCommonListLateUpdateTime = 0;
private const int mostImportantListUpdateFrequency = 1; //最重要的1帧更新一次
private const int importantListUpdateFrequency = 2; //次重要的2帧更新一次
private const