public void LoadingContentDataFromBinaryDataWillLoadItFromName() { var content = new ImageAnimation(new[] { ContentLoader.Load<Image>("DeltaEngineLogo") }, 1); var data = BinaryDataExtensions.SaveDataIntoMemoryStream(content); Assert.AreEqual(63, data.Length); var loadedContent = BinaryDataExtensions.LoadDataWithKnownTypeFromMemoryStream<ImageAnimation>(data); Assert.AreEqual(content.Name, loadedContent.Name); Assert.AreEqual(content.Frames.Length, loadedContent.Frames.Length); Assert.AreEqual(content.Frames[0], loadedContent.Frames[0]); }
IEnumerator LoadSprite(Image image, string atlasname, List <string> spritenames) { int count = spritenames.Count; Sprite[] sprites = new Sprite[count]; for (int i = 0; i < count; i++) { #if UNITY_EDITOR yield return(null); for (int k = 0; k < spriteSuffix.Length; k++) { image.sprite = UnityEditor.AssetDatabase.LoadAssetAtPath <Sprite>(string.Format("Assets/UGUI/Atlas/{0}/{1}{2}", atlasname, spritenames[i], spriteSuffix[k])); if (image.sprite != null) { break; } } #else yield return(UIManager.SetSpriteAsync(image, atlasname, spritenames[i])); #endif sprites[i] = image.sprite; } ImageAnimation.Begin(image, sprites); }
internal override void OnParentFramePosUpdate(ImageAnimation target) { if (IsDestroying) { return; } }
private void SetImageAnimationActive(Image _image, string atlasname, string _name, bool active) { if (active) { if (this.gameObject.activeInHierarchy) { List <string> names = new List <string>(); string s = _name.Split('_')[0]; for (int i = 0; i < 3; i++) { string str = string.Format("{0}_{1}", s, i); names.Add(str); } this.StartCoroutine(LoadSprite(_image, atlasname, names)); } } else { ImageAnimation ia = _image.GetComponent <ImageAnimation>(); if (ia != null) { ia.enabled = false; } } }
private void Awake() { animation = GetComponent <ImageAnimation>(); characterRenderer = GetComponent <SpriteRenderer>(); animation.StartAnimation(characterRenderer, (int)EState.Ready, 0.2f, null, true); }
private void SetElementInvisiable(ImageAnimation item) { if (item != null && Canvas.Children.Contains(item)) { Canvas.Children.Remove(item); } }
void OnImageAnimationFrame(ImageAnimation target) { if (target == null) { return; } RefreshCurFrame(target); }
private void Awake() { ListenToEvents(); if (m_crosshairPrefab != null) { m_crosshairAnimation = m_crosshairPrefab.GetComponent <ImageAnimation>(); } }
void OnImageAnimationEndFrame(ImageAnimation target) { var mgr = this.StateMgr; if (mgr != null) { mgr.CurStateOnAnimateEndFrame(); } }
private void f2_1() { Image img; using (Image img2 = Image.FromFile(@"H:\My Documents\Visual Studio 2010\Projects\TwitterClient\StarlitTwit\Resources\NowLoadingS.gif")) { img = (Image)img2.Clone(); } anim = new ImageAnimation(img); anim.FrameUpdated += new EventHandler(Animation_FrameUpdated); anim.StartAnimation(); }
internal override void OnParentFrameEnd(ImageAnimation target) { if (IsUseParentUpdate) { if (removetime == -2) { InteralDoDestroy(); } } }
private void CarouselControl_MouseUp(object sender, MouseButtonEventArgs e) { GetTopMost(); ImageNavigate = null; if (inertiaAngle != 0) { CompositionTarget.Rendering -= CompositionTarget_Rendering; CompositionTarget.Rendering += CompositionTarget_Rendering; } }
public static ImageAnimation Begin(Image image, Sprite[] sprites, float frameGap = 0.25f, bool nativeSize = false) { ImageAnimation com = image.GetComponent <ImageAnimation>(); if (com == null) { com = image.gameObject.AddComponent <ImageAnimation>(); } com.SetSprites(sprites, frameGap, nativeSize); return(com); }
public void CreateAnimationWithNewTextures() { var imageList = new[] { CreateImageWithColor(Color.Red), CreateImageWithColor(Color.CornflowerBlue), CreateImageWithColor(Color.Purple) }; var newMaterial = new ImageAnimation(imageList, 3).CreateMaterial( ContentLoader.Create <Shader>(new ShaderCreationData(ShaderFlags.Position2DTextured))); new Sprite(newMaterial, new Rectangle(0.25f, 0.25f, 0.5f, 0.5f)); }
private void Awake() { ListenToEvents(); var crosshair = Instantiate(m_crosshairPrefab, transform); if (crosshair) { crosshair.name = "[Instanced] Crosshair"; m_crosshairAnimation = crosshair.GetComponent <ImageAnimation>(); } }
internal override void OnParentUpdateFrame(ImageAnimation target) { if (IsDestroying) { return; } if (IsUseParentUpdate) { this.InternalParentUpdateFrame(target, (PlayerState)anim); } }
public void LoadingContentDataFromBinaryDataWillLoadItFromName() { var content = new ImageAnimation(new[] { ContentLoader.Load <Image>("DeltaEngineLogo") }, 1); var data = BinaryDataExtensions.SaveDataIntoMemoryStream(content); Assert.AreEqual(63, data.Length); var loadedContent = BinaryDataExtensions.LoadDataWithKnownTypeFromMemoryStream <ImageAnimation>(data); Assert.AreEqual(content.Name, loadedContent.Name); Assert.AreEqual(content.Frames.Length, loadedContent.Frames.Length); Assert.AreEqual(content.Frames[0], loadedContent.Frames[0]); }
private void ImgItem_MouseLeftButtonUp(object sender, MouseButtonEventArgs e) { if (ImageNavigate == sender) { GetTopMost(); inertiaAngle = centerAngle - ImageNavigate.Angle; ImageNavigate = null; if (inertiaAngle != 0) { CompositionTarget.Rendering += new EventHandler(CompositionTarget_Rendering); } e.Handled = true; } }
private static string AddImageToMetaData(ImageAnimation animation, int index, string images) { var image = animation.Frames[index]; if (images == "") { images += (image.Name); } else { images += (", " + image.Name); } return(images); }
public void OnUpdateFrame(ImageAnimation target) { if (m_PartList != null) { for (int i = 0; i < m_PartList.Count; ++i) { var part = m_PartList [i]; if (part != null) { part.OnParentUpdateFrame(target); } } } }
public void OnEnable() { ImageAnimation model = target as ImageAnimation; if (model.tempAnimationTypeList == null) { model.tempAnimationTypeList = string.Empty; } if (model.animationInfo == null) { model.animationInfo = new List <AnimationInfoEntity>(); } }
private void ShowMultipleImageAnimation() { var imagelist = new List <Image>(); foreach (var image in ImageList) { imagelist.Add(ContentLoader.Load <Image>(image)); } animation = new ImageAnimation(imagelist.ToArray(), Duration); renderExample = new Sprite(new Material(ShaderFlags.Position2DTextured, "") { Animation = animation }, Rectangle.FromCenter(0.5f, 0.5f, 0.5f * imagelist[0].PixelSize.AspectRatio, 0.5f)); }
public void PlayImageAnimation(ImageAnimation at, int index, Sprite s, float delay) { switch (at) { case ImageAnimation.FadeIn: cBorder[index].DOColor(Color.white, delay); break; case ImageAnimation.FadeOut: cBorder[index].DOColor(Color.clear, delay); break; case ImageAnimation.FadeOutIn: cBorder[index].DOColor(Color.clear, delay).OnComplete(() => { cBorder[index].DOColor(Color.white, delay); }); break; case ImageAnimation.Rotate: cBorder[index].transform.DORotate(new Vector3(0.0f, 0.0f, 360.0f), 1.0f, RotateMode.FastBeyond360); break; case ImageAnimation.ShrinkExpand: cBorder[index].transform.DOScale(Vector3.zero, 0.25f).OnComplete(() => { cBorder[index].transform.DOScale(Vector3.one, 0.25f).SetEase(Ease.OutElastic, 1.0f, 0.25f); }); break; case ImageAnimation.SwapImage: cBorder[index].DOColor(Color.clear, delay).OnComplete(() => { cBorder[index].sprite = GetRandomConsumable().sr.sprite; cBorder[index].DOColor(Color.white, delay); }); break; case ImageAnimation.UnifyImage: cBorder[index].DOColor(Color.clear, delay).OnComplete(() => { cBorder[index].sprite = s; cBorder[index].DOColor(Color.white, delay); }); break; case ImageAnimation.PunchScale: cBorder[index].transform.DOScale(Vector3.one * 1.2f, delay).SetLoops(2, LoopType.Yoyo).SetEase(Ease.OutElastic, 1.0f, 0.2f); break; } }
private void CreateImageAnimationMaterials() { ImageAnimation animation = EmitterData.ParticleMaterial.Animation; if (animation == null) { return; } //ncrunch: no coverage start animationMaterials = new Material[animation.Frames.Length]; for (int i = 0; i < animation.Frames.Length; i++) { animationMaterials[i] = new Material(EmitterData.ParticleMaterial.Shader, animation.Frames[i]); } //ncrunch: no coverage end }
private void CompositionTarget_Rendering(object sender, EventArgs e) { double dIntervalDegree = inertiaAngle * 0.1; for (int i = 0; i < this.elementList.Count; i++) { ImageAnimation item = this.elementList[i]; item.Angle += dIntervalDegree; } UpdateLocaltion(); inertiaAngle -= dIntervalDegree; if (Math.Abs(inertiaAngle) < 0.1) { CompositionTarget.Rendering -= new EventHandler(CompositionTarget_Rendering); } }
/// <summary> /// 绘制动画切换按钮,方便用户切换动画,查看动画是否正确 /// </summary> private void DrawAnimationButton() { ImageAnimation model = target as ImageAnimation; if (model.animationTypeProp != null) { GUILayout.BeginHorizontal(); GUILayout.Label("切换动画状态: ", GUILayout.Width(80)); for (int i = 0; i < model.animationTypeProp.Length; i++) { if (GUILayout.Button(model.animationTypeProp[i], GUILayout.Width(50))) { model.ChangeAnimationState(i); } } GUILayout.EndHorizontal(); } }
private void CarouselControl_MouseMove(object sender, MouseEventArgs e) { if (e.LeftButton == MouseButtonState.Pressed) { currentX = e.GetPosition(this).X; moveDistanceX = currentX - originX; inertiaAngle = 5 * moveDistanceX; for (int i = 0; i < elementList.Count; i++) { ImageAnimation imageAnimation = elementList[i]; imageAnimation.Angle += moveDistanceX; } UpdateLocaltion(); originX = currentX; } }
public ContentMetaData CreateMetaDataFromImageAnimation(string animationName, ImageAnimation animation) { var contentMetaData = new ContentMetaData(); SetDefaultValues(contentMetaData, animationName); contentMetaData.Type = ContentType.ImageAnimation; contentMetaData.Values.Add("DefaultDuration", animation.DefaultDuration.ToString(CultureInfo.InvariantCulture)); string images = ""; for (int index = 0; index < animation.Frames.Length; index++) { images = AddImageToMetaData(animation, index, images); } contentMetaData.Values.Add("ImageNames", images); return(contentMetaData); }
protected void RefreshCurFrame(ImageAnimation target) { SpriteRenderer r = this.SpriteRender; if (r == null) { return; } ActionFlip flip; var frame = target.GetCurImageFrame(out flip); if (frame == null) { return; } UpdateRenderer(frame, flip, target); CallCnsTriggerEvent(CnsStateTriggerType.AnimElem, CnsStateTriggerType.AnimTime); }
protected void RefreshCurFrame(ImageAnimation target) { if (target == null) { return; } SpriteRenderer r = this.SpriteRender; if (r == null) { return; } ActionFlip flip; ActionDrawMode drawMode; var frame = target.GetCurImageFrame(out flip, out drawMode); if (frame == null) { return; } UpdateImageFrame(frame, flip, drawMode, m_MaskType == MaskType.none); }
protected void InternalParentUpdateFrame(ImageAnimation target, PlayerState state) { var display = this.Display; if (display != null) { CheckVisible(); var targetDisplay = target.CacheDisplayer; if (targetDisplay == null) { return; } var image = display.ImageAni; if (image != null) { display._SetLoaderPlayer(targetDisplay.LoaderPlayer); image._SetStateFrameList(state, target.CurFrame); display.InteralRefreshCurFrame(image); //SendMessage ("OnPlayerPartUpdateFrame", SendMessageOptions.DontRequireReceiver); } } }
private void SetElementVisiable(ImageAnimation item) { if (item == null) { return; } if (!Canvas.Children.Contains(item)) { Canvas.Children.Add(item); } double rad = item.Angle / 180D * Math.PI; double centerX = ActualWidth / 2; double dX = -radius *Math.Sin(rad); item.X = (dX + centerX - ImageItemWidth / 2d); double dScale = 0.5 - Math.Cos(rad) / 2D; item.ScaleX = dScale; item.ScaleY = dScale; int nZIndex = (int)(360 * 1000 * (0.5 - Math.Cos(rad) / 2D)); Canvas.SetZIndex(item, nZIndex); }