분류 전체보기

    Unity Component : SpriteRenderer

    Unity에서 SpriteRenderer는 2D 그래픽을 렌더링하는 컴포넌트입니다. 이번 글에서는 SpriteRenderer의 기능과 사용법에 대해 알아보겠습니다. SpriteRenderer 컴포넌트 추가하기 SpriteRenderer 컴포넌트를 사용하려면, 먼저 GameObject에 추가해야 합니다. 이를 위해서는 다음과 같은 단계를 따릅니다. Scene 뷰에서 GameObject를 선택합니다. Inspector 뷰에서 Add Component 버튼을 클릭합니다. 검색창에서 "SpriteRenderer"를 입력한 후, 결과로 나오는 SpriteRenderer를 선택합니다. 이제 SpriteRenderer 컴포넌트가 GameObject에 추가되었습니다. SpriteRenderer 속성 SpriteRend..

    Collection was modified: enumeration operation may not execute

    C#에서 Collection was modified: enumeration operation may not execute 이 에러는 컬렉션을 열거하고 있을 때, 컬렉션을 수정하려고 할 때 발생하는 에러입니다. 이 에러는 foreach 루프를 사용할 때 주로 발생하는데, foreach 루프를 사용하면 컬렉션의 요소를 읽기만 할 수 있습니다. 따라서 컬렉션을 수정하려고 하면, 이 에러가 발생합니다. 이 에러를 해결하는 방법 1. for 루프 사용 foreach 루프 대신 for 루프를 사용하면, 컬렉션을 수정할 수 있습니다. List numbers = new List() { 1, 2, 3, 4, 5 }; for (int i = 0; i < numbers.Count; i++) { if (numbers[i] =..

    C# 프로퍼티

    C#에서 프로퍼티는 클래스의 데이터 멤버를 캡슐화하는 데 사용됩니다. 데이터 멤버는 클래스 외부에서 직접 액세스할 수 없으며, 프로퍼티를 통해 간접적으로 액세스할 수 있습니다. 이번 글에서는 C# 프로퍼티를 자세히 살펴보겠습니다. 프로퍼티란? 프로퍼티는 클래스의 데이터 멤버를 캡슐화하는 데 사용됩니다. 데이터 멤버에 직접 액세스할 수 없으며, 프로퍼티를 통해 간접적으로 액세스할 수 있습니다. 프로퍼티는 get 및 set 접근자를 사용하여 구현됩니다. 프로퍼티의 예 다음은 프로퍼티의 간단한 예입니다. public class Person { private string name; public string Name { get { return name; } set { name = value; } } } 위의 예제..

    C# 반복문 : while

    C#에서 while문과 do while문은 루프(loop)를 제어하는 제어문(conditional statement)입니다. 이 둘은 기본적인 구조는 비슷하지만, 실행 순서에 차이가 있습니다. while문 while문은 조건이 참(true)인 경우에만 루프를 실행합니다. while문의 구조는 다음과 같습니다. while (condition) { // 실행 코드 } 위 코드에서 condition은 루프를 실행할 때 평가할 조건입니다. condition이 참(true)일 경우, 중괄호({}) 안의 코드가 실행됩니다. 루프가 실행된 후, 다시 condition을 평가하고, condition이 참(true)일 경우 다시 루프를 실행합니다. 이 과정이 condition이 거짓(false)일 때까지 반복됩니다. d..

    C# 비트연산

    C#에서 비트연산은 비트 단위로 데이터를 처리하는 방법입니다. 이번 글에서는 C#에서 사용되는 비트연산에 대해 자세히 살펴보겠습니다. 비트연산이란? 비트연산은 데이터를 비트 단위로 처리하는 연산입니다. 비트연산은 논리 연산과 쉬프트 연산으로 나뉩니다. 논리 연산 논리 연산은 AND(&), OR(|), XOR(^), NOT(~) 연산자를 사용하여 수행됩니다. 이 연산자들은 비트 단위로 논리 연산을 수행합니다. 쉬프트 연산 쉬프트 연산은 비트를 좌측 또는 우측으로 이동시키는 연산입니다. 좌측 시프트() 연산자를 사용하여 수행됩니다. 비트연산의 예 다음은 비트연산의 간단한 예입니다. 논리 연산 byte a = 0b00000101; byte b = 0b00000011; byte result1 = (byte)(a..

    C# 상속성과 은닉성

    C#에서 상속성과 은닉성은 객체 지향 프로그래밍의 핵심 개념 중 하나입니다. 이번 글에서는 상속성과 은닉성에 대해 자세히 살펴보겠습니다. 상속성이란? 상속성은 객체 지향 프로그래밍에서 기존 클래스를 확장하여 새로운 클래스를 만들 수 있는 개념입니다. 상속성을 사용하면 기존 클래스의 속성과 메서드를 새로운 클래스에서 재사용할 수 있습니다. 이로 인해 코드의 재사용성이 높아지고 유지 보수성이 향상됩니다. 상속성의 예 다음은 상속성의 간단한 예입니다. public class Animal { public void Move() { Console.WriteLine("Animal is moving"); } } public class Dog : Animal { public void Bark() { Console.Wri..

    C# 생성자와 static

    C#에서 생성자와 static은 객체 지향 프로그래밍에서 매우 중요한 개념입니다. 이번 글에서는 C#에서 생성자와 static에 대해 자세히 살펴보겠습니다. 생성자란? 생성자는 클래스의 인스턴스를 초기화하는 데 사용됩니다. 생성자는 클래스와 동일한 이름을 가지며, 클래스가 인스턴스화될 때 자동으로 호출됩니다. 생성자는 매개 변수를 사용하여 클래스의 인스턴스를 초기화할 수 있습니다. 생성자의 예 다음은 생성자의 예입니다. public class Person { public string Name { get; set; } public int Age { get; set; } public Person(string name, int age) { Name = name; Age = age; } } 위의 예제에서 Per..

    C# 객체 지향 프로그래밍의 특징

    C#은 객체 지향 프로그래밍의 모든 특징을 지원합니다. 이에는 캡슐화, 상속, 다형성, 추상화 등이 포함됩니다. 캡슐화 캡슐화는 클래스와 객체를 설계하는 데 중요한 개념 중 하나입니다. 캡슐화는 데이터와 메서드를 하나의 단위로 묶어서 내부 세부 정보를 숨기는 것을 의미합니다. 이를 통해 코드의 가독성과 유지 보수성을 높일 수 있습니다. 상속 상속은 하위 클래스가 상위 클래스의 특성을 물려받는 것을 의미합니다. 상속을 사용하면 코드의 재사용성을 높일 수 있으며, 객체 간의 계층 구조를 더욱 명확하게 표현할 수 있습니다. 다형성 다형성은 객체 지향 프로그래밍의 핵심 개념 중 하나입니다. 다형성은 하나의 변수가 여러 개의 형식을 가질 수 있는 능력을 의미합니다. 이를 통해 코드의 유연성을 높일 수 있으며, 다..