1.5 0부터 Unity 게임 개발 배우기 - 첫 번째 개체 만들기

정식으로 코드 작성을 시작하기 전에 Unity 개발의 기본 워크플로를 이해해야 합니다. 그렇지 않으면 코드를 배우는 것만으로는 전체적인 그림을 이해할 수 없습니다.

자신에게 목표를 부여

먼저 자신이 원하는 콘텐츠를 목표로 설정합니다. 초보자이기 때문에 게임에서 무언가를 표시하고 싶습니다. 아무거나 괜찮고 플레이어 컨트롤을 지원할 필요가 없습니다.

장면 만들기

새 프로젝트에는 장면이 자동으로 포함되지만 전체적인 내용을 이해하기 위해 장면을 사용하지 않습니다. 이를 수행하기 전에 Unity의 게임 세계 분할을 이해해야 합니다.

게임 개발 과정에서 우리의 게임 콘텐츠는 N개의 맵, N개의 게임 플레이 등과 같이 점점 더 많아질 수 있습니다. 다른 맵의 개발 또는 게임은 한 번에 한 맵의 리소스만 로드합니다.

이러한 개념을 바탕으로 Unity는 게임 씬(Game Scene)이라는 개념을 내장하고 있는데 씬(Scene)은 씬(Scene)을 번역한 것으로 위에서 언급한 맵이 씬이 될 수 있고 게임 플레이도 씬이 될 수 있습니다. 프로그래머에게 Scene은 실제로 클래스이며 콘텐츠를 전달하기 위해 일부 새 멤버를 이 클래스에 추가할 수 있습니다. 초기 게임 엔진이라면 물론 이러한 기능을 달성하기 위한 코드를 작성할 수 있습니다.

우리는 코드에서 새로운 Scene 인스턴스를 생성해야 한다는 것을 알고 있습니다.클래식 C++에서는 새로운 Scene이 생성되지만 여기서부터는 Unity의 작업이 달라집니다. Scene 유형 리소스 파일은 분명히 Project 창에서 관리하므로 Project 창에서 아무 디렉토리나 마우스 오른쪽 버튼으로 클릭하고 Create->Scene을 선택합니다.

장면 유형의 리소스 만들기

Assets 디렉토리에 직접 생성했으며 Demo라고 합니다.

우리가 생성하는 것은 디스크에 실제로 존재하는 파일이라는 것을 알 수 있으며, 코드를 작성하는 대신 이러한 리소스 생성은 향후 엔진 내부에 쇄도하게 될 것이며 이는 현대 엔진 워크플로의 특징 중 하나이기도 합니다. .

열린 장면

생성이 완료되면 직접 두 번 클릭하여 열 수 있습니다(물론 엔진의 프로젝트 창 아래에서 두 번 클릭). 저장하지 않은 다음 데모 장면을 엽니다. 저장 여부를 묻는 메시지가 표시되며 원하는 것을 선택할 수 있습니다.) 계층 구조 창에서 이 트리 노드의 루트 이름이 다음으로 변경된 것을 볼 수 있습니다. 데모 및 아이콘은 장면 리소스 파일의 아이콘과 매우 유사합니다.

여기에서 현재 열고 있는 장면이 데모인지 확인할 수 있습니다.

즉, Hierarchy 창은 실제로 장면 자체의 콘텐츠를 나타냅니다.

장면은 기본적으로 자체 파일과 함께 제공됩니다.

이 데모 아래에 메인 카메라와 디렉셔널 라이트가 있음을 알 수 있습니다.

이것은 Unity에서 처음 접한 무언의 규칙, 즉 장면이 생성되는 것입니다.

하지만 먼저 이 두 가지의 역할을 무시하자 여기서는 단순히 엔진 내부의 무언의 규칙이 어디에나 있다고 말할 수 있다 학습을 시작할 때는 불편할 수 있지만 이해하고 나면 받아들일 수 있다.

장면에서 가장 먼저 생성

우리의 목표를 기억하세요. 표시할 수 있는 모든 개체를 만들어야 합니다. Unity에서 장면을 만드는 이유는 표시해야 하는 모든 콘텐츠가 현재 표시 중인 장면에 포함된 개체를 기반으로 하기 때문입니다. 다루다.

따라서 데모 장면에서 자체 개체를 만들어야 합니다.

위에서도 말했지만 장면이 생성된 후 기본적으로 두 사람이 함께 제공되지만 먼저 무시합니다.

프로젝트 창에서 리소스 프로젝트 수준 리소스를 생성하는 것과 유사하게 장면에서 이 장면에 속하는 리소스를 생성해야 하는 경우 위에서 언급한 것처럼 창을 마우스 오른쪽 버튼으로 클릭해야 합니다. 계층 창은 다음의 내용을 나타냅니다. 장면 자체, 그럼 우리는 자연스럽게 Hierarchy 창에서 마우스 오른쪽 버튼을 클릭해야 합니다. 물론 트리 노드를 마우스 오른쪽 버튼으로 클릭하도록 선택할 수도 있습니다. 빈 공간을 마우스 오른쪽 버튼으로 클릭하면 바로 자식 루트 노드의 노드 이 노드의 자식 노드.

여기에서 Hierarchy 창의 빈 공간을 마우스 오른쪽 버튼으로 클릭하고 3D Object->Cube를 선택합니다. Create가 없는 이유를 물을 수 있습니다. 아마도 이 작업이 앞으로 매우 자주 사용될 것이고, 한 계층의 메뉴를 저장하여 개발 효율성을 어느 정도 높일 수 있기 때문일 것입니다.

생성이 완료되면 이 큐브가 실제로 실제 큐브라는 것을 실제로 이해할 수 있으며 오른쪽에 표시되는 것도 알 수 있습니다.

이 기사에 대한 작업이 완료된 것 같습니까? 분명히 아직 대답해야 할 질문이 많이 있습니다.

장면 창

앞에서 언급했듯이 계층 창은 실제로 장면 내부의 개체 데이터 구조를 보는 데 사용하는 창이며 장면 창은 이러한 개체에 의해 렌더링된 이미지의 효과이며 실시간으로 업데이트됩니다. 예를 들어 계층 구조 창에 있는 경우 추가 및 삭제 작업이 장면 창에 실시간으로 피드백되어 표시됩니다.

잠깐, 게임 창도 장면의 콘텐츠가 아닌가요?

편집기로 플레이하는 경우 게임 탭으로 전환하면 블록의 측면 보기로 나타나는 것을 볼 수 있습니다.

Game 창에도 현재 Scene 콘텐츠의 렌더링된 효과가 표시되는 것은 사실이지만 시야각이 Scene의 시야각과 다른데 왜 시야각이 다른가요?

인게임 카메라

여기서 우리는 카메라의 개념을 포함할 필요가 있습니다.분명히 3D 게임이나 2D 게임에서 게임 관점은 변하지 않고 그대로 유지되며 관점은 최종적으로 어떤 게임 콘텐츠가 화면에 표시되는지와 직접적인 관련이 있습니다. 시야 밖에 있는 것은 표시되지 않습니다.

따라서 게임의 모든 화면 표시 효과는 특정 카메라를 기반으로 해야 하며, 카메라 없이 최종 렌더링 결과를 이야기하는 것은 넌센스입니다.

그렇다면 장면에서 우리가 카메라라고 부르는 것을 나타내는 것은 무엇입니까? 그건 그렇고, 앞서 언급한 장면이 생성된 후 기본적으로 가져오는 두 개체 중 하나인 기본 카메라입니다.

이 영어 번역은 기본 카메라를 의미하며 이 카메라는 게임 창 에서 관찰하는 장면의 관점을 결정합니다.

잠깐, Scene 창은 어떻습니까?

씬 창은 씬에 있는 카메라 오브젝트의 설정에 구애받지 않고 별도의 내장 카메라로 씬 창으로 전환한 후 창 안에서 마우스 오른쪽 버튼을 누른 상태에서 마우스를 슬라이드 시키거나 wasd를 누르면 직접 제어할 수 있음을 알 수 있습니다. 장면 창의 시점은 1인칭 슈팅 게임을 하는 것과 동일합니다!

다음 장

이 장은 오랫동안 작성되었으므로 먼저 소화하고 여기에 큰 질문이 있을 수 있습니다.

장면 창의 카메라가 장면 자체의 기본 카메라가 아닌 이유는 무엇입니까? 게임과 장면의 두 가지 관점을 디자인하는 이유는 무엇입니까?

다음 장에서는 이 문제, 즉 편집 시간과 실행 시간의 차이에 대한 최신 게임 엔진의 표준 구성에 대해 자세히 설명합니다.

코드를 작성하고 싶습니까? 아직 이르다(웃음).

Supongo que te gusta

Origin blog.csdn.net/z175269158/article/details/129832145
Recomendado
Clasificación