본문 바로가기

전체 글

(69)
Unity(C#) namespace사용방법 Unity 매뉴얼로 말하길 프로젝트가 커지고 스크립트 수가 증가할수록 스크립트 클래스 이름이 충돌할 가능성이 커집니다. 이것은 게임의 다른 파트를 ​​따로 작업하고 궁극적으로 같은 프로젝트에 통합하는 경우에 적용됩니다. 예를 들어 한 명의 프로그래머가 메인 플레이어의 제어 코드를 만들고, 또 한사람이 적 캐릭터의 제어 코드를 작성했다고합니다. 둘 다 기본 스크립트 클래스를 Controller 라고 명명하고 프로젝트를 통합할 때 이름이 충돌합니다. 어느 일정 범위까지는 네이밍 규칙을 도입하거나 충돌할 때마다 이름을 변경하여 문제를 피할 수 있습니다 (예. 아까의 예라면 클래스는 PlayerController 및 EnemyController 라는 이름을 붙이기 등). 그러나 충돌하는 클래스가 여럿이거나, 변..
Player 이동하기 Player 이동구현 플레이어는 왼쪽 오른쪽으로 이동이 가능하다. Input.GetKey(KeyCode.)로 플레이어의 이동할려는 값을 받아온다. 그냥 단순하게 자기자신.x * speed * Time.deltaTime 을해주면된다. 마지막에 Time.deltaTime을 곱해주는 이유는 컴퓨터마다 성능이 다르기때문에 그걸 맞춰주기 위해서이다. 이렇게 하면 이동은끝이난다. 그 다음으로는 이동을 할때 벽을 체크를해주어야한다. 벽을 체크해주지 않을경우 벽으로 게속 이동할경우 벽으로약간들어갔다가 나왔다가하는 문제가 생기기때문에 플레이어의 이동방향으로 RayCast를 쏴서 이동이 불가능하게 만들어 주어야한다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23..
CameraShake 만들기 보호되어 있는 글입니다.
C++ 가상 함수(Virtual),순수 가상 함수 , 가상 소멸자 가상 함수는 기본 클래스(상속되지 않은 클래스) 내에서 선언되어 파생 클래스에 의해 재정의되는 맴버 함수입니다. 1. 클래스의 공개(public) 섹션에 선언합니다. 2. 가상 함수는 정적(static)일 수 없으며 다른 클래스의 친구(friend) 함수가 될 수도 없습니다. 3. 가상 함수는 실행시간 다형성을 얻기위해 기본 클래스의 포인터 또는 참조를 통해 접근(access)해야 합니다. 4. 가상 함수의 프로토타입(반환형과 매개변수)은 기본 클래스와 파생 클래스에서 동일합니다. 5. 클래스는 가상 소멸자를 가질 수 있지만 가상 생성자를 가질 수 없습니다. 가상함수는 실행시간(Runtime)에 함수의 다형성(Polymorphism)을 구현하는데 사용됩니다 1 2 3 4 5 6 7 8 9 10 11 12..
Precompiled header(미리컴파일 헤더) Precompiled header(미리컴파일 헤더)란 자주 변경되지않는 긴 소스를 미리 컴파일하여 컴파일결과를 별도의 파일에 저장하여 다시 똑같은 헤더를 컴파일시 해당파일을 처음부터 컴파일하지 않고 미리 컴파일된 헤더 파일을 사용해 컴파일 속도를 월등히 항상 시켜줍니다. 보통 C++파일을 만들때 자동적으로 생성되는 코드인 stdafx.h와 stdafx.cpp이 있다. 이 파일의 용도는 MFC(MS에서 제공하는 소프트웨어 라이브러리 쳬계를뜻한다.)에서 자주 사용되는 공용소스들을 Precompiled header로 만들어 제공하기 위해 디폴트로 stdafx.h와 stdafx.cpp이 위자드에서 자동 생성되는 것이다. VC 에서는 프로젝트 송송 -> C/C++ -> 미리컴파일된 헤더 항목에서 Precompil..