[언리얼엔진] 언리얼엔진 빌드와 관련한 것들
·
언리얼 엔진/프로젝트 세팅
개요언리얼 엔진으로 게임을 개발하다보면, 빌드과정에서 오류나는 상황이 종종 발생한다고 한다. 막막한 상황을 대비해서 해결방법을 알고 가면 좋을 듯 하니 언리얼 엔진 빌드와 관련해서 이것저것 한 번 알아보자빌드 모드더보기1. DebugGame : 디버깅을 하기에 최적화된 빌드 모드이다. 디버그 정보를 포함하고 있기때문에 게임속도가 느리다는 단점이 있다.2. Development : 가장 일반적인 모드로, 디버그 정보는 많이 축소가 되어있어서 게임속도가 빠르다. 테스트하기에 좋은 모드라고 생각하면 될듯 하다.3. Shipping : 배포단계에서 활용하는 모드로, 디버그 정보가 전부 빠진 최적화된 상태에서 빌드가 진행된다.빌드 방법더보기1. 전체 빌드: 프로젝트 가상 폴더에 있는 파일들 전부 빌드하는 방법이다..
[언리얼엔진] 프로젝트 폴더 구조
·
언리얼 엔진/프로젝트 세팅
개요본격적으로 언리얼을 시작하기에 앞서, 언리얼 프로젝트를 생성하면 형성되는 폴더들에 대해 알아보자 !프로젝트 폴더더보기 언리얼 프로젝트를 생성하면 위의 사진처럼 여러 폴더들이 형성될 것이다. 차근차근 각 폴더마다 어떤 역할을 수행하는지 알아보자Source : C++ 소스코드가 저장되는 폴더Content : 언리얼 에디터에서 사용하는 .uasset (게임 에셋)들을 저장Binaries : 컴파일 과정을 거친 DLL 파일을 저장Config : 언리얼 프로젝트 세팅들을 파일로 저장DerivedDataCache, Intermediate : 빌드 과정을 거치면 생성되는 임시파일을 저장Saved : 프로젝트 작업시 임시로 저장되는 파일들을 보관 가상 프로젝트 폴더더보기 C++ 파일을 실행시켜보면, Solution..
[컴퓨터구조] RAID 기법에 대해서
·
컴퓨터 과학/컴퓨터구조
1. RAID더보기보조기억장치 데이터의 안전성, 성능을 확보하기위해 사용하는 기술 RAID를 구성하는 방법에는 여러가지가 있으며, RAID 레벨이라고 표현한다.RAID0, RAID1, RAID4, RAID5, RAID6 등이 존재한다.1-1. RAID0 (스트라이핑)더보기데이터를 여러 보조기억장치에 나누어 저장하는 방식 Stripe(스트라이프) : RAID0 기법으로 저장된 데이터장점 : 입출력 속도가 빠르다.단점 : 저장된 정보가 안전하지 않다.1-2. RAID1 (미러링)더보기복사본을 만들어 저장하는 방식 장점 : 복구가 간단하고, 안전성이 높다.단점 : 사용가능한 용량이 적어진다.1-3. RAID4더보기패리티 정보를 저장하는 디스크를 따로 두는 방식 패리티 : 오류를 검출할 수 있는 정보장점 : R..
[컴퓨터구조] 캐시 메모리에 대해서
·
컴퓨터 과학/컴퓨터구조
1. 캐시 메모리더보기CPU의 메모리 접근속도를 향상하기위해 탄생한 SRAM 기반의 저장장치이다. 캐시 메모리는 CPU가 사용할 법한 것을 저장한다. (자주 사용할 것으로 예상되는)캐시 메모리의 종류1. L1 캐시 → L1I 캐시(명령어 저장) + L1D 캐시(데이터 저장)2. L2 캐시3. L3 캐시크기 : L1 속도 : L3 L1, L2는 코어 내부에 L3는 코어 외부에 위치한다. 멀티코어 프로세서의 경우 L1, L2는 코어마다 고유한 캐시 메모리로 할당되고, L3 캐시는 여러 코어가 공유하는 형태로 구현된다.2. 캐시 히트, 캐시 미스더보기캐시 히트: 캐시 메모리에 저장된 데이터를 CPU가 사용하는 경우캐시 미스: 캐시 메모리에 저장된 데이터를 CPU가 사용하지 않는 경우캐시 적중률: 캐시가 히트되..
[컴퓨터구조] 빅 엔디안 vs 리틀 엔디안
·
컴퓨터 과학/컴퓨터구조
1. 빅 엔디안더보기낮은 번지의 주소에 상위 바이트부터 저장하는 방식이다. MSB(Most Significant Bit)는 숫자의 크기에 가장 큰 영향을 미치는 가장 왼쪽에 있는 비트를 의미하는데, 빅 엔디안은 MSB부터 저장해나가는 방식이다.빅 엔디안의 특징: 인간이 숫자를 읽고 쓰는 순서와 동일하기때문에 메모리 값을 직접 읽거나, 디버깅 할 때 편리하다 예를 들어, 192837821이라는 숫자가 있다고 하자. 인간은 1의 자리수부터 읽지 않고, 가장 큰 자리의 수부터 읽는데 이러한 점에서 빅 엔디안이 유사하다는 특징이 있다.2. 리틀 엔디안더보기낮은 번지의 주소에 하위 바이트부터 저장하는 방식이다. LSB(Least Significant Bit)는 숫자의 크기에 가장 적은 영향을 미치는 가장 오른쪽에..
[컴퓨터구조] RAM의 종류에 대해서
·
컴퓨터 과학/컴퓨터구조
1. RAM더보기현재 실행되고있는 프로그램에 대한 정보를 저장하는 장치이다. RAM의 특징1. 휘발성이기때문에 전원이 공급되지 않을 경우 저장하고 있던 정보가 지워지게 된다.2. RAM의 용량이 작으면, 보조기억장치에서 데이터를 가져오는 일이 잦아져 실행시간이 길어진다.3. Random Access Memory로 임의접근 or 직접접근이 가능하기때문에 데이터에 접근하는 시간이 동일하다.1-1. DRAM더보기시간이 지나면 저장된 데이터가 점차 사라지는 RAM이다. D가 Dynamic을 뜻하고, 이는 저장된 데이터가 동적으로 변하는 특성을 의미한다. 비교적 소비전력이 낮고 저렴하며 집적도가 높다는 특징이 있다.1-2. SRAM더보기시간이 지나도 저장된 데이터가 사라지지 않는 RAM이다. S가 Static을 ..
[언리얼엔진] UE_LOG 사용법
·
언리얼 엔진
1. UE_LOG 형식더보기UE_LOG(LogTemp, Log, TEXT("Log Message"));2. UE_LOG 카테고리더보기UE_LOG(LogTemp, Log, TEXT("Log Message")); 카테고리는 로그 메세지를 구분하는 기능을 하는데, LogTemp가 해당한다.일반적으로 LogTemp를 많이 사용한다. LogTemp외에 카테고리를 지정하고싶다면, 커스텀 카테고리 방법을 사용하면 된다.커스텀 카테고리// .h 파일DECLARE_LOG_CATEGORY_EXTERN(Meoyoung, Log, All);// .cpp 파일DEFINE_LOG_CATEGORY(Meoyoung); 각각의 파일의 헤더파일 밑에 선언해준 후, UE_LOG(Meoyoung, ...)로 코드를 작성해보면 정상적으로 동..
[컴퓨터구조] CPU의 성능을 높이는 방법
·
컴퓨터 과학/컴퓨터구조
1. 클럭더보기클럭은 컴퓨터의 부품을 움직일 수 있게 하는 시간의 단위이다.  CPU가 1초에 100번 반복될 수 있다면 이 CPU의 클럭속도는 100Hz이다. 최근에는 CPU 클럭속도가 굉장히 빠르기때문에 Gz 단위(10^9 Hz)로 측정한다. 하지만, 클럭속도가 매우 높은 경우 발열이 심해질 수 있기때문에 클럭만으로 CPU 속도를 높이기에는 한계가 있다.2. 멀티코어, 멀티스레드더보기코어란 CPU 내에서 명령어를 읽고, 해석하고, 실행하는 부품을 뜻한다. 멀티코어 CPU 혹은 멀티코어 프로세스는 CPU가 여러 개의 코어를 포함하고 있는 것을 의미한다.하드웨어 스레드하드웨어 스레드란 하나의 코어가 동시에 처리하는 명령어의 단위를 뜻한다. 여기서 말하는 스레드는 운영체제에서 사용하는 스레드(소프트웨어적인..