본문 바로가기
반응형

unity13

C# - 파티셜 클래스 ( Partial class ) 파티셜 클래스 ( Partial Class )  C#은 실용적이면서도 강력한 언어로, partial class 같은 기능들은 개발을 훨씬 편하고 유연하게 만들어줍니다. 이런 기능들을 깊게 이해하고 활용하는 것이 개발자로서 중요한 부분이죠. partial class는 정말 유용한 기능입니다. 클래스를 여러 곳에서 정의할 수 있어서 코드를 조직화하고 유지보수하기 쉽게 만들어줍니다. 특히, Code Generator가 자동으로 생성하는 부분과 개발자가 직접 작성하는 부분을 분리할 때 partial class가 특히 유용하게 사용됩니다. 이렇게 하면 개발자는 자신이 신경 쓸 부분에만 집중할 수 있어요. 또한, 여러 명의 개발자가 한 클래스를 함께 작업할 때 발생할 수 있는 충돌을 방지하기 위해 partial c.. 2024. 5. 20.
C# - Struct ( 구조체 ) / Enum ( 열거형 ) 구조체( Struct )정의구조체(struct)는 여러 개의 변수를 하나의 그룹으로 묶어 관리할 수 있는 사용자 정의 데이터 타입입니다. C, C++, C#, Rust, Swift 등의 많은 프로그래밍 언어에서 사용되며, 서로 관련된 데이터를 하나의 논리적인 단위로 묶어줍니다. 개요구조체는 객체 지향 프로그래밍의 클래스와 유사하지만, 일반적으로 클래스보다 간단하고 가벼운 데이터를 관리할 때 사용됩니다. 구조체의 멤버는 다양한 데이터 타입을 가질 수 있으며, 이를 통해 복잡한 데이터 구조를 간편하게 정의할 수 있습니다. 열거형(Enum)정의열거형(enum)은 이름을 가진 상수들의 집합을 정의하는 사용자 정의 데이터 타입입니다. 열거형을 사용하면 코드의 가독성을 높이고, 특정 값들만 사용해야 하는 경우 이를.. 2024. 5. 19.
[Unity 2D] 캐릭터 애니메이션 및 달리기 구현 저번에 이어서 이번에는 케릭터가 움직이는 방향에 따라 바라보게 설정하고, 케릭터의 움직임그리고 애니메이션 기능을 추가해보겠습니다.제가 작성한 이 글은 강좌 목적 글이 아니며, 학습 내용을 익히고자 하는 글이라 완벽하고 정확하지 않을 수 있습니다. 먼저 Charator(Player)에서 Add Component로 Animator를 추가해줍니다.그 후 Controller에 Player를 넣어주고 타겟을 설정해줍니다. 폴더를 생성하고 Animation > Animator Controller를 생성합니다.여기서 우리는 애니메이션의 모든 행동을 제어하겠습니다.이름은 Player라 만들어주고 안으로 들어가보겠습니다.저는 애니메이션을 idle , Walk , Run 기본적인 구성으로 준비하였으며, 직접 연결이 아닌 .. 2024. 5. 19.
C# - 연결 리스트(Linked List) 연결리스트 ( Linked List )정의연결 리스트(Linked List)는 각 노드가 데이터와 다음 노드를 가리키는 포인터를 포함하는 데이터 구조입니다. 노드(Node)는 연결 리스트의 기본 단위로, 리스트의 요소를 표현합니다. C#에서는 LinkedList 클래스를 제공하여 연결 리스트를 쉽게 사용할 수 있습니다.개요연결 리스트는 배열과 달리 요소가 연속된 메모리 위치에 저장되지 않고, 각 요소가 포인터로 연결되어 있습니다. 이 때문에 연결 리스트는 요소의 삽입과 삭제가 배열보다 효율적일 수 있습니다. 연결 리스트에는 다음과 같은 유형이 있습니다:단순 연결 리스트(Singly Linked List): 각 노드가 다음 노드에 대한 포인터만 가짐.이중 연결 리스트(Doubly Linked List): .. 2024. 5. 18.
C# 팩토리 패턴 (Factory Pattern) 팩토리 패턴 ( Factory Pattern )정의팩토리 패턴은 객체 생성의 인스턴스화 로직을 별도의 클래스나 메서드로 분리하여 객체 생성을 캡슐화하는 디자인 패턴입니다. 이를 통해 클라이언트 코드가 객체 생성의 구체적인 클래스에 의존하지 않게 하고, 객체 생성의 로직을 재사용할 수 있게 합니다.개요팩토리 패턴은 객체 지향 프로그래밍에서 객체 생성을 별도의 클래스나 메서드로 분리하여 객체 생성의 책임을 캡슐화하는 생성 패턴입니다. 이를 통해 클라이언트 코드가 구체적인 클래스에 의존하지 않고, 인터페이스를 통해 객체를 생성하도록 합니다. 팩토리 패턴은 객체 생성을 중앙에서 관리하며, 객체 생성 로직의 변경이 필요할 때 클라이언트 코드를 수정하지 않아도 되도록 유연성을 제공합니다. 또한, 코드의 재사용성을 .. 2024. 5. 18.
Unity|Error - Screen position out of view frustum 해결 Unity 에러 코드| Screen position out of view frustum 발생 : Unity 게임 시뮬레이션 테스트중 발생. / 컴파일중 다른 행동을 하면 간혈적으로 나타나기도 합니다. 에러 내용  Screen position out of view frustum (screen pos 363.000000, 312.000000, 0.000000) (Camera rect 0 0 610 508)UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&) 해결법 카메라 영역을 특정 오브젝트나 UI 요소가 카메라의 뷰 프러스텀(view frustum) 밖에 위치해 있음을 나타냅니다. 이 경우는 특히 GUI 요소와 관련이 있습니다 GUI 요소의 위치 확인 : GUI.. 2024. 5. 18.
Unity - 이벤트시스템 ( EventSystem ) Unity - 이벤트시스템 ( EventSystem )Event System은 Unity의 UI 시스템에서 사용자 입력(마우스 클릭, 터치, 키보드 입력 등)을 처리하는 핵심적인 구성 요소입니다. 이를 통해 게임 내의 UI 요소들이 사용자와 상호작용할 수 있습니다. Event System은 UnityEngine.EventSystems 네임스페이스에 포함되어 있으며, 여러 컴포넌트와 함께 작동하여 다양한 입력 이벤트를 처리합니다. Q/A : 유니티가 갑자기 마우스 클릭이 안 돼요!유니티  Hierarchy 창에 EventSystem이 있는지 확인합니다. 만약 EventSystem이 없다면 마우스 클릭이 안될 수 있습니다. 만약 없다면 'UI > Event System'을 추가하시면 됩니다.Event Sys.. 2024. 5. 17.
C# - 캐스팅 |업캐스팅(UpCasting), 다운캐스팅(DownCasting) 캐스팅 ( Casting )업캐스팅(Upcasting)과 다운캐스팅(Downcasting)은 객체 지향 프로그래밍에서 클래스 계층 구조 내에서 객체의 타입을 변환하는 방법입니다. 이 두 가지 캐스팅 방법은 부모 클래스와 자식 클래스 간의 관계를 다루며, 유연한 코딩을 가능하게 합니다. 이 글에서는 업캐스팅과 다운캐스팅의 개념, 정의, 표현 방식, 장점, 단점, 그리고 예시를 통해 쉽게 이해할 수 있도록 설명하겠습니다.정의업캐스팅 (Upcasting)업캐스팅은 자식 클래스의 객체를 부모 클래스 타입으로 변환하는 것을 의미합니다. 이는 암묵적으로 수행되며, 명시적인 캐스팅 없이도 가능합니다. 업캐스팅을 통해 자식 클래스 객체를 부모 클래스 타입의 변수에 할당할 수 있습니다.다운캐스팅 (Downcasting).. 2024. 5. 16.
C# - 상속 ( Inheritance ) 상속 ( Inheritance )개요상속은 객체 지향 프로그래밍(OOP)에서 중요한 개념으로, 기존 클래스를 재사용하고 확장할 수 있는 방법을 제공합니다. 상속을 통해 코드의 재사용성을 높이고 클래스 간의 관계를 명확히 할 수 있습니다.정의상속(Inheritance)은 하나의 클래스가 다른 클래스의 속성과 메서드를 물려받아 재사용하고 확장할 수 있도록 하는 기능입니다. 이를 통해 코드의 중복을 줄이고, 유지보수를 용이하게 할 수 있습니다. 상속을 받는 클래스를 파생 클래스(Derived Class) 또는 **자식 클래스(Child Class)**라고 하고, 상속을 제공하는 클래스를 기본 클래스(Base Class) 또는 **부모 클래스(Parent Class)**라고 합니다.기본개념기본 클래스(Base .. 2024. 5. 16.
728x90
반응형