Silverback9

#야생으로

Creative Coding 독학 제324일 2025년02월14일(금)

오늘은 food와 poison이 놓여있는 서식처에 살아가는 vehicle 부족이 점점 총명해 지기를 소원하며 공부하기 시작하는 날~^^* Yeah~^^*

사랑하는 마음으로 가득한 아침 시작하시기 바래요~^^* 저는 공부 정리해서 돌아올게요~^^* 쓩우웅~^^*

네~^^* 태초의 vehicle 부족의 생존자가 후세의 dna에 food와 poison에 대한 바람직한 기억을 물려줄 수 있도록, 태초의 vehicle 부족을 전반적으로 좀더 차분하고 끈기있게 개선해 보겠습니다~^^*

먼저~^^* food와 poison에 대한 좀더 차분한 감정기억을 좀더 차분하게 가질 수 있도록 하겠습니다. 네…평정심은 참 중요하니까요…^^*

또한, 캔버스 밖으로 나가서 헤매다 생을 마감하는 부족민이 없도록, 예방조치를 해보겠습니다. 캔버스 테두리 밖으로 나가면 움직임 방향을 반대로 하여 캔버스 테두리 안으로 끈기있게 다시 들어 오도록 하겠습니다~^^* 테두리에 반응하여 되돌아오는 경우를 이전에 여러 번 해보았었는데요~^^* 좋은 복습의 기회도 될 것 같아 감사한 마음이 들어요~^^* Yeah~^^*

class Vehicle {
    constructor(x, y) {
      .
      .
      .
    this.dna = [];
    this.dna[0] = random(-2, 2);
    //food에 대한 멀어지고픔 최대치 -2 끌림 최대치 +2 사이 무작위 값
    this.dna[1] = random(-2, 2);
    //poison에 대한 멀어지고픔 최대치 -2 끌림 최대치 +2 사이 무작위 값
    
    //음식과 독약에 대한 감정기억을 좀더 차분하게 만들어 보겠습니다. 
    //[-5] ~ [5] 사이의 감정기억을 [-2] ~ [2] 사이로, 감정기억의 간극을 줄여보겠습니다~^^* 평정심~~^^*
    }
      .
      .
      .
    boundaries() {
    //캔버스 밖을 벗어나서 끝없는 광야에서 헤매다 생을 마감하는 경우를 예방해 보겠습니다. 
    //캔버스 테두리 밖에 나가게 되면 다시 캔버스 안으로 들어오도록 하겠습니다.
    //왼쪽/오른쪽 테두리를 벗어나려고 하면 움직임의 x축 방향을 반대로 하고,
    //위쪽/아래쪽 테두리를 벗어나려고 하면 움직임의 y축 방향을 반대로 하여, 
    //테두리에 빛이 반사되듯 되돌아오는 움직임을 가지도록 해보겠습니다~
      
      const d = 25;

      let desired = null;

      if (this.position.x < d) {
        desired = createVector(this.maxspeed, this.velocity.y);
      } else if (this.position.x > width - d) {
        desired = createVector(-this.maxspeed, this.velocity.y);
      }

      if (this.position.y < d) {
        desired = createVector(this.velocity.x, this.maxspeed);
      } else if (this.position.y > height - d) {
        desired = createVector(this.velocity.x, -this.maxspeed);
      }

      if (desired !== null) {
        //테두리에 닿아서 변수 desired에 테두리 반사 움직임 벡터가 저장이 되어 변수 desired가 null이 아닐 때, 즉 변수 desired가 어떤 값을 갖게 되었을 때 
        desired.normalize();
       desired.mult(this.maxspeed);
       const steer = p5.Vector.sub(desired, this.velocity);
       steer.limit(this.maxforce);
       this.applyForce(steer);
        //테두리 반사 움직임 벡터 desired가 vehicle의 움직임에 영향을 주어
       //vehicle이 테두리 안으로 돌아가도록 합니다.  
      }
    }
  }

네~^^* 음식을 보아도 독약을 보아도 너무 화들짝 놀라지 않고 차분하게 다가가는 우리의 태초의 vehicle 부족…! 내 맘대로 잘 되지 않아도, 먹고 싶은 것이 마땅히 없는 곳이라고 해도, 자신의 생태계를 떠나지 않고 다시 도전하고 도전하며 끈기를 실천하는 우리의 태초의 vehicle 부족…! 가장 마지막까지 녹색의 몸빛을 잃지 않으려 최선을 다하는 우리의 태초의 vehicle 부족…!

순간 순간 최선을 다하며 차분하게 그리고 끈기 있게 자신의 삶을 살아내셨던 우리 선조님들의 모습을 보는 것 같아서 감사한 마음이 들어요.

오늘 저와 함께, 차분하고 끈기 있게 삶을 살아내셨던 태초의 vehicle 부족을 표현해 주셔서 감사합니다.

내일은~^^* 우리~^^* 긍정적인 신호를 더 폭넓게 조망하고 부정적인 신호를 더 긴밀하게 포착하여, 꿈을 크게 추구하면서도 위기 상황을 재빠르게 피해갈 수 있도록 멋진 레이더를 우리의 태초의 vehicle 부족에게 장착해 드리면 어떨까요~^^*

네~^^* 좋아요~^^* 고마워요~^^*

오늘도~^^*

맛있는 점심~^^*

따뜻한 저녁~^^*

깊고 포근한 밤~^^* 코~하시며~^^*

반가운 만남 기쁨 나누는 내일을 꿈꾸셔요~^^*

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

댓글 남기기