본문 바로가기

전체 글42

New Level과 Project setting(Unreal Editor 둘러보기) Project 설정에서 Editor Start Map 설정 → 언리얼 엔진 시작 시 로드되는 Map을 설정할 수 있다.Game Default Map 설정 → 최종 패키징 후 게임 플레이시 시작 시 최초로 로드되는 Map을 설정할 수 있다. Editor 개인설정에서 Load Level at start up 설정 → 해당 Level 시작시 Load 되는 Map 설정 New LevelBasic Level은 단일 Scene.Open Level은 말 그대로 Open world처럼 열린 공간.서로 다르기 때문에 상황에 맞게 사용하면 된다.World Setting → 원하는 Game Mode로 변환GameMode, State 등 Unreal에서는 우리가 원하는 항목을 Override하여 사용하도록 만들어두었다. Pl.. 2024. 11. 9.
Network 기초 LAN(Local Area Network)집안에서 컴퓨터끼리 소통을 어떻게 하는가? → 서로 선을 연결하여 그 선을 통해 전기신호(0과 1)를 주고 받는다.요즘은 선 없이 Electromagnetic Wace(전자기파)를 통해서 전기 신호를 주고 받을 수 있다. 컴퓨터가 여러대 있을때는 어떻게 소통을 하는가?→ HUB를 이용한다. HUB : 여러 컴퓨터들을 케이블을 통해 연결해주는 기기현재는 거의 사용하지 않고 다른 기기를 사용한다. 1번에서 2번으로 데이터를 전송할때 HUB를 통해 연결된 모든 컴퓨터에 데이터가 전송 되게 된다.또한, 1번에서 2번으로 데이터를 보낼때 2번에서 1번으로 데이터를 보내게 되면 정보 충돌(Data Collision)이 일어난다. 이런 정보 충돌을 방지하기 위해 데이터를 전송.. 2024. 11. 9.
C언어로 서버 만들기 1. 통신이란?옛날에 불을 이용하여 통신.말 그대로 서로 의사소통하는 것. 어떤 신호를 보내면 이 신호를 다른 곳에서 알아들으면 통신 되는 것이다.양측 서로 신호를 보낼 수 있다면 양방향 통신, 한쪽에서만 보낼 수 있다면 단방향 통신이다. 통신에서는 신호를 보내는 것도 중요하지만 그 신호의 의미를 알고 있어야 제대로 전달되기 때문에의미도 매우 중요한 요소 중 하나이다. 이런 신호에 대한 의미를 보통 약속하는데 이 약속이 바로 프로토콜이다.또한, 통신을 하기 위해선 물리적인 연결이 필요하며 이게 바로 랜선이다.Wifi 같은 무선도 결국 랜선을 이용해서 통신이 된다. 기본 통신을 하기 위해선 반드시 물리적인 연결이 있어야 한다. 프로토콜(통신 규약)의 종류TCP : 신호를 보내고 신호를 잘 받았는지 확인까지.. 2024. 11. 8.
File Input Output & Delta Time void UWorld::SettingMap(){ std::ifstream ReadMap; //읽기전용 class인 ifstream으로 객체를 생성 ReadMap.open("Map.txt"); //원하는 파일을 OPEN char SpawnPosition[256]; //파일의 Data를 받아올 변수 생성 int Line = 0; // 2차원으로 표현하기 위해서 새로운 축인 Y축을 생성해준 것이다. while(ReadMap.getline(SpawnPosition, 80)) //GetLine 함수는 파일 끝에 도달하면 False을 반환 //끝에 도달하지 않으면 true를 반환 //우리가 만든 변수에 해당 파일을 한 줄 가져온다. //최대 80글자까지 가져오도록 설정 //또한 Getline이 반복되면서.. 2024. 11. 7.
Inline & Switch case문 inlineGet 같은 경우 inline 해주는게 최적화에 좋다. 함수 호출을 안하도록 설정하는 것. 그러나 inline을 쓰면 함수가 아니라 코드 하나하나가 늘어나는 것이기 때문에 main 함수 크기가 커지고 실행파일이 커진다. 어차피 Compiler가 알아서 하지만 Forceinline 과 같은 키워드 사용 시 무조건 함수를 교체하기 때문에잘 판단하여 사용하는 것이 좋다. 우리가 인터넷(네이버, 다음 등)을 접속하면 처음들어갈땐 느리지만 그 다음부턴 재접속해도 빠르다. 이는 캐시 영역을 사용하기 때문인데, 처음엔 이미지 등을 다운받느라 느리고 그 다음부터는 캐시 영역에 데이터가 있기 때문에 빠르게 볼 수 있는 것이다. inline을 사용하면 함수를 함수 내 구문으로 사용하도록 대체하므로 캐시 영역을 .. 2024. 11. 6.
Class 와 Template Class란?쉽게 설계도로 이해하면 편하다.언리얼 엔진에서 동일한 Blue Print라 할지라도 Level에 배치할때마다 각각 다른 객체로 배치가 되는 것( == 동적할당)도 사실 설계도는 하나지만 그 설계도로 여러 건물을 지으면 모두 다른 건물이기 때문이다. Class를 설계하는 방법명사를 찾아서 정리(변수)동사를 찾아서 정리(함수)모두 영어로 변환 (명사 : Class, 동사 : Function )만든 Class 안에 Fuction을 집어 넣는다.추가로 필요한 것들을 생각하여 Class 안에 추가한다.동일한 항목을 묶어서 부모 Class를 생성한다.Class를 선언할 때 부모 클래스를 접근제한자와 같이 적어주면 해당 Class를 상속 받은 것이다.Actor Player : public Pixel{ p.. 2024. 10. 31.