영상에는 NPC 애니메이션 모션 설정할 때 Walking과 Standing이 이어져있지 않던데 그대로 따라해보니 케이디님처럼 잘 움직이는게 아니라 정지된 모습으로 사진만 동동 이동이 됩니다.. 어떻게 해야할까요? 또한 2번째 강의 그대로 모션 설정했는데 움직일 때 오른쪽 왼쪽 가는 방향 따라 캐릭터 모습이 변화되지 않습니다. 제가 무엇을 잘못했을까요?
배열의 크기를 가리키는 게 length라는 녀석인데 이 녀석은 배열이 0부터 시작되는 것과 관계없이 1부터 카운트가 들어가기 때문에 -1을 해서 배열의 실제 크기와 같게 만들어 주는 겁니다. 배열안에 10 30 50 70이 들어있다면 length는 4라고 뜹니다. 4개가 있으니까요. 하지만 배열의 참조인덱스는 위 배열에선 3이 최대값입니다. 이때 lengh로 참조하려고 했다간 인덱스 오류가 발생하고 말겠죠. 인덱스는 3이 끝인데 4를 참조하라고 했으니까요.
잘 보고 있습니다~ 근데 영상 막바지에 npc frequency를 5로 해놓고 실행해보는거 바로 따라했다가 똑같이 멈춰서 재실행했는데 유니티 저장을 안해서요.. 하핳ㅎㅎ하ㅏㅎ다행히 스크립트들은 다 저장돼 있어서 유니티작업만 다시했는데요( npc객체랑 애니메이션 만들기), 실행이 안되네요..ㅜㅜ플레이 눌러보면 플레이랑 일시정지버튼 동시에 눌린채로 멈추고 경고는 216개ㄷㄷ 에러는 6개 뜨는데 눈에띄게 보이는 에러는 2개거드,ㄴ요.[ You cannot remove all layers from an AnimatorController. ] [ NullReferenceException: Object reference not set to an instance of an object ] 이렇게 2개인데,, 애니메이션컨트롤러에서 모든 레이어를 지웠다?는것도 이해가 안가고 그 다음것은 더 모르겠어요.. 이것저것 만져보고 살펴봐도 모르ㅜ겠어서요 ..ㅜ제컴퓨터를 보고계신건 아니니 한방해결방법을 여쭤보는건 아니고 어디어디를 한번 체크해봐야 해결할수있을지 질문 드려봅니다 ㅠㅠ
최시우 아쿠 ㅜ 저장을 안 하셨군요. 유니티에서 저장을 안 해도 그대로 남아있는 파일도 있습니다. 애니메이션 컨트롤러와 그 애니메이션들인데요, 해당 애니메이션 폴더에 그대로 남아있으니 그걸 그대로 npc 애니메이터에 넣어주시면 될 거에요. ㅎ 두번째 오류는 컴포넌트가 없어서 생기는 오류거나, 인스펙터 창에 넣어야 할 것을 안 넣었거나, 배열을 잘못 적었거나, 초기화 작업이 안 이뤄졌을 경우가 주를 이룹니다. 빠진 게 있는지 확인해보세욤ㅜ
너무 감사합니다. 이해는 안 가지만 그냥 코드 따라서 만들고 있어요
그런데 점점 게임이 만들어지니까 재밌네요 ㅎㅎ
드디어 파트 10이네여 열심히 할게요
NPC와 캐릭터가 가까이만가면 화면이 흔들리는데 어떻게 하나요?
11분정도에 막혔습니다 npc큰캐릭터 이미지를 데려왔는데 솔팅레이어를 선택해줬는데도 엔피씨가 보이지 않습니다 무슨 문제일까요 이미지 사이즈를 60으로 해줬더니 보이네요주인공은 1로 되있는데 엔피씨는 1로 되있으면 안보이네요
고양이아저씨 이미지를 클릭하면 활성화되는 인스펙터 창에서 pixel per unit의 값도 확인해보세욤. 100으로 초기화 되어 있다면 너무 쪼만해서 안 보이는 걸 수도 있습니다.
48로 되어있었습니다 1로 해줬더니 제대로 보이네요 감사합니다
개꿀강좌 감사합니다. 제 인생의 단비같은 존재... ^_^
저장도 안하고 따라하고있는데 갑자기 오류를 내버리시면...
하지만 강의는 잘 듣고있습니다 감사합니다
컥. 해당 부분은 따라하지 말것. 이라는 경고문이라도 띄웠어야 했는데 ㅠ
피드백 감사합니다.
'NPC' AnimationEvent has no function name specified!이게 뜨는 이유가 뭘까요??
아마 npc 캐릭터 에니메이션 초 단위로 설정하실때 0:40쯤 서있는 포지션을 하나 더 넣자나요?
거기에 Add Keyframe. 안넣고 Add event 넣어서 그럴꺼에요
잘 봤습니다 ^^ 덕분에 많이 배워갑니다 !
Parameter 'DirX' does not exist.
UnityEngine.Animator:SetFloat(String, Single)
X,Y,Walking전부 이 오류가 나는데 어떻게 해결할 수 있을까요?
캐릭터가 맵을 이동했다가 오면 안보이는데 어떻하죠??
중괄호 오류가 많이나던데 중괄호는 중요한가요? 역할이 뭔가요?
또 여백을 만드는건 편의상 그러는건가요?
RUclips현빈찡 중괄호는 시작과 끝을 가리키는 문자입니다.
if문이 있으면 if(){ 이런식으로 조건문의 시작을 알리고 마지막에 }을 사용해서 끝을 알려줍니다. 저희가 보기에도 편하지만요 ㅎ
여백은 그냥 편의상 주는 겁니다. 가독성 정도로 보시면 되세욤
질문 또 드릴게요 전부 다 했는데 엔피씨 이동하는 애니가 다운이 나와야 하는데 업(애니)으로 보이면서 아래로 이동합니다... 애니메이션창에서는 아래로 잘보이는데
게임실행시 위로 보면서 아래로 걷네요
고양이아저씨 애니메이터 블렌드 트리에서 반대로 애니메이션을 넣은 게 아닐까요?
해결했습니다~
영상에는 NPC 애니메이션 모션 설정할 때 Walking과 Standing이 이어져있지 않던데 그대로 따라해보니 케이디님처럼 잘 움직이는게 아니라 정지된 모습으로 사진만 동동 이동이 됩니다.. 어떻게 해야할까요? 또한 2번째 강의 그대로 모션 설정했는데 움직일 때 오른쪽 왼쪽 가는 방향 따라 캐릭터 모습이 변화되지 않습니다. 제가 무엇을 잘못했을까요?
강의 감사합니다 반복문에서 다시돌아오는 npc.direction
Length -1이 있는데 -1이 어떤건지 다시한번만 설명햊 실수 있을까요
배열의 크기를 가리키는 게 length라는 녀석인데 이 녀석은 배열이 0부터 시작되는 것과 관계없이 1부터 카운트가 들어가기 때문에 -1을 해서 배열의 실제 크기와 같게 만들어 주는 겁니다.
배열안에 10 30 50 70이 들어있다면 length는 4라고 뜹니다. 4개가 있으니까요.
하지만 배열의 참조인덱스는 위 배열에선 3이 최대값입니다.
이때 lengh로 참조하려고 했다간 인덱스 오류가 발생하고 말겠죠. 인덱스는 3이 끝인데 4를 참조하라고 했으니까요.
@@케이디 답변 정말 감사합니다.
강의를 따라하다가 이상한 버그가 떴는데요
statrPoint 스크립트에서
if (startPoint == thePlayer.currentMapName)
{
theCamera.transform.position = new Vector3(this.transform.position.x, this.transform.position.y, theCamera.transform.position.z);
thePlayer.transform.position = this.transform.position;
}
여기서startPoint == thePlayer.currentMapName이걸 띄어쓰기를 안하고 해놨더니 유니티에서 오류가 뜨는건 뭔가요? 띄어쓰기를 적용시키니 오류가 사라지네요
개발툴이 반응이 느려서 그랬던 것 같네요.
지금 다시 띄어쓰기 해보시면 아까와 같은 이상한 버그가 사라져 있을 겁니다. ㅎ
@@케이디 그렇군요.
전 또 유니티에선 강박증걸린것마냥 띄어쓰기까지 보는줄 알았네요 '^'b
오류가 정말 없는데도 이상하게 오류 뜬다면 껐다가 키는 게 와따입니다 ㅎ
감사합니다.
@@케이디 매일 강의1강씩 열심히 듣고 있습니다. ㅎㅎ..무료강의인거에 정말 감사하게 생각하고 있어요.
@@케이디 혹시 2.5D 로그라이크 게임(던그리드)이나 부분세이브가 가능한 로그라이크게임(타이탄소울즈) 강좌같은것도 하시는가요?
도트찍거나 디자인하는건 제외하고하는 질문입니다.
좋은 강의 정말 감사합니다. 어려운 부분이 있어서 그러는데 움직임 부분에서 base move(npc.direction[1]) 랑 string _dir랑 무슨 관련이 있나요? 서로 값을 넘긴다고 하시니 어렵네요 ㅠㅠ
배열 i번째에 담긴 _dir값을 base.Move의 인수로 넘겨주면 해당 i번째의 _dir값에 따라 상하좌우 움직임이 바뀌게 됩니다.
한번 실행이 끝나면 그 다음 i+1 번째의 _dir 값에 따라 또다른 움직임이 실행될 겁니다 ㅎ
하앙 허리아파 허리 뿌서진다 척추측만증 앁
잘 보고 있습니다~ 근데 영상 막바지에 npc frequency를 5로 해놓고 실행해보는거 바로 따라했다가 똑같이 멈춰서 재실행했는데 유니티 저장을 안해서요.. 하핳ㅎㅎ하ㅏㅎ다행히 스크립트들은 다 저장돼 있어서 유니티작업만 다시했는데요( npc객체랑 애니메이션 만들기), 실행이 안되네요..ㅜㅜ플레이 눌러보면 플레이랑 일시정지버튼 동시에 눌린채로 멈추고 경고는 216개ㄷㄷ 에러는 6개 뜨는데 눈에띄게 보이는 에러는 2개거드,ㄴ요.[ You cannot remove all layers from an AnimatorController. ] [ NullReferenceException: Object reference not set to an instance of an object ] 이렇게 2개인데,, 애니메이션컨트롤러에서 모든 레이어를 지웠다?는것도 이해가 안가고 그 다음것은 더 모르겠어요.. 이것저것 만져보고 살펴봐도 모르ㅜ겠어서요 ..ㅜ제컴퓨터를 보고계신건 아니니 한방해결방법을 여쭤보는건 아니고 어디어디를 한번 체크해봐야 해결할수있을지 질문 드려봅니다 ㅠㅠ
최시우 아쿠 ㅜ 저장을 안 하셨군요. 유니티에서 저장을 안 해도 그대로 남아있는 파일도 있습니다. 애니메이션 컨트롤러와 그 애니메이션들인데요, 해당 애니메이션 폴더에 그대로 남아있으니 그걸 그대로 npc 애니메이터에 넣어주시면 될 거에요. ㅎ
두번째 오류는 컴포넌트가 없어서 생기는 오류거나, 인스펙터 창에 넣어야 할 것을 안 넣었거나, 배열을 잘못 적었거나, 초기화 작업이 안 이뤄졌을 경우가 주를 이룹니다. 빠진 게 있는지 확인해보세욤ㅜ
지금보니 늦은시간에 답해주셨네요 ㅠㅠ 감사합니다 인스펙터 문제였어요~~ ㅎㅎ