본문 바로가기
IT/스크래치(Scratch)

[스크래치]스크래치기초🔨(화면구성, 블록, 좌표계)

by chef. setori🐹 2020. 2. 18.
반응형

반갑습니다 :)

 

 

오늘은 스크래치(Scratch) 첫 시간인 만큼

 

기초적인 내용을 같이 알아보도록 합시다!

 

 

 


스크래치 화면 구성

 

버전 3.0기준입니다.

 

1. 무대영역: 배경과 스프라이트로 무대를 꾸며주고, 사용자가 작업한 결과물을 볼 수 있습니다.

 

2. 블록영역: 스프라이트를 움직이게 하기 위한 블록이 있는 곳입니다.

 

3. 스크립트영역: 블록목록에서 사용할 블록들을 선택해서 스크립트 영역으로 가져와 조합하여

프로젝트를 진행하면서 다양한 블록들을 볼 수 있는 곳입니다.

 

4. 무대디자인: 프로젝트의 배경이 될 무대를 직접 그리고 꾸밀 수 있는 공간입니다.

 

5. 스프라이트 목록: 무대위에서 사용되는 스프라이트들이 모두 모여있는 곳입니다.

 

 

 

 

 

 


스크래치 용어

 

  • 스테이지(Stage): 스프라이트를 배치 작업하는 공간이며, 스크래치가 실행 결과를 볼 수 있습니다.

 

  • 스프라이트(Sprite): 스크립트에 의해 움직이고 소리 낼 수 있는 그림, 글자, 도형 등으로    스크래치 프로그램에 등장하는 주인공 및 모든 객체를 의미하고, 가장 기본적으로 고양이  형태의 스프라이트가 화면에 등장합니다.

 

  • 스크립트(Script): 무대 위에 스프라이트어떻게 움직이게 할 것인지, 블록형태의 명령어를 찾고 조립하고 실행하는 공간으로 블록의 조합으로 구성되어 있습니다.

 

  • 블록(Block): 프로그래밍 언어의 명령어 및 변수등을 1:1로 매치시킨 프로그램 조각입니다.

 

  • 이벤트(Event): 프로그램에 의해 감지되고 처리될 수 있는 동작이나 사건을 의미합니다.

 

 

 

 

 


블록 이해

 

 

 

동작블록 : 스프라이트를 움직이고 지정한 위치로 이동하거나 회전시키는 블록들로 구성

동작 블록

 

 

 

 

형태블록: 말풍선을 표시하거나 스프라이트와 배경의 모양을 수정하고, 말풍선 또는 생각 풍선 내에 문자를 표시하는 블록들로 구성

형태 블록

 

 

 

 

 

소리블록: 가져온 사이드 개체를 재생하거나 제어하는 블록들로 구성

소리 블록

 

 

 

 

이벤트블록: 스크래치에서 어떤 사건이 발생되었을 때, 명령이 실행되도록 하는 것.

사용자가 [깃발을 클릭 했을 때], [~키를 눌렀을 때], [이 스프라이트가 클릭될 때] 등이 스크래치가 프로그래밍에서 이벤트라고 함.

이벤트 블록

 

 

 

 

제어블록: 동작을 흐름을 제어.

스프라이트가 계속 움직이게 만들고, 움직이는 스프라이트를 멈추게 하고,

스프라이트와 스프라이트가 부딪쳤을 때 스프라이트를 움직이게 하는 등의 동작하는 흐름을 제어라고 함.

즉, 반복적인 작업을 시키거나, 조건에 따라 다른 작업을 하도록 하는것.

제어 블록

 

 

 

 

감지블록: 스프라이트의 위치상황을 판단하는 블록들로 구성

감지 블록

 

 

 

 

연산블록: 단순한 연산부터 복잡한 공식, 산술 연산을 수행하고 난수를 생성하고 관계를 결정하기 위해 값을 비교할 수 있는 블록

연산 블록

 

 

 

 

변수블록: 프로그래밍 하는 과정에서 데이터를 임시로 저장할 공간을 마련하기 위한 블록의 모임.

특정한 조건에 해당할 때 스크립트를 실행하는 블록들로 구성

 

변수 블록

 

 

 

 

각 블록에 대한 자세한 설명은

 

게임을 만들면서 같이 알아보도록 해요!

 

 

 

 

 


좌표계

 

스크래치는 다음과 같은 좌표계로 구성돠어 있습니다!

 

 

원점은 정 중앙에 있고,

 

오른쪽으로 갈수록 X값이 증가되고

 

왼쪽으로 갈수록 X값이 감소됩니다.

 

 

또한

 

위쪽로 갈수록 Y값이 증가되고

 

아래쪽로 갈수록 Y쪽으로 감소됩니다.

 

 

간단하죠?

 

 

 

 

 

 

 

이렇게 오늘은 스크래치에

 

가장 기초적인 부분을 함께 알아보았어요!

 

 

 

 

 

 

많은 도움되셨다면 구독 부탁드릴게요!

:)

 

반응형

댓글0