수업 정보
학년: 8~12(13세 이상 학생만 수업에 참여할 수 있음)
강좌 시간: 1시간
사용 툴: 포크리
수업/교육 환경: 포트나이트를 구동할 수 있으며 인터넷이 연결되어 있는 장치를 1인당 1개씩 사용합니다. 컴퓨터실, 이동식 노트북 거치대가 있는 환경이 이상적입니다.
작성자 연락처
작성자: Steven Isaacs, Brian Dickman
이메일: [email protected] | [email protected]
Twitter: @mr_isaacs | @cleverlike
LinkedIn: https://www.linkedin.com/in/steve-isaacs/ | https://www.linkedin.com/in/cleverlike
수업/교육 환경 설명
본 수업은 컴퓨터 공학 교육 주간 중 아워 오브 코드를 위해 디자인되었습니다.
음악 수업이므로 음악 교육에도 이용 가능합니다. 음악 작곡은 게임 디자인의 중요한 요소이며, 본 수업에서 학생들은 게임 개발 과정이라는 환경에서 음악 작곡을 경험할 수 있는 기회를 얻게 됩니다. 단일 수업으로 이용해도 좋고, 다른 활동과 조합하여 큰 프로젝트를 만들 수도 있습니다.
작성자 Steve Isaacs는 목적 또는 선택을 기반으로 한 교육 환경으로서 게임 디자인과 개발을 가르쳐, 학생들이 콘텐츠와 프로젝트 옵션 면에서 학생이 자신의 관심사에 따라 여러 가지 접근 방식으로 수업 결과에 도달할 수 있는 기회를 제공합니다.
작성자 Brian Dickman은 컴퓨터 공학 전공자로, 게임 개발 전문 스튜디오를 운영하며 인기 동영상 게임 내에서 오락 및 교육을 위한 콘텐츠를 제작하고 있습니다.
강좌 개요
게임 사운드트랙을 좋아하시나요? 마음에 드는 게임을 플레이한 후 몇 시간 동안 머릿속에서 음악이 떠나지 않나요? 오케스트라는 동영상 게임 배경 음악만을 연주하는 콘서트를 열기도 합니다. 음악은 영향력이 크고, 기억에 남습니다. 디지털 프로젝트에 음악을 사용하면 대중의 경험을 개선하고 콘텐츠 몰입도를 높일 수 있습니다.
이번 프로젝트에서는 포크리에서 나만의 커스텀 음악 루프를 재생하는 장치를 만들어 봅니다!
목표 결과
학생들의 학습 성과는 무엇일까요?
필수 질문/중요 아이디어
학생들이 단순히 문법을 단독적인 기술로서 배우는 것이 아니라 의미 있는 활동의 일부로 컴퓨터 공학 콘셉트를 익힐 수 있는가?
포크리 활동을 통해 루프와 같은 컴퓨터 공학 콘셉트를 학습하면 코딩 환경에서 콘셉트를 이해하는 데 도움이 되는가?
학생들이 게임 개발이라는 환경에서의 음악 작곡을 이해할 수 있는가?
게임이라는 환경에서 컴퓨터 공학의 콘셉트를 소개하면 학생들의 학습 의지를 높이는 데 도움이 되는가?
학습 성과/목표
학생의 성과
컴퓨터 공학 개념으로서 루프를 이해하고 이해한 내용을 보여줍니다.
루프에 대해 이해한 내용을 게임 환경에서 음악 작곡의 수단으로 활용합니다.
게임 배경 음악으로 사용할 루프 음악을 만듭니다.
학습 활동
루프 소개
컴퓨터 공학에서 루프란 특정 조건을 충족할 때까지 명령 시퀀스를 반복하는 프로그래밍 구조입니다. 프로그래머는 루프를 이용해 값을 순환하고, 숫자의 합을 더하고, 기능을 반복하는 등 많은 작업을 수행합니다.
– 출처 techterms.com
예를 들어 둘레가 25미터인 운동장에서 100미터를 달리고 싶다면, 운동장을 4바퀴 돌아야 합니다. 이것이 일종의 루프입니다. 운동장을 4바퀴 돌고 나면 멈출 수 있습니다.
의사코드는 인간이 소통하고 이해하기 쉽도록 간단한 형식으로 코딩 개념을 작성하는 행위입니다. 실제 코드는 프로그래밍 언어마다 규칙(문법)이 다르지만, 수도코드는 목적에 따라 코드를 구상할 수 있게 해 줍니다.
수도코드로 작성한 루프 예시는 다음과 같습니다.
4번 반복 { 운동장 돌기 }
컴퓨터 공학에서 루프의 작동 방식을 설명하는 간단한 동영상입니다.
루프는 모든 코딩 언어에서 사용할 수 있고, 포크리와 같은 환경에서는 무한 또는 지정된 횟수만큼 명령을 반복하는 루프 시나리오를 만들 수 있습니다.
활동
학생은 포크리에서 시퀀서, 음악 블록을 사용해 음악 악보를 만듭니다.
포크리의 시퀀서는 반복되는 이벤트 시퀀스를 손쉽게 생성할 수 있는 장치입니다. 시퀀스 자체를 실행하는 것 외에도, 게임에서 장치 활용법을 더 세부적으로 제어할 수 있는 기타 속성이 있습니다.
시퀀서는 3차원 볼륨으로 설정할 수 있습니다. (width x height x length) 시퀀서가 활성화되면 볼륨 처음부터 끝까지 파동을 보냅니다. 이 파동은 장치나 오브젝트에 닿으면 트리거시킵니다. 이를 이용하여 시퀀서 볼륨 안에 음악 블록을 배치하고 음악을 재생할 것입니다.
음악 블록 갤러리는 다양한 악기의 음표로 구분되는 건설 블록의 모음입니다. 블록을 트리거하면 음을 재생합니다. 이 갤러리에는 악기마다 색상으로 구별된 타일/블록이 다양하게 준비되어 있습니다. 각 블록에는 재생할 음이 표시되어 있습니다. 따라서 음만 알고 있다면 쉽게 곡을 만들 수 있습니다.
단계별 활동 과정은 학생 안내와 교사 도움말을 참조하세요.
학생은 학생 안내를 보고 작업해야 합니다.
표제를 다운로드하여 학생의 작품을 평가하세요.
외부 자료
Mark Zuckerberg Explains Loops
일반 매핑
1A-AP-10 시퀀스와 간단한 루프로 프로그램을 개발해 아이디어를 표현하거나 문제를 해결합니다.
1B-AP-10 시퀀스, 이벤트, 루프, 조건문이 있는 프로그램을 만듭니다.
1B-AP-12 기존 프로그램을 수정, 재구성, 자기 작품에 일부 통합하여 새로운 프로그램을 만들거나 고급 기능을 추가합니다.
1A-AP-14 시퀀스와 간단한 루프를 포함하는 알고리즘이나 프로그램의 오류를 디버그(파악 및 수정)합니다.
2-AP-10 흐름도나 수도코드를 이용해 알고리즘으로 복잡한 문제를 해결합니다.
2-AP-13 문제와 하위 문제를 여러 부분으로 나누어 프로그램을 디자인, 구현, 검토합니다.
2-AP-17 여러 가지 실험 사례를 이용해 프로그램을 체계적으로 테스트하고 개선합니다.
3A-AP-13 학생의 사전 지식과 개인적 관심사를 활용하여 컴퓨터와 관련된 문제를 해결하는 알고리즘 프로토타입을 만듭니다.
3A-AP-16 실용적인 목적, 개인적 표현 수단, 사회적 문제 해결을 위해 이벤트로 지시를 시작하는 컴퓨터로 인공물을 디자인하고 반복적으로 개발합니다.
3A-AP-17 절차, 모듈, 목표 등의 구성물로 체계적인 분석을 통해 문제를 더 작은 요소로 분해합니다.
3A-AP-22 협업 도구를 사용해 팀 역할로 작업하며 컴퓨터 인공물을 디자인하고 개발합니다.
학제적 및 21세기적 연계
본 수업은 코딩/컴퓨터 공학 관련 분야를 다룹니다.
21세기적 연계
비판적 사고
창의력
협동
커뮤니케이션
기술적 소양
유연성
리더십
이니셔티브
사회적 스킬
수정과 조정
학생의 필요, IEP, 504 등에 맞춰 수정과 조정을 제공합니다.
학생은 팀으로 작업하여 협동식 프로그래밍 접근법을 이용할 수 있습니다.
학생들이 분해/수정할 수 있는 샘플 맵을 제공해도 좋습니다.
필요시 적응형 컨트롤러/게임 컨트롤러를 제공합니다.