스크래치3는 교육용 블록 프로그래밍 언어로 학생들이 쉽게 코딩교육을 할 수 있도록 만든 프로그램이다.
MIT에서 만들어 전 세계적으로 쓰인다.
중학교 교과서에서도 스크래치3를 많이 사용한다.
근데 이 프로그램은 온라인 상에 저장할 수 있고, 컴퓨터로 받을 수는 있으나 sb3 라는 확장자로 받아져 스크래치 오프라인이나 스크래치 온라인에서 업로드 하지 않고는 실행할 수가 없다. 툴에 갖혀있게 되는 것이다.
그래서 이 sb3 파일을 .exe 파일로 만드는 방법을 찾아보았다.
스크래치 프로젝트를 다양하게 변환해주는 곳을 찾을 수 있었다.
https://packager.turbowarp.org/
TurboWarp Packager for Scratch
packager.turbowarp.org
스크래치는 기본적으로 React 기반이다. 따라서 react를 이용하여 적절하게 변환하면 exe로 만들수가 있게 된다.
사용법도 간단하다.
1. TurboWarp Packager 접속 후 스크래치 프로그램 불러오기
2. 실행 설정
A. 터보모드
초당 프레임수이다. 이 프레임률을 높이면 속도가 빨라진다. 스크래치는 초당 30번정도 실행되기 때문이다.
1초에 5만큼 움직일 때 프레임률을 30->60으로 올리면 1초에 10만큼 움직인다. (1~250 까지 가능)
B. 보간하기
프레임을 높이면 프레임 사이에 부족한 부분을 채워넣는 것이다.
A->B로 이동할 때 프레임을 보간하면 기존에 비어있는 프레임을 이미지를 채워넣게된다.
C. 펜 품질 올리기
스크래치는 해상도(480*360)가 낮아 자세히 보면 펜이 되게 거칠다. 그것을 매끄럽게 만들어준다.
고품질 펜을 사용하면 성능이 저하될 우려도 있다.
D. 무제한 복제
스크래치 스프라이트 복제 기능을 사용하면 원래 300개 까지이다. 이것을 비활성화 한다.
E. 무대 밖 동작 제한 풀기
원래 스크래치 캐릭터를 방향키 등으로 무대 밖으로 보내도 화면 끝에 걸쳐있게 되며 밖으로 나가지는 않는다.
여기에 체크하면 화면 밖으로 그냥 나가도록 할 수 있다. 화면 밖 블록도 보이진 않으나 터치하도록 할 수 있다.
F. 기타 제한 제거
사운드 제한 해제, 최소-최대 펜 크기 해제, 마우스 x,y좌표 정밀화 등
G. Stage Size
기본 사이즈는 480*360 해상도이다. 높이면 화면 질이 떨어진다.
그 아래는 어떤 식으로 해상도를 바꿀 것인지에 대한 선택이다.
(비율맞춰 늘리기 / 화면 꽉차게 하기 / 윈도우사이즈 맞춰서 동적으로 바꾸기)
3. 플레이어 설정
프로그램 이름, 실행파일 아이콘, 화면 로딩 이미지 등을 설정할 수 있으며
깃발, 멈춤버튼, 일시정지버튼, 전체화면 버튼을 보일것인지 안보일것인지 설정할 수 있다.
4. 입력 설정
A. 커서를 보이게 할 것인지 보이지 않게 할 것인지 설정 할 수 있다.
B. 클라우드 변수는 저장기능, 랭킹 등의 기능을 사용한 경우에만 설정
C. 고급 설정은 코드를 이용하여 바꿀 수 있다(CSS, JS 등)
5. 패키징 선택하기
HTML은 웹브라우저로 실행, 바로 다운로드 된다. 실행도 잘 된다. (iframe 기반)
Electron은 프로그램으로 동작한다(JS기반), 선택하면 몇가지 옵션이 나오는데, 바로 패키징 해도 된다.
유튜브에서도 관련 영상을 찾았다. 17분정도. 같은내용이다.
https://www.youtube.com/watch?v=O-OQsfigb8I