Exemple #1
0
    void Start()
    {
        m_dataAccessor    = Application.Instance.CreatureDataAccessor;
        m_beatInfoManager = Application.Instance.BeatInfoManager;

        videoPlayers = new VideoPlayer[m_dataAccessor.Clips.Length];
        RT           = new RenderTexture[m_dataAccessor.Clips.Length];

        for (int i = 0; i < m_dataAccessor.Clips.Length; i++)
        {
            videoPlayers[i] = gameObject.AddComponent <VideoPlayer>();
            RT[i]           = new RenderTexture(VIDEO_RT_RES, VIDEO_RT_RES, 0, RenderTextureFormat.ARGB32);

            videoPlayers[i].isLooping       = true;
            videoPlayers[i].audioOutputMode = VideoAudioOutputMode.None;
            videoPlayers[i].renderMode      = VideoRenderMode.RenderTexture;
            videoPlayers[i].clip            = m_dataAccessor.Clips[i];
            videoPlayers[i].targetTexture   = RT[i];
        }

        creatures = new Creature[MaxCreatures];
        for (int i = 0; i < MaxCreatures; i++)
        {
            GameObject ob = Instantiate(Resources.Load("Prefabs/Creature") as GameObject);

            ob.name = $"Creature{i}";
            ob.transform.SetParent(Application.Instance.WorldParent);
            creatures[i] = ob.GetComponent <Creature>();
            creatures[i].Init(this);
        }
    }
Exemple #2
0
    void Awake()
    {
        if (Instance == null)
        {
            Instance = this;
        }

        Cursor.visible = false;

        MainCamera           = Camera.main;
        FarClipPlaneDistance = MainCamera.farClipPlane;
        UnityEngine.Application.targetFrameRate = 60;
        WorldParent = GameObject.FindGameObjectWithTag("WorldParent").transform;

        KinectFrameManager   = FindObjectOfType <KinectFrameManager>();
        StaticManager        = FindObjectOfType <StaticManager>();
        CreatureManager      = FindObjectOfType <CreatureManager>();
        BoidManager          = FindObjectOfType <BoidManager>();
        BeatInfoManager      = FindObjectOfType <BeatInfoManager>();
        KinectDepthManager   = FindObjectOfType <KinectDepthManager>();
        TitleManager         = FindObjectOfType <TitleManager>();
        VideoPlaneManager    = FindObjectOfType <VideoPlaneManager>();
        Scheduler            = FindObjectOfType <Scheduler>();
        CreatureDataAccessor = FindObjectOfType <CreatureDataAccessor>();
    }
Exemple #3
0
    void Start()
    {
        m_dataAccessor    = Application.Instance.CreatureDataAccessor;
        m_beatInfoManager = Application.Instance.BeatInfoManager;

        creatureTextures = Resources.LoadAll("Textures/Particles", typeof(Texture)).Cast <Texture>().ToArray();
        videoPlayer      = new VideoPlayer();

        videoPlayer = gameObject.AddComponent <VideoPlayer>();
        RT          = new RenderTexture(VIDEO_RT_RES, VIDEO_RT_RES, 0, RenderTextureFormat.ARGB32);

        videoPlayer.isLooping       = true;
        videoPlayer.audioOutputMode = VideoAudioOutputMode.None;
        videoPlayer.renderMode      = VideoRenderMode.RenderTexture;
        videoPlayer.clip            = m_dataAccessor.GetRandomClip();
        videoPlayer.targetTexture   = RT;

        GameObject ob = Instantiate(Resources.Load("Prefabs/StaticCreature") as GameObject);

        ob.name = "StaticCreature";
        ob.transform.SetParent(Application.Instance.WorldParent);
        creature = ob.GetComponent <StaticCreature>();

        creature.Renderer.material.mainTexture = videoPlayer.targetTexture;
        creature.transform.position            = new Vector3(0, 0, Layer);
        creature.SetScale(Scale);
        creature.AudioSensitive = true;
        creature.Init(this);
    }
Exemple #4
0
    void Start()
    {
        m_depthManager      = Application.Instance.KinectDepthManager;
        m_beatInfoManager   = Application.Instance.BeatInfoManager;
        m_videoPlaneManager = Application.Instance.VideoPlaneManager;
        m_dataAccessor      = Application.Instance.CreatureDataAccessor;

        settings = new BoidSettings();
        settings.obstacleMask = 1 << LayerMask.NameToLayer("Bounds") | 1 << LayerMask.NameToLayer("ColliderMesh");
        settings.layer        = Layer;

        videoPlayer                 = gameObject.AddComponent <VideoPlayer>();
        videoPlayer.isLooping       = true;
        videoPlayer.audioOutputMode = VideoAudioOutputMode.None;
        videoPlayer.renderMode      = VideoRenderMode.RenderTexture;
        videoPlayer.clip            = m_dataAccessor.GetRandomClip();

        RT = new RenderTexture(VIDEO_RT_RES, VIDEO_RT_RES, 0, RenderTextureFormat.ARGB32);
        videoPlayer.targetTexture = RT;
        videoPlayer.Play();

        boids = new Boid[NumBoids];
        for (int i = 0; i < NumBoids; i++)
        {
            GameObject ob = Instantiate(Resources.Load("Prefabs/Boid") as GameObject);
            ob.name = $"Boid{i}";
            ob.transform.SetParent(Application.Instance.WorldParent);
            boids[i] = ob.GetComponent <Boid>();
            boids[i].Init(settings);
        }
        computeShader = Resources.Load("ComputeShaders/Boids") as ComputeShader;
    }