void Update() { // 인스턴스를 만드는 작업은 메인 쓰레드에서 이루어져야한다. 소켓 쓰레드에서 생성시 유니티가 생성을 막는다. //메시지큐 리스트에 있는 애들을 인스턴시에이트 해준다. foreach (ChatDataObject obj in chatList) { GameObject chatMsg = Instantiate(msgPrefab, Vector3.zero, Quaternion.identity) as GameObject; ChatMsg chatScript = chatMsg.GetComponent <ChatMsg>(); if (chatScript != null) { chatScript.SetData(obj.sender, obj.msg); } chatMsg.transform.SetParent(chatContent); } chatList.Clear(); }
void Update() { // 인스턴스를 만드는 작업은 메인 쓰레드에서 이루어져야한다. 소켓 쓰레드에서 생성시 유니티가 생성을 막는다. //메시지큐 리스트에 있는 애들을 인스턴시에이트 해준다. foreach (ChatDataObject obj in chatList) { AudioSource a = PoolManager.instance.GetOrCreate(); a.clip = clip; a.Play(); StartCoroutine(DisableAudio(a)); GameObject chatMsg = Instantiate(msgPrefab, Vector3.zero, Quaternion.identity) as GameObject; ChatMsg chatScript = chatMsg.GetComponent <ChatMsg>(); if (chatScript != null) { chatScript.SetData(obj.sender, obj.msg); } chatMsg.transform.SetParent(chatContent); } chatList.Clear(); }