TIL

[멋쟁이사자처럼 부트캠프 TIL회고] 72일차

Cadi 2025. 2. 11. 17:03

오늘 배운 것

1. 어제 버그 수정 (with Closure)

2. 2D 프로젝트의 기본

3. 퀴즈 게임 기초 구조 설정

 

 

1. 버그 수정 ( with Closure)

using System;

public class Example
{static Func<int> CreateCounter(int startNumber)
    {
        int count = startNumber;
        return () =>
        {
            count++;
            return count;
        };
    }
    public static void Main()
    {var counter1 = CreateCounter(0);
        
       Console.WriteLine(counter1());
       Console.WriteLine(counter1());
        
    }
}

 

함수를 호출했을 때 함수를 리턴함.

동작하는 함수 객체 자체를...

 

클로져라는 함수는 자신의 영역 외부에 있는 변수를 .. 캡쳐하게된다. 

(단순하게 표현한다면 나중에 변수를 정상적으로 사용할 수 있게 하기 위해서 변수의 참조를 갖고 있음)

 

간단하게만 정리하고 , 따로 포스팅 할 예정이다.

 

아래는 GPT에게 물어본 Destroy 함수의 작동 방식 ! 이렇기 때문에 어제 문제가 발생했다. 

버그를 디버깅 해 보기 위해서 Analysis - Memory profier ( 없으면 패키지 매니저에서 다운)

 

 

확실히 다른 것을 알 수 있다. 

2. 2D의 기

 

1. 스프라이트 관련

스프라이트 설정 - Pixels Per Unit조정, Filter 모드 설정(보통 point)

스프라이트 에디터에서 커스텀 콜라이더 조작 가능 (링크 참조)
https://docs.unity3d.com/kr/2019.4/Manual/CustomPhysicsShape.html

 

스프라이트 에디터: 커스텀 물리 모양 - Unity 매뉴얼

스프라이트 에디터의 Custom Physics Shape 를 이용하면 스프라이트 콜라이더 2D 메시의 초기 모양을 정의하는 스프라이트 물리 모양을 편집할 수 있습니다. 물리 모양은 콜라이더의 컴포넌트 설정을

docs.unity3d.com

 

2. 애니메이션 관련

 

유니티에서 2D 애니메이션은 보통 Sprite로 만든다.

Sprite를 시간의 흐름에 따라 연속적으로 바꿔주며 만듬. 

 

Animation Controller는 설계도 , 제어 역할으로써 여러 애니메이션을 갖고 있는다. 

- 여러 애니메이션 클립과 상태를 관리, 애니메이션 간의 전환 규칙(Transition)을 정의, 애니메이션 재생 속도, 시작 지점 등을 제어한다. 

Animator Controller는 실행자 역할로 특정 애니메이션을 선택해 실행한다. 

-Animation Controller에서 정의된 내용을 바탕으로 실제 애니메이션을 실행하는 역할, 파라미터를 사용하여 애니메이션

전환을 제어하고, 현재 재생 중인 애니메이션 상태 추적

 

스프라이트 들을 드래그 ㅡ 드롭으로 씬 상에 배치함으로써 애니메이션을 만들 수도 있지만 ,

구조를 더 잘 파악하기 위해서는 초반에 create로 만들어보고, 스프라이트들을 배치해 보는 것도 좋다. 

 

Has Eixt time = 애니메이션이 변경되었을 때 ( transit ) 남은 애니메이션을 재생할 것이냐 

Transtion Time = 애니메이션 변경 시간

 

3. Tile Palette

- 나중에 룰 타일도 배울 것

 

3. 퀴즈 게임 기획

 

게임을 출시하고 광고를 달기 위해서

- 구글 개발자 계정 ( 구매 필요)

- ADMob  ( 광고 ) 

이 둘 정도는 따라해 보는 것이 좋다. 

 

IOS로 세팅하기 위해서는 맥 환경이 필요, X Code로 해야 한다. 

 

구글은 구글 플레이 게임 서비스 ( Google Play Game Services)를 통해

  • 업적
  • 리더보드
  • 소셜
  • 멀티 플레이어
  • 클라우드 저장

등의 기능을 제공

 

애플은 애플 게임 센터 ( Apple Game Center) 를 통해

  • 업적
  • 리더보드
  • 챌린지
  • 친구
  • 멀티플레이어

등의 기능을 제공

 

* 참고:  IOS는 다른 앱의 Documents 디렉토리에 접근 불가

 

다음에 만들 퀴즈 게임을 통해 파일을 읽고 써서 편집해 볼 것임

 

- 이게 제일 기대된다. !

 

 

 

오늘의 목표

1. 유클리드 호제법 정리 

2. 코딩 테스트 ( 프로그래머스 레벨 1 / 2 페이지 완료) 

3. 멋사 강의 듣기

4. 질문 정리