클래스를 다른 클래스로 상속하기 위한 방법은 무엇인가요?상속선언을 통해 파생 클래스가 기본 클래스의 모든 공용 및 보호된 멤버를 상속받게 한다. public class B : A 클래스 상속에서 다이아몬드 문제(diamond problem)가 발생하는 이유와 이를 해결하는 방법에 대해 설명해주세요.다중 상속을 사용한 객체 지향 프로그래밍에서 발생하는 모호성 문제, 이 문제는 두 개의 클래스가 동일한 기본 클래스를 상속받고, 그 클래스들을 다시 다른 클래스가 상속받을 때 발생한다. C#의 경우에는 원칙적으로 클래스간의 다중상속을 막아 이 문제를 처음부터 예방하고 있다. 그러나 인터페이스는 다중 상속을 지원 하는데 인터페이스간 똑같은 메서드를 가졌다 하더라도 명시적 인터페이스 구현(explicit inter..
Record/TIL
블렌더트리 여러 개의 애니메이션을 블렌드하고, 각 애니메이션의 일부가 각각 다른 비중으로 합쳐져 매끄럽게 블렌딩되도록 하기 위해 사용한다. 각각의 모션이 최종 효과에 어느 정도 영향을 주도록 할 것인지는 블렌딩 파라미터 를 사용하여 제어하는데, 이 파라미터는 애니메이터 컨트롤러에 관련된 수치인 애니메이션 파라미터 중에서 하나이다. 모션을 자연스럽게 블렌드하기 위해서는 성질과 타이밍이 유사한 모션끼리 블렌드되어야 한다. 블렌드 트리는 애니메이션 상태 머신의 특별한 스테이트 타입이다. 애니메이터 컨트롤러 창의 빈 공간에 마우스를 마우스 오른쪽 버튼으로 클릭컨텍스트 메뉴가 나타나면 Create State > From New Blend Tree 를 선택블렌드 트리를 더블 클릭하여 블렌드 트리 그래프 >> ..
픽셀 이미지 유니티로 가져왔는데 깨졌을때원본은 이런 색상의 캐릭터입니다. 유니티로 가져왔더니 이게 무슨 물에 10번정도 담궜다가 빼낸 색이 되었습니다.깨지는것도 깨지고 말입죠... 원인은 압축을 해서 가져와서 그런것입니다.도트를 사용할 경우 압축 옵션을 None으로 설정해주면 되는데 초기 설정은 픽셀 데이터 색상을 적당히 최적화 해버리기 때문에 적당히.. 자기들끼리 최적화가 된다 이 말.. 내가 알아낸건 아니고 튜터님이 예전에 다른분 알려주실때 저장해둔 자료이다. https://blog.naver.com/PostView.nhn?blogId=hram01&logNo=221489477514 Shader 기본이론 _ 텍스처 포맷 (1)00. Shader 이란 무엇인가? 일단 셰이더 수업을 들으니.. 가장 먼저..
Override객체지향 프로그래밍에서 상속 관계에서 부모 클래스가 가진 메서드를 자식 클래스에서 동일한 이름과 시그니처(매개 변수의 타입과 개수)로 다시 정의하는 것을 말한다. 이는 부모 클래스의 메서드를 자식 클래스에서 필요에 맞게 재구현하는 것을 의미한다. >> 한줄요약Override는 상속 관계에서 부모 클래스의 메서드를 자식 클래스에서 재정의하여 다양한 구현을 하게한다. 장점:다형성을 구현할 수 있다. 즉, 같은 이름의 메서드가 다른 동작을 수행하게 된다.코드의 재사용성을 높이고, 상속 구조에서 각 클래스가 자신의 독특한 동작을 구현할 수 있게 한다.단점:잘못된 오버라이딩이 발생할 수 있다. 예를 들어, 부모 클래스의 의도와 다르게 동작할 수 있다.오버라이딩을 남발하면 코드를 이해하기 어려워질 수..
확장메서드란?확장 메서드는 기존 클래스의 메서드를 변경하지 않고 새로운 메서드를 추가할 수 있는 기능이다. 확장 메서드를 사용하면 작성한 클래스에 새로운 메서드를 추가할 수 있다. 이를 통해 코드의 가독성을 높이고, 반복적인 작업을 줄일 수 있다. 특징? 확장 메서드를 갖는 class는 static이어야한다.확장 메서드는 static 메서드여야한다.확장 메서드의 첫 번째 매개 변수는 this 키워드여야한다. 확장 메서드는 인스턴스 메서드처럼 사용할 수 있지만, 정적 메서드처럼 호출된다. 주의할 점 확장 메서드는 정적 메서드이므로, 인스턴스 변수에 접근할 수 없다.동일한 이름의 확장 메서드가 여러 개 존재할 경우, 호출 시 원하지않는 결과가 나올 수 있다.확장 메서드는 메서드의 인자로 null 값을 전..
static 한정자란? - 클래스의 멤버(필드, 메소드)를 객체 생성 없이 사용 가능(new 없이) - 클래스 static 필드(변수) - 클래스 static 메소드(함수) - static 메소드 내부에 사용하는 변수는 반드시 static >> C# static 메서드 정적(Static) 메서드는 인스턴스 메서드와는 달리 클래스로부터 객체를 생성하지 않고 직접 [클래스명.메서드명] 형식으로 호출하는 메서드이다. 이 메서드는 메서드 앞에 static 이라는 C# 키워드를 적어 주며, 메서드 내부에서 클래스의 인스턴스 객체 멤버를 참조해서는 안된다. 이 static 메서드는 인스턴스 객체로부터 호출될 수 없으며, 반드시 클래스명과 함께 사용된다. public class MyClass{ private i..