Silverback9

#야생으로

Creative Coding 독학 제182일 2024년09월25일(수)

어제 우리는 constraint의 작용을 받아 서로의 거리를 유연하게 유지하는 동그라미들이 만들어 내는 사슬을 표현해 보았습니다~^^*

어제 만든 프로그램에 대한 동영상 강의를, 복습을 겸해서 우리 함께 보면 좋겠어요~~^^*

음…그런데요….^^*

사각형은 회전각 운동을 하게 되면, 모서리 위치가 변하는 것이 눈에 보여서, 우리가 사각형 회전을 시각적으로 느낄 수 있는데요~~^^*

동그라미는 모서리가 없이 둥글둥글해서, 회전각 운동을 시각적으로 느낄 수 없는 것 같아요~~^^*

그래서, 우리의 동그라미에 중심에서 뻗어 나오는 선을 하나 그려 넣어 볼게요~^^*

class Particle{
    constructor(x, y, r, fixed) {
        this.x = x;
        this.y = y;
        this.r = r;
        let options = {
            friction: 0,
            restitution: 0.95,
            isStatic: fixed
        }
        this.body = Bodies.circle(this.x, this.y, this.r,  options);
        Composite.add(world, this.body);
    }

    show() {
        let pos = this.body.position;
        let angle = this.body.angle;
        push();
        translate(pos.x, pos.y);
        rotate(angle);
        //네~^^* 동그라미도 회전각 운동을 하고 있었군요~^^*
        rectMode(CENTER);
        strokeWeight(1);
        stroke(255)
        fill(127);
        ellipse(0, 0, this.r*2);
        line(0,0, this.r, 0);
        //회전각을 확인하기 위해 중심에서 나오는 선을 그려 볼까요?^^*
        pop();
    }
}

어제 만든 프로그램을 복습으로 한 번 더 플레이 해 볼까요~^^* 회전각 운동 확인용 선을 가진 동그라미들이 사슬 모양 대형을 이루고 있어요~~^^*

동그라미들이 수평대열에서 수직대열로 대형을 바꾸면서 자신의 몸도 살짝쿵 적절히 방향을 조정해나가는 섬세한 움직임이 느껴지시나요?

음…근데…회전각 운동이 좀 작고 단조롭게 느껴지는 것 같아요. 대형 변화가 단조로와서 그런 것 같기도 하네요~~^^*

우리가 이 동그라미들의 사슬 대형을 자유롭게 변화시키게 되면, 동그라미의 회전각 운동도 좀더 드라마틱하게 이루어 질 것 같은데요!

네!! 그래요!! 동그라미와 우리 사이의 상호작용이 필요해요~~!!!

화면에 입김을 후~ 불어서 동그라미를 움직일 수 있다면 편할 텐데… 프로그램에 우리의 입김의 방향이 전달될 수 없네요…

우리가 화면 안에 들어가서 동그라미를 움직일 수 있으면 더 신날 텐데… 피와 살을 가진 우리는 0과 1의 세계 속에 들어갈 수가 없네요…

우리가 알고 있는 상호작용하는 방법은 마우스/손가락 끝 움직임 밖에 없군요….

상호작용 방법의 제한이 참 많네요…

어머! 근데요!

문제 해결에 사용할 수 있는 방법이나 자원의 제한이 많을 때, 우리의 창의성은 더 활발하게 작동된다고 해요!!!

Constraint 제한 & Creativity 창의성!

제한이 많을 수록 창의성은 커진다~~~!!! YEAH~~~!!!

matter.js + p5.js 컴퓨터 화면과의 상호작용을 mouse로 밖에 할 수 없다는 이 제한적인 상황이 우리의 창의성을 키워줄 것 같아요!

그럼 우리~^^* 감사한 마음 뿜뿜~~ 솟는 즐거운 마음으로~~

matter.js에서 마우스로 상호작용할 수 있는 기능을 찾아 볼까요~~^^*

보물찾기 놀이를 하는 듯 즐겁게 찾아 볼까요~^^*

어머, 저기를 보셔요!

저기 있는 돌멩이 아래,

무슨 종이 조각이 보여요~^^*

와우! 우리의 보물을 찾은 것 같아요!

MouseConstraint“라고 쓰여 있어요! 빙고!

네~^^* 오늘 저와 함께 즐거운 보물찾기 놀이를 해주셔서 감사합니다~^^*

우리 내일 또 만나서, 이 소중한 보물을 사용해서 재밌는 프로그램을 만들어 볼까요~~^^*

우리가 사용할 수 있는 유일한 상호작용 방법…Mouse…!

“Mouse야 고마워! 창의성을 키워줘서!”

오늘도 멋진 아침! 멋진 하루! 보내셔요!

넵~~^^* 꿈은 이루어 집니다~~^^*

댓글 남기기