/// <summary> /// 기본 텍스쳐(_MainTex) 변경 요청. 기본값인 경우 요청을 초기화한다. /// </summary> /// <param name="texture"></param> public void RequestImage(Texture2D texture) { if (texture == _texture) { //원래대로 돌아왔다. _isRequested_Texture = false; } else { _isRequested_Texture = true; } _material.SetTexture(_shaderID_MainTex, texture); apOptMesh curMesh = null; for (int i = 0; i < _linkedMeshes.Count; i++) { curMesh = _linkedMeshes[i]; if (curMesh == null) { continue; } //각 메시의 Instanced Material도 Batch Material과 동일한 값을 가지도록 한다. curMesh.SyncMaterialPropertyByBatch_Texture(texture); } }
/// <summary> /// 기본 텍스쳐(_MainTex) 변경 요청. 기본값인 경우 요청을 초기화한다. /// </summary> /// <param name="texture"></param> public void RequestImage(Texture2D texture) { //원래의 Texture였는지 확인한다. //Material Info를 사용하는지에 따라서 다른 조건문에서 처리 Texture2D defaultTexture = null; if (IsUseMaterialInfo) { defaultTexture = MaterialInfo._mainTex; } else { defaultTexture = _texture; } if (texture == defaultTexture) { //원래대로 돌아왔다. _isRequested_Texture = false; } else { _isRequested_Texture = true; } _material.SetTexture(_shaderID_MainTex, texture); apOptMesh curMesh = null; for (int i = 0; i < _linkedMeshes.Count; i++) { curMesh = _linkedMeshes[i]; if (curMesh == null) { continue; } //각 메시의 Instanced Material도 Batch Material과 동일한 값을 가지도록 한다. curMesh.SyncMaterialPropertyByBatch_Texture(texture); } }