1000 개의 PNG로 스프라이트 시트를 만드는 도구가 있습니까? [닫은]


26

그래픽 디자이너가 별도의 PNG 파일로 그래픽을 만들었습니다. 스프라이트 시트에 으깨는 영리한 도구 / 스크립트가 있습니까?

아마 나 자신을 코딩 할 수는 있지만 바퀴를 다시 발명하는 이유는 무엇입니까? :)



1
당신이 게시 할 수있는 경우 @jhocking 답변 여기에 게시 한 대답에 그대로입니다 질문을. 그들은 중복입니다 :)
MichaelHouse

8
그것은 좋은 규칙이 아닙니다. 말도 안되는 것 : 2 + 2는 무엇입니까? 8-4는 무엇입니까? 세상에 같은 질문
jhocking

3
더 심각한 답변 : 내 대답은 정확히 동일하지만 확실하게 받아 들여진 대답은이 질문과 관련이 없습니다. 이 질문은 해당 질문의 특정한 경우이므로 제 답변은 두 곳 모두에 적용됩니다. 그 질문은 "모든 스프라이트 작업을위한 도구가 있습니까?" 이 질문은 "이 특정 작업을위한 도구"입니까? 솔직히 내 대답은 여기에 더 많이 적용됩니다. 방금 다른 사람의 답변에 대한 의견을 제시해야합니다.
jhocking

1
받아 들여진 대답은 많은 이미지를 하나의 아틀라스에 포장하는 것을 언급하지 않습니다. 당신은 그것에 대해 내 말을 할 필요가 없습니다, 당신은 가서 읽을 수 있습니다. 이 질문은 제목에 언급되어 있기 때문에 명목상 스프라이트 시트에 관한 것이지만, 스프라이트 시트에 사용되는 프레임을 생성하는 애니메이션 기법에 관한 것입니다.
jhocking

답변:


21

SpriteSheetPacker 를 사용하는 유일한 사람 입니까? 무료이며 오픈 소스이므로 수정하고 작동 방식을 배울 수 있습니다.


2
아니요, 다른 9 명도 사용합니다. 그러나이 도구는 무료이지만 TexturePacker
bobobobo

@bobobobo 그래? 그리고 이미지가 어떻게 생겼는지 추측하십니까? i.gyazo.com/5e2e4e50d6dd0b1891439aeea06a14a5.png 더 많은 '유연성'과 기능 ... 그래 맞아
닉 뉴먼

@NiCkNewman 몇 가지 정렬 옵션이 있습니다. 시도해보세요
Evorlor

그래, 그것을 사용하는 것은 고통이다.
javydreamercsw

13

TexturePacker 를 사용하여 PNG 이미지 폴더에서 스프라이트를 만들었습니다. 원래 Flash에서 개발 한 게임을 포팅하고 있으므로 MovieClip의 각 프레임을 png로 내 보낸 다음 Texture Packer에서 해당 이미지를 가져 오기만하면됩니다.

또 다른 유사한 도구는 Zwoptex입니다

(후자는 Mac 소프트웨어이지만 TP에는 Windows 버전도 있습니다.)


2
TP는 모든 O / S를위한 것입니다. GUI가 있습니다. 내가 가장 좋아하는 것. Zwoptex는 Mac 전용입니다.
bobobobo

1
오, 달콤한 나는 그것이 모든 OS인지 몰랐다. 그것은 새로운 것이거나 전에 놓친 것입니다.
jhocking

프쇼. 맥 사용자.
bobobobo


3

나는 libgdx (게임 프레임 워크) 패커를 정말로 좋아합니다. 그래도 패커를 위해 프레임 워크를 설정하는 것이 번거로울 수 있습니다.

패커는 훌륭하게 작동합니다. libgdx texturepacker doc here을 읽고 직접 확인하십시오. 내가 가장 좋아하는 기능은 큰 스프라이트 시트 / 아틀라스의 모든 텍스처에 대한 정보가 담긴 문서도 저장하므로 스크립트를 쉽게 만들 수 있습니다. Libgdx에도이 빌드가 포함되어 있으므로 큰 아틀라스에 있더라도 원래 파일 이름으로 모든 텍스처를로드 / 표시 할 수 있습니다. 패커에 대한 GUI 도 있습니다 .

일부 텍스처에 대한 정보가 담긴 팩 파일에서 발췌 :

ferdige1.png
format: RGBA8888
filter: Nearest,Nearest
repeat: none
mainmenu
  rotate: false
  xy: 2, 2
  size: 800, 480
  orig: 800, 480
  offset: 0, 0
  index: -1
plankeu3
  rotate: false
  xy: 804, 2
  size: 64, 384
  orig: 64, 384
  offset: 0, 0
  index: -1
levelSelect
  rotate: false
  xy: 2, 484
  size: 591, 373
  orig: 591, 373
  offset: 0, 0
  index: -1
plankeu2
  rotate: false
  xy: 870, 2
  size: 64, 256
  orig: 64, 256
  offset: 0, 0
  index: -1

3

ImageMagick 에는 이미지를 "몽타주"라고 부르는 명령 줄 유틸리티가 있습니다. 원하는 명령 행 매개 변수를 얻는 데 어려움을 겪을 수 있지만 매우 강력하고 유연한 도구입니다. 스프라이트 시트를 만드는 데 매우 자주 사용합니다.


1
올바른 매개 변수의 예가 있습니까?
Simon_Weaver

나는 OP 아니지만, convert +append folder/*.png stacked.pngstacked.png에 폴더 (알파벳순)의 모든 PNG 파일로 변환
user1833218

0

이 처리 스크립트를 사용했습니다. Processing.org에서 Processing을 무료로 다운로드 할 수 있습니다. 모든 파일은 동일한 폴더에 있어야하며 파일 이름은 4 자리 숫자로 끝나야합니다.

ArrayList<PImage> images = new ArrayList

<PImage>();

void setup() {
  String folder = "file location ...";
  String file = "file prefix ...";
  String outfile = "output.png";
  int fileCount = 30;
  int cols = 7;
  int rows = 5;

  println("Loadgin...");
  for (int i = 1; i <= fileCount; i++) {
    String number = "" + i;
    if(number.length() == 1) number ="000" + number;
    else if(number.length() == 2) number = "00" + number;
    PImage img = loadImage(folder+file + number +".png");
    images.add(img);   
  }

  println("Starting...");
  PImage img = createImage(images.get(0).width * cols, images.get(0).height * rows, ARGB);
  for (int x = 0; x < images.get(0).width; x++) {
    for (int y = 0; y < images.get(0).height; y++) {
      for (int z = 0; z < images.size(); z++) {
        img.set(
          x+images.get(0).width* (z%cols),
          y +images.get(0).height * int(z/cols),
          images.get(z).get(x,y));
      }
    } 
  }
  println("Saving...");
  img.save(folder + outfile);
}

0

질문을 올바르게 이해했는지는 모르겠지만 텍스처로 작동하고 애니메이션, 스프라이트 시트 및 .gif 애니메이션을 만드는 소프트웨어는 알고 있습니다. 참조 http://www.spritetools.com/를



0

스프라이트 시트를 만들기 위해 Photoshop 스크립트를 사용합니다 . 내 블로그에서이 기사를 참조하십시오 .

오래된 스쿨 타일 그리드와 텍스처 아틀라스를 만들 수 있으며 이미지 크기와 위치 정보가 포함 된 사용자 지정 텍스트 파일을 내보낼 수 있습니다. PC와 Mac에서 작동하며 오픈 소스이며 확장 가능하도록 작성되었습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.