전체 글 썸네일형 리스트형 비주얼 스튜디오에서 활성화된 문서 추적하기 메뉴 - 도구 - 옵션 아래 부분 체크 더보기 C# 접근제한자 internal 간단하게 이해하기 c# 에서의 접근 제한자의 종류는 크게 보면 아래와 같다. 1. public 2. protected 3. private 4. internal 5. protected internal 6. private protected 여기서 public, protected, private 는 다들 쉽게 이해하지만 막상 internal 용어가 나오면 애매하게 햇갈려 하는 경우가 있는데 한마디로 정의하면 "서로 다른 어셈블리"에 있는 클래스들을 허용하는지 안하는지에 따라 다르다. (private는 워낙 폐쇄적인 접근제한자 이므로 그냥 무조근 안된다고 생각하면 편함) public , protected 접근제한자는 다른 어셈블리에 있는 클래스에서도 접근이 가능하지만 internal 제한자가 붙으면 같은 어셈블리에 있는 publ.. 더보기 C# this 키워드 this 키워드는 불려진 메서드의 클래스가 갖고 있는 변수나 메서드를 뜻한다. 햇갈리기 쉬우니 아래의 예제로 잘 이해해둘 것. class Employee { private string Name; private string Position; public void SetName(string Name) { this.Name = Name; // 여기서 this.Name은 위 3번째 행의 Name 변수를 뜻함.(그 뒤의 Name은 이 메서드인 SetName의 파라메터이다. } public string GetName() { return Name; } public void SetPosition(string Position) { this.Position = Position; } public string GetPosit.. 더보기 C# 생성자와 종료자 생성자 함수는 주로 초기화 하거나, 정의할 때 많이 사용된다. 반대로 종료자는 종료를 시켜주는 역할을 하는데, 아쉽게도 C++ 처럼 강력한 기능이 아니며, 가비지컬렉터에 의해서 동작하는 알고리즘이 있어서, 내가 원하는 타이밍에 호출이 되지 않을때도 있어서 그렇게 많이 실무에 적용되진 않는다고 한다. 생성자 함수와 종료자 함수는 아래의 예제를 보면서 하면 쉽다. class Cat { public string Name; public string Color; public Cat() // 기본 생성자. 만약 이 생성자가 없다면, 기본값으로 자동으로 생성자가 숨어있다고 생각하면 이해하기 쉽다. { Name = ""; Color = ""; } public Cat(string _Name, string _Color) .. 더보기 유니티 에디터에서 게임 안의 색감 조정 하기 (HDR 값 조절) 유니티에서 막상 색감을 조정하려면 뭐부터 건드려야 하지 고민될때가 있다 그럴때는 간단하게 아래 2개를 조정해주면 된다. 1. 하이어라키- 우측마우스 - Light 디렉셔널 라이트를 준 후 디렉셔널 라이트 객체의 inspector 에서 Light 컴포넌트의 Intensity 값과 Color 값 조절 2. window - rendering - lighting 을 추가해줘서 인스펙터 쪽에 두고, Evironment 탭 에서 Environment Lighting 에서 HDR 값 조절 및 Evironment Reflections 에서 Intensity Multiplier 값 조절 더보기 유니티에서의 for 문과 foreach 문 비교해서 사용해보기 게임오브젝트에서 인벤토리를 사용하는 제일 흔한 타입의 for문 or foreach문을 똑같이 비교해서 보여준다 주석문인 foreach 와 for문은 똑같은 기능을 하지만, foreach 문이 간결해보여서 사용하기 좋다 public class SceneObjectManager : MonoBehaviour { public SceneObject[] _sceneObjectList; void Start() { _sceneObjectList = GetComponentsInChildren(); } public void OnClick_BackBtn() { /* 아래의 for문과 동일. _sceneObjectList의 갯수만큼 반복하여 obj 객체에 넣고, 각 객체에 붙어 있는 BackBtn을 클릭하는 기능 구현 for.. 더보기 C#에서의 추상화, 구체화 간단히 설명 객체지향언어의 필수 특성이라고 할 수 있는 추상화와 구체화가 있는데 막상 이 용어들을 들으면 어려울 수 있어서 간단히 정리를 해둔다. 1. 추상화 추상화는 클래스의 이름을 짓고 역할 정도만 정해두는 단계를 뜻한다. 다만 이 단계에서는 구체적인 것들을 정하지 않아야 나중에 더욱 좋은 객체지향적이며 구조적인 프로그래밍을 할 수 있다. 2. 구체화 추상화 된 클래스들을 구체적으로 프로그래밍 하는 것을 뜻한다. 예를 들면 추상화를 통해 클래스를 만들었다면, 구체화를 통해 그 클래스를 인스턴스화 시키고, 실제적으로 사용하는 프로그래밍을 하는 단계이다. 클래스로만 있을때는 설계도면만 존재한다고 생각한다면 new 키워드를 통해 인스턴스화 된다면, 이는 실제적으로 지어진 건물이라고 생각하면 좋다. 같은 설계도면을 통해.. 더보기 텍스쳐(Texture)와 머티리얼(Material)의 개념 및 관계 (+깨진 에셋 머티리얼 연결하기) 유니티를 처음 시작하고 특히 3D쪽으로 넘어왔을때 텍스쳐와 머티리얼의 용어를 듣게 되면 쉽게 혼동 될 수 있다 이를 위해 오늘 배운 내용을 정리해둔다. 먼저 유니티의 2D에서의 이미지 파일은 스프라이트 라고 한다. 그렇다면 이 스프라이트가 3D에서는 뭐라고 부를까? 정답은 Texture(텍스쳐) 이 텍스쳐는 단순히 이미지 파일에 불과하며, 재질의 그림이라고 보면 된다. 이 Texture를 가공하면 머티리얼이라고 부르는데 이 가공된 머티리얼이야 말로 재질을 가르키기도 한다. 먼저 Texture를 셰이더 스크립트(속성 및 효과를 부여해주는 스크립트)를 통해 가공이 되고, 그 결과물을 머티리얼이라고 부른다. 예를 들면 금속, 메탈, 거친 표면, 광택 등이 가공된 최종 결과물이라고 보면 되는데, 유니티에서는 이.. 더보기 이전 1 2 3 4 ··· 11 다음