728x90

분류 전체보기 932

C# .Net Framework v4.8 이상 부터는 Dictionary Key 로 enum 을 써도 garbage 가 발생하지 않는다

C# .Net Framework v4.8 이상 부터는 Dictionary Key 로 enum 을 써도 garbage 가 발생하지 않는다? Key 를 찾는 과정에서 boxing 이 일어나 가비지가 생기는 문제가 과거에 있었는데 수정되어서 문제가 해결됨.EnumEqualityComparer 로 비교 연산을 처리하도록 수정됨.  참고https://enghqii.tistory.com/69 C#에서 Dictionary에 Enum을 써도 괜찮은것 같다전에 이런 글에서 Dictionary에 Key값으로 enum을 넣으면 내부에서 boxing이 일어나는데, 그 이유는 Dictionary 내부에서 IEqualityComarer로 ObjectEqualityComparer를 사용하게 되기 때문이라고 했다. 4 버전대 이상e..

ECMA 란?

표준의 필요성 (The necessity of standards) 표준은 한 제조업체에서 만든 컴퓨터용으로 준비된 데이터를 다른 제조업체에서 만든 컴퓨터에서도 최소한의 변경만으로 사용할 수 있는 가능성을 제공합니다. 또한 여러 제조업체에서 프로그래밍 언어를 준비할 때 작업의 중복을 피할 수 있습니다. 1960년 이전에 일부 국가 기관에서 종이 테이프와 코드와 같은 이 분야의 표준 작업을 시작했지만, 이들 기관 간 또는 제조업체 간에는 협업이 이루어지지 않은 것으로 보입니다. 국가마다 요구 사항이 다를 수 있으므로 모든 곳에서 동일한 표준을 사용할 필요는 없지만 표준은 최소한 호환 가능해야 합니다. 업계가 주도하는 이니셔티브 (A initiative driven by industry) 이러한 작업을 조정하..

DirectX 11 스터디 노트 메모. Device, Context (230812)

Direct3D 11에서 디바이스는 ID3D11Device 인터페이스로 표시 대부분의 애플리케이션은 하나의 디바이스만 만든다. 아래 둘 중 하나를 호출해서 설치된 하드웨어 드라이버 중 하나에 대한 디바이스를 만든다. D3D11CreateDevice D3D11CreateDeviceAndSwapChain D3D_DRIVER_TYPE 플래그를 사용하여 드라이버 유형을 지정 디바이스 컨텍스트는 파이프라인 상태를 설정하고 디바이스가 소유한 리소스를 사용하여 렌더링 명령을 생성하는 데 사용 Direct3D 11은 두 가지 유형의 디바이스 컨텍스트를 구현 하나는 "즉시 렌더링용"이고 다른 하나는 "지연된 렌더링용" 즉각적인 컨텍스트(ImmediateContext)는 드라이버에 직접 렌더링 즉각적인 컨텍스트를 가져오는..

DirectX11 스터디 노트 - 1

학습을 위한 기본 프레임워크 만들기 Visual Studio 새 프로젝트 Windows 데스크톱 애플리케이션 생성. 기본으로 생성된 코드를 정리해서 DirectX 게임 프로그래밍 학습에 사용할 프레임워크를 작성한다. 실행하면 빈 윈도우 창이 뜨는 것으로 준비는 끝. 자동으로 생성된 코드들을 필터를 만들어서 정리해준다. 프리컴파일드 헤더(Precompiled Header) 셋팅도 해줌. pch.cpp 파일 속성에서 "미리 컴파일된 헤더" > "만들기" 로 설정. pch.h 에 넣어서 공용으로 사용할 헤더와 선언들을 생성해서 모아준다. 여기까지 진행하고, 프로젝트 셋팅에서 출력 디렉토리 변경. $(SolutionDir)Binaries 로 수정. 이어서, 라이브러리를 추가하기 위한 설정. include 디렉터..

[Unity] AI 메뉴가 안 보일 때 (Navigation 메뉴가 안 보일 때)

유니티 엔진 기본 빈 프로젝트를 생성하면, Window 메뉴 아래애 AI 메뉴가 안 보입니다. Window/AI 메뉴 아래에 Navigation Mesh 관련 메뉴가 들어있는데, 기본 설정으론 없는 상황. 당황하지 말고 Package Manager 를 열어서 Unity Registry 페키지로 놓고 navi 를 검색합니다. AI Navigation 패키지를 Install 해줍니다. 설치를 마치고나면 Window/AI 메뉴가 생기고, Navigation, NavMesh Updater 메뉴등을 이용할 수 있어집니다. 유니티 교과서 개정6판 (Unity 2022 테스트 완료) https://link.coupang.com/a/54mvg 유니티 교과서 개정6판 COUPANG www.coupang.com (첨부 링..

ARQ 란? (Automatic Repeat reQuest)

양방향 통신 시스템에서 사용되는 재전송(Retransmission)을 위한 에러 제어 전략으로, ARQ(Automatic Repeat reQuest: 자동 반복 요청)는 잡음이 많거나 불안정한 통신 네트워크를 통한 데이터 전송을 위한 오류 제어 프로토콜 그룹입니다. 이러한 프로토콜은 데이터 링크 계층과 OSI(개방형 시스템 상호 연결) 참조 모델의 전송 레이어와 데이터 링크 레이어에 존재합니다. 전송 중에 손상되거나 손실된 프레임을 자동으로 재전송하는 기능을 제공하기 때문에 그렇게 명명되었습니다. ARQ는 "재전송을 통한 긍정적 승인(Positive Acknowledgement with Retransmission: PAR)"이라고도 합니다. ARQ는 신뢰할 수 없는 상위 계층 서비스를 통해 안정적인 전송..

[UE] 언리얼 엔진 5 프로그래밍 개발 구성 - Visual Studio 구성하기

언리얼엔진 공식 문서 (v5.2) 훑어보기. [프로그래밍 및 스크립팅 > 개발 구성] Visual Studio 구성하기 > UnrealVS 익스텐션 > Visual Studio 팁 & 트릭 언리얼 엔진용 VS Code 구성 소스에서 언리얼 엔진 빌드하기 빌드 환경설정 레퍼런스 Live Coding 프로그래밍 툴 > 희소 클래스 데이터 Visual Studio 구성하기 언리얼 엔진 버전 5.1 이상 = VS 2019 (Default) / VS 2022 언리얼 엔진 버전 4.25 - 5.0 = VS 2019 (Default) UE 5.1부터 최신 버전을 지원하는 플랫폼 SDK 설치한 경우 언리얼 빌드 툴(Unreal Build Tool, UBT) 에서 설치된 Visual Studio의 최신 버전 솔루션 파일..

Unreal 엔진 2023.07.24

[UE] UGameInstance 살펴보고 커스텀 BP/C++ GameInstance 만들어보기

GameInstance 실행 중인 게임 인스턴스에 대한 상위 레벨 관리자 오브젝트. 프로젝트셋팅에서 커스텀 클래스로 설정할 수 있음 기본 제공 클래스는 두 개 UGameInstance UPlatformGameInstance UGameInstance : 스탠드 얼론 게임으로 실행 시 인스턴스 생성. UPlatformGameInstance : 모바일 이벤트를 처리하는 UObject 하위 클래스. UApplicationLifecycleComponent 는 레벨 로드 시 제거. 블루프린트로 GameInstance 생성하기. GameInstance 를 상속받는 블루프린트 클래스를 생성하고, 변수를 몇 개 추가. 임의의 값을(2023) 셋팅해주고, 플레이가 시작되면 다른 블루프린트 클래스에서 접근해서 출력하도록 설..

Unreal 엔진 2023.07.19

[UE] 간단한 입력 처리 C++ 구현 및 향상된 입력 시스템 활용

언리얼 엔진 5(Unreal Engine 5) 로 입력 처리를 C++ 로 구현해본다. 축 및 액션 매핑은 이제 폐기되었지만, 구버전으로 구현 해보고 향상된 입력 액션 및 매핑 컨텍스트로 전환까지 진행한다. Pawn 을 부모클래스로 한 새 클래스를 생성. 각 액션과 축 입력을 처리할 메소드 생성. cpp 코드의 SetupPlayerInputComponent 함수에서 축 입력과 액션을 바인딩 해주고 내용을 작성. 클래스를 상속받는 블루프린트를 만들고, 눈으로 확인하기 위해 Scene Component 아래에 Sphere 메시를 추가. C++ 클래스의 GameModeBase 도 블루프린트 클래스로 생성한 후, 월드 셋팅에서 기본 게임 모드로 설정. 디폴트 폰 클래스(Default Pawn Class) 를 앞에..

Unreal 엔진 2023.07.18

게임회사들은 "어떤"게임 엔진을 "왜"사용할까? 언리얼 vs 유니티 (UE vs Unity) v2023.7 - 2편

게임회사의 사업적인 방향에 따라 게임 엔진 선택이 큰 영향을 받을 수 있다는 이야기를 써봤습니다. 직접 게임엔진을 다루는 포지션이 아닌 분도 참고가 되었으면 합니다. https://blog.naver.com/sorang226/223157738082 게임회사들은 "어떤"게임 엔진을 "왜"사용할까? 언리얼 vs 유니티 (UE vs Unity) v2023.7 - 2편 많은 게임 개발자들이 한 번쯤은 고민하는 이슈인 게임 엔진 선택 이슈. 현시점에서의 한국 게임업계의 양... blog.naver.com

728x90
반응형