public bool Link(apPortrait portrait, apCache <apOptTransform> cache) { _bone = null; //Cache를 통해서 일단 MeshGroup에 해당하는 optTransform을 찾자 apOptTransform meshGroup = null; if (cache.IsContain(_meshGroupID)) { meshGroup = cache.Get(_meshGroupID); } else { meshGroup = portrait.GetOptTransformAsMeshGroup(_meshGroupID); if (meshGroup == null) { Debug.LogError("VertRig Bake 실패 : MeshGroup을 찾을 수 없다. [" + _meshGroupID + "]"); return(false); } //캐시에 담고 cache.Add(_meshGroupID, meshGroup); } //본을 찾자 _bone = meshGroup.GetBone(_boneID); if (_bone == null) { Debug.LogError("VertRig Bake 실패 : Bone을 찾을 수 없다. [" + _boneID + "]"); return(false); } return(true); }
//Link를 해야한다. (기존에는 없음) public void Link(apPortrait portrait, apCache <apOptTransform> cache) { if (_weightPairs != null && _weightPairs.Length > 0) { for (int i = 0; i < _weightPairs.Length; i++) { _weightPairs[i].Link(portrait, cache); } } }
public void Link(apPortrait portrait, apOptModifiedMeshSet parentModMeshSet) { //_parentModMeshSet = parentModMeshSet; //캐시를 만들어서 빠른 처리가 되도록 한다. apCache <apOptTransform> cache = new apCache <apOptTransform>(); for (int i = 0; i < _nVertRigs; i++) { _vertRigs[i].Link(portrait, cache); } }