Mass 질량. 상대적인 의미의 질량으로 1kg, 1g 등의 무게 단위가 아니다. 즉, A 물체의 Mass가 1이고 B 물체는 10 이라 한다면 B가 A보다 더 무겁다고 해석해야 한다. 하지만 편의상 1kg으로 가정하고 작업하는 것이 일반적이다. Drag 이동할 때 적용되는 마찰계수(저항) Angular Drag 회전할 때 적용되는 마찰계수(저항) Use Gravity 중력 적용 여부 Is Kinematic 체크하면 물리 시뮬레이션을 이용해 이동하지 않고 Transform 컴포넌트를 이용해 이동한다. 즉, 물리엔진의 영향을 받지 않는다. Interpolate 물리력을 이용한 움직임이 끊어지는 현상이 발생할 때 보간(Interpolate)해 준다. -Interpolate : 이전 프레임의 Transform..
Awake 스크립트가 실행될 때 한 번만 호출되는 함수다. 주로 게임의 상태 값 또는 변수의 초기화에 사용한다. Start 함수가 호출되기 전에 맨 먼저 호출된다. 스크립트가 비활성화돼 있어도 실행된다. 코루틴으로 실행 불가 Start Update 함수가 호출되기 전에 한 번만 호출된다. 스크립트가 활성화돼 있어야 실행된다. 다른 스크립트의 모든 Awake가 모두 다 실행된 이후에 실행된다. 코루틴으로 실행 가능 Update 프레임마다 호출되는 함수로 주로 게임의 핵심 로직을 작성한다. 스크립트가 활성화돼 있어야 실행된다. LateUpdate 모든 Update 함수가 호출되고 나서 한 번씩 호출된다. Update 함수에서 전처리가 끝난 후 실행해야 하는 로직에 사용한다. 카메라 이동 로직에 주로 사용하는..
흔히 '의존성 주입' 이라고 불리는 'Dependency Injection'은 느슨한 커플링을 위해 많이 사용되는 방식이다. 클래스 A가 어떤 작업을 수행하기 위해 클래스 B의 인스턴스에 의존해야 하는 경우, B는 A의 디펜던시(의존성)이라고 한다. DO THIS! 클래스 A 외부에서 만들어진 인스턴스를 주입받아 참조한다. DON'T DO THIS! 클래스 A 내부에서 클래스 B의 인스턴스를 직접 만들어 참조한다. '포켓몬 고' 개발자들이 설명하는 Dependency Injection
객체지향적 프로그래밍을 할때에는 S.O.L.I.D 라고 불리는 5가지 큰 원리를 따라서 설계를 해야 한다. 이것들은 GRASP(General Responsibility Assignment Software Patterns) 소프트웨어 일반 책임 적용 패턴 9가지로 세분화할 수 있다. S : Single Responsibility Principle 단일 책임 원칙 모든 클래스는 단 하나의 분명한 역할 만을 책임져야 한다. 클래스를 수정할 이유가 단 하나여야 한다. DO THIS! 총 클래스가 있을때, 총은 플레이어가 입력을 할 때마다 총알을 생성한다. 이것이 총 클래스가 할 일의 거의 전부다. DON'T DO THIS! 생성된 총알이 무엇과 충돌하고 어떤 결과를 야기하는 지에 대해서는 전혀 관여하지 않는다...