1.오늘의 알고리즘 코드카타 - 두 개 뽑아서 더하기
답안 :
using System;
using System.Collections.Generic; //List를 위함
using System.Linq; //Distinct를 위함 <= 중복되는 값을 제거
public class Solution {
public int[] solution(int[] numbers) {
//리스트 기능들 쓰기 위해 리스트로
List<int>answer = new List<int>{};
//2개의 수를 정하는 이중 반복문
for(int i = 0; i < numbers.Length; i++)
{
for(int j = i + 1; j < numbers.Length; j++)
{
answer.Add(numbers[i] + numbers[j]);
}
}
//오름차 정렬
answer.Sort();
//배열화 밑 중복 제거
return answer.Distinct().ToArray();
}
}
2. 오늘 차 공부
오늘도 어제에 이어 공부를 이어갔다. 사실 더 실질적인 유니티 내에 작업이 있었으면 좋았을 것 같지만, 현재는 공부 만으로도 벅찼던 느낌이다. 이전 팀 과제에 매니저 구조를 그대로 만들어 보고 있는데, 단순히 따라하는 게 아니라 모든 부분에 주석을 붙여보고 있는데, 이 부분이 생각보다 굉장히 오래 걸리고 있다.
현재 구조를 따라해 보면서 사실상 '게임'으로서 엔진에 구현된 것은 없지만 코드는 계속해서 늘어가고 있다. 항상 비주얼 같은 부분에 신경을 많이 쓰는 나는 굉장히 지루한 과정이지만, 동적 생성을 위해 메인 매니저를 중심으로 여러 매니저를 구분해서 관리하고 있다 보니, Enum을 모아둔 Define과 / 다른 메소드들을 묶어둔 Utilities와 같은 이전에는 따로 만들어보지 못한 것들도 만들어야 하고 있다. 또 UI에 이렇게 많은 비중을 둔 것도 처음이다. 처음인 것이 너무 많아 작업이 너무 느린 느낌이다.
공부하면서 다른 강의들을 보며 작업하였다.
그 중에서도 기억에 남는 것이,
https://www.youtube.com/watch?v=1e2mSCS7o1A
이 부분에 나오던 UI가 사실은 Mesh로 이루어진 점,
그렇기에 랜더링 오더가 생겨나 Z축을 바꾸게 되면 드로우 콜이 발생하는 batch가 몇 배로 늘어나기 때문에 각종 아틀라스 등으로 아무리 최적화를 시도해도 무거워 지는 것,
pixel perfect 옵션이 굉장히 무거워 움직일 때 걸리는 렉이 있는데 이를 움직이는 조작 순간에 꺼지도록 코딩을 하여 사용하는 방법 등등이 생각 못해본 부분들을 가르쳐 주는 것이 좋았다.
'TIL' 카테고리의 다른 글
[TIL]2024-2-23 / 43일차 - 디자인 패턴 (0) | 2024.02.23 |
---|---|
[TIL]2024-2-22 / 42일차 - 심화 주차 개인과제 제출 (0) | 2024.02.22 |
[TIL]2024-2-20 / 40일차 - 심화 주차 2일차 (0) | 2024.02.20 |
[TIL]2024-2-19 / 39일차 - 심화 주차 시작 (0) | 2024.02.19 |
[TIL]2024-2-16 / 38일차 - 팀 과제 마무리 (0) | 2024.02.16 |