UE4 Pawn과 Character의 차이점
2021. 2. 1. 15:05
DevLog/Unreal Engine
유니티 vs 언리얼 언리얼 공식문서에서 "유니티 개발자를 위한 언리얼 엔진4"라는 탭을 만들어 유니티 개발자들이 유니티에서 사용하던 개념들을 언리얼에 있는 개념과 매핑할 수 있도록 친절하게 만든 문서가 있습니다. 일단 여기에서 설명된 표를 따르면 다음과 같습니다. 카테고리 유니티 언리얼 엔진4 비고 게임 플레이 유형 Component Component Game Object Actor / Pawn 1 : 2 Prefab Blueprint Class 메시 Mesh Static Mesh Skinned Mesh Skeletal Mesh 머티리얼 Shader Material / Material Editor 1 : 2 Material Material Instance 이펙트 Particle Effect Effect ..
TCP와 UDP의 개념과 차이점 & 특징
2021. 2. 1. 14:30
DevLog/Etc...
TCP / UDP란? 전송계층에서 사용하는 프로토콜로써, 목적지 장비까지 전송한 패킷을 상위 특정 응용 프로토콜에게 전달하는 것에 목적이 있습니다. 전송방식으로는 TCP와 UDP가 있습니다. * 전송계층이란? 송신자와 수신자를 연결하는 통신 서비스를 제공하는 계층으로, 쉽게 말해 데이터의 전달을 담당합니다. TCP(Transmission Control Protocol)란? 연결형 서비스를 지원하는 전송 계층 프로토콜로써, 인터넷 환경에서 기본으로 사용합니다. 호스트간 신뢰성 있는 데이터 전달과 흐름제어를 합니다. 즉, 인터넷상에서 데이터를 메시지의 형태로 보내기 위해 IP와 함께 사용하는 프로토콜입니다. 일반적으로 TCP와 IP를 함께 사용하는데, IP가 데이터의 배달을 처리한다면 TCP는 패킷을 추적 ..
C++ 구조체(Struct)
2021. 1. 25. 12:32
DevLog/C & C++
구조체(Struct) 객체를 표현하기 위해 하나 이상의 변수가 필요한 프로그래밍 사례가 많이 있다. 예를 들어, 자신의 표현하기 위해 이름, 생일, 키 , 몸무게 또는 자신에 대한 기타 특성을 저장할 수 있다. std::string myName; int myBirthYear; int myBirthMonth; int myBirthDay; int myHeightInches; int myWeightPounds; 위에는 어떻게든 그룹화하지 않은 6개의 독립 변수가 있다. 자신에 대한 정보를 함수에 전달하려면 각 변수를 개별적으로 전달해야 합니다. 또한, 다른 사람에 대한 정보를 저장하려면 추가된 사람마다 6개의 변수를 추가로 선언해야 합니다. 다행히도 C++에서는 고유한 사용자 정의 집계 데이터 유형(user-..
포워드 랜더링과 디퍼드 랜더링
2021. 1. 25. 11:57
DevLog/Etc...
포워드 랜더링 전통적인 랜더링 방식인 포워드 랜더링 방식은 3D 역사의 산증인이다. 많은 수 많은 명작들이 포워드 랜더링 방식으로 만들어졌는데, 콘솔을 기준으로 PS2이전의 게임은 모두 포워드 랜더링 방식이라고 생각하면 된다. 구현방식은 3D공간에 존재하는 폴리곤을 픽셀화하여, 그 픽셀마다 쉐이딩과 라이팅 연산을 더하는 방식으로 묘사된다. 포워드 랜더링 : 장점 비교적 저사양에서도 잘 작동하며 PC의 경우 안티앨리어스 처리를 하드웨어에서 지원받기 때문에 거의 완벽한 처리를 할 수 있고, 반투명처리도 문제 없다. 오랫동안 애용되어온 랜더링 방식이기 때문에 문제가 생겨도, 회피하거나 해결책이 만들어져있는 경우가 많다. 해상도가 올라가도 요구하는 메모리가 디퍼드 랜더링에 비해 적다. 포워드 랜더링 : 단점 라..
C++ STL 맵 기본 사용법과 예제
2021. 1. 24. 20:32
DevLog/C & C++
Map 기본 형태 map : 키와 값을 쌍 형태로 선언합니다. 반복자 (iteractor) begin() : 시작 반복자를 반환 end() : end iterator를 반환 추가 및 삭제 insert(make_pair(key, value)) : 맵에 원소를 pair 형태로 추가 erase(key) : 맵에서 key (키값)에 해당하는 원소 삭제 clear() : 맵의 원소 전부 삭제 조회 find(key) : key (키값)에 해당하는 iterator를 반환합니다. count(key) : key (키값)에 해당하는 원소 (value들)의 개수를 반환합니다. 기타 empty() : 맵이 비어 있으면 true 아니면 false를 반환 size() : 맵 원소들의 수를 반환 #include #include #..
C++ 오버로딩과 오버라이딩
2021. 1. 24. 20:22
DevLog/C & C++
오버로딩(Overloading) : 함수 중복 정의 오버로딩은 같은 이름의 함수에 매개변수를 다르게 사용하여 매개 변수에 따라 다른 함수가 실행되는 것. 오버라이딩(Overriding) : 함수 재정의 오버라이딩은 상속받았을때 부모클래스의 함수를 사용하지 않고 다른 기능을 실행할때 함수를 자식클래스에 같은 이름, 매개변수로 재정의 해서 사용하는것. 오버로딩 : 심화 설명 메소드 이름이 같아야 한다. 리턴형이 같아도 되고 달라도 된다. 파라미터 개수가 달라야한다. 파라미터 개수가 같을 경우, 자료형이 달라야 한다. 객체 지향 프로그래밍에서 오버로딩(Overloading)은 같은 이름의 메소드를 여러개 중복 선언하는 것을 말합니다. C와 같은 기존언어에서는 같은 이름의 함수를 만들 수 없었습니다. 이것이 직..