+-+-+ +-+ +-+-+-+-+
|G|O| |4| |H|I|V|E|
+-+-+ +-+ +-+-+-+-+

 --- A GOPHER-LIKE INTERFACE FOR HIVE BLOCKCHAIN ---

[개발일지] 두덕용사 - 물고기 AI

BY: @nukunit | CREATED: July 14, 2017, 4:19 p.m. | VOTES: 27 | PAYOUT: $26.56 | [ VOTE ]

안녕하세요. 넉근입니다. ^^
시골로 귀농한 주인공이 용사로 성장하는 게임 두덕용사 개발일지입니다.

참치가 제주도 앞바다에 나타났다고 합니다.
두덕용사가 가만히 있을 수 없죠.
어디 잡으러 가볼까요?

[IMAGE: https://steemitimages.com/DQmS1j9HCrgMazqTEVCp9AqkdTH1HgsDpgPiPTyQKm6Ch5x/Honeycam%202017-07-15%2001-03-36.gif]

참치가 나타났긴 했는데,
뭔가 움직임이 이상하네요.

전 아래 사이트를 참고해서 구현해 보았습니다.

Understanding Steering Behaviors: Wander
https://gamedevelopment.tutsplus.com/tutorials/understanding-steering-behaviors-wander--gamedev-1624

// Calculate the wander force
private function wander() :Vector3D {
   var now :Number = (new Date()).getTime();

   if (now >= nextDecision) {
    // Choose a random position for "target"
   }

   // return a steering force that pushes the character
   // towards the target (the seek behavior)
   return seek(target);
}

// In the game loop, handle forces and movement just
// like before:
public function update() :void {
   steering = wander()
   steering = truncate (steering, max_force)
   steering = steering / mass
   velocity = truncate (velocity + steering , max_speed)
   position = position + velocity
}

요약해 보면,
1. 일정한 시간간격으로 랜덤한 목적위치를 찾는다.
2. 목적위치까지 일정한 속도로 이동한다.
3. 조향장치(steering)를 이용해서 자연스럽게 회전하면서 이동한다.

일단 이정도로 구현해 보았습니다.
물고기 AI 어떻게 하면 좀 더 자연스러울까요?

알파고가 대신 구현좀 해줬으면 좋겠네요. ㅎㅎ
포스팅 봐주셔서 감사합니다. ^__^

TAGS: [ #kr ] [ #kr-dev ] [ #kr-gamedev ] [ #gamedev ]

Replies

@zeroseok | July 14, 2017, 4:37 p.m. | Votes: 0 | [ VOTE ]

오 코드까지 있군요! 잘봤습니다. 참치가 두덕용사에게 다가오면 피하게 할 수 있나요? ㅎㅎ

@nukunit | July 15, 2017, 12:33 a.m. | Votes: 0 | [ VOTE ]

아 넵 피하게 할 수 있을것 같아요. 위 사이트에 도망관련 내용도 있더라구요. 의견주셔서 감사합니다.^^

@edworld | July 14, 2017, 4:56 p.m. | Votes: 0 | [ VOTE ]

우왕 신기합니다.!!! 컴맹인 제가 보니 이건 완전 신천지군요;;

@nukunit | July 16, 2017, 12:55 p.m. | Votes: 0 | [ VOTE ]

알고나면 그냥 레고 조립하는거와 비슷할 수도 있어요. ㅎㅎ

@rlawls1991 | July 14, 2017, 6:16 p.m. | Votes: 0 | [ VOTE ]

저도 빨리 실력키워서 만들고 싶네요저만의 프로그램을요

@nukunit | July 16, 2017, 12:56 p.m. | Votes: 0 | [ VOTE ]

꼭 자기만의 프로그램을 만드시길 바랍니다. ^^

@rlawls1991 | July 16, 2017, 3:04 p.m. | Votes: 0 | [ VOTE ]

예 만들어서 취직해야죠 포폴!!!

@lhamed | July 15, 2017, 1:41 a.m. | Votes: 0 | [ VOTE ]

꾸준한 열정이 너무 멋집니다.

@nukunit | July 16, 2017, 12:56 p.m. | Votes: 0 | [ VOTE ]

감사합니다. 같이 열심히 해요. ^^

@clarkgold | July 15, 2017, 2:11 a.m. | Votes: 0 | [ VOTE ]

두덕용사 프로토 타입 공개 안하시나용? ㅎㅎㅎ

@nukunit | July 16, 2017, 12:56 p.m. | Votes: 0 | [ VOTE ]

아직 프로토타입을 공개할 수준은 아니라서 ㅋㅋ 얼릉 인디개발 시작하세요. ㅎㅎ

@nand | July 15, 2017, 2:48 a.m. | Votes: 0 | [ VOTE ]

위에서 파라미터만 좀 조절하면 어떨까요?
1번 시간간격을 길게도 해보시고
2번 속도를 일정속도 대신 변화를 주는 것도 해보시고요.
잘 모르는 사람의 의견이었습니다 ㅎㅎ

@nukunit | July 16, 2017, 12:57 p.m. | Votes: 0 | [ VOTE ]

의견주셔서 감사합니다. 앞으로 계속 조금씩 발전시켜 볼려고요. 물고기별로 파라미터값도 조금씩 변경해서 다른 움직임을 줘봐야 할것 같아요. ^^

@krdoko | July 15, 2017, 5:02 a.m. | Votes: 0 | [ VOTE ]

넉근님 개발일지 꾸준해서 보기 좋습니다. 껄껄

@nukunit | July 16, 2017, 12:59 p.m. | Votes: 0 | [ VOTE ]

저도 게을러서 걱정이에요. ㅎㅎ 코볼트님도 항상 파이팅하세요. ^^

@khj1225 | July 17, 2017, 2 p.m. | Votes: 0 | [ VOTE ]

그림을보니 동심으로 돌아간듯 재미있네요^^

[ BACK TO TRENDING ] [ BACK TO MENU ]
CMD>