[개발일지] 두덕용사 - 물고기 AI
안녕하세요. 넉근입니다. ^^
시골로 귀농한 주인공이 용사로 성장하는 게임 두덕용사 개발일지입니다.
참치가 제주도 앞바다에 나타났다고 합니다.
두덕용사가 가만히 있을 수 없죠.
어디 잡으러 가볼까요?
참치가 나타났긴 했는데,
뭔가 움직임이 이상하네요.
전 아래 사이트를 참고해서 구현해 보았습니다.
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
}
요약해 보면,
- 일정한 시간간격으로 랜덤한 목적위치를 찾는다.
- 목적위치까지 일정한 속도로 이동한다.
- 조향장치(steering)를 이용해서 자연스럽게 회전하면서 이동한다.
일단 이정도로 구현해 보았습니다.
물고기 AI 어떻게 하면 좀 더 자연스러울까요?
알파고가 대신 구현좀 해줬으면 좋겠네요. ㅎㅎ
포스팅 봐주셔서 감사합니다. ^__^
오 코드까지 있군요! 잘봤습니다. 참치가 두덕용사에게 다가오면 피하게 할 수 있나요? ㅎㅎ
아 넵 피하게 할 수 있을것 같아요. 위 사이트에 도망관련 내용도 있더라구요. 의견주셔서 감사합니다.^^
우왕 신기합니다.!!! 컴맹인 제가 보니 이건 완전 신천지군요;;
알고나면 그냥 레고 조립하는거와 비슷할 수도 있어요. ㅎㅎ
저도 빨리 실력키워서 만들고 싶네요저만의 프로그램을요
꼭 자기만의 프로그램을 만드시길 바랍니다. ^^
예 만들어서 취직해야죠 포폴!!!
꾸준한 열정이 너무 멋집니다.
감사합니다. 같이 열심히 해요. ^^
두덕용사 프로토 타입 공개 안하시나용? ㅎㅎㅎ
아직 프로토타입을 공개할 수준은 아니라서 ㅋㅋ 얼릉 인디개발 시작하세요. ㅎㅎ
위에서 파라미터만 좀 조절하면 어떨까요?
1번 시간간격을 길게도 해보시고
2번 속도를 일정속도 대신 변화를 주는 것도 해보시고요.
잘 모르는 사람의 의견이었습니다 ㅎㅎ
의견주셔서 감사합니다. 앞으로 계속 조금씩 발전시켜 볼려고요. 물고기별로 파라미터값도 조금씩 변경해서 다른 움직임을 줘봐야 할것 같아요. ^^
넉근님 개발일지 꾸준해서 보기 좋습니다. 껄껄
저도 게을러서 걱정이에요. ㅎㅎ 코볼트님도 항상 파이팅하세요. ^^
그림을보니 동심으로 돌아간듯 재미있네요^^