Unity Programming [0] : C# 프로그래밍
·
Development/3D Engine Programming
유니티에서 C# 객체지향 프로그래밍(OOP)은 복잡한 게임 시스템을 관리하고 유지보수성을 높이는 데 필수적이다. 객체 지향 프로그래밍을 이용하면 클래스와 상속, 다형성 등을 통해 코드를 모듈화하여 재사용성을 극대화하고, 확장성을 높여 새로운 기능을 쉽게 추가할 수 있다. 또한, 코드의 구조를 명확히 나눔으로써 협업 시에도 개발자 간의 작업 충돌을 최소화하고, 수정할 때 특정 부분만 수정하면 되므로 오류 발생 가능성을 줄일 수 있다. 이를 통해 효율적인 개발과 코드 관리가 가능해진다. 유니티 C#에서는 네임 스페이스, 클래스, 구조체, 제네릭 타입 등을 통해 이를 구현할 수있다. 코드를 간소화하려면 반복되는 부분을 별도의 메서드로 추출해 공통적인 기능을 모듈화하는 것이 좋습니다. 예를 들어, 각 손의 진행..
Unity Development [2] : 물리 시뮬레이션
·
Development/3D Engine Development
콜라이더는 유니티에서 가장 많이 쓰이는 것 중 하나로, 충돌을 감지할 때 쓰입니다.3D에서는 Box Collider, Sphere Collider, Capsule Collider,2D에서는 Box Collider2D와 Circle Collider2D가 대표적으로 쓰입니다.콜라이더의 형태가 간단할수록 기기에 부하를 주지 않습니다.  왼쪽부터 박스콜라이더, 캡슐콜라이더, 스피어콜라이더위 그림은 콜라이더가 충돌을 감지하는 영역을 나타냅니다. 콜라이더의 요소1. Box ColliderisTrigger은 나중에 설명할 예정이니 지금은 무시합시다.Material은 물체 표면의 물리적 특성을 나타냅니다. 물체 표면의 마찰계수, 탄성계수, 정지마찰력 등을 설정할 수 있습니다. 물리 머터리얼을 따로 만들어 넣습니다.Ce..
Unity Development [1] : 사용자 인터페이스와 바인딩
·
Development/3D Engine Development
더보기  Unity의 UI 시스템에서 Canvas는 화면에 UI 요소를 그리기 위한 기본적인 컨테이너이다. 모든 UI 요소는 Canvas 내부에 배치해야 렌더링되며, 화면 상의 위치, 크기, 스케일링 등이 적용된다. Canvas는 Render Mode에 따라 월드 스페이스, 카메라, 스크린 모드로 설정할 수 있으며, 월드 스페이스는 3D 공간에 UI를 배치해 오브젝트와의 상호작용을 가능하게 하고, 카메라 모드는 특정 카메라 뷰에 고정된 UI를, 스크린 모드는 화면 해상도에 맞춰 UI를 표시한다. 예를 들어, 게임의 메인 메뉴가 스크린 모드 Canvas에 추가되면, 화면 크기에 따라 자동으로 조정되며 언제나 동일한 위치에 표시될 수 있다. Unity의 Canvas Sorting Layer와 Order in..