반응형
인기글
[windbg] windbg 사용하기, 덤프 분석하기
[windbg] windbg 사용하기, 덤프 분석하기
◽ 툴(tool)
2024.06.26 15:59
"[windbg] windbg 사용하기, 덤프 분석하기" 1. 덤프를 읽을 심볼과 심볼에 맞는 소스코드 경로를 연결시킨다. 2. 덤프를 windbg에 드래그 드롭 또는 open으로 파일을 열면 이런 화면을 볼 수 있다.Loading Dump File : 덤프 파일의 위치, 덤프 종류 Executable search path is : 덤프가 발생한 OS Debug sesstion time : 덤프 발생 시점 시간 Process Uptime: 부팅 이후 동작한 시간 3. !analyze -v 명령어 실행 !analyze-v 명령어를 실행하면 더욱 자세하게 덤프 내용이 나온다.FAULTING_IP: 어떤 부분에서 문제가 일어났는지 표시한다. callstack의 마지막 부분이다. KERNRLBASE.d..
[일상/사진] 수원 화성 유기견 보호소 봉사활동 후기
[일상/사진] 수원 화성 유기견 보호소 봉사활동 후기
◽ 일상&사진
2025.01.28 19:15
경기도 수원 화성시에 있는 유기견 보호소 봉사활동을 다녀왔다. 너무 오랜만에 간 봉사활동…. 다시 종종 다녀야겠다.봉사활동 중 유기견 봉사는 내가 아이들에게 도움을 주고, 나도 아이들에게 마음의 위로를 받는 활동이여서 좋아한다.여기는 강아지 약 90마리, 고양이 약 30마리 정도가 있었다. 이번에 또 2마리를 누군가 보호소에 두고 갔다고 한다. 한 아이의 삶을 책임지지 못할 거면 시작조차 하면 안된다. 에휴 .. 1. 아이들 밥그릇 물그릇 설거지 후 다시 배치 밥그릇 물그릇마다 이름표가 있어서 이름 찾아서 다시 배치해주고 밥과 물을 채워주면 끝청소하는 동안에는 애들 마당에서 놀도록 모두 풀어줬다. 2. 뒷견사, 앞견사 청소 담당이 아니였다. 설거지 하는동안 마당에 멍멍이 풀어두고 청소하는..
시력 : -9.75D, -9.12D 초고도근시,난시 렌즈삽입술 수술 후 다음 날 바로 출근한 직장인 / 1주일 간 솔직한 썰, 가격 푼다... (병원 : <서울 밝은 세상 안과> )
시력 : -9.75D, -9.12D 초고도근시,난시 렌즈삽입술 수술 후 다음 날 바로 출근한 직장인 / 1주일 간 솔직한 썰, 가격 푼다... (병원 : <서울 밝은 세상 안과> )
◽ 일상&사진
2026.07.14 06:58
세상을 일 그러 뜨리는 능력이 있던 개찐따 안경 30년 만에 벗어내다. ✅ 서울|부산 밝은 세상안과를 선택한 이유압도적인 수술경험압도적인 리뷰 수 (네이버 리뷰 1만 건 넘고, 구글 리뷰도 5000건이 넘는다. 압도적이다..)GPT가 추천해 준 병원 중 하나오래된 병원 (나랑 한 살 밖에 차이 안남..!)전문의 의사 많음 장비 많음 병원 아주 큼회사에서 제휴업체 안과가 있어 한 100만 원 정도는 싸게 수술할 수 있지만 굳이...? 내 눈을 저렴하게 하고 싶은 생각은 없다. https://www.iloveeye.com/index.do?utm_source=naver_pc&utm_medium=bs_seoul&utm_campaign=%EC%84%9C%EC%9A%B8%EB%B0%9D%EC%9D%80%EC%..
[Unreal] Behavior Tree 이해하면서 몬스터 AI 만들기
[Unreal] Behavior Tree 이해하면서 몬스터 AI 만들기
◽ 언리얼(unreal)
2025.12.02 22:34
동영상1 1. 블랙보드 세팅에 대하여... 블랙보드(Blackboard) 에셋은 AI의 두뇌로 생각할 수 있으며, 비헤이비어 트리가 결정 내리는 데 사용하는 키(Key) 값을 저장한다. 블랙보드는 필요에 따라 c++ 또는 블루프린트 안에서 Set, Get 할 수 있다. 여기서 최상단에 SelfActor값과 TargetActor값의 거리를 service 하는데 이 두 값을 어디서 세팅하는지 알아보자. 1.1. SelfActor블랙보드 처음 생성하면 SelfActor가 나온다. 이 SelfActor는 그냥 현재 이 블랙보드를 사용하는 주체라고 생각하면 된다. C++ AAIController 클래스 내부에서 GetPawn()을 SelfActor에 세팅해주고 있다.1.2. TargetActorTargetAct..
[Unreal] UI 세팅/구조 분석 (Set Up Common UI)
[Unreal] UI 세팅/구조 분석 (Set Up Common UI)
◽ 언리얼(unreal)
2025.09.16 23:41
Activate에서 SubSystem에 있는 PushSoftWidgeToStackAsync 비동기 위젯 생성 및 스택 추가 함수를 호출한다. 주요 클래스 정리하기 1. UCommonActivatableWidgetContainerBaseUCommonActivatableWidget 위젯을 담고 관리하는 기본 컨테이너 클래스2. UDeveloperSettings자신만의 세팅(설정값/옵션) "ProjectSetting", "Editor Settings"를 생성하고 관리할 수 있는 클래스3. UGameInstanceSubsystem게임 인스턴스 생명주기(게임 전반에 걸친 공유 기능 구현에 적합)특정 기능을 모듈 단위로 분리하여 관리하는 "자동 인스턴싱 및 수명 관리 클래스" 프로그래머가 직접 객체를 생성하거나..
게임 회사 용어 정리 (아마 계속 업데이트 될거임.)
게임 회사 용어 정리 (아마 계속 업데이트 될거임.)
◽ 취업&이직
2024.07.11 17:18
1. IBT (Interal Beta Test)- 임직원들을 대상으로 사내 테스트 2. CDN (Content Delivery Network)- 지리적으로 분산된 서버들을 연결한 네트워크 - 전 세계 CDN 서버의 분산 특성은 서버에서 캐시된 콘텐츠를 사용자에게 더 가깝게 제공함으로써 성능을 향상시킨다.(출처: 베타 플러스) 3. Launcher (런쳐) - 게임을 실행하는 실행파일을 말한다. exe- 바이너리라고 칭하기도 함. 4. OTP (One Time Password) 5. Mac Address (media access control address)- 네트워크 세그먼트의 데이터 링크 계층에서 통신을 위한 네트워크 인터페이스에 할당된 고유식별자. (출처: 위키백과)🎞 상황극??? : 맥...?..
실무 면접 대비  1번째 C / C++ (게임 클라이언트 프로그래머 기준)
실무 면접 대비 1번째 C / C++ (게임 클라이언트 프로그래머 기준)
◽ 취업&이직
2021.02.22 00:37
게임 클라이언트 프로그래머가 준비해야 할 실무면접 리스트입니다. 취준 할 때 만들었던건데 공유하려고 올립니다. 준비해야 될 영역을 간략하게 비중과 함께 이야기하면, 1. C / C++ (40% ~ 60%)2. 그래픽스 개념 (20%)3. 운영체제 (10%~20%)4. 데이터베이스 (10%)5. 알고리즘, 자료구조 (20%~30%) : 실무면접 기준입니다. 알고리즘과 자료구조는 코딩테스트는 당연히 100%이고필기 테스트라면 50%라고 생각하시면 될거 같습니다. 대답하는 형식으로 준비했으니 고려해주세요.첫번째 C++기초 프로그래밍 기초 예상 질문1. C++의 특징을 말해주세요.C++언어는 객체지향언어로 4가지의 특징이 있습니다.첫번째 다형성입니다. 하나의 객체가 여러 가지 타입을 가질수 있는 것을 의미합니..
[unreal] 애니메이션 리타게팅
[unreal] 애니메이션 리타게팅
◽ 언리얼(unreal)
2025.07.04 23:00
1. 정의IK 리타게팅(Inverse Kinematics Retargeting)은 언리얼 엔진에서 제공하는 애니메이션 변환 기능으로, 서로 다른 스켈레탈 메시 간에 애니메이션 데이터를 자연스럽게 이전할 수 있도록 지원한다. IK(역운동학) 알고리즘을 활용하여 손, 발 등 주요 신체 부위의 위치 정밀도를 유지한다. 2. 주요 특징본 구조 차이 대응: 본 개수, 명칭, 방향 등이 상이한 캐릭터 간에도 애니메이션 재사용이 가능하다. 정확한 컨택 포인트 보정: 손, 발 등 주요 부위가 바닥 또는 오브젝트에 정확히 닿는 동작을 실시간으로 보정한다. 엔진 내 통합 워크플로우: 외부 툴 없이 언리얼 엔진 내에서 직접 세팅 및 적용이 가능하다. 3. 사용 절차소스 및 타깃 스켈레탈 메시 준비 각 메시에 IK Rig 에..
[Perforce/P4V] workspace에 파일 받지 않아도 대용량 파일 지우는 방법 (2012 이전 버전 / 2012 이후 버전)
[Perforce/P4V] workspace에 파일 받지 않아도 대용량 파일 지우는 방법 (2012 이전 버전 / 2012 이후 버전)
◽ 툴(tool)
2026.08.03 15:51
아주 오래된 Perforce를 쓰는 사람들(2012년 전 퍼포스)... workspace에 파일 받지 않아도 대용량 파일 지우는 방법 공유 일단 우리 회사 퍼포스는 아주 오래된 구석기시대의 퍼포스를 사용한다. 구석기라고 말하기도 그렇고... 빙하기 정도? 퍼포스 모든 커밋이 중앙서버(Depot)로 되어 있다. 퍼포스의 가장 큰 장점 중 하나가 빅데이터, 바이너리 파일들을 빠르게 처리할 수 있다. 때문에 큰 프로젝트를 하는 곳에서 리소스용으로 가지고 있는 경우가 많다. 해본 사람은 알겠지만 게임회사에서 게임 리소스는 아주아주 대용량이다. 받는데 얼마나 오래 걸리겠어 ~ 하지만 한 사람이 받으면 중앙서버를 사용하기 때문에 다른 사람의 접근이 아주 느려진다. 장난 빼고 모든 팀원이 받는다고 하면 하루 종일 걸..
[Unreal / C++] TObjectPtr, TSubclassOf, TInstancedStruct, 다양한 UObject 포인터..
◽ 언리얼(unreal)
2026.07.29 11:47
📒 1. TObjectPtr (UE5) " 이미 만들어진 객체를 가리키는 UObject 포인터 "UE5 : TObjectPtr Item;UE4 : UInv_InventoryItem* Item; 이미 생성된 UObject를 가리키는 포인터 UE5에서 권장하는 UObject 포인터사용법은 UObject*와 거의 동일하다.GC가 객체를 추적하기 쉽다.에디터에서 참조 관리가 향상된다.지역 변수나 함수 인자는 Raw Pointer(UE4 버전)를 많이 쓴다. 📒 2. TSubclassOf " 앞으로 만들 클래스 " TSubclassOf WeaponClass;특정 클래스의 자식 클래스만 담을 수 있는 클래스 타입실제 객체가 아니라 클래스(설계도)를 저장한다SpawnActor(), NewObject() 에서 많..
최신글
[Perforce/P4V] workspace에 파일 받지 않아도 대용량 파일 지우는 방법 (2012 이전 버전 / 2012 이후 버전)
◽ 툴(tool)2026.08.03 15:51[Perforce/P4V] workspace에 파일 받지 않아도 대용량 파일 지우는 방법 (2012 이전 버전 / 2012 이후 버전)

아주 오래된 Perforce를 쓰는 사람들(2012년 전 퍼포스)... workspace에 파일 받지 않아도 대용량 파일 지우는 방법 공유 일단 우리 회사 퍼포스는 아주 오래된 구석기시대의 퍼포스를 사용한다. 구석기라고 말하기도 그렇고... 빙하기 정도? 퍼포스 모든 커밋이 중앙서버(Depot)로 되어 있다. 퍼포스의 가장 큰 장점 중 하나가 빅데이터, 바이너리 파일들을 빠르게 처리할 수 있다. 때문에 큰 프로젝트를 하는 곳에서 리소스용으로 가지고 있는 경우가 많다. 해본 사람은 알겠지만 게임회사에서 게임 리소스는 아주아주 대용량이다. 받는데 얼마나 오래 걸리겠어 ~ 하지만 한 사람이 받으면 중앙서버를 사용하기 때문에 다른 사람의 접근이 아주 느려진다. 장난 빼고 모든 팀원이 받는다고 하면 하루 종일 걸..

◽ 언리얼(unreal)2026.07.29 11:48[Unreal / C++] DELEGATE

프로그래밍 용어인 델리게이트는 넓은 의미로 본다면 특정 객체가 해야 할 로직을 다른 객체가 대신 처리할 수 있도록 만드는 보편적인 설계의 개념으로 의미한다.언리얼 엔진의 델리게이트는 A객체가 B객체에 작업 명령을 내릴 때 B 객체에 자신을 등록하고 B의 작업이 끝나면 이때 A에게 알려주는 방식을 의미한다 .A가 B가 요구하는 형식으로 멤버 함수를 만들면 이를 B에 등록할 수 있고, B가 특정 상황이 될 때 B는 미리 등록해둔 A의 멤버 함수를 호출해주는 방식으로 동작한다. 매크로 (MACRO)Blueprint바인딩 개수반환값특징DECLARE_DELEGATE❌1개 ⭕가장 빠름DECLARE_MULTICAST_DELEGATE❌여러 개 ❌호출 순서 보장 안됨.DECLARE_DYNAMIC_DELEGATE⭕1개 ..

◽ 언리얼(unreal)2026.07.29 11:47[Unreal / C++] TObjectPtr, TSubclassOf, TInstancedStruct, 다양한 UObject 포인터..

📒 1. TObjectPtr (UE5) " 이미 만들어진 객체를 가리키는 UObject 포인터 "UE5 : TObjectPtr Item;UE4 : UInv_InventoryItem* Item; 이미 생성된 UObject를 가리키는 포인터 UE5에서 권장하는 UObject 포인터사용법은 UObject*와 거의 동일하다.GC가 객체를 추적하기 쉽다.에디터에서 참조 관리가 향상된다.지역 변수나 함수 인자는 Raw Pointer(UE4 버전)를 많이 쓴다. 📒 2. TSubclassOf " 앞으로 만들 클래스 " TSubclassOf WeaponClass;특정 클래스의 자식 클래스만 담을 수 있는 클래스 타입실제 객체가 아니라 클래스(설계도)를 저장한다SpawnActor(), NewObject() 에서 많..

시력 : -9.75D, -9.12D 초고도근시,난시 렌즈삽입술 수술 후 다음 날 바로 출근한 직장인 / 1주일 간 솔직한 썰, 가격 푼다... (병원 : <서울 밝은 세상 안과> )
◽ 일상&사진2026.07.14 06:58시력 : -9.75D, -9.12D 초고도근시,난시 렌즈삽입술 수술 후 다음 날 바로 출근한 직장인 / 1주일 간 솔직한 썰, 가격 푼다... (병원 : <서울 밝은 세상 안과> )

세상을 일 그러 뜨리는 능력이 있던 개찐따 안경 30년 만에 벗어내다. ✅ 서울|부산 밝은 세상안과를 선택한 이유압도적인 수술경험압도적인 리뷰 수 (네이버 리뷰 1만 건 넘고, 구글 리뷰도 5000건이 넘는다. 압도적이다..)GPT가 추천해 준 병원 중 하나오래된 병원 (나랑 한 살 밖에 차이 안남..!)전문의 의사 많음 장비 많음 병원 아주 큼회사에서 제휴업체 안과가 있어 한 100만 원 정도는 싸게 수술할 수 있지만 굳이...? 내 눈을 저렴하게 하고 싶은 생각은 없다. https://www.iloveeye.com/index.do?utm_source=naver_pc&utm_medium=bs_seoul&utm_campaign=%EC%84%9C%EC%9A%B8%EB%B0%9D%EC%9D%80%EC%..

[Unreal / C++] AAA급 UI 만들기 ControlTab - IInputProcessor 이용하여 키 변경하기 + AddTicker 사용하는 이유
◽ 언리얼(unreal)2026.03.16 23:11[Unreal / C++] AAA급 UI 만들기 ControlTab - IInputProcessor 이용하여 키 변경하기 + AddTicker 사용하는 이유

Enhanced Input 키 리맵 UI 구현 흐름 정리이번 글에서는 키 변경 UI가 실제로 어떤 흐름으로 동작하는지 정리해보겠습니다.예시는 UWidget_ListEntry_KeyRemap, UWidget_KeyRemapScreen, 그리고 IInputProcessor를 사용한 구조입니다.전체 흐름은 아래처럼 보면 이해하기 쉽습니다.리스트 엔트리에서 변경 / 리셋 버튼 클릭키 입력을 받을 전용 화면 표시화면 활성화 시 Input Preprocessor 등록사용자 입력을 먼저 감지유효한 입력이면 실제 키 매핑 변경설정 저장 후 화면 종료비활성화 시점에 Input Preprocessor 해제즉, 단순히 버튼을 눌러 키를 바꾸는 구조가 아니라 입력을 기다리는 전용 화면을 띄우고, 그 안에서 입력을 먼저 받아 ..

[c++/ warning C4541] : 'dynamic_cast'이(가) /GR- 스위치와 함께 다형 형식 'Base'에 사용되었습니다. 예기치 않은 결과가 발생할 수 있습니다. + vfptr에 대해서
◽ 에러 해결 메모2026.03.12 11:54[c++/ warning C4541] : 'dynamic_cast'이(가) /GR- 스위치와 함께 다형 형식 'Base'에 사용되었습니다. 예기치 않은 결과가 발생할 수 있습니다. + vfptr에 대해서

비주얼 스튜디오의 런타임 형식 정보 사용은 C++의 RTTI(Run-Time-TypeInformation)의 옵션입니다. 이 옵션은 보통 dynamic_cast나 typeid, std::type_info를 쓸 때 필요합니다.예(/GR): 실행 중에 “이 객체의 실제 타입이 뭐지?”를 확인할 수 있음dynamic_cast, typeid, std::type_info 기반 동작 사용 가능다형성 기반 코드, 상속 구조, 플러그인/프레임워크 코드에 안전타입 정보가 추가돼서 .rdata 섹션 크기가 늘어난다.(약간)아니요(/GR-): 그런 타입 정보 생성을 끔런타임 타입 판별 기능을 사실상 못 쓴다고 보면 됨성능·용량을 조금 더 아끼고 싶은 프로젝트에서, RTTI를 전혀 안 쓴다는 확신이 있을 때만 고려dynami..

Mixamo Converter 사용법
◽ 툴(tool)2026.03.04 23:49Mixamo Converter 사용법

https://terribilisstudio.fr/?section=MCAnimations generated by Adobe's Mixamo.com are not fully compatible with Unreal Engine 4 and 5, most notably when it comes to IK or root motion extraction. Mixamo Converter software is a mini-app that processes FBX files downloaded from Mixamo and adapt" data-og-host="terribilisstudio.fr" data-og-source-url="https://terribilisstudio.fr/?section=MC" data-og-..

[Unreal / C++] Game Ability System 정리 (입력 바인딩부터 쿨타임 처리까지)
◽ 언리얼(unreal)2026.03.03 23:06[Unreal / C++] Game Ability System 정리 (입력 바인딩부터 쿨타임 처리까지)

[Game Ability System]으로 키보드/마우스 눌렀을 때 바운딩하기 또는 어빌리티 부르는 방법, 어빌리티 시스템과 함께 쓰는 모듈들을 함께 정리해보려고 합니다. 1. GAS의 핵심 구성 요소GAS는 여러 시스템이 유기적으로 연결된 구조입니다. (1). Gameplay Ability / (GA) " 행동을 정의하는 클래스 "🔹핵심 함수 ActivateAbility()EndAbility()CommitAbility() (2). AttributesSet(AS) / Curve Data " 체력. 마나, 공격력 같은 수치를 담당하는 클래스 "Attribute변경은 직접 하지 않고 GameplayEffect를 통해서만 변경하는 것이 정석 구조입니다. (3). ASC (UAbilitySystemComp..

[Unreal] Behavior Tree 이해하면서 몬스터 AI 만들기
◽ 언리얼(unreal)2025.12.02 22:34[Unreal] Behavior Tree 이해하면서 몬스터 AI 만들기

동영상1 1. 블랙보드 세팅에 대하여... 블랙보드(Blackboard) 에셋은 AI의 두뇌로 생각할 수 있으며, 비헤이비어 트리가 결정 내리는 데 사용하는 키(Key) 값을 저장한다. 블랙보드는 필요에 따라 c++ 또는 블루프린트 안에서 Set, Get 할 수 있다. 여기서 최상단에 SelfActor값과 TargetActor값의 거리를 service 하는데 이 두 값을 어디서 세팅하는지 알아보자. 1.1. SelfActor블랙보드 처음 생성하면 SelfActor가 나온다. 이 SelfActor는 그냥 현재 이 블랙보드를 사용하는 주체라고 생각하면 된다. C++ AAIController 클래스 내부에서 GetPawn()을 SelfActor에 세팅해주고 있다.1.2. TargetActorTargetAct..

[Unreal / C++] AAA Frontend UI/Menu 만들기 (프레임 워크 정리 +  델리게이트, 서브시스템)
◽ 언리얼(unreal)2025.11.20 17:54[Unreal / C++] AAA Frontend UI/Menu 만들기 (프레임 워크 정리 + 델리게이트, 서브시스템)

# UI 프레임 워크 구조 및 세부 구조 # 1. Frontend Developer SettingsUDeveloperSettings을 한다.Config 파일 기반으로 UI Screen을 태그로 매핑함“Frontend.Widget.OptionScreen” 같은 Tag → 위젯 Blueprint Class 매핑이것이 실제 UI Screen Factory 역할을 함어떤 Screen Tag가 어떤 위젯 BP를 가리키는지 저장게임 시작 시 / 화면 전환 시 UI Subsystem이 이것을 참고하여 로딩함 2. List Data Object 실제 옵션 값 저장값 변경 시 Delegate BroadcastTryResetBackToDefaultValue() 등 다양한 함수 제공3. ListEntry Widget각 옵션..

[Unreal] UI 세팅/구조 분석 (Set Up Common UI)
◽ 언리얼(unreal)2025.09.16 23:41[Unreal] UI 세팅/구조 분석 (Set Up Common UI)

Activate에서 SubSystem에 있는 PushSoftWidgeToStackAsync 비동기 위젯 생성 및 스택 추가 함수를 호출한다. 주요 클래스 정리하기 1. UCommonActivatableWidgetContainerBaseUCommonActivatableWidget 위젯을 담고 관리하는 기본 컨테이너 클래스2. UDeveloperSettings자신만의 세팅(설정값/옵션) "ProjectSetting", "Editor Settings"를 생성하고 관리할 수 있는 클래스3. UGameInstanceSubsystem게임 인스턴스 생명주기(게임 전반에 걸친 공유 기능 구현에 적합)특정 기능을 모듈 단위로 분리하여 관리하는 "자동 인스턴싱 및 수명 관리 클래스" 프로그래머가 직접 객체를 생성하거나..

◽ 언리얼(unreal)2025.09.14 20:16[Unreal] Frontend UI Subsystem

아 이제 ui만하면 만들고 있는 프로젝트가 끝이난다... 이번 달 안에 꼭 끝낼 수 있으면 좋겠다 할 수 있드아 ~!!!!!! 게임 로직 인강은 정리하면서 할 수 없었는데 이번에는 한 번 정리하면서 UI 프로젝트를 마쳐보려고 한다 1. SubSystem이 뭔지? 언리얼에는 UWorldSubsystem, UGameInstanceSubsystem, UEngineSubsystem 같은 서브시스템 개념이 있다. 특정 라이프사이클(월드 단위, 게임 인스턴스 단위, 엔진 전체 단위)에 따라 자동으로 생성/초기화되는 매니저 객체.전역 싱글톤 대신 “월드나 인스턴스 스코프 안에서만” 살아 있는 싱글톤 느낌이라고 보면 된다. 게임 전반에 걸쳐 공통적으로 쓰이는 UI(특히 프론트엔드 화면) 관련 매니저라고 이해하면 됨. ..

반응형
image