4번째로 오신 유니티 과외 일지 타래! 코딩은 C를 최근에 배우셨고 포인터 까지 아신다. 그리고 어느정도 유니티 지식은 아는 상태.
1일차
유니티 지식과 코딩은 어느정도 아시기 때문에 기초부분은 굉장히 스무스하고 빠르게 넘어갔다. 그래서 하루만에 1.5주치를 다 배우셨다. 생각보다 이해가 빠르시고 호응도 잘 해주셔서 과외 하면서 제일 재미 있었던 ㅋㅋㄱㄱㅋㅋ
기본적인 유니티 인터페이스. 오브젝트를 움직이는 코드. 오브젝트를 움직이는 코드를 활용해 사용자 버튼을 받아 방향을 정해 움직이는 코드. 벡터의 덧셈 , 뺄셈. Transform과 transform 의 차이 까지 했다. 와 너모 많아...
2일차
벡터의 뺄셈 개념까지만 해서 벡터으 뺄셈을 이용해 적 오브젝트를 플레이어를 향해 돌진하도록 만들었다. 그리고 코드를 짜면서 필연적으로 지역변수 전역변수 때문에 버그가 나는데 이 부분의 개념을 PPT로 정리 해놔야겠음 지역전역을 비전공자분은 여기에서 어려워 하시는게 느껴지는데 아시는 분은 아~ 하면서 쿨 하게 넘어가는걸 보고 느꼈다. 일단 전역 지역변수를 여기서 다져야겠다. 그리고 학생분이 전역변수랑 Static이랑 헷갈려 하셔서 Static 개념을 잡아드렸다. 문제는 Static은 싱글톤 할 때 다뤄야되서 예전에 쓴 코드들을 가지고 예제를 삼는데 너무 빨리 Static을 다루는 바람에 예제가 없어서 좀 애먹었다 ㅋㅋㅋ 그래서 충돌하고 에너미 생성까지 했다. 다음시간에 예전에 만든 충돌 비교 프로젝트로 예시를 보여드리기로 했다. 그리고 진도 넘 빠름 돌겠구만~~~~~
3일차
드디어 그 구간... 여태까지 배운걸 토대로 스스로 코딩하기... 여태까지 했듯 코딩하는걸 옆에서 지켜봤는데 안좋은 습관들이 보여 조언해줬다.
첫번째 버그가 나는게 무서우신지 코드 실행하기전에 너무 오래 생각하신다. 그래서 여태까지 이해도 잘 하셔서 금방 뚝딱뚝딱 하실줄알았는데 생각보다 오래 걸리셨다. 그래서 어느정도 막힐때는 그냥 돌려보고 버그를 내는게 좋다고 조언해드렸다. 계속 생각만 하면 답이 안보이니까
차라리 버그를 내고 그 곳을 중점으로 생각해보고 디버그 찍어보면서 값이 어떻게 변하는지 파악하는게 더 빠르게 개발 가능하다고 말씀드렸다
4일차
쉐이더와 메테리얼의 개념을 알고 텍스쳐 롤링기법을 사용해 배경이 자동으로 움직이게 해보았다. 겟컴포넌트를 사용해 컴포넌트에 접근하는 방법을 배웠고 메테리얼은 컴포넌트가 아니기 때문에 매쉬 랜더러에 있는 메테리얼으로 접근 해야한다는것을 일부러 버그 내서 보여줬다 그리고 오브젝트 풀링을 해보기 전에 개념을짚고 넘어 갔고 배열과 리스트가 어떤 상황에서 유용하게 쓰이는지 상황별로 보여주며 이해시켰다. 아 다음에 복습하면서 자료구조 앱 그거 보여줘야겠다 그리고 시간이 애매해서 요까지 하고 끝남. 계속 생각해봤는데 이 분은 지금부터
개인적으로 게임개발 해보라고 시키고 싶다. 오늘 한번 이야기 해봐야겠음
이 이후부터는 안쓰게 되었다. 이유는 패턴이 똑같아서 쓸 필요성을 잃었기 때문이다! 자유 과제때는 패턴 또 달라질거같으니까 그때부터 다시 쓰겠지
새로오신 분 유니티 과외 교육 일지 이번엔 오프라인이 아니라 온라인 강의이다. 프로그래밍은 하나도 모르시는 분!
1일차 :
구글에서 만든 코딩과 유사한 퍼즐게임인 Blockly Game을 9단계 까지 해 보았다. 어떻게 문제를 해결해 나가는지 잘 보면 나중에 디버그를 어떻게 할지 감이 잡힌다. 감을 잘 잡으시는거 같으시면서도 헤매시는 부분들이 있었는데 그 부분들을 잘 기억해놔야겠다.
분명 코드 짤때도 비슷하게 실수 하실거 같다. Blockly Game 좋다. 자연스럽게 If문 for문의 필요성을 알게 해주기 때문이다. 그리고 유니티의 기초적인 인터페이스나 지식들을 알려드렸다. 한번에 좀 많은 내용들을 다뤄서 당연히 몇가지는 까먹을 수 있으니 다음 강의 때 잠깐 복습을 하고 넘어가야 겠다! 과제는 자신의 방을 유니티 기본 도형으로 구현해 보도록 했다. 이렇게 하면 유니티 다루는게 익숙해 지기 때문에 매번 첫 과제는 자신의 방을 만드는거로 한다.
2일차 :
과제 잘 해오셨다.너무 아기자기해서 넘 귀여웠음. 복습으로 저번에 했던거 쭉 훑으면서 상기 시켜줬다. 오늘 좀 많은걸 배웠는데 먼저 IF문! 브록키 코드로 IF문을 배우고 그대로 유니티 가서 IF문을 만들어 좀 더 이해하기 쉽게 IF문을 알려줬다. 둘이 비교해보면 비슷해 이해하기 쉽다
그 다음엔 클래스와 변수와 함수를 알려줬다. 클래스와 함수는 원으로 비유하고 변수는 선으로 비유했다. 그리고 각자 역할을 설명했다. 그리고 transform.Translate(Vector3.right * 5 * Time.deltaTime); 이 코드가 뭔지는 모르겠지만 아무튼 적용시켜보니 오브젝트가 오른쪽으로 움직이는걸 볼 수 있게 해줬다. 이러면 딱 감이 오니까. 그리고 뭔지는 모르겠지만 왼쪽으로 움직이게끔 해보라고 유도 했다. 역시나 right를 Left로 바꾸셨다. 역시 다들 눈치가 좋으셔 그리고 해당 코드를 하나씩 하나씩 설명해줬다.
이번 시간은 조금 내 자신이 못마땅 했다. 전달력이 별로였던거 같음. 설명도 잘 한거같지도 않다. 온라인으로 강의해서 그런가 좀 맘에 안든다. 그리고 PPT 예전에 자신있게 만든건데 지금보니 매우 맘에 안든다. 싹다 고쳐버릴까. 흐름도 맘에 안들고 디자인도 맘에 안듬
지금 과외생은 플밍 기초는 다 알고있어서 이거 모를거 같아 조목조목 설명하다가 학생이 형 저이거 알아요 하면 아 그래?? 머쓱 하고 이젠 그냥 이거 알지? 하면 ㅇㅇ 알아요 하고 슥 넘어가게 되니 이젠 기초적인거 설명할때 더 머리아프네... 기초 부분 다시 만들어야겠다 ㄹㅇ 맘에 안듬
3일차 :
벡터에 대해 더 자세히 알아보기로 했다. 벡터 덧셈을 이용해서 사용자 키를 받아 플레이어를 움직이게 했고 벡터 뺼셈을 이용해 적을 만들기로 했다. 벡터 뺄셈으로 오브젝트 간의 거리를 구하고 적이 플레이어에게 박치기 하도록 했다. 크게 적을껀 없어보인다..!
4일차 :
전전 수업까지 복습 후에 다음 수업으로 넘어갔다. 복습은 저번 수업때 썼던 코드들 쭉 보면서 함수 주석으로 필기하고 왜 이런식으로 썼는지 원인과 결과를 중점적으로 봤다. 그리고 2번 복습후에 3번째 때는 직접 나한테 설명 해보라고 해야겠다. 나만 알려주니까 내가 다 외워버려서...ㅎ
그리고 진도는 충돌관련 컴포넌트 적을 일정한 시간마다 생성하기 위해 생성코드, 타이머 까지 구현했고 시간땜에 프리펩은 아직..!
5일차 :
다시 복습...! 적응이 잘 안되시는 듯 하다... 유튜브에 플밍강의 보시면 좀 나아지시려나
6일차 :
여태 썼던 코드들을 나한테 리뷰해보도록 했다. 어떤 지식을 누군가한테 설명 하려면 자세하게 알아야하고 무엇을 잘못 이해하고 있고 모르는지 금방 파악이 가능하다. 오늘을 위해 계속 복습했는데 그 덕분인지 전체적으로는 파악을 하고 계셨는데 자세하게는 아직 낯선듯하다.
그리고 다음 수업에는 드디어 스스로 코드 짜는 부분이다... 호호호.. 수많은 버그가 기다린다...