4번째로 오신 유니티 과외 일지 타래! 코딩은 C를 최근에 배우셨고 포인터 까지 아신다. 그리고 어느정도 유니티 지식은 아는 상태.

 

 

1일차

 

유니티 지식과 코딩은 어느정도 아시기 때문에 기초부분은 굉장히 스무스하고 빠르게 넘어갔다. 그래서 하루만에 1.5주치를 다 배우셨다. 생각보다 이해가 빠르시고 호응도 잘 해주셔서 과외 하면서 제일 재미 있었던 ㅋㅋㄱㄱㅋㅋ

기본적인 유니티 인터페이스. 오브젝트를 움직이는 코드. 오브젝트를 움직이는 코드를 활용해 사용자 버튼을 받아 방향을 정해 움직이는 코드. 벡터의 덧셈 , 뺄셈. Transform과 transform 의 차이 까지 했다. 와 너모 많아...

 

 

2일차

 

벡터의 뺄셈 개념까지만 해서 벡터으 뺄셈을 이용해 적 오브젝트를 플레이어를 향해 돌진하도록 만들었다. 그리고 코드를 짜면서 필연적으로 지역변수 전역변수 때문에 버그가 나는데 이 부분의 개념을 PPT로 정리 해놔야겠음 지역전역을 비전공자분은 여기에서 어려워 하시는게 느껴지는데 아시는 분은 아~ 하면서 쿨 하게 넘어가는걸 보고 느꼈다. 일단 전역 지역변수를 여기서 다져야겠다. 그리고 학생분이 전역변수랑 Static이랑 헷갈려 하셔서 Static 개념을 잡아드렸다. 문제는 Static은 싱글톤 할 때 다뤄야되서 예전에 쓴 코드들을 가지고 예제를 삼는데 너무 빨리 Static을 다루는 바람에 예제가 없어서 좀 애먹었다 ㅋㅋㅋ 그래서 충돌하고 에너미 생성까지 했다. 다음시간에 예전에 만든 충돌 비교 프로젝트로 예시를 보여드리기로 했다. 그리고 진도 넘 빠름 돌겠구만~~~~~

 

 

3일차

 

드디어 그 구간... 여태까지 배운걸 토대로 스스로 코딩하기... 여태까지 했듯 코딩하는걸 옆에서 지켜봤는데 안좋은 습관들이 보여 조언해줬다.

 

첫번째 버그가 나는게 무서우신지 코드 실행하기전에 너무 오래 생각하신다. 그래서 여태까지 이해도 잘 하셔서 금방 뚝딱뚝딱 하실줄알았는데 생각보다 오래 걸리셨다. 그래서 어느정도 막힐때는 그냥 돌려보고 버그를 내는게 좋다고 조언해드렸다. 계속 생각만 하면 답이 안보이니까

 

차라리 버그를 내고 그 곳을 중점으로 생각해보고 디버그 찍어보면서 값이 어떻게 변하는지 파악하는게 더 빠르게 개발 가능하다고 말씀드렸다

 

4일차

 

쉐이더와 메테리얼의 개념을 알고 텍스쳐 롤링기법을 사용해 배경이 자동으로 움직이게 해보았다. 겟컴포넌트를 사용해 컴포넌트에 접근하는 방법을 배웠고 메테리얼은 컴포넌트가 아니기 때문에 매쉬 랜더러에 있는 메테리얼으로 접근 해야한다는것을 일부러 버그 내서 보여줬다 그리고 오브젝트 풀링을 해보기 전에 개념을짚고 넘어 갔고 배열과 리스트가 어떤 상황에서 유용하게 쓰이는지 상황별로 보여주며 이해시켰다. 아 다음에 복습하면서 자료구조 앱 그거 보여줘야겠다 그리고 시간이 애매해서 요까지 하고 끝남. 계속 생각해봤는데 이 분은 지금부터

개인적으로 게임개발 해보라고 시키고 싶다. 오늘 한번 이야기 해봐야겠음

 

 

이 이후부터는 안쓰게 되었다. 이유는 패턴이 똑같아서 쓸 필요성을 잃었기 때문이다! 자유 과제때는 패턴 또 달라질거같으니까 그때부터 다시 쓰겠지

 

2019년 7월에 처음으로 쓰게 된 과외 일지다. 

 

간단하게 메모형식으로 적으면서 무엇이 부족했고 무엇을 보완해나갈지 적었었다.

그 메모들을 이 블로그로 옮겼다. 

 

 

새로오신 분 유니티 과외 교육 일지 이번엔 오프라인이 아니라 온라인 강의이다. 프로그래밍은 하나도 모르시는 분!

 

 

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일차 :

 

여태 썼던 코드들을 나한테 리뷰해보도록 했다. 어떤 지식을 누군가한테 설명 하려면 자세하게 알아야하고 무엇을 잘못 이해하고 있고 모르는지 금방 파악이 가능하다. 오늘을 위해 계속 복습했는데 그 덕분인지 전체적으로는 파악을 하고 계셨는데 자세하게는 아직 낯선듯하다.

 

그리고 다음 수업에는 드디어 스스로 코드 짜는 부분이다... 호호호.. 수많은 버그가 기다린다...

 

 

 

 

// 이 다음 부터의 메모는 없었음 

 

 

2019년 8월에 처음으로 쓰게 된 과외 일지다. 

 

간단하게 메모형식으로 적으면서 무엇이 부족했고 무엇을 보완해나갈지 적었었다.

그 메모들을 이 블로그로 옮겼다. 

 

 

유니티 과외 3일차 :

 

원래 코딩 배운애라 습득이 빨라서 과외생한테 일부러 버그 내놓고 고쳐보라고 시켜봤음 그리고 버그 찾을때 쉽게 찾는 방법을 알려줬다. 그리고 버그 찾을 때 옆에 붙어 어떻게 고쳐나가는지 보고 노트에 미리 써둔 후 문제가 되는 부분들을 짚어 줬다 1:1 과외라서 이런식으로 짚어주니까 알려줄수있는게 많은데 1: 다수면 이런식으로 짚어줄수없는게 아깝네

 

유니티 괴외 4일차 : 

 

충돌체크 세팅하는게 헷갈려 하는거 같아서 예제 프로젝트 만들어서 하나하나 비교해줬음 그 프로젝트 따로 백업해놔야겠다 나중에 써먹게 그리고 지금까지 배운거 활용해서 새로운 기능 혼자서 만들어 보라고 시켜봤음 역시나 여기저기에서 헤매는게 보이지만 결국 잘 해냄

 

유니티 과외 5일차 :

 

오브젝트 풀링을 알려줬음 원래 배열이랑 리스트 알고 있는지 금방금방 설명해서 원래 이틀 걸릴꺼 하루만에 끝냄 그래서 또 자료 만들어야함 ㅠㅠㅠ 배열 리스트 모르는 학생 가르킬땐 2~3일 정도 걸릴듯 하다.

 

6일차 :

 

프로젝트 퀄리티를 올리기 위해 무료에셋으로 모델링 , 파티클 , 효과음을 다운받아서 적용 시키고 해당 컴포넌트 사용법이랑 코드 제어하는 방법을 알려줬다. 에셋스토어에 올라온 에셋들 파악, 사용 하는 방법을 알려줬다. 생각보다 로딩하고 적용시키고 거기서 안되는것들이 몇 개 있어 서 조금 시간이 지체 됐었다. 다음부턴 미리 에셋 찾아놓고 그 에셋 어찌 쓰는지 알아놓고 수업을하는게 좋을거같다.

 

7일차 :

 

오브젝트 풀링을 플레이어 총알로만 구현했었다 이걸 Eneny로 적용시켜보라고 시켜봤다. 역시나 막히는 부분이 많았다. 그래도 저번보다는 더 나아졌는데 초보적인 실수들이 자주 보였다. 그 부분들은 계속 지적해주되 논리적인 부분들은 지적하지 않고 버그가 생기게 나뒀다. 이렇게 하면 삽질을 하게되고 경험이 된다. 다만 너무 돌아가지 않게 너무 벗어나는 경우엔 올바르게 잡아주었다. 그리고 원래 플레이어는 객체가 하나라서 풀링을 구현하기에 부담이 없었는데 적 생성 객체는 하나가 아니라서 풀링을 해당 스크립트에 바로 하게되면 굉장히 복잡해지게 된다. 이 경험으로 매니저의

필요성ㅈ을 느끼게 해주었다. 여기서! 매니저를 만들었다면?? 싱글턴까지 알려주기 너모 자연스럽다. "필요성에 의해 기능을 알려주자"는 나의 교육 모토랑 완벽하게 딱 들어맞는 자연스러움이다!!

 

8일차 :

 

스코어 매니저를 만들었다. UI를 간단하게 배워서 만들었고 스코어가 오를 때 마다 자동으로 UI를 갱신되게 해야 하기 때문에 프로퍼티를 배울 필요성이 생겼다. 프로퍼티를 사용해 캡슐화도 배웠다.

 

9일차 :

 

싱글턴을 알려주기 위해 Static에 대해 알려줬다. 스태틱을 왜 사용하는지 사용했을때 어떤 편리함이 있는지 어떤 제약이 있는지 직접 해보며 느끼게 해줬다. 그리고 이 특성을 이용한 디자인 패턴 싱글턴을 알려줬다. Ppt 하루 꼬박 만들었는데 48분만에 격파당함 꺼흑마이갓

 

10일차 :

 

진짜 심플한 슈팅게임을 하나 만들고 있는데 2개월차 부터는 이걸 자신이 기획해서 점점 업그레이드 해나가도록 지도해줬다. 요오즘 애들은 슈팅게임을 안해봐서 장르 특성을 모르더라.. 그래서 킹갓겜 동방프로젝트 요정대전쟁 해보라고 파일 주고 기획서 써오라고 과제를 줬다. 해보니까 대 충 감은 잡더라 ㅋㅋㅋ 역시나 기획서 첨 써봐서 미숙한 부분들이 많이 보였다.일단 지금 기획서를 쓰는건 크게 중요한건 아니지만 의문이 들지 않게 서술할 수 있는건 자세히 서술하라고 했음. 그러고 몇가지 잔기술좀 알려줬다. 오브젝트들이 나를 따라오게해서 유체화? 같은 느낌을 내보도록 러프

사용했는데 내가 아직 미숙해 이해가게 설명을 못하겠어서 다음 시간에 더 자세히 다루기로 했다. 그 이후 정적 프로퍼티 만들어서 플레이어 hp 관리하게 만들었다. 확실히 스태틱 쓰면 편해ㅎㅎ \

 

 

11일차 :

 

지금 과외 받고 있는 친구는 이 과외 끝나고 친구들이랑 게임을 만들 생각이라서 기획서 쓰는 것 , 회의 하는 방법 , 마일스톤 기타 등등을 알려줬다. 절대 처음 프로젝트 부터 크게 잡지말고 최대한 작게 하라고 충고했는데 그냥 크게 벌릴 생각인듯 ㅋㅋㅋ

 

12일차 :

 

Lerp의 이동과 translate 이동의 차이점을 직접 보여줬다 . 둘을 직접 비교하면서 어떨때 저 둘을 써야할지 느끼게 해줬다. 그리고 기획서 다듬어서 마무리 지었음... 그래도 아직 많이 미숙해 보이지만 그건 프로젝트 하면서 어떤 부분에서 기획서가 부족한지 느끼게 해줘야 할듯하다

 

14 ~16일차 : 

 

학생한테 저저번주까지 프로토타입 만들어오라고 했는데 잘 수행하지 못해 예상보다 더 만들지 못함... 먼가 애매... 기능 하나 알고리즘을 생각못해서 같이 구현 해보기로 했다. 확실히 좀 쉬어보였는데 막상 또 하니까 조금 복잡해서 이건 내가 구현해서 알려주기로 했다.

 

내가 짠 코드를 리뷰하는건 또 오랫만이라 기부니가 묘했음.. 코드만 보여주는게 아니라 원노트 이용해서 그림으로 먼저 어떤 로직인지 보여주고 그 담에 코드를 리뷰했다. 이게더 알아먹기 쉬움

 

 

 

 

 

 

 

+ Recent posts