2016-10-10 1 views
0

내가 CocosSharp의 모든 해상도에 CCSprite를 확장하기 위해 노력하고있어,이 내가있어 무엇 :CocosSharp (안드로이드)에서 CCSprite를 해상도로 스케일하는 방법은 무엇입니까?

void AddTruck() 
    { 
     var spriteSheet = new CCSpriteSheet ("animations/truck.plist"); 
     var animationFrames = spriteSheet.Frames.FindAll ((x) => x.TextureFilename.StartsWith ("frame")); 

     walkAnim = new CCAnimation (animationFrames, 0.1f); 
     walkRepeat = new CCRepeatForever (new CCAnimate (walkAnim)); 
     truck = new CCSprite (animationFrames.First()) { Name = "Truck" }; 
     truck.Scale = 0.70f; 

     AddChild (truck); 
    } 

그리고 나는 그 장면에 추가 할 때,이 장치의 해상도에 따라 크기를 조정할 수 있다고합니다. .. 어떤 팁?

감사합니다.

답변

0

글쎄요, 그렇게하기 위해서는 HD 이미지가있는 다른 폴더가 있어야하고 장치 해상도에 따라 다음을 사용한다고 생각합니다.하지만 다음을 수행하고 나에게 도움이되었습니다. :

  float scale = ResTruck(truck); 

     truck.Scale = scale; 

그리고 그것 뿐이다 : V

 float ResTruck(CCSprite sprite) 
    { 
     float scale = 0.0f; 
     float resWid = CCScene.DefaultDesignResolutionSize.Width; 
     float resHei = CCScene.DefaultDesignResolutionSize.Height; 

     if (resWid > 500) 
      scale = 0.70f; 
     else if (resWid > 1080) 
      scale = 0.90f; 
     else if (resWid > 1300) 
      scale = 1.0f; 


     return scale; 
    } 

그리고, 내 스프라이트에 "규모"값을 asing

관련 문제