발자국 구현
·
Dev./그래픽스 Graphics
1. 개요플레이어 이동 모드(걷기/뛰기)에 따라 바닥에 발자국 데칼과 먼지 VFX를 자연스럽게 출력2. 아키텍처 & 컴포넌트 구조FootManager 컴포넌트BP_ThirdPerson 캐릭터에 부착이동 이벤트, 애니메이션 노티파이와 연동하여 데칼 스폰 관리ST_FootDecals / ST_CircleDecal 구조체데칼 머티리얼, 크기, 지속시간 등 파라미터 보관초기화 함수(InitializeCircleDecalValues) 통해 기본값 세팅애니메이션 연동걷기/뛰기 애니메이션 애님블루프린트에 "FootNotify" 추가해당 노티파이에서 FootManager → F_PrintFootDecal 호출3. 주요 로직 흐름이동 모드 변경 감지FootManagerOnMovementModeChanged에서 현재 속도..
[WIL] VFX & 게임 사운드 : Wwise-UE 통합 및 반응형 환경 구현
·
Dev./UE 언리얼 엔진
1. 주간 개요 주요 목표 : Wwise+UE 연동 / 발소리·함정·화살 사운드 등기간 : 25.05.12 ~ 16완료 리스트: 🔊 사운드 (발소리, 함정, 화살…)🖌️ 그래픽·VFX (발자국, 머티리얼…)2. 배운 점 요약Wwise 오디오 활용 기술Wwise-UE 연동을 통한 고급 사운드 시스템 구축스위치 컨테이너를 활용한 게임 상태별(Normal, Win, Lose) 오디오 전환 구현시퀀스 컨테이너를 이용한 사운드반복 사운드 루프의 CPU/메모리 최적화 기법물리 기반 사운드 시스템Physic Material별 발소리 분기 처리로 표면 재질에 따른 사운드 다양화플레이어 이동 모드(걷기/뛰기)에 따른 발자국 사운드와 VFX 통합 구현거리 기반 어테뉴에이션(Attenuation)을 통한 자연스러운 소..
Wwise와 Unreal 연동 가이드(3) : 연결
·
Dev./Wwise 와이즈
1. Wwise와 언리얼 엔진 통합: 첫 설정 과정프로젝트 생성 및 기본 설정언리얼 엔진을 실행하여 프로젝트를 생성.프로젝트 생성 후 언리얼 에디터를 일시적으로 종료.Audiokinetic 런처를 열고 'Unreal' 탭으로 이동.방금 생성한 프로젝트를 선택하고 'Integrate Wwise in Project...' 버튼 클릭.통합 과정에서는 다음 설정을 확인해야 한다:지원할 플랫폼 선택Wwise 프로젝트 경로 지정 (미지정 시 언리얼 프로젝트 폴더 내 자동 생성)'Integrate' 버튼을 클릭하여 통합 완료.2. 초기 환경 구성: Wwise와 언리얼 설정 최적화Wwise 초기 구성Wwise 프로젝트 연다.'Project → Project Settings → SoundBanks'로 이동.'Enable..
벽 너머 캐릭터 보기: 오클루전 마스크 쉐이더
·
Dev./그래픽스 Graphics
오클루전 마스크로 게임 시야 문제 해결하기"벽이나 지붕 뒤에 가려진 캐릭터를 어떻게 볼 수 있게 할까?"에 대한 효과적인 해결책!!➡️ 오클루전 마스크 셰이더(벽을 투명하게 만들어주는 효과)머티리얼 함수를 활용한 오클루전 마스크 구현 방법카메라와 오브젝트 사이 거리 계산 로직오클루전 마스크란 무엇인가?오클루전 마스크(Occlusion Mask)는 특정 조건에 따라 게임 오브젝트의 투명도를 조절하는 고급 셰이더 기법.플레이어의 시야를 가리는 벽이나 장애물을 상황에 따라 투명하게 만들어 게임 플레이의 편의성을 높여준다.🔹탑다운 RPG: 건물 안의 캐릭터 확인🔹도시 시뮬레이션: 건물 내부 활동 모니터링1. 머티리얼 함수 생성하기우선 재사용 가능한 머티리얼 함수를 만들어 프로젝트 전체에서 일관된 오클루전 효..
X-Ray 비전 효과 구현: 포스트 프로세스와 커스텀 뎁스 스텐실 버퍼
·
Dev./그래픽스 Graphics
📒학습 내용1. RTS/TPS 게임의 시야 문제 이해하기게임 개발에서 카메라 시점과 관련된 문제는 종종 발생한다. 특히 여러 카메라 시점을 사용하는 복합 장르 게임에서는 더욱 복잡해진다. 오늘 해결할 문제는 RTS와 TPS 요소를 모두 가진 게임에서의 시야 처리이다. 문제 상황:가디언 플레이어(RTS 모드): 탑뷰(Top-down view)에서 게임을 보며, 전체 상황 파악이 필요하다시커 플레이어(TPS 모드): 3인칭 시점에서 플레이하며, 현실적인 시야 제한이 필요하다해결해야 할 과제:가디언은 벽에 가려진 캐릭터와 오브젝트를 볼 수 있어야 한다시커는 정상적인 3인칭 시점으로, 벽과 천장에 가려진 것은 보이지 않아야 한다이러한 문제를 해결하기 위해 언리얼 엔진의 포스트 프로세스 효과와 커스텀 뎁스 스텐..
[TIL_250503] Wwise와 Unreal 연동 가이드(2) : Event 만들기
·
Dev./Wwise 와이즈
[TIL_250425] Wwise와 Unreal 연동 가이드(1) : Wwise 기본 세팅AudiokineticAudiokinetic - The global leader in interactive audio technology.www.audiokinetic.com💭회고게임 오디오는 단순한 배경 요소가 아닌, 게임플레이 경험을 완성하는 핵심 요소다. Wwise와 언리얼 엔진을 능숙raindrovvv.tistory.com📒학습 내용Wwise로 Game Call 처리하기: Event 만들기게임 엔진과 오디오 엔진 사이에 ‘Game Call(게임 호출)’을 연결하려면, Wwise에서 Event를 생성해 게임이 보내는 메시지를 받을 준비를 해야 한다. Event는 게임 호출을 수신할 수 있도록 설계된 오브젝트..
[TIL_250502]AI NPC의 애니메이션 세팅
·
Dev./UE 언리얼 엔진
💭회고 언리얼 엔진에서 AI NPC를 위한 애니메이션 시스템을 구축하는 기초를 학습했다:1. 외부 애니메이션 데이터 임포트 방법2. AI NPC 애니메이션 블루프린트 설정3. 플레이어와 AI NPC의 애니메이션 메커니즘 비교📒학습 내용1. AI NPC 애니메이션 데이터 임포트하기1.1 애니메이션 데이터 준비UE에서는 주로 `.fbx` 확장자의 파일을 통해 3D 모델과 애니메이션을 가져온다. 1.2 애니메이션 임포트 프로세스언리얼 엔진에 애니메이션을 가져오기 위해 다음 순서로 진행:1. 먼저 메인 스켈레톤 메시(0번 SKM 파일)를 임포트.2. 그 다음, 1~5번 애니메이션 파일을 임포트.3. 애니메이션 임포트 시 중요 설정: - `Import Only Animations` 옵션 체크. - ..
[TIL_250425] Wwise와 Unreal 연동 가이드(1) : Wwise 기본 세팅
·
Dev./Wwise 와이즈
AudiokineticAudiokinetic - The global leader in interactive audio technology.www.audiokinetic.com💭회고게임 오디오는 단순한 배경 요소가 아닌, 게임플레이 경험을 완성하는 핵심 요소다. Wwise와 언리얼 엔진을 능숙하게 연동하면 게임의 몰입감과 품질을 크게 향상시킬 수 있다....!📒학습 내용1. Wwise란 무엇인가?Wwise(Wave Works Interactive Sound Engine)는 Audiokinetic 사에서 개발한 전문 게임 오디오 미들웨어(게임 개발에서 오디오 처리를 전담하는 중간 소프트웨어)다. 이 도구는 게임 개발 과정에서 사운드 디자이너와 프로그래머가 함께 효율적으로 작업할 수 있는 환경을 제공한다...
[TIL_250424] 언리얼 엔진 AI Controller로 플레이어 자동 추적 구현하기
·
Dev./UE 언리얼 엔진
💭회고🔹인공 지능 🔹자동 내비게이션 링크 생성 언리얼 엔진에서 NPC가 플레이어를 자연스럽게 추적하도록 만드는 기본기이자, 실무에서 자주 쓰이는 핵심 기능이다. AIController 생성 및 기본 추적 기능 구현거리 기반 상태 전환 추적 로직AI Perception(인지) 시스템과 자동 네비게이션 링크 활용📒학습 내용1. AIController 생성 및 기본 추적 기능 구현CPP코드로 타겟액터를 설정하게 해뒀지만, 블루프린트를 이용하여 한번 더 안전코드를 적용할 수도 있다.New C++ Class → AIController 로 Chaser_AIController 생성헤더에 TargetActor, StartChasing(), StopChasing(), ChaseRadius 변수·함수 선언Begin..
[TIL_250423] 언리얼 엔진 RVO 시스템으로 AI의 동적 장애물 회피 구현하기
·
Dev./UE 언리얼 엔진
💭회고오늘은 언리얼 엔진에서 AI가 동적으로 변화하는 환경에 자연스럽게 대응하는 방법을 살펴봤다. 이전 학습에서 다루었던 정적 장애물 회피와 달리, 이번에는 움직이는 장애물을 효과적으로 회피하는 RVO(Reciprocal Velocity Obstacles) 시스템을 구현했다. 이 기술은 복잡한 환경에서 여러 AI 캐릭터들이 자연스럽게 상호작용하는 게임을 개발할 때 필수적인 요소이다. 이번 학습을 통해 다음 세 가지를 중점적으로 다룬다:RVO 시스템의 개념과 작동 원리 이해언리얼 엔진에서 RVO를 구현하는 방법과 핵심 코드RVO 파라미터 조정을 통한 AI 움직임 최적화이 내용은 향후 더 복잡한 AI 행동 패턴을 설계하고, 플레이어 추적 같은 고급 기능을 구현하는 데 토대가 된다.📒학습 내용RVO란 무엇..