오늘은 하나의 입자를 생성해서 중력의 영향을 받게 만드는 코드를 공부해 보겠습니다~~^^*
먼저, 물리 세계를 생성한 후 입자 하나를 생성하여 이 물리 세계의 구성 요소로 더해 볼게요~~*
const { VerletPhysics2D, VerletParticle2D, VerletSpring2D } = toxi.physics2d;
let physics;
let particleA;
physics = new VerletPhysics2D();
particleA = new VerletParticle2D(200, 100);
physics.addParticle(particleA);
이제, 이 입자가 중력의 영향을 받도록 만들어 볼까요~^^*
(1) 화면 아래 방향으로 작용하는 벡터 v를 생성하고~
const { Vec2D, Rect } = toxi.geom;
let v = new Vec2D(0,1);
(2) 중력을 생성하여, 아래 방향으로 작용하는 벡터 v의 작용을 받도록 할게요~
const { GravityBehavior } = toxi.physics2d.behaviors;
let gravity = new GravityBehaviour(v);
(3) 물리 세계에 이 중력을 구성요소로 더하도록 할게요~
physics.addBahavior(gravity);
물리 세계, 입자, 입자에 작용하는 중력이 준비 되었습니다~!
입자와 중력이 소속된 이 물리세계의 변화들이 반영될 수 있도록 하겠습니다~^^*
physics.update();
지금까지의 작업을 정리해 보겠습니다~^^*
const { VerletPhysics2D, VerletParticle2D, VerletSpring2D } = toxi.physics2d;
const { GravityBehavior } = toxi.physics2d.behaviors;
const { Vec2D, Rect } = toxi.geom;
let physics;
let particleA;
function setup(){
physics = new VerletPhysics2D();
let v = new Vec2D(0,1);
let gravity = new GravityBehavior(v);
physics.addBehavior(gravity);
particleA = new VerletParticle2D(200, 100);
physics.addParticle(particleA);
}
function draw(){
physics.update();
background(255);
fill(0);
circle(particleA.x, particleA.y, 16);
}
두둥~~ 동그라미 하나가 중력의 영향을 받아 아래 방향으로 이동하는 아주 간단한 프로그램이 완성되었습니다~~^^*
네~~^^* 새로운 물리 엔진 라이브러리와 친해지는 시간을 저와 함께 나누어 주셔서 감사합니다~~^^*
우리 내일은~~ 월요일이니까~~ 음악 함께 들을까요~~^^*?
어제는 살짝 추웠던 것 같은데요~~^^* 오늘은 햇살이 참 좋은 것 같아요~~^^*
중력의 영향을 받는 동그라미 물방울이 빗방울 되어 또 내린다고 해도, 오늘 아침의 이 바삭한 햇살을 기억하며 행복감을 누릴 수 있으면 좋겠어요~^^*
오늘도 멋진 아침! 멋진 하루! 보내시고요!
넵~!!! 꿈은 이루어 집니다~~!!!
댓글 남기기