반응형
인기글
[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_camp..
게임 회사 용어 정리 (아마 계속 업데이트 될거임.)
게임 회사 용어 정리 (아마 계속 업데이트 될거임.)
◽ 취업&이직
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)- 네트워크 세그먼트의 데이터 링크 계층에서 통신을 위한 네트워크 인터페이스에 할당된 고유식별자. (출처: 위키백과)🎞 상황극??? : 맥...?..
[독서] 김상욱 - 떨림과 울림
[독서] 김상욱 - 떨림과 울림 "과학은 지식이 아니라 태도니까"
◽ 독서
2023.09.06 18:50
😁 시작하기 앞서독후감에 대해 이야기를 하기 앞서 나는 독서와 거리가 아주 먼…. 생활을 해왔다. 읽은 책이라고는 참고서들이 대부분이다. 아니, 거의 95%를 차지 할 거다. 어릴 때부터 독서는 하지 않고 TV와 컴퓨터 게임만 하다 보니 책과 멀어졌다. 그런 내가 책을 읽으려고 하는 이유는 두 가지가 있다. 첫 번째는 집중력을 높이고 싶다. 나이가 들수록 집중력이 떨어진다고 한다. 아직 젊은 나이(?)이지만 나의 집중력은 바닥인 거 같다 (이게 shorts의 폐해 …?) ㅠㅠ 책을 읽으면서 실생활의 집중력도 키우고 싶다. 두 번째는 갈등에 대해 수용적이고 비판적인 시각을 가지고 싶다. 과거에도 똑같았다고 하지만 나는 요즘 뉴스를 보면 무섭다. 갈등의 세대에 살고 있는 거 같다. 하지만 이 갈등 속에서 나..
[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..
[Algorithm/Shortest Path] A* 알고리즘 - 구현C++
[Algorithm/Shortest Path] A* 알고리즘 - 구현C++
◽ 알고리즘
2022.06.20 16:33
스터디에서 A* 알고리즘을 한 번 작성해보고 간단하게 콘솔로 띄어보고.. 유니티로 적용해보기로 하였다. 유니티로 옮기는 작업 벌써부터 걱정이 된다. 일단 A*알고리즘이 뭔지 정리를 해보자 ..A* 알고리즘은 다익스트라 알고리즘을 확장하여 만들어진 알고리즘으로 주어진 출발 꼭짓점에서부터 목표 꼭짓점까지 가는 최단경로를 찾아내는 그래프 탐색 알고리즘 중 하나이다. 주로 게임에서 몬스터가 플레이어를 목표지점으로 이동하거나  자동 사냥 게임에서 플레이어가 타겟(몬스터나 다른 PC)을 향해 이동시킬 때 사용하는 알고리즘이다. 알고리즘다익스트라 알고리즘 A* 알고리즘목표점시작점 -> 나머지 모든 정점들까지의 최단 거리시작점 -> 목표점까지의 최단 거리 차후 경로 도출을 위한 함수f(n)현재 노드에서 가까운 노드부터..
1분 자기소개 (실제로 면접 때 했던...)
1분 자기소개 (실제로 면접 때 했던...)
◽ 취업&이직
2021.02.22 00:56
1분 자기소개가 얼마나 중요하신지 다들 알거라고 생각합니다. 면접관님이 노트북에 적힌 자기소개서를 보면서 듣다가 얼굴을 쳐다 보느냐 안보느냐가 큰 싸인인거 같습니다. 가장 중요한 것은 중복된 말을 하지않고 간결하며 자기가 이 업무를 위해 남긴 작은 업적을 나열하는 것이 제일 좋지 않을까 생각합니다. 그리고 큰 소리로 면접관님을 쳐다보고 ... 당돌하게 !!저는 실제로 사용했던 1분 자기소개를 공개하려고 합니다. 이건 참고만 해주세요!!안녕하세요. 클라이언트 직무에 지원한 XXX입니다. 저는 게임 프로그래밍에 관심이 생겨 디자인학과에서 게임공학으로 편입 후 게임을 제작한 경험이 총 4번 있습니다. 이 중 마지막 게임은 학교의 산업대전에서 우수작으로 선정됨으로서 완성도를 확인한 작품이기도 합니다. 3년간 게..
[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게임 인스턴스 생명주기(게임 전반에 걸친 공유 기능 구현에 적합)특정 기능을 모듈 단위로 분리하여 관리하는 "자동 인스턴싱 및 수명 관리 클래스" 프로그래머가 직접 객체를 생성하거나..
(c++) 인코딩(Encoding),유니코드(Unicode), 로케일, 패싯
(c++) 인코딩(Encoding),유니코드(Unicode), 로케일, 패싯
◽ C, C++, C#
2022.09.07 12:36
1. 인코딩(Encoding)란?코드화(문자의 번호를 컴퓨터에서 표현하는 방법), 암호화를 의미하며 반대말은 디코딩(decoding)이다. 어떤 정보를 정해진 규칙에 따라 변환하는 것(en-code-ing)을 일컫는다. 2. 유니코드(Unicode)란?유니코드는 전 세계의 모든 문자를 담아 세계공통 코드 집합을 만들어 모두가 이 집합으로 인해 언어를 구현하자는 의도로 만들어졌다. 간단히 말해, 유니코드(unicode)는 모든 문자에 index를 부여하는 것이다.( index 참고: http://www.unicode.org/charts/)※ 한글과 같이 모음, 자음, 초성, 중성의 조합으로 여러가지 글자를 표현할 수 있는 언어는 index로 모두 줄 수 없다. 그래서 유니코드는 완전한 글자를 제공해 주기..
최신글
[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_camp..

[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