본문 바로가기

분류 전체보기

(19)
클라이언트 게임에서 클라이언트의 개발은 보통 유저들에게 실제로 게임 화면을 보여주기 위한 작업입니다. 온라인 게임의 경우 서버에 접속할 수 있게 해주는 응용 소프트웨어의 개발이라고 할 수 있습니다. 하지만 이런 클라이언트 프로그래머도 여러 분야로 세분화가 가능합니다. 사운드 프로그래머물리 프로그래머애니메이션 프로그래머툴 프로그래머렌더링 프로그래머AI 프로그래머게임 플레이 프로그래머 하나씩 간단하게 살펴보겠습니다. 사운드 프로그래머게임에 사용되는 BGM, 효과음 등의 사운드 요소의 연출 및 믹싱을 담당하고, 게임 개발에 사용되는 엔진과 연계하여 게임 프로젝트에 사운드를 도입합니다. FMOD 등과 같은 미들웨어를 이용하여 작업을 많이 한다고 합니다. 물리 프로그래머게임에 쓰이는 물리 연산을 최적화하고 적용하는 작업을..
Vector & Array Array 같은 타입의 변수들로 이루어진 집합입니다. 동적 할당으로 실행 시간에 크기를 지정하지 않는 이상 정해진 크기를 가지고 있습니다. 그리고 인덱스를 통해 배열 원소에 접근하기 때문에 인덱스를 알고 있는 임의의 원소에 대한 접근 및 수정은 O(1)의 시간 복잡도를 갖게 됩니다. 따라서 Array는 인덱스를 알고 있을 때 접근 및 수정에 매우 빠른 속도를 갖습니다. 백준이나 프로그래머스에서 알고리즘 문제를 풀 때 배열의 최대 크기를 알 수 있으면 Array를 사용하는 것도 이러한 이유입니다.Vector Array 기반의 컨테이너로써 크기를 지정할 수 있는 가변 배열로 힙 영역에 동적 할당됩니다. Vector는 기본적으로 선언할 때 크기를 지정하지 않으면 컴파일 환경에 따른 임의의 크기가 할당됩니다. ..
Version 8.0 Unity 2021 LTS에 사용되는 C# 8.0에 대해 알아보았습니다.​Microsoft에서 발표한 C#의 새로운 기능은 다음과 같습니다.https://docs.microsoft.com/ko-kr/dotnet/csharp/whats-new/csharp-8먼저 C#에서는 switch의 패턴 일치를 표현식(=>)으로 간결하게 구현할 수 있게 해주었습니다.static double GetArea(Shape shape){ // C# 8.0 switch expression double area = shape switch { null => 0, Line _ => 0, Rectangle r => r.Width * r.Height, ..