문자 인코딩
·
🖥️ Study Note
문자 인코딩 분류SBCS(Single Byte Character Set)1Byte로 문자를 표현하는 방식표현 범위 : 영문, 숫자 및 일부 특수 문자대표 문자셋: ASCIIMBCS(Multi Byte Character Set)문자에 따라 유동적인 크기로 문자를 표현하는 방식1Byte : 영문, 숫자 및 일부 특수 문자2Byte~ : 아스키 코드 범위 외의 아시아 문자나 특수 문자대표 문자셋 : ANSI, UTF-8WBCS(Wide Byte Character Set)2Byte 이상의 고정 크기로 문자를 표현하는 방식표현 범위 : 대부분의 문자대표 문자셋: Unicode문자 인코딩1. ASCII (American Standard Code for Information Interchange)ASCII는 최초의 ..
모션 매칭
·
🖥️ Study Note
Referencehttps://dev.epicgames.com/community/learning/tutorials/lwlG/unreal-engine-your-first-60-minutes-with-motion-matching http://journal.cg-korea.org/archive/view_article?pid=jkcgs-29-3-159 https://www.gdcvault.com/play/1023280/Motion-Matching-and-The-Road https://youtu.be/KSTn3ePDt50?si=oEy0Wp8rFkRyHlex 모션 매칭 등장 배경유비 소프트에서 For Honor 라는 게임을 개발하고 있었음. 이 게임은 멀티 플레이 게임인데 상단, 좌단, 우단의 세 방향으로 공격과 ..
TryLoad를 사용하여 TSoftObjectPtr을 Load하는 경우
·
🧭 Devlog/오답노트
잘못된 부분FSoftObjectPath SkeletalMeshPath(Mesh.ToSoftObjectPath());USkeletalMesh* SkeletalMesh = Cast(SkeletalMeshPath.TryLoad());if (SkeletalMesh != nullptr){ MeshesToMerge.Add(SkeletalMesh);}수정된 부분TSoftObjectPtr MeshPtr = MeshArray.Get(Index);if (!MeshPtr.IsNull()){ USkeletalMesh* SkeletalMesh = MeshPtr.LoadSynchronous(); if (ensureAlways(SkeletalMesh)) { MeshesToMerge.Add(SkeletalMesh); }}무엇이 잘..
[Unreal]Get() 사용하여 TSoftObjectPtr 데이터를 Load하는 경우
·
🧭 Devlog/오답노트
잘못된 부분MergedMesh = SkeletalMeshMergeData.GetDefaultSkeletalMesh().Get();수정된 부분TSoftObjectPtr DafualtSkeletalMesh = SkeletalMeshMergeData.GetDefaultSkeletalMesh();MergedMesh = DafualtSkeletalMesh.LoadSynchronous();TSoftObjectPtr의 Get() 함수는 Editor에서 사용되는 Editor 전용 함수이다.#if WITH_EDITOR /** Overridden to deal with PIE lookups */ FORCEINLINE UObject* Get() const { if (GPlayInEditorID != INDEX_NONE) ..
[C++] 콘솔입출력 라이브러리 iostream
·
🖥️ Study Note/C++
C++에서는 iostream 라이브러리의 "cin" 이 콘솔 입력을, "cout" 이 콘솔 출력을 담당한다.// 입력char[100] name;std::cin > "당신의 이름은" >> name >> "입니다." >> std::endl; 그렇다면 iostream은 어떤 라이브러리고, cin과 cout 은 정확히 무엇일까?iostram은 스트림을 이용하여 입출력 기능을 제공하는 객체 지향 라이브러리다.cin과 cout은 스트림 클래스의 객체이다.📢스트림과 스트림 버퍼입력과 출력이 발생하면 입력 받은 혹은 출력할 문자들을 저장했다가 한번에 처리하는 과정을 스트림이라고 한다.스트림 버퍼는 스트림 과정에서 한번에 처리할 데이터들을 쌓아두는 저장 공간이다. iostream 라이브러리의 전체 개요도는 다음과 같다..
[Unreal] Game Ability System(GAS) - Ability System Componet(ASC)
·
🖥️ Study Note/Unreal Engine
Ability System ComponentASC는 ActorComponent로 GAS 요소들의 인터렉션을 다룬다.Game Abilities를 사용하거나, Attribute가 있거나, Gameplay Effect를 받는 모든 액터는 ASC가 있어야 한다. Attribute를 제외한 모든 GAS 요소가 ASC에 의해 관리되고 Replicate된다.Attribute들은 자신의 Attribute Set에 의해 Replicate된다.ASC는 Owner Actor와 Avatar Actor를 가진다.Owner Actor : ASC가 붙어있는 ActorAvatar Actor : ASC가 물리적으로 표현되는 ActorASC의 Owner와 Aavatar는 같을 수도, 다를 수도 있다.MOBA의 미니언처럼 단순한 캐릭터의..
[Unreal] Game Ability System(GAS)
·
🖥️ Study Note/Unreal Engine
GAS는 어빌리티(액터가 할 수 있는 것으로 액티브 스킬이나 패시브 스킬과 같은 능력)나 어트리뷰트(액터의 능력치)를 만들 수 있는 굉장히 유연한 프레임워크로 RPG나 MOBA류의 게임에서 사용하면 좋다. 어빌리티의 결과로 어트리뷰트를 변경시키거나 버프나 디버프, 쿨다운 타이머 혹은 마나 사용과 같은 자원 비용을 구현할 수 있다. 어빌리티의 파티클이나 사운드도 설정할 수 있다. 점프와 같은 간단한 어빌리티나 우리가 다른 게임에서 보던 복잡한 스킬도 구현이 가능하다.GAS는 싱글 플레이와 더불어 멀티 플레이 게임에서도 사용가능하도록 다음 사항의 기본 솔루션을 제공한다.Game Abilities ⇒ 레벨 기반 캐릭터 능력이나 비용이나 쿨타임이 있는 스킬 구현Attributes ⇒ Actor의 능력치 정의 및..
📝 2025-06-08 TIL
·
🧭 Devlog/TIL
오늘 한 일WeaponBase 리팩토링GetFireStart() / GetFireDirection()플레이어 → 카메라 기준AI → Muzzle 소켓 기준ApplyRecoil() 로직 분리카메라 흔들림(리코일) ↔ Direction 퍼짐(Spread) 스택 분리DoFire() 흐름: Start → Dir (Spread) → LineTrace → PlayMuzzleEffect()발사 이펙트UNiagaraSystem* MuzzleFX + USoundBase* FireSoundSpawnSystemAttached() / SpawnSoundAttached() 한꺼번에 처리Niagara MuzzleFlash 세팅Emitter 2개 (Flame 0.1 s + Smoke 1 s)Spawn Burst Instantane..
TIL #25.05.29
·
🧭 Devlog/TIL
오늘 계획GameLift 강의 Section5 전부 듣기 -> 성공!오늘 한 일GameLift 강의 Section5 전부 듣고,미루던 겨울 옷 정리함오늘 학습AWS CLI(Command Line Interface)로 Location 생성, Fleet 생성 및 설정, Auth Token 생성, Game Session 및 Player Session 생성 방법 회고강의 들은 건 좋은데 강의 내용을 소화할 시간이 조금 부족했던 것 같다.시간 관리를 잘해서 강의를 다 들은 후 정리할 수 있는 시간을 꼭 가지자.
TIL #25.05.27
·
🧭 Devlog/TIL
오늘 계획안타깝게도 딱히 계획이 없었음. 오늘 한 일Amazom GameLift 관련 포스팅 : https://beankong-devlog.tistory.com/187Unreal GameLift Server SDK 플러그인 추가하기 포스팅 : https://beankong-devlog.tistory.com/188GameLift 강의 보면서 몰랐던 개념 정리 및 문서 읽기 오늘의 개념=> Fleet 이 무엇인지, 그리고 GameLift Anywhere Fleet VS GameLift managed EC2 Fleet? In AWS, a fleet represents your hosting resources. It’s a set of actual instances of compute resources. Wh..