HTML/JavaScript小工具

HTML/JavaScript小工具

2014年5月15日 星期四

sprite Create使用注意點

sprite 

sprite Create 使用時要注意
pivot  中心點(0.5,0.5) 左下角為(0,0)

2 分割方塊時要注意如:
圖片高寬768 * 1024
高為1024
要取得最左邊點時
Rect (0,1024,180,180)
以上會出錯
記得要將1024 - 180
因為他是下往上取區間!~也就是說他會用1024 + 180就會超過高度
當宣告時要Rect (0,1024 - 180,180,180)

3 Sprite 不能單獨存在必須搭配

轉載一段程式碼跟Sprite中心點有關的
  1. using UnityEngine;
  2. using System.Collections;
  3.  
  4. public class SpritePivotAlignment {
  5. public SpriteAlignment GetSpriteAlignment(GameObject SpriteObject){
  6. BoxCollider2D MyBoxCollider= SpriteObject.AddComponent<BoxCollider2D> ();
  7. float colX = MyBoxCollider.center.x;
  8. float colY = MyBoxCollider.center.y;
  9. if (colX > 0f && colY < 0f)
  10. return (SpriteAlignment.TopLeft);
  11. else if (colX < 0 && colY < 0)
  12. return (SpriteAlignment.TopRight);
  13. else if (colX == 0 && colY < 0)
  14. return (SpriteAlignment.TopCenter);
  15. else if (colX > 0 && colY == 0)
  16. return (SpriteAlignment.LeftCenter);
  17. else if (colX < 0 && colY == 0)
  18. return (SpriteAlignment.RightCenter);
  19. else if (colX > 0 && colY > 0)
  20. return (SpriteAlignment.BottomLeft);
  21. else if (colX < 0 && colY > 0)
  22. return (SpriteAlignment.BottomRight);
  23. else if (colX == 0 && colY > 0)
  24. return (SpriteAlignment.BottomCenter);
  25. else if (colX == 0 && colY == 0)
  26. return (SpriteAlignment.Center);
  27. else
  28. return (SpriteAlignment.Custom);
  29. }
  30. }