전체 글 101

[CS] CPU와 GPU

순서CPUGPUCPU와 GPU의 차이CPUCPU란?Central Processing Unit으로 중앙처리장치라고 부르며 컴퓨터에서 기억, 해석, 연산, 제어라는 4대 주요 기능을 관할하는 장치임.강력한 연산 처리능력으로 개별적인 작업을 신속하게 처리하는데 특화되어 복잡한 연산을 순차적으로 빠르게 처리할 수 있음CPU의 주요 구성요소제어장치(CU): 메모리와 입출력 장치, ALU가 서로 데이터를 주고받을 수 있도록 제어 신호를 내보내며 어떤 명령을 언제 실행할지 순서를 관리함산술/논리단위(ALU): 덧셈, 뺄셈 같은 산술 연산과 AND, OR같은 논리 연산을 담당함레지스터(Register): CPU 내부에 있는 초고속 임시 저장 공간으로 아래의 대표적인 세가지가 있음.PC(Program Counter): ..

CS 2025.08.26

[CS] 컴퓨터의 메모리 구조

순서메모리 계층 구조프로세스 메모리 구조두 구조의 관계메모리 계층 구조메모리 계층 구조는 하드웨어가 실제 메모리를 관리하는 방식임. 하드웨어 관점의 메모리 계층 구조는 아래 순서와 같이 이루어져 있다.레지스터 : CPU 내부, 가장 빠르고 용량이 매우 작다.캐시(L1, L2, L3) : CPU 칩 가까이에 위치, 빠르지만 용량이 제한적임주 기억장치(Ram) : 일반적인 작업이 이뤄지는 공간, 중간의 속도르 가짐보조 저장장치(SSD, HDD) : 용량이 크지만 느림보관 장치(테이프, 클라우드) : 아카이브용, 매우 느리지만 용량이 큼CPU는 자주 쓰는 데이터를 빠른 계층(레지스터 또는 캐시)에 두고, 덜 쓰는 건 RAM 또는 SSD에 둠프로세스 메모리 구조프로세스 메모리 구조는 운영체제가 프로그램에 제공하..

CS 2025.08.22

[트러블 슈팅] UnrealEngine에서 ObjectPool을 제작했을 때

문제 기능 : ObjectPoolManager문제개요오류 상황: ObjectPool로 관리중인 오브젝트 사용시 오브젝트의 Mesh가 렌더링되지 않는 현상 및 Hit Event 물리기능 미작동발생 배경: 무기를 사용하여 ProjectileObject를 Get하여 사용할 때 발생원인 분석오류 원인: Object를 관리하는 ObjectPoolManager를 Actor 또는 ActorComponent를 상속시켜 사용하면 Level 이동시 파괴되는 이유로 SubSystem을 상속시켜 사용함.구조적 이해:렌더링 문제: 렌더링은 UPrimitiveComponent가 Scene에 등록되어야 동작함 => SubSystem 내부에서 RegisterComponent()가 호출되지 않아 렌더 파이프라인에 연결되지 않음Phys..

C++/트러블슈팅 2025.08.21

[UnrealEngine] Enhanced Input System

순서Enhanced Input System이란?EnhancedInputSystem 헤더파일Enhanced Input System의 구성요소Enhanced Input System이 추구하는 설계 원칙Enhanced Input System의 단점 및 고려사항Enhanced Input System이란?UnrealEngine5에서 제공하는 새로운 입력시스템이다.입력 이벤트를 데이터 자산 기분으로 구성하고, 이를 EnhancedInputComponent를 통해 처리함코드/블루프린트 내에서 키와 액션을 직접 바인딩하던 방식에서 Enhanced Input으로 더 많은 추상화 계층과 구조적 관리 방식을 제공함EnhancedInputSystem 헤더파일"EnhancedInputComponent""InputAction""..

Unreal Engine 2025.08.01

[C++]행동 패턴/옵저버 패턴

순서옵저버 패턴이란?옵저버 패턴의 장점과 단점옵저버 패턴 사용시 고려사항간단한 옵저버 패턴 작성옵저버 패턴이란?한 객체의 상태 변화를 감지해서 연관된 객체에 자동으로 통보하는 패턴객체 간의 느슨한 결합을 유지함상태 변화에 따른 자동 동기화를 사용함옵저버 패턴 사용의 예플레이어 상태 변화: 플레이어 체력이 변할 때 UI, 사운드, 이펙트가 동시에 반응해야할 때이벤트 기반 시스템: 게임 상태 변화를 여러 시스템이 감지해야 할 때느슨한 결합을 유지하면서 이벤트를 전파하고 싶을 때MVC 패턴에서 모델의 변화를 뷰에 알려야 할 때옵저버 패턴의 장점과 단점장점이벤트 기반 시스템 설계 가능객체 간 의존도 낮음단점순서 보장이 어려움많은 옵저버가 있을 경우 성능에 문제가 생길 수 있음옵저버 패턴 사용시 고려사항옵저버 등..

C++/디자인패턴 2025.07.31

[C++]구조 패턴/퍼사드 패턴

순서퍼사드 패턴이란?퍼사드 패턴의 장점과 단점퍼사드 패턴 사용시 고려사항간단한 퍼사드 패턴 작성퍼사드 패턴이란?복잡한 시스템에 대해 간단한 인터페이스를 제공하는 패턴복잡한 하위 시스템을 숨기고 간단한 인터페이스로 제공함퍼사드패턴 사용 예게임 시작 시 수많은 시스템을 초기화할 때복잡한 라이브러리를 간단하게 사용하고 싶을 때여러 서브시스템을 조합해서 사용해야 할 때클라이언트가 내부 구조를 몰라도 되게 하고 싶을 때퍼사드 패턴의 장점과 단점장점클라이언트 코드 단순화시스템 구조에 대한 결합도 감소단점퍼사드에 너무 많은 기능이 집중되면 변경에 취약하위 시스템에 대한 직접 제어가 필요할 때 오히려 방해됨퍼사드 패턴 사용시 고려사항퍼사드가 지나치게 방대한 책임을 지지 않도록 주의해야함간단한 퍼사드 패턴 작성

C++/디자인패턴 2025.07.30