X-RAY 머티리얼 구현(스텐실 버퍼 활용)
·
Dev./그래픽스 Graphics
1. 문제 정의가디언 플레이어(RTS 모드)탑뷰(≈80° 경사) 카메라로 벽과 천장을 뚫고 내부 캐릭터(몬스터)가 보여야 한다.시커 플레이어(TPS 모드)3인칭 시점에서 천장이나 벽이 뚫려서는 안 된다.이 두 뷰를 동시에 지원하려면 카메라 투영 방식과 머티리얼 처리 로직을 분리하여 구현해야 한다.2. 카메라 설정 최적화먼저 카메라 투영 방식을 결정한다.가디언 뷰Perspective 모드로 설정한다.테스트하면서 디테일을 조정한다.시커 뷰Perspective 모드로 설정한다.벽 높이가 기본 530 UU일 때 낮게 느껴지므로, 최소 1.25배(≈660 UU)로 스케일을 조정한다.3. 커스텀 뎁스 스텐실(Buffer) + 포스트프로세스1. 프로젝트 세팅Custom Depth Stencil Buffer 활성화Pr..
용암 & 화염 방사 함정 점화 VFX
·
Dev./그래픽스 Graphics
1. 개요목표:플레이어가 용암 발판 위에 진입·이탈할 때, 발밑에서 용암 불기둥(Flame Jet) 이펙트를 자동으로 켜고 끄기2. Niagara 이펙트 준비Niagara System 생성에디터에서 Add → Niagara Particle System기존 용암·화염 방사 이펙트(Template) 선택 후 NS_LavaBurst 등 이름 지정Auto Activate 해제Details → System Settings → Activation → Auto Activate 체크 해제파라미터 튜닝Spawn Burst: 순간 다수 파티클Lifetime: 0.5–1.0초 (짧고 강렬하게)Velocity: 위쪽으로 강한 초기 속도Color/Size: 용암 느낌의 붉은빛·스파크 텍스처 적용3. BP_Merci 컴포넌트 설..
상태에 따른 음향 변화
·
Dev./Wwise 와이즈
1. 개요목표: 게임 상태(Normal, Win, Lose)에 따라 배경음악·효과음을 즉시 또는 페이드로 전환2. Wwise Switch Container 설정Switch Container 생성 → 상태별 Switch Group 지정State Group: GameStateStates:Normal (기본 BGM)Win (승리 BGM)Lose (패배 BGM) RTS_사운드_구현화살_사운드_만들기TransitionsImmediate: 즉시 전환Fade In/Out: 0.5–1.0초로 자연스럽게 크로스페이드 상태에_따른_음향_변화상태에_따른_음향_변화3. Interactive Music Hierarchy 적용Music Playlist Track에 Switch Container 배치Game Syncs 탭에서 상태..
RTS 사운드 구현
·
Dev./Wwise 와이즈
1. 개요목표: RTS 모드에서 유닛별 클릭 및 이동 사운드 구현, TPS 시점에서도 들리도록 설정2. 리스너 및 초기 설정오디오 리스너는 카메라에 부착하여, RTS 모드에서의 사운드가 플레이어 청취 위치에 맞춰 재생되도록 함Monster 클래스(AGS_Monster)에 ClickSoundEvent, MoveSoundEvent 프로퍼티 선언 및 AkComponent에 이벤트 연결3. 컨트롤러 측 입력 처리오른쪽 마우스 클릭 시 선택된 유닛들의 이동 처리각 유닛에 대해 AI 컨트롤러 설정 및 이동 목표 위치 설정유닛의 MoveSoundEvent를 통해 이동 사운드 재생클릭 시에도 ClickSoundEvent를 동일한 방식으로 호출4. 유닛 초기화GS_SmallClaw 유닛의 경우, SmallClawClic..
화살 VFX & 사운드
·
Dev./UE 언리얼 엔진
화살 VFX 구현 (NS Ribbon Renderer)1. 개요목표: 화살이 발사될 때 공기 흐름을 따라 리본(ribbon) 형태 이펙트를 붙여 순간 궤적을 시각화2. Niagara Ribbon Emitter 설정Emitter 생성 → Template “Ribbon” 기반 선택Spawn Rate: 0, Spawn on Event 모듈 추가 → FireEvent 트리거 시 1회씩 방출Ribbon RendererMax Tessellation 증가 (8–16)로 부드러운 곡선 표현Width: 5–10 유닛, UV Tiling: 속도 기반으로 늘이기3. 화살 액터 연동BP_ArrowNiagaraComponent 추가 → NS_ArrowTrail 할당, Auto Activate 해제BeginPlay 또는 Fire..
언리얼 엔진 오디오 리스너 세팅(블루프린트)
·
Dev./UE 언리얼 엔진
1. 개요목표:멀티플레이어 환경에서 각 클라이언트별 리스너 적용Wwise와 UE 간 자연스러운 거리 기반 어테뉴에이션(Audition Attenuation) 구현글로벌 vs 로컬 사운드 분리로 밸런스 최적화2. 멀티 리스너 & 성능 고려사항Multiple Listeners각 클라이언트는 자신의 PC에서만 리스너가 활성화되며, 서버에서는 무시된다.Performance어테뉴에이션 커브가 복잡할수록 CPU 부담 증가 → 가능한 심플한 커브 사용 권장.Global vs Local배경음악 등 글로벌 사운드는 어테뉴에이션 끄기효과음만 거리 기반으로 처리하면 사운드 밸런스 조절이 용이3. Wwise 어테뉴에이션 가이드3.1 거리 단위UE4/5의 1 unit = 1 cmWwise 프로젝트의 Distance Unit도 ..
지뢰, 곰덫 사운드 & VFX
·
Dev./UE 언리얼 엔진
1. 개요목표:지뢰가 터지는 애니메이션(약 4초)과 3가지 사운드(틱킹, 퓨즈 점화, 폭발)를 시퀀스 컨테이너로 정밀 동기화지뢰 파괴 시에도 사운드가 끝까지 재생되도록 처리폭발 VFX(나이아가라) 및 곰덫 사운드 믹싱 구현2. 사운드 구조 & Wwise 설정시퀀스 컨테이너 사용사운드 순서:Ticking (1–3초 깜빡임)Fuse 점화Explosion (4초 시점)PlayMode: Continuous + Sample Accurate 전환 설정 → 컷 타임에 샘플 단위 재생 보장Bear TrapBlend Container로 4개 사운드 믹스Sequence Container로 순차 재생 3. 블루프린트 흐름PostAssociatedAkEventAndWaitForEnd 노드사운드가 전부 재생된 후에 다음 로직(..
돌 함정 나이아가라 효과
·
Dev./그래픽스 Graphics
1. 개요목표: 돌 가시 함정이 작동할 때 흙먼지 파티클을 순간적으로 뿜어내는 나이아가라 효과 구현2. 나이아가라 시스템 생성Niagara System 생성에디터에서 Add Niagara System → Template from an emitter(s) 선택기본 제공템플릿 중 Simple Smoke 또는 Basic Dust 계열 선택 → NS_StoneDust로 이름 지정Auto Activate 해제System Settings → Activation 섹션에서 Auto Activate 체크 해제블루프린트에서 Activate() 호출 시에만 파티클 재생3. 이미터 & 파라미터 조정Spawn Rate / CountSpawn Burst Instantaneous 모듈로 순간적으로 많은 파티클 방출Life Cycl..
발자국 구현
·
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)을 통한 자연스러운 소..