5. 상호작용과 애니메이션
5.1. 마우스 입력
프로세싱에서는 마우스 입력을 처리할 수 있습니다. 다음과 같이 마우스 입력 함수를 사용하여 마우스 클릭, 마우스 이동 등의 이벤트를 처리할 수 있습니다.
- 마우스 클릭 이벤트 처리
void mousePressed() {
// 마우스 클릭 시 실행할 코드
}
- 마우스 이동 이벤트 처리
void mouseMoved() {
// 마우스 이동 시 실행할 코드
}
- 마우스 드래그 이벤트 처리
void mouseDragged() {
// 마우스 드래그 시 실행할 코드
}
위와 같이 마우스 입력 함수를 작성하고, 원하는 이벤트에 맞게 코드를 작성하면 됩니다.
5.2. 키보드 입력
프로세싱에서는 키보드 입력을 처리할 수 있습니다. 다음과 같이 키보드 입력 함수를 사용하여 키보드 이벤트를 처리할 수 있습니다.
- 키보드 눌림 이벤트 처리
void keyPressed() {
// 키보드 눌림 시 실행할 코드
}
- 키보드 떼어짐 이벤트 처리
void keyReleased() {
// 키보드 떼어짐 시 실행할 코드
}
위와 같이 키보드 입력 함수를 작성하고, 원하는 이벤트에 맞게 코드를 작성하면 됩니다.
5.3. 애니메이션 기본 개념
프로세싱에서는 애니메이션을 쉽게 구현할 수 있습니다. 애니메이션을 구현하는 방법은 다음과 같습니다.
- draw() 함수 내에서 도형을 그립니다.
- draw() 함수 내에서 변수를 변화시켜 애니메이션을 구현합니다.
다음은 원이 일정한 속도로 이동하는 애니메이션 예제 코드입니다.
int x = 0;
void setup() {
size(400, 400);
}
void draw() {
background(255);
ellipse(x, height/2, 50, 50);
x = x + 1;
}
5.4. 시간에 따른 움직임 구현
시간에 따른 움직임은 애니메이션을 구현할 때 매우 중요한 요소입니다. 프로세싱에서는 다음과 같은 함수를 사용하여 시간에 따른 움직임을 구현할 수 있습니다.
- millis(): 프로그램이 시작된 후 경과한 시간을 밀리초 단위로 반환합니다.
- frameRate(): 초당 프레임 수를 반환합니다.
다음은 시간에 따른 움직임을 구현한 예제 코드입니다.
float x = 0;
float speed = 0.1;
void setup() {
size(400, 400);
}
void draw() {
background(255);
ellipse(x, height/2, 50, 50);
x = x + speed * (millis()/1000.0); // 시간에 따른 움직임 구현
}
위 코드에서는 millis() 함수를 사용하여 경과한 시간을 밀리초 단위로 가져와 초 단위로 변환한 뒤 speed와 곱하여 x 값을 변화시킵니다. 이렇게 함으로써 움직임의 속도를 조절할 수 있습니다.
이처럼 프로세싱에서는 다양한 상호작용과 애니메이션을 구현할 수 있습니다. 다양한 예제 코드를 참고하여 상호작용과 애니메이션을 응용해 보세요.
반응형
'GD's IT Lectures : 기초부터 시리즈 > 프로세싱(Processing) 기초부터 ~' 카테고리의 다른 글
[프로세싱(Processing)] 프로젝트 예제 (0) | 2023.05.01 |
---|---|
[프로세싱(Processing)] 프로세싱 라이브러리 활용 (0) | 2023.05.01 |
[프로세싱(Processing)] 그래픽 요소 (0) | 2023.05.01 |
[프로세싱(Processing)] 기본 문법 (0) | 2023.05.01 |
[프로세싱(Processing)] 프로세싱 설치 및 환경 설정 (0) | 2023.05.01 |
댓글