블루프린팅 (91)     블로그 내 검색 검색     글쓰기     관리자 썸네일형 리스트형 [CH6 어빌리티강화] 사운드및 파티클 이펙트 추가 현재 실린더는 타격시 색상이 변하는데 파괴되는 효과를 더해보겠다 분기를 통한 대상의 상태 변경 실린더가 이미 총알에 맞았는지를 확인하는 Branch노드를 추가한다. 0. Blueprints폴더의 BP_CylinderTarget을 연다 1. 내 블루프린트 패널에서 변수+를 눌러 Primed라는 새변수를 추가하고 Bool로 세팅한다. 2. 블루프린트를 컴파일하고 저장한다. 대상이 처음 히트하기 전에 Primed 상태가 되는 것을 원치 않기 때문에 변수의 기본값을 False로 유지한다. 언체크한 상태로 놔두면 3. Primed 부울 변수를 그리드 빈곳에 끌어다 놓고 Get옵션으로 배치한다. 4. 노드의 출력핀을 끌어 컨텍스트메뉴에서 Branch 노드를 검색해 추가한다. 5. Hit이벤트그룹내 Cast 형변환과.. [CH6 어빌리티강화] Projectile 발사체 속도 변경 현제 플레이어의 발사체의 총알은 느리게 호를 그리며 공중을 날라가는 구체들이다. 발사체의 속성을 변경하려면 콘텐츠>FirstPerson>BluePrint폴더에 있는 BP_FirstPersonProjectile이라는 블루프린트를 연다. 컴포넌트 판넬의 ProjectileMovement를 클릭한다. 1. 디테일 패널에서 초기속도와 최대속도 필드를 찾는다. 둘다 6000으로 설정한다.발사체 중력 스케일은 1.0에서 0.1로 변경한다. 2. Projectile Bounces에서 SouldBounce를 언체크한다. 이벤트그래프의 Branch의 Flase핀을 Destroy Actor 함수에 연결해서 어딘가 충돌하면 무조건 파괴되도록한다. 3. 컴파일 세이브후 레벨에디터에서 플레이 해보면 발사체가 훨씬 멀리가고 벽에.. [CH6 플레이어어빌리티강화] Camera Zoom하기 확대된 뷰에 애니메이션 적용 이제 마우스 우클릭이 매핑된 Zoom 이벤트를 사용하겠습니다. 1. 그리드에 우클릭후 Zoom을 찾아 이벤트 노드를 추가합니다. 2. 화면의 Zoom기능이 있는 컴포넌트의 First Person Camera를 이벤트 그래프로 끌어 노드를 만듭니다. 3. First Person Camera를 끌어 컨텍스트메뉴에서 Set Field of view "함수"를 찾아 노드를 만듭니다.FOV값은 45도로 설정합니다. 원래 Camera Settings의 FOV는 90도입니다. FirstPersonCamera를 선택해 오른쪽 디테일 메뉴에서 확인할수 있습니다. 4. 이제 이벤트노드와 연결합니다. 5. First Person Camera에서 SET FOV를 하나 더 추가해 90도로 설정후 R.. CH06 향상된 입력 향상된 입력 향상된 입력 플러그인 개요 복잡한 입력 처리, 런타임 컨트롤 리매핑 등 더욱 향상된 입력 기능이 필요한 언리얼 엔진 5 (UE5) 프로젝트에서 개발자는 향상된 입력 플러그인 을 사용하여 언리얼 엔진 4 (UE4) 기본 입력 시스템과의 하위 호환성과 업그레이드 경로를 확보할 수 있습니다. 이 플러그인은 방사상 데드존(dead zone), 조합 액션(chorded action), 컨텍스트에 따른 입력, 우선순위 지정 등의 기능과 에셋 기반 환경에서 원시 입력 데이터의 필터링 및 처리를 확장할 수 있는 능력을 제공합니다. 시작하기 향상된 입력 을 사용하도록 프로젝트를 구성하려면 향상된 입력 플러그인을 활성화하세요. 에디터의 편집(Edit) 드롭다운 메뉴에서 플러그인(Plugins) 을 선택하면 됩.. 06 플레이어 어빌리티 강화 - 달리기 05장에서 사용하였든 일인칭 템플릿에 나왔던 플레이어에 대해 배웁니다. 플레이어 입력과 조작 시야 타임라인과 분기로직 오브젝트 인터렉션에 사운드 및 파티클 이펙트추가 실행기능 추가 현재 플레이어는 단일 속도로 이동하지만 왼쪽 Shift키를 함께 누르면 이동 속도를 증가하도록 변경하기 위해 간단히 FirstPersonCharacter의 이벤트그래프에 있는 액션을 학습합니다. 캐릭터 무브먼트 분석 콘텐츠블루우저 FirstPerson>BluePrints폴더에서 BP_FirstPersonCharacter 블루프린트를 열어봅니다. 2023년5월말 V5.2를 깔아서 인지 교재에서 설명하려는 노드는 보이지 않고 새로운 입력 시스템이 보인다. ㅠㅠ 일단 분석은 패스. 다시 레벨에디터로 돌아옵니다. 컨트롤 입력의 커스터.. [05오브젝트 인터렉션] 이동추가 총알에 맞으면 빨갛게 변하게 하였습니다. 이제부터 앞뒤로 움직이는 동작을 추가하겠습니다. 로직적으로는 tick이벤트를 이용 speed*delta second만큼 액터를 움직이게 할거고 timer를 이용 5초마다 방향 반전을 하게 할겁니다. 액터의 모빌리티와 콜라전 세팅 변경 타깃을 이동시키려면 먼저 모빌리티 세팅을 무버블로 변경해야 한다. 이를 통해 게임을 하는 동안 액터를 조작할 수 있다. 1. BP_CylinderTarget을 다시 연다. 컴포넌트 패널에스 스태틱 메시 컴포넌트를 선택한다. 디테일 패널에서 트랜스폼 속성아래있는 모빌리티 토글을 스태틱에서 무버블로 전환한다. \ 총으로 이 물체를 겨냥하고 싶기 때문에 총알이 관통하지 않고 목표물과 충돌할 수 있도록 해야한다. 2. 디테일 패널에서 콜리전.. [2부 게임개발] 05오브젝트 인터렉션 새 프로젝트와 레벨 생성 일인칭 템플릿으로 새 프로젝트를 만들고 이름을 UE5BpBook으로 지정한다. 플레이를 누르고 뷰포트를 클릭하면 게임 입력이 반응한다. WASD를 눌러 이동이 가능하고 왼쪽 버튼이 Fire이다. 플레이모드에서 Shift+F1으로 커서를 표시할 수 있고 일시정지 버튼으로 플레이세션을 일시 중지 시킬수 있다. 이는 게임의 속성을 탐색하는데 유용하다. 중지버튼으로 플레이 세션이 종료되고 편집모드로 돌아간다. 빠져나오기 버튼을 클릭하면 카메라가 플레이어에서 분리돼 휠과 좌클릭 드래그로 레벨을 자유롭게 이동할수 있다. 레벨에 오브젝트 추가 템플릿에 이미 총이 포함되어져 있다 이 총을 획득하여 발사체로 쏘면 색이 변하는 간단한 타깃 액터를 만들자. 1. 레벨에디터 +를 눌러 세이프>실린더를.. [2부게임개발] CH05 블루프린트를 사용한 오브젝트 인터렉션 블루프린트를 사용하면 핵심 게임플레이 기능을 빠르게 작동시켜 아이디어 테스트를 빨리 시작할 수 있다. 먼저 기본 에셋과 몇가지 블루프린트를 사용해서 간단한 게임플레이 메커니즘을 프로토타이핑하는 것으로 시작한다. 이 장에서는 다음 주제를 다룬다. 새 프로젝트와 레벨 생성 레벨에 오브젝트 배치 블루프린트를 통한 오브젝트 머터리얼 변경 블루프린트를 사용해 월드 내 오브젝트 이동 타깃이 맞았을 때 타깃의 머터리얼을 변경하고, 타깃이 두 지점 사이를 규칙적으로 왔다 갔다 하게 하는 블루프린트를 만드는 방법에 대해 배운다. 레벨에 있는 블루프린트 타깃의 각 인스턴스는 서로 다른 속도, 방향 및 방향 전환 시간을 갖도록 세팅할 수 있다. 이벤트 바인딩 한 이벤트를 다른 블루프린트에 있을 수 있는 다른 이벤트 또는 이벤트 디스패처에 바인딩하는 이벤트 바인드 노드가 있다. 이벤트가 호출되면 여기에 바인딩된 다른 모든 이벤트도 호출된다. 예를 들어 Blueprint_Effect_Sparks의 자식 블루프린트 클래스를 만든다. 이 새 블루프린트는 이전 예에서 생성한 BP_Platform 블루프린트의 PlatformPressed 이벤트 디스패처에 이벤트를 바인드 한다. 1. 이벤트 디스패처 예제에서 사용된 프로젝트를 연다. 2. 컨텐트드로워 +Add에서 클래스블루프린트를 생성하고 모든 클래스메뉴를 확장해서 Blueprint_Effect_Sparks를 검색 선택하고 이름을 BP_Platform_Sparks로 하고 블루프린트에디터를 연다. 3. 컴포넌트탭에서 Sp.. 이벤트 디스패처 이벤트 디스패처는 이벤트가 발생할 때 블루프린트가 다른 블루프린트에 알릴 수 있게 한다. 레벨 블루프린트및 다른 블루프린트클래스는 이 이벤트를 수신할 수 있으며 이벤트가 트리거 될때 서로 다른 액션을 실행할 것이다. 내 블루프린트 패널에서 이벤트 디스패처를 생성한다. 예를 들어 BP_Platform 블루프린트를 생성해보자. 액터 BP_Platform 블루프린트와 겹칠 때 PlatformPressed라는 이벤트 디스패처를 호출한다. 레벨 블루프린트에서 PlatformPressed 이벤트를 수신하고 있으면 이 이벤트가 트리거 되면 폭발이 발생한다. 1. 삼인칭 콘텐츠가 포함된 템플릿을 기반으로 새로 만들거나 기존 프로젝트를 사용한다. 2. 액터를 부모 클래스로 하는 BP_Platform 블루프린트를 생성하고.. [언리얼][블루프린트] 레벨 블루프린트 커뮤니케이션 언리얼엔진에는 게임의 각레벨마다 기본 레벨 블루프린트가 있다. 현재 레벨에서 발생하는 이벤트및 액션을 만드는데 유용하다. 연습을 위해 툴바의 +를 눌러 레벨에 트리거박스를 하나 놓겠다. 트리거박스를 통로에 위치시키고 사이즈를 넓게 해준다. 편집을 위해서는 툴바에서 블루프린트 버튼을 클릭하고 레벨 블루프린트 열기 옵션을 선택한다. 이벤트그래프를 우클릭하고 다음 스크린샷과 같이 TriggerBoxUAID에 대한 이벤트 추가 카테고리에 속한 이벤트 On Actor Begin Overlap을 추가한다. 레벨에디터로 돌아가 컨텐트 드로워를 클릭 하고 StarterContent>Blueprints로 이동하고 Blueprint_Effect_Sparks를 연다. 컴포넌트탭에서 Sparks컴포넌트를 선택하고 디테일탭에서.. [언리얼][블루프린트] 블루프린트의 형변환 부모클래스의 참조는 자식클래스의 변수와 함수에 접근할 수 없다. 형변환 함수를 이용해야 한다. 형변환의 또 다른 용도는 오브젝트 레퍼런스가 원하는 타입인지 안전하게 테스트 하는 것이다. 1.부모 클래스를 게임모드베이스로 BP_GameModeWithScore 블루프린트를 만들고 더블클릭한다. 2. 내블루프린트 패널에서 Integer 타입의 GameScore변수와 AddGameScore함수를 생성한다. 3. AddGameScore함수 디테일 패널에서 Score라는 Integer타입의 입력파라미터를 추가한다. 이 함수는 GameScore변수에 포인트를 추가하는데 사용한다. 4. 함수의 그래프에서 다음 스크린샷에 표시된 액션을 추가한다. GameScore변수의 GET및 SET노드를 추가한다. PrintStrin.. 이전 1 ··· 3 4 5 6 7 8 다음