plitri

[Godot RPG] 2-Extra. 인스펙터에서 알아보는 상속

이 부분은 어렵습니다. 진행에 지장이 없으니 그냥 넘어가도 좋습니다.

상속

player를 가운데로 옮겼더니, 인스펙터의 Node2D 섹션에 있는 Pos 값이 바뀌었네요! 맞습니다, 이게 player의 현재 위치입니다. 그럼 각각의 섹션은 뭘 의미할까요?

아까 노드를 추가할 때의 화면을 다시 봅시다.

Node 밑에 CanvasItem이 있고, CanvasItem 밑에 Node2D가 있고, 그 밑에 Sprite가 있습니다! 사실 노드를 추가할 때 나오는 이 계층 구조는 씬의 계층구조와는 다른 의미입니다. 씬의 계층구조는 실제로 게임 화면이 어떻게 구성되어있는지를 보여주는 반면, 노드 삽입 화면의 계층구조는 기능의 확장을 의미합니다.

이걸 프로그래밍 전문용어로 상속이라고 합니다! Sprite는 Node2D의 기능을 확장해서 만들었고, Node2D는 CanvasItem의 기능을 확장해서 만들었습니다. CanvasItem은 Node의 기능을 확장해서 만든 노드입니다. 그래서 Sprite는 Node2D, CanvasItem, Node의 기능을 확장하므로 그 기능들을 모두 사용할 수 있습니다.

다시 인스펙터를 볼까요.

으 길어…

sprite의 속성은 위에서부터 Sprite, Node2D, CanvasItem, Node 섹션으로 구성됩니다. Sprite는 Node를 확장하는 CanvasItem을 확장하는 Node2D를 확장하는 Sprite 이다보니 기능이 가까운 순서대로 위에서부터 나열되어 있습니다.

사과는 과일이지만 과일은 사과가 아니죠. 마찬가지로 Sprite는 Node2D이지만 Node2D는 Sprite가 아닙니다.

아직 상속은 이해하지 못해도 좋습니다. 아직 설명할 때가 아닌데 삘 꽂혀서 적어버려서요… 아까우니 남겨둘래요. 다음에 프로그래밍을 할 때 다시 배우게 될 겁니다.

신고
12345···20