godot10 godot) navigation #이동1 네비메쉬 네비게이션은 고도엔진에서 캐릭터를 목적지 좌표로 이동 시킬 때 사용하는 이동 방식입니다네비게이션 관련한 노드는 아래와 같이 구성되어 있습니다 노드 이름사용 용도navigation agent노드 이동navigation link메쉬 이동 경로 이어주기navigation obstacle장애물navigation region네비메쉬 만들기 유니티 네비메쉬와의 차이점 유니티에서 SetDesitionation(vecter3 targetposition)을 사용하면 해당 목적지로 이동하게 되는데 고도엔진에서 이동을 하려면 navigation agent노드의tartgetposition()을 사용하여 목적지를 설정하고GetNextPathPosition();으로 계산된 백터 경로를 받아그곳으로 이동하는 방법을 .. 2025. 10. 14. godot) 코드로 콜리전 생성 시작전 해당 게시물은 충돌을 감지하는 콜리전을 코드로 생성 하는 법을 설명합니다 인게임 내에서 만든 콜리전을 보고 싶다면 디버그> 보여줄 콜리전 모양을 체크 게임을 편집하는 에디터에서도 콜리전을 보고 싶다면콜리전의 owner를 에디터씬루트로 해놔야합니다 생성 노드 종류 고도엔진에서 콜리전을 만드는 노드는convexpolygonshape3d() [볼록]concavepolygonshape3d() [오목]총 2가지가 있습니다 볼록볼록은 수학 및 기하학의 볼록성은 두 점을 잇는 모든 선분이 반드시 그 도형 안에 포함되어 있는 성질을 말합니다 볼록 형태는 수학적으로 매우 단순하게 정의되어 있으므로 출동감지가 빠르고 안정적이며 속이 차있습니다 볼록(convex)은 백터 배열의 인덱스 순서에 상관 없이.. 2025. 10. 8. godot) SurfaceTool #메쉬 생성2 Triangle 폴리곤을 만들기 위해선 점, 선으로 이루어진 닫힌 평면인 면을 만들어야합니다3d 물체 표면을 이루는 최소단위는 삼각형이며 GPU가 삼각형을 기본 단위로 사용하기 때문에사각형 폴리곤이 랜더링될 때 컴퓨터 내부적으로 두 개의 삼각형으로 나뉘어 처리됩니다 이미지에 있는 메쉬의 모형이 사각형처럼 보이지만삼각형 2개를 붙여 하나의 사각형을 표현하게 됩니다 이번에 사용할 메쉬를 표현하는 방법은surfacetool를 사용합니다 SurfaceTool SurfaceTool에서 생성되는 메시의 앞 부분은시계 방향으로 그 방향이 결정 됩니다 버텍스의 속성은 ImmediateMesh처럼 버텍스를 추가하기 전에 속성을 추가하게 됩니다 예)1 SetUV() [버텍스 속성]2 SetNorma.. 2025. 10. 5. godot) immediate mesh #메쉬 생성1 메쉬 생성 3d 메쉬는 외부 모델 파일을 가져와 사용하는 방법이 있고 게임 엔진에서 직접 만드는 방법이 있습니다 godot 엔진의 메쉬 생성 기능과 종류방법노드용도장점외부 에셋 가져오기meshinstance3d정적 3d 모델쉽고 빠름 절차적 생성(유연)arraymesh, surfacetool복잡한 동적지형유연한 데이터 구축절차적 생성(실시간)immediatemesh실시간 디버그 , 빠르게 변하는 도형런타임에 가장 빠르게 메쉬 테이터 전송 및 업데이트 가능대량 랜더링multimeshinstance3d풀, 나무, 수많은 반복 객체최고의 랜더링 성능 ImmediateMesh immediate mesh는 동적 지오메트리를 생성하는 편리한 도구입니다매 프레임마다 업데이트해야 하는 간단한 메시에 사용하기 편리합니.. 2025. 10. 3. godot) LOD , HLOD 최적화 LOD LOD - Level of detailHLOD - Hierarchical Level of Detail모델 메쉬를 거리에 따라 변화시켜 최적화를 하는 기술입니다 위의 이미지는 거리에 따라 변하는 폴리곤 수의 차이를 보여줍니다 고도 엔진에서는 모델을 불러올 때 기본적으로 lod 체크가 되어 있어 거리에 따라 폴리곤 수를 바꿔주는데 모델링의 체형과 옷 같이 몸에 달라 붙는 모델링을 불러 온 다면서로 최적화 하는 폴리곤 위치가 달라 몸이 옷을 뚫고 나오는 문제가 있기 때문에 사용하기 싫다면 상황에 따라 체크를 풀고 불러 오셔야 합니다 visibility range LOD외에도 카메라 거리에 따라 메쉬를 표현하는 범위를visibility range에서 설정할 수 있습니다 begin으로 설정.. 2025. 3. 1. godot) 레이캐스트 #RayCast raycast 레이란 특정 위치에서 특정 방향으로 뻣어 가는 가상의 선을 말합니다게임 엔진에서는 이 광선을 이용해 선이 어떠한 물체와 출동하고 있는 감지하는 역할을 합니다 raycast 구현 고도의 레이케스트는 노드로 구현한 것의 결과를 받아 사용하는 것과 코드로 객체를 만들어 구현하는 2 가지 방법이 있습니다 레이 노드 raycast3d 노드로 만든 노드의 인스펙터에 있는target position으로 레이 방향을 조정하고 있으며그 방향은 삼각형 모형의 기즈모로 표현되고 있습니다 노드로 구현했지만 결과는 코드로 받아야 사용해야 합니다 getnode를 사용하여 ray노드의 정보를 참조하고 iscolliding() 함수를 사용하여 충돌 여부를 확인합니다 충돌을 했다면 GetCollisio.. 2025. 2. 19. godot) 애니메이션 분할 방법 1 애니메이션창에 분할 시킬 애니메이션을 불러오고 타임라인 상단에 마우스 우클릭 > 마크 이름과 색을 정해 추가한다 애니메이션 트리 노드의 애니메이메이션노드스테이트머신 창에서마크를 넣은 애니메이션(이미지1)을 추가 인스펙터 창에 use custom timeline을 체크 후 1start offset - 시작점timeline length - 애니메이션의 길이를 정해 수동으로 맞추던가 2set custom timeline from marker 버튼을 누른 뒤 나온 창에서설정한 마커를 통해 시작과 끝을 정하고 확인을 누르면 start offest과 timeline length가 자동으로 설정하는 2가지 방법을 사용한다 1번째 방법 끝 2번째 방법은애니메이션을 복제한 후 모든 키프레임 마우스 드.. 2025. 2. 13. godot) 시그널 연결 시그널적용 시키고 싶은 노드를 클릭 해당 노드가 지원하는 것들은 시그널 탭에서 볼수 있고 적용하고 싶은 것을 클릭시그널이 왔을 때 실행할 메서드가 있는 노드를 클릭 연결하면 끝이다 결과는 button를 클릭하면 pressed()시그널이 오고 editorplugin노드에 있는 스크립트의_on_button_pressed() 메서드가 실행된다 스크립트 형식으로 시그널 연결은 connect를 사용하게 되는데object의 connect와 signal의 connect 총 2가지 방법이 있다 노드.connect(시그널string, callable , flags =0) / 오브젝트 클래스노드.시그널string.connect(callable , flags = 0) / 시그널 클래스 1. 시그널 인수 = 각 .. 2025. 2. 10. godot) c# 비주얼스튜디오 연동하기 #설정1 고도엔진 내장 스크립트 편집기의 c#은 최소한의 지원을 하여 외부 편집기를 사용한다 사용할 수 있는 외부 편집기는 아래와 같다 1 비주얼 스튜디오 2022 2 비주얼 스튜디오 코드3 모노디벨롭4 mac용 비주얼스튜디오5 제트브레인스 라이더 필자는 예전에 비주얼 코드를 사용했는데설치했을 때 이것 저것 설치해야 되는 복잡함을 느꼈습니다 다른 것도 설정할 것이 너무 많아 보여비주얼 스튜디오 2022를 사용했습니다 설치 마이크로 소프트 사이트로 이동하여비주얼 스튜디오2022 이상을 다운 받아.NET 데스크톱 개발을 설치합니다 비주얼 스튜디오를 설치 후 고도엔진에서 에디터 설정을 들어 간 후 닷넷의 에디터를 들어가면외부 에디터 설정을 비주얼 스튜디오로 변경합니다(고도엔진 4.5 버전 이상부터 에티터 .. 2024. 10. 7. 이전 1 2 다음