Daily Life/achievement

Goal - 5월 4주차 Unity Learn (Goal 글 개선)

hiheybye 2024. 5. 21. 17:00

Work On

더보기

2024.05.16 - [Endeavor/Unity Stuff] - Unity Learn - Creative Core Pathway - Final Submission

 

Unity Learn - Creative Core Pathway - Final Submission

Goals - 구상한 아이디어의 프로토타입을 구현IDea  랜덤요소 + 전투 시뮬레이션, 게임이라기보다는 구경하는 느낌의 프로젝트의 프로토타임 버전, 플레이 가능한 게임이라기 보단, 동영상 마냥

roaring-stretching-thought-wood.tistory.com

2024.05.23 - [Study/Unity learn] - Unity Learn - Basic Design Patterns

 

Unity Learn - Basic Design Patterns

Goals - 코드 작성 개선을 위한 기초적인 디자인 패턴을 공부한다.Daily더보기 2024 / 05Onserver pattern 이론23 Onserver pattern 기초적인 사용방법24Reference더보기https://learn.unity.com/project/65de084fedbc2a0699d68bfb?u

roaring-stretching-thought-wood.tistory.com

 

 

2024.05.24 - [Endeavor/Unity Stuff] - Unity - FPS microgame code 분석

 

Unity - FPS microgame code 분석

Goals Unity FPS - microgame의 code를 분석한다# 다수의 추측도 포함.FPS microgame / Assets / FPS / Scripts / AI / DetectionModule.cs EnemyController.cs  DetectionModule.cs EnemyMobile.cs  EnemyTurret.cs FollowPlayer.cs  NavigationModu

roaring-stretching-thought-wood.tistory.com

 

Plan

2024.04.29 - [Daily Life/achievement] - Plan - 2024년 5월

 

Plan - 2024년 5월

To DoCreative Core PathwayJc-Programmer-Project 스크립트 파헤치기Design Patterns (Basic) Basic OPP Theory Project FPS microgame 코드 파헤치기Creativecore 주요점  파헤치기creativecore-shaders-2022.3LTS Water shader graph 파헤치기C

roaring-stretching-thought-wood.tistory.com

 

Daily

# 일상 패턴 고착하기

2024 05/4주차 20 21 22 23 24 25 26 평가
시간 활동 예비군 훈련 계획 작성일            
6:00 ~ 6:30 기상 및 준비               기상은 전멸
6:30 ~ 8:00 운동 및 준비               운동도 전멸
8:00 ~ 12:00 오전 타임     T T        분발하자
13:00 ~ 17:00 오후 타임     T T - T T 준수하다
18:00 ~ 22:00 저녁 타임 (반반)      -   T   T 사실상 오전 보충
22:00 ~ 23:00 준비 및 취침     T     T T 그래도 전보단 개선됨

Do list

CreativeCore Final project 진행 T
Unity / Basic Design Patterns T
FPS microgame code 분석 T

20240520 : 예비군 훈련

20240521 : 지난 계획 실패를 반성하고, 리부팅

더보기

  계획이 무너진 것에 자책하되, 추춤거리진 말자. (솔직히 학생 때나 하는 것들을 지금 하고 있다는게 조금 그렇긴 하지만) 이참에 새롭게 개선하자.

 

깨부하자, 몸도 좋아졌잖아. 그동안 뒤져진거 만회하고 주 60시간만 공부해보자. 이번엔 그래도 하고 싶은거 공부하잖아.

Goals Ver 1

Goals prototype의 개선점

  매일 6시간 타이머를 채우는 건, 결국 늦게 시작 해도 된다는 생각과 언제든 끊고 다시 시작해도 된다는 생각에 학습을 미루게 되고 늦어지게 됨

  -> 이를 특정시간에 체크포인트처럼 할 수 있도록 조정

 

  날에 대한 진행사항 및 생각을 적는 건, 진행도를 수치화 할 때에 기준이 자의적이기 때문에 오히려 어긋나는 원인이 됨

  -> 학습을 했음을 간략히 증명하는 내용을 적는 것(동기 부여용)으로, 그럼 무엇을?  세부 진행 사항은 이 외의 글에서 작성하니까 여기서는 시행착오를 위주로 작성하기? 이점은 진행하면서 결정하도록 한다.

 

  이번에도 마찬가지지만, 계획을 과하게 크게 잡는 경향이 있음

  -> T/F 체크하는 형식으로 수정해야할 필요가 있을것 같음

 

 각 주가 끝날 때 해당 주를 평가하는 건 이점이 있으나 량(量) 위주로 평가하게 됨,  미달이라 평가되면 다음 주에 오히려 부담이 가는 경우가 있음. 이는 Plan 을 이용한 한 달 계획을 어떻게 구축 해야할지까지 생각해봐야함.

  -> Goals 항목을 폐기하고, Plan에 T/F 항목을 두고 진행 역할이 미약했던 Plan도 개선 될듯, 진행 항목을 가져오고 특정색을 부여하고, T/F 표시

 

다만 프로젝트에 한에서 타임 리미트가 있는게 이점이 있다고 생각하므로, 큼직큼직한 프로젝트는 시간 제한을 두는 방법도 고려해야 할듯.

 

  

20240522 : CreativeCore Final project

더보기

CreativeCore Final project 진행,Game 시점 구성

 

probulider로 지형 외각 테두리를 생성, 익숙치 않아 비교적 오래걸림, probulider로 메시를 다루기 때문에(Maybe?), 평행선을 이용한 면 생성에 비교적 제약이 있었음 예를 들어, 각각 다르게 생성한 선이 평행처럼보이더라도, 이 선들을 이용한 면 생성이 활성화 되지 않았음.

 

  오전 타임 - CreativeCore Final project 진행, 패키지 매니저로 에셋 임포트를 할 때, 만약 텍스쳐 파일 및 리소스 파일을 받기 위함이라면, 디펜던시 업데이트는 스킵해도 될 듯 하다. git으로 틈틈히 백업도 잊지말자, 되돌아갈때 이만한게 없다.

 

shadergraph 조잡하지만 간단한 아우라 효과 생성, 핵심은 여러 문양을 만들고 합치는 것과, 그래디언트를 일종의 마스크로 사용해서 매시 상단에 효과가 덜 나타나도록 구성.

 

3D 에셋을 좌우 대칭시키는 방법은 Scale 를 -로 설정, 한쪽 손으로 양손을 생성 할 수 있더라.

 

 

20240523 : 

End - CreativeCore Final project, Initial - Basic Design Patterns

더보기

  프로토타입이고, 정말 체험용 간단한 구현이라 위에서 아래로 코드를 작성했더니, 정말 간단한 기능 추가도 정말 제한적이였다. 그래도 프로토타입을 한번 만들어보니, 컴포넌트를 어떻게 구성해야할지 조금은 감이 잡히는 느낌이다. 앞으로도 간단한 프로토타입 구현은 습관화해야겠다.

 

  CreativeCore Final project를 좀 더 다듬을까 하다가, 위의 이유로 코드에 대한 공부를 더 해야겠다는 생각이 들었다. 특히나 여러 구현방식을 익혀야할 것

 

  hp 변수를 unit과 buliding에 컴포넌트에 구현하고 참조하는 동작에 대해,  외부 컴포넌트에서 unit, building에 별도로 접근하지 않고 hp에 접근 가능하도록 코드를 구성하려면 어떻게 해야하는가?

 

? null 조건부 연산자를 이용한 코드 작성, ?? 포함

 

에디터 인스펙터에서 컴포넌트 참조

 

20240524 :

Basic Design Patterns - Observer Patterns, FPS microgame 코드분석 - EventManager.cs 

더보기

  6시에 깨긴 하는데 자꾸만 다시 눕게된다. 뭔가 책임이 없으니 느슨해진다. 오전타임은 어영부영, 오후타임은 손님이 방문

 

  Observer pattern 공부을 진행하던 도중, FPS microgame의 EventManager.cs에 대한 언급이 있었고, 코드 공부도 할 겸사겸사 코드 분석 항목도 추가하였다. 어째 할 게 늘어나게 되었다.

 

  FPS microgame 코드 분석 글의 뼈대를 생성. 표로 모든 cs 파일 리스트를 만듬(괜히 했나 싶기도 하고...)

 

 메서드A() => 메서드B(인수);  람다식 표현을 통한 메서드 동작구현

 

20240525 :

FPS microgame 코드분석 - EventManager.cs 마무리

 

20240526 : 

Basic Design Patterns - State Patterns, Object Pooling

 

더보기

읽기 전용 속성

 

State pattern은 상태를 추적하기 위한 것으로, 기능을 추가하여 Event를 발생하도록 할 수 있음.

해당 예제에서는 플레이어 개체의 속도, 플레이어가 땅에 닿아있는지 여부 등, 로직에 의한 상태가 아닌 플레이에 직접적으로 연관된 요소에 대해 상태를 추적한다고 보면 될것 같기도 하고?

메서드를 변경되는 경우에 대해서는 잘 모르겠다.

FPS microgame 의 PlayerWeaponsManager.cs 에서는 state를 Monolithic 하게 구현해서 아직은 좀 긴가민가.

 

Unity 는 Pool를 제공한다. 

예제에서는 객체 자체는 미리 생성해 두지 않았다.