//********初期化********// public virtual void Init(AdvGraphicLayer layer, AdvGraphicInfo graphic) { this.layer = layer; this.rectTransform = this.transform as RectTransform; this.rectTransform.SetStretch(); if (graphic.RenderTextureSetting.EnableRenderTexture) { InitRenderTextureImage(graphic); } else { GameObject child = this.transform.AddChildGameObject(graphic.Key); this.TargetObject = this.RenderObject = child.AddComponent(graphic.GetComponentType()) as AdvGraphicBase; this.TargetObject.Init(this); } //リップシンクのキャラクターラベルを設定 LipSynchBase lipSync = TargetObject.GetComponentInChildren <LipSynchBase>(); if (lipSync != null) { lipSync.CharacterLabel = this.gameObject.name; lipSync.OnCheckTextLipSync.AddListener( (x) => { x.EnableTextLipSync = (x.CharacterLabel == Engine.Page.CharacterLabel && Engine.Page.IsSendChar); }); } this.FadeTimer = this.gameObject.AddComponent <Timer>(); this.effectColor = this.GetComponentCreateIfMissing <AdvEffectColor>(); this.effectColor.OnValueChanged.AddListener(RenderObject.OnEffectColorsChange); }
void InitRenderTextureImage(AdvGraphicInfo graphic) { AdvGraphicManager graphicManager = this.Layer.Manager; this.RenderTextureSpace = graphicManager.RenderTextureManager.CreateSpace(); this.RenderTextureSpace.Init(graphic, graphicManager.PixelsToUnits); GameObject child = this.transform.AddChildGameObject(graphic.Key); AdvGraphicObjectRenderTextureImage renderTextureImage = child.AddComponent <AdvGraphicObjectRenderTextureImage>(); this.RenderObject = renderTextureImage; renderTextureImage.Init(RenderTextureSpace); this.RenderObject.Init(this); this.TargetObject = RenderTextureSpace.RenderRoot.transform.AddChildGameObject(graphic.Key).AddComponent(graphic.GetComponentType()) as AdvGraphicBase; this.TargetObject.Init(this); }