코딩교육

[Processing] 소프트웨어 스케치북, 코딩 방법을 배우기 위한 언어 프로세싱

산삼인생 2023. 1. 13. 16:04
728x90

목차

     

     

    1. 프로세싱(Processing) 이란?

     

    공식 홈페이지 : https://processing.org/

     

    Welcome to Processing!

    Processing is a flexible software sketchbook and a language for learning how to code. Since 2001, Processing has promoted software literacy within the visual arts and visual literacy within technology…

    processing.org

    프로세싱은 유연한 소프트웨어 스케치북이자 코딩 방법을 배우기 위한 언어입니다.

    2001년부터 Processing은

    시각 예술 분야의 소프트웨어 리터러시

    기술 분야의 비주얼 리터러시

    를 장려해왔습니다.

    수만 명의 학생, 예술가, 디자이너, 연구원, 취미 활동가가 학습을 하거나

    프로토타이핑을 위해 Processing을 사용하고 있습니다.

     

    프로세싱(Processing)은 컴퓨터 프로그래밍의 본질을 시각적 개념으로 프로그래머가 아닌

    모든 사람들에게 교육을 목적으로

    뉴 미디어 아트, 시각 디자인에 종사하는 사람들을 위해 개발된 오픈소스 프로그래밍 언어입니다.

     

    그래픽 기반의 간결한 자바(Java) 프로그래밍 언어라고도 할 수 있습니다.

    이미지, 애니메이션, 인터렉션을 구현하는 작업에 탁월합니다.

    주로 그래픽 디자인, 조각, 건축, 회화, 영상, 일러스트레이션, 디자인 등 

    시각적인 분야에서 공부하거나 관련 종사들이 사용을 많이 하고 있습니다.

     

    시각화에 목적을 둔 프로그래밍 언어 입니다.

     

    2. 프로세싱(Processing) 언어의 진화

    프로세싱이 점점 더 진화를 하는 것 같습니다.

    초기에는 Media Art, Coding Art, Art Coding, 시각적 디자인, 인터렉션 디자인 등에서

    주로 예술가, 디자이너 , 취미 활동가 들이 사용하는 프로그래밍 언어 였습니다.

     

    이제는 다양한 프로그래밍 언어를 지원하고 있습니다.

    Java, Javascript, Python, Ruby 등의

    프로그래밍 언어를 배울 수도 있게 진화를 하는 것 같습니다.

     

    전기나 전자 계열의 사람들은

    라즈베리 파이 등의 임베디드 보드를 연동해서 그래픽적인 인터페이스를 부과하여

    창작물을 만드는데도 사용할 수 있습니다.

     

    수많은 분야에서 사용할 수 있도록 다양한

    라이브러리를 오픈소스로 개발 참여하고, 지원하고 있습니다.

    3D, GUI, Language, Sound, Animation, Gemetry, Math, Typography,

    Compilation, Hardware, Other, Utilities,

    Data, I/O, Simulation, Video & Vision

     

    참조 라이브러리 : https://processing.org/reference/libraries/

     

    Libraries

    Extend Processing beyond graphics and images into audio, video, and communication with other devices.

    processing.org

     

    3. 맥에서 설치하기

    맥북 사양 : MacBook Pro (13형, M2, 2022년)

    Chip : Apple M2

    Memory : 24 GB

    OS : MacOS Monterey v 12.5

     

    공식 다운로드 사이트 : https://processing.org/download

     

    Download

    Processing is available for Linux, Mac, and Windows. Select your choice to download the software below.

    processing.org

     

    MacOS (Apple Silicon)을 다운로드 합니다.

    현재 일자 (2023.01.13.) 기준으로 

    processing-4.1.1-macos-aarch64.zip  파일이 다운로드 됩니다.

     

    압축파일을 해제 하고 실행하면 다음과 같이 IDE(통합개발환경)가 실행됩니다.

    기본 Java언어입니다.

    Processing v4.1.1

     

    4. 간단 예제 실행하기

    이제 간단한 예제를 실행해 보도록 하겠습니다.

     

    프로세싱(Processing) 공식 홈페이지에

    Learn - Tutorials, Examples를 제공하고 있습니다.

     

    튜토리얼이 굉장히 잘 되어 있습니다.

    튜토리얼 일부 캡쳐

    예제도 직관적으로 참고할 수 있도록 구축 되어 있습니다.

    keywords로 검색도 가능합니다.

    Examples 캡쳐

     

    튜토리얼에서 초급, 중급, 고급 별로 강의를 모음을 해놨습니다.

    'Getting Started' 를 선택하겠습니다.

    Text Tutorials 캡쳐

     

    간단한 예제 : 동그라미 그리기

    size(400, 400);
    ellipse(200, 200, 300, 300);

    결과 화면

     

    마우스를 움직이면 그려지는 동그라미

    void setup() {
      size(480, 120);
    }
    
    void draw() {
      if (mousePressed) {
        fill(0);
      } else {
        fill(255);
      }
      ellipse(mouseX, mouseY, 80, 80);
    }

    결과

     

    프로세싱에 대해서 제대로 공부하고 싶으시다면

    온라인 강의 또는 책을 배우시는 방법도 추천드립니다.

    으로 '프로세싱' 을 검색하면 꽤 많은 서적이 검색이 됩니다.

    여러권 주문을 해서 공부하셔도 될 것같습니다.

    다음시간에는 다양한 언어로 Ruby, Python, Java, JavaScript를 사용해서

    Processing으로 코딩미술에 대한 분야를 공부하면서,

    프로그래밍 언어 습득도 같이 할 수 있는 방법에 대해서

    글을 쓰도록 하겠습니다.

     

    5. 참고 사이트

    프로세싱 관련해서 참고 사이트를 소개 해드립니다.

     

    프로세싱 공식 홈페이지 : https://processing.org/

     

    깃허브 오픈소스 홈페이지 : https://github.com/processing/

     

    Processing Foundation

    We create platforms to promote software literacy within the visual arts, and visual literacy within technology-related fields. - Processing Foundation

    github.com

     

    오픈프로세싱 홈페이지 : https://openprocessing.org/

     

    OpenProcessing - Creative Coding for the Curious Mind

    Confetti3 by Killeroo What happens when mouse cursor moves, or you wave your hand to the camera? These sketches experiment with digital painting ideas that uses custom brushes instead of putting paint on canvas.

    openprocessing.org

    Python 언어 기반 프로세싱 : https://github.com/jdf/processing.py

     

    GitHub - jdf/processing.py: Write Processing sketches in Python

    Write Processing sketches in Python. Contribute to jdf/processing.py development by creating an account on GitHub.

    github.com

     

    Ruby 언어 기반 프로세싱 : https://github.com/jashkenas/ruby-processing

     

    GitHub - jashkenas/ruby-processing: Code as Art, Art as Code. Processing and Ruby are meant for each other.

    Code as Art, Art as Code. Processing and Ruby are meant for each other. - GitHub - jashkenas/ruby-processing: Code as Art, Art as Code. Processing and Ruby are meant for each other.

    github.com

     

    JavaScript 언어 기반 프로세싱 : https://github.com/processing/p5.js

     

    GitHub - processing/p5.js: p5.js is a client-side JS platform that empowers artists, designers, students, and anyone to learn to

    p5.js is a client-side JS platform that empowers artists, designers, students, and anyone to learn to code and express themselves creatively on the web. It is based on the core principles of Proces...

    github.com