뒤로
김동철
김동철 ·

챗GPT와 함께하는 인터랙티브 미디어 아트 코딩

1. 챗GPT와 함께하는 미디어아트 코딩

저는 그림 그리는 것을 좋아합니다. 그런데 코딩도 좋아합니다. 그래서 Art & Technology에 서서 그 공간을 탐색하고 있습니다. 인터랙티브 미디어 아트란 무엇인가 챗GPT에 물어보았습니다. 몇가지 주요한 요소들이 보이는데, 관람객 참여, 상호작용, 기술, 센서, 프로그래밍, 예술과 공학의 융합된 현대 미술의 형태라고 설명해 줍니다. 개인적으로 AI 아트가 가졌으면 하는 요소들 입니다.

개인적으로 Brownian motion과 같이 이런 예측 불가능한 자연속의 Random 요소를 좋아합니다. 예시로 이러한 이미지가 관객의 소리, 관객의 움직임 등에 따라 움직임이 반응하고 방향이 바뀐다면 인터렉티브한 기본적인 요소는 갖춘셈입니다.

Brownian motion 알고리즘, 액체나 기체 속에서 미소입자들이 불규칙하게 운동하는 현상

2. 프로세싱이란 무엇인가?

챗GPT에게 물어보았습니다. 역시 저보다 잘 설명해 주는군요. 프로세싱은 MIT Media Lab에서 자바 기반으로 만들어졌고 교육용, 인터랙티브 미디어 아트 코딩하는 분들이 많이 사용하는 언어와 개발 환경입니다.

> 다운받기, https://processing.org/

 

3. 챗GPT 페르소나 프롬프트 작업

챗GPT에 페르소나 프롬프트 작업을 합니다. 이런 프롬프트가 프롬프트 엔지니어링의 시작입니다.

> 앞으로 Stackoverflow 개발자 처럼 답변해줘

4. Processing 코드를 요청

Processing 에서 동작하는 간단한 코드를 요청해봅니다.

> Processing 으로 동작하는 모션 그래픽 코드를 작성해줘

 

5. 에러 없는 완성된 코드가 나왔습니다.

우측 상단의 [Copy code]를 클릭하여 코드를 복사 후 프로세싱에서 돌려봅니다.

에러 없이 완성된 코드

 

6. 결과 화면

중력 값이 조금은 단조로운 화면이 나왔습니다. 어딘가 코딩 수업 Tutorial 03 번쯤에서 봤을 법한 코드입니다. (이런거나 짜라고 GPT 씩이나 쓴게 아닌데..)

다소 단조로운 실행 화면

7. 좀 더 인터랙티브하기

이런거나 짜려고 GPT 씩이나 쓴게 아닐텐데. 뭔가 좀더 인터랙티브한 요소를 가미해보겠습니다. 사용자의 움직임에 반응하는 요소를 넣으려고 하다보니 마우스에 반응 하는 코드를 요청해 보았습니다. 파티클 시뮬레이션이라는 전문용어도 넣어 봅니다. 혹시나 전문용어는 영어로 작성하는게 인식을 좀 더 잘 할까 싶어 영어로 주문합니다.

> Processing 에서 동작하는 마우스 클릭에 반응하며 터지는 particle simulation 코드로 작성해줘.

 

8. NullPointerException 에러

코드는 잘 나왔고 넣어서 실행해보니 NullPointerException 에러가 나는군요. 한줄 한줄 에러를 잡아보려고 코드를 보다가 각성하게 되었습니다. 우리에겐 GPT가 있습니다. 일은 GPT가 하고 우리는 방향제시를 잘 해주면 됩니다. 그리고 결과물에 대한 분별력을 갖추고 있어야 합니다.

9. 에러도 잡아줘

이렇게 간단한 코드도 에러가 나니? 한마디 좀 해주고, NullPointerExeption 에러도 잡아보라고 시켜봅니다. 그랬더니 수정된 코드를 주는군요. 다 알면서 처음부터 이렇게 짜줄 것이지 말입니다.

10. 만족

철저하게 보스 모드로 이것 저것 주의를 줍니다. 이러면서도 사실 크게 기대하진 않습니다. 실수는 또 할테고 또 잡아주면 됩니다.

> 다음부턴 NullPointerException 에러가 나지 않게 코드를 작성해줘

 

11. 좀 더 가보기로 합니다

이 쯤에서 마무리 지을까 했는데 저는 one more thing 문화를 좋아해서 하나만 더 해보려고 합니다.

> Processing 으로 동작하는 화려한 모션 그래픽 코드를 작성해줘

이제 좀 쓸만한 코드가 나온 것 같습니다. 예전에 이걸 생으로 짜려고 벡터, 인력, 척력, 중력 뭐 이런걸 공부해던 추억이 새록새록 납니다. 정확하게는 군체 움직임을 위한 Boids flocking 알고리즘이었지요. 프로세싱 코드는 첨부하였습니다.

마우스로 드래그 하면 Force 가 적용되어 움직이는 공들

[소스코드 다운]

10X AI Club 그룹의 글
13

댓글

로그인 후 댓글을 남길 수 있습니다.

아직 댓글이 없습니다.