본문 바로가기

멋쟁이사자처럼 유니티 부트캠프 4일차 추가학습(C#, Unity 에디터)

@salmu2025. 5. 19. 09:12
반응형

[4일 차 수업내용]

1. Native C# 경험해 보기

2. 유니티 에디터 알아보기

 

 

1.1 데이터타입(자료형)의 기본값

bool 참/거짓 false
int 정수형 0
long 더 큰 정수형 0L
float 실수형 (4바이트) 0.0f
double 더 정밀한 실수형 0.0d
char 문자형 '\0' (널 문자)
string 문자열 null
object 모든 타입의 부모 null

 

C#에서는 변수를 선언만 하고 값을 지정하지 않아도,

자동으로 기본값이 설정된다.

 

단, 클래스의 멤버 변수일 때만 자동으로 기본값이 할당된다.
지역 변수는 초기화하지 않으면 사용할 수 없다

 

1.2 지역 변수(Local Variable)란?

지역 변수함수(메서드) 안에서 선언되는 변수이다.

해당 블록 안에서만 사용 가능하며, 함수가 끝나면 사라진다.

 

void PrintInfo()
{
    int level = 10; // 지역 변수
    Console.WriteLine($"레벨: {level}");
}

levelPrintInfo() 함수 안에서만 존재하는 지역 변수다.

함수 밖에서는 절대 접근할 수 없다.

 

 

1.3 배열과 리스트

둘 다 여러 데이터를 한 번에 관리하는 자료구조지만, 가장 큰 차이는 메모리 크기의 유동성이다.

 

배열 (Array)

  • 데이터 묶음의 크기고정
  • 선언할 때 길이를 정해야 함
  • 인덱스로 값에 접근 (0부터 시작)
  • Length로 길이 확인
int[] scores = new int[3] { 90, 85, 70 };
Console.WriteLine(scores[1]); // 85
Console.WriteLine(scores.Length); // 3

 

 배열은 고정된 크기의 메모리 공간이 필요할 때 사용

→ 성능이 중요하거나, 크기가 변하지 않을 경우에 적합

 

 

 

리스트 (List)

  • 크기 변경 가능 (유동적)
  • 값 추가/삭제 자유로움
  • 배열보다 유연하게 사용 가능
  • Count로 현재 요소 개수 확인
  • using System.Collections.Generic; 필요
List<int> numbers = new List<int>();
numbers.Add(10);
numbers.Add(20);
numbers.Remove(10);
Console.WriteLine(numbers.Count); // 1

 

리스트는 데이터 개수가 자주 바뀌는 경우에 유리

→ 관리하기 쉽고 확장성이 좋음

 

 

 

1.4 For 반복문

for 반복문은 코드 블록을 정해진 횟수만큼 반복할 때 사용하는 반복문이다.

 

for (초기화; 조건; 반복식)
{
    // 반복할 코드
}

 

 

 

배열과 함께 쓰는 예시

string[] fruits = { "사과", "바나나", "포도" };

for (int i = 0; i < fruits.Length; i++)
{
    Console.WriteLine(fruits[i]);
}

 

 

1.5 프레임과 델타타임

Frame 한 장의 게임 화면 연산량을 줄여 프레임 속도를 높이는 것이 중요
FPS 초당 프레임 수 높을수록 부드러운 게임, 낮을수록 끊김 발생
Delta Time 프레임 간 시간 간격 FPS 차이를 보정해 게임을 ‘시간 기반’으로 만듦

 

프레임은 상황에 따라 일정하지 않다.

CPU나 GPU가 무거운 작업을 하면, FPS가 줄어들 수 있다.

 

이때 DeltaTime을 곱해주지 않으면,

프레임 수에 따라 게임 오브젝트의 이동 속도가 달라진다.

 

 

 

2.1 가시성 오류 해결 

Hierarchy의 눈 아이콘을 누르면 scene 창에서 요소가 안보여야 하는데..(가시성 조정) 작동이 안 된다.

 

해결방법

눈 아이콘을 켜야 작동한다. 

Unity를 강의 듣느라 작은 화면으로 해놨더니... 눈 아이콘이 계속 안 보였는데

어떤 게 안 보인다면 화면을 키워보자.😂

 

 

 

2.2 global/ local과 center/pivot

 

구분 Local (로컬) Global (글로벌 / 월드)
기준 부모 또는 자신 기준 씬 전체 (월드 공간) 기준
위치 부모 기준 상대 위치 씬 내 절대 위치
회전 자신의 방향 기준 회전 씬 기준 회전
스케일 자신의 축 기준 크기 조절 씬 기준으로는 간접적 영향

 

기준 종류 의미 핸들 기준점  예시 상황
Pivot 원래 오브젝트의 중심 (피벗 포인트) 오브젝트의 Transform 위치 3D 모델링할 때 설정된 기준점
Center 선택한 여러 오브젝트의 평균 중심점 여러 개 선택 시, 중앙에 핸들 표시 그룹으로 이동/회전할 때 유용

 

  • Pivot: 각각의 오브젝트에 대해 따로 기준점이 있음
  • Center: 전체 선택된 오브젝트들의 중심에 핸들이 생김 → 일괄 조작에 유용
  • 오브젝트를 회전할 때는 Pivot + Local이 가장 직관적인 경우가 많고,
  • 여러 개를 동시에 정렬하거나 이동할 때는 Center + Global이 유용
반응형
salmu
@salmu :: SMU 각종 기록

목차