본문 바로가기

취미로 하는 게임코딩_gameCodingAsHobby/유니티와 C# 개념 정리_Concept Summary

유니티와 C# 개념 정리_006_함수(메서드) 메서드(함수)의 탄생 앞에서 보았듯이 데이터를 저장하기 위해 변수(Variable)를 사용한다. 예를 들어 정수 타입의 두 변수(numberA, numberB)를 선언하고, 각각 1과 2로 초기화 한 후 addTwoNumbers(두 수 더하기)라는 변수에 두 변수를 더해서 넣는 코드를 아래와 같이 작성했다고 하자. int numberA = 1; int numberB = 2; int addTwoNumbers = numberA + numberB; 만약 이 코드를 프로젝트 안의 다른 곳에서 또 사용해야 한다면 코드를 복사해서 붙여넣을 수 있을 것이다. 하지만 여러번 사용해야 하고 더하는 숫자도 그때 마다 달라진다면 번거러울 뿐만 아니라 코드가 난잡하게 될 것이다. 이런 불편함을 없애고 코드를 깔금하게 정리할 .. 더보기
유니티와 C# 개념 정리_005_타입과 초기화 타입(Type) 흔히 메모리를 임시 작업대 또는 저장소로 비유한다. 메모리에 변수를 사용해서 데이터를 저장하거나 참조한다. 그래서 변수는 임시 작업대 위에 올려진 상자에 비유하기도 한다. 변수의 타입은 변수라는 상자 안에 넣을 수 있는 유형을 정해 둔 것이다. C#에서 변수는 모양과 크기가 다른 상자를 준비해야 한다. 이것을 앞 글에서 Strongly typed(강한 타입화)라고 했다. 반면에 약한 타입화를 가진 어떤 언어에서는 모양,크기에 상관없이 무엇이든 넣을 수 있는 상자를 만들 수 있기도 하다. 어쨌든 C#에서 변수를 사용하려면 을 지정하고 을 지어야 한다. 타입이 지정된 변수는 해당 타입에 맞는 값만 넣거나 뺄 수 있다. 타입의 종류 타입은 크게 built-in type (빌트인 타입; 미리 만.. 더보기
유니티와 C# 개념 정리_004_변수 선언과 할당 C#의 문법 컴퓨터 언어의 문법(규칙)을 Syntax(씬택스)라고 한다. syn은 '함께'라는 뜻이다. tax, tact는 '배열하다'라는 뜻이다. Syntax는 명령문 작성법이라고 할 수 있다. 컴퓨터에게 일을 시키려면 컴퓨터가 알아 들을 수 있도록 명령을 내려야 한다. 이 명령을 대신해 주는 것이 프로그래밍 언어다. 컴퓨터는 계산만 잘하는 부품 상자다. 언젠가는 이걸 뛰어넘어 Skynet 같은 것이 될 수도 있겠지만, 지금까지는 시키는 계산만 잘 하는 수준이다. 프로그래밍 언어는 컴퓨터에게 계산 명령을 내리기 위해 정확하고, 확실하고, 빈틈없는 논리로 만들어져 있다. 사람의 언어는 한 두 글자 틀리거나 잘못 적어도 읽는 사람이 똑똑하므로(?) 이해하고 넘어갈 수 있다. 하지만 프로그래밍 언어는 글자 .. 더보기
유니티와 C# 개념 정리_003_C# 언어의 특징과 기본 구조 이 글 부터 유니티에서 사용하는 C# 문법에 대해 정리한다. 주로 유니티와 관련한 내용을 정리할 것이다. 다루지 않은 내용은 카테고리 [프로그래밍 언어]에 있는 Kotlin(코틀린) 언어와 중복되므로 생략한다. C# 언어의 특징 1. Object-Oriented Programming 언어 C#의 가장 핵심적인 특징은 Object-Oriented Programming(OOP : 개체 지향 프로그래밍) 언어이다. OOP의 대표적인 언어는 Java, Python, C++, Ruby, C# 등이 있다. 이 개념은 Java에서 파생한 Kotlin(코틀린) 언어에서 알아보았기 때문에 생략한다.(코틀린 더파기_13) 참고로 Object(오브젝트)는 이전에 '객체'라고 해석했는데 '개체'라고 해야 한다는 주장이 있다... 더보기
유니티와 C# 개념 정리_002_MonoBehaviour, Awake, Start , Update, LateUpdate 앞 글에서 게임오브젝트에 기능을 부여하려면 Component(컴퍼넌트)를 연결한다고 했다. C# 으로 작성한 스크립트 파일도 컴퍼넌트로 붙일 수 있다. 게임 오브젝트에 컴퍼넌트로 붙이기 위해 스크립트 파일을 만든 후 더블클릭 등으로 파일을 열면 아래와 같이 등록된 편집기로 편집할 수 있는 상태가 되고 유니티에서 제공하는 기본 코드가 나타난다. 5번 줄에 클래스명(PlayerController)이 있고 그 뒤에 : MonoBehaviour 이 붙어있다. 콜론 ( : ) 기호는 상속받는다는 뜻이고 상속하는 주체는 MonoBehaviour이라는 유니티의 Base Class(기본 클래스)이다 라는 뜻이다. 즉, MonoBehaviour은 유니티에서 스크립트 사용을 위해 C#으로 만들어 놓은 클래스 이름이며 Pl.. 더보기
유니티와 C# 개념 정리_001_유니티의 특징과 장점 이 카테고리에서는 유니티와 게임 제작에 필요한 C# (C Sharp, 씨샵) 스크립트에 관한 개념들을 정리한다. 먼저 유니티에 대한 특징 및 장점을 간단히 정리한다. 1. 유니티는 게임 엔진이다. 게임 엔진은 게임 제작을 도와주는 프로그램이다. 유니티와 함께 Unreal(언리얼) 엔진이 대표적이다. 유명한 게임의 경우 독자적인 게임 엔진을 가지고 있다. 내가 대학교에 입학 할 즈음에 퍼스털 컴퓨터라고 하는 개인용 컴퓨터가 처음 나오기 시작했다. 현재의 컴퓨터 공학과에 해당하는 전산학과 학생들은 시커먼 화면에서 프로그래밍 코드만으로 게임을 만들곤 했다. 유니티는 코드만으로 만들던 게임을 그래픽 화면을 보면서 만들 수 있게 해 준다. 뿐만 아니라 전문가가 아니면 구현할 수 없는 각종 물리 역학, 3D, 애니.. 더보기