전체 글136 C# R3 R3란?Reactive Extensions(Rx)의 3세대 구현체라는 의미1세대: System.Reactive2세대: UniRx (Unity 전용)3세대: R3 – .NET 8, C# 12 기반의 현대적, 경량화, 범용 리액티브 시스템기존 Rx의 한계기존에는 OnError 호출 시 스트림 인스턴스가 즉시 종료되며, 예외 복구를 위한 흐름을 구성하는 것이 어렵고 비직관적이었다스트림 기반으로 async 처리를 하려 했지만, C#의 async/await가 등장하며 라이브러리의 존재 이유가 붕 뜨게 되었다원래는 모든 비동기 처리를 위해 LINQ to Everything을 적용했지만 이는 과도한 범용성을 가져 복잡성이 증가하고, 실무에서는 적용하기 어려운 구조가 되었다Rx의 본질에 집중하다R3 라이브러리는 기존 .. 2025. 3. 30. BatchRendererGroup(BRG) BatchRendererGroup(BRG)란?BatchRendererGroup(BRG)는 Unity의 저수준 렌더링 API로, 수많은 객체의 렌더링 데이터를 GPU에 효율적으로 전달하여 드로우 콜 수를 줄이고 성능을 향상시키는 핵심 시스템이다 Unity 6에서는 이 BRG가 더욱 발전하여 GPU Resident Drawer, Entities Graphics, GPU Occlusion Culling 같은 최신 기술들의 기반으로 활용되고 있다 레거시 API의 한계점 기존 Unity 렌더링은 MeshRenderer, SkinnedMeshRenderer 등 GameObject 중심의 구조로, 매 프레임마다 CPU가렌더링 대상 필터링메쉬/머티리얼/트랜스폼 구성드로우 콜 전송을 수행한다. 이 방식은 수백~수천 개의.. 2025. 3. 29. Unity 6 GPU Occlusion Culling GPU Occlusion Culling이란? GPU Occlusion Culling은 Unity가 GPU를 활용해 가려진 객체들을 렌더링 대상에서 제외하는 기법이다기존의 CPU 기반 오클루전 컬링보다 빠르고 병렬성이 높아 대규모 씬 최적화에 매우 유리하다 작동 원리1. Depth Texture 생성 (이전 + 현재 프레임)Unity는 현재 프레임과 이전 프레임의 뷰에서 생성된 Depth Texture를 이용한다이 뎁스 텍스처는 카메라 및 라이트의 시점에서 생성돼 객체의 거리와 가림 정보를 기록한다2. Double Depth Pass 방식첫 번째 패스: CPU 컬링을 통과한 인스턴스를 이전 프레임의 depth와 비교.두 번째 패스: 이전 패스에서 가려졌다고 판단된 인스턴스를 새로 생성된 depth pyra.. 2025. 3. 29. Unity 6 GPU Resident Drawer란? 개요 GPU Resident Drawer는 Unity 6에서 도입된 최신 렌더링 최적화 기술로, 렌더링 데이터를 GPU에 '상주'시키고, CPU 개입 없이 GPU 주도로 드로우 콜을 수행하는 방식이다 이는 기존의 CPU 중심 렌더링 파이프라인에서 GPU Driven Rendering으로 전환하는 핵심 단계 중 하나다 등장 배경 기존 Unity의 MeshRenderer나 SkinnedMeshRenderer는 매 프레임마다 CPU가 다음과 같은 작업을 수행해야 했다렌더링 가능한 오브젝트 필터링메쉬/머티리얼/Transform 데이터 처리드로우 콜 전달이로 인해 CPU 부하가 매우 커지고, 대규모 씬이나 오픈월드 환경에서는 병목 현상이 자주 발생했다 GPU Resident Drawer는 이러한 오버헤드를 줄이기.. 2025. 3. 29. Unity 6 STP(Spatial-Temporal Post-processing)란? 개요Unity 6에서 새롭게 도입된 STP(Spatial-Temporal Post-processing)는 다양한 플랫폼에서 향상된 품질의 렌더링을 제공하면서도 성능 저하를 최소화하는 업스케일링 기술이다 이 글은 공식 문서와 웨비나 내용을 기반으로 STP의 개념, 작동 방식, 설정 방법, 그리고 성능에 대해 정리한다 STP란 무엇인가?STP는 시간적(Temporal) 및 공간적(Spatial) 정보를 함께 활용하여 저해상도 이미지를 고해상도처럼 보이게 하는 소프트웨어 기반의 업스케일링 기술이다기본적으로 Temporal Anti-Aliasing(TAA)을 기반으로 하며, Deringing 및 고급 필터링 기법을 추가해 렌더링 품질을 끌어올린다 Unity는 이 기술을 URP 및 HDRP에 통합하였으며, PC,.. 2025. 3. 29. Photon PUN (Photon Unity Networking) 유니티에서 멀티플레이어 게임을 쉽게 만들 수 있도록 도와주는 네트워크 엔진이다Photon이라는 클라우드 기반 네트워크 프레임워크 위에서 동작하고, Unity에 특화된 기능을 제공한다 핵심 개념 (Photon PUN)1. 클라이언트-서버 기반 통신 구조Photon PUN은 클라이언트-서버 모델을 따르며, 모든 네트워크 메시지는 중앙에 위치한 Photon Cloud 서버를 통해 중계됨클라이언트 간 직접 통신(P2P)은 없으며, 모든 상태, 이벤트, 오브젝트 생성 및 제거 등은 서버를 통해 전달된다유저 입장에서는 다른 클라이언트와 직접 상호작용하는 듯한 경험을 할 수 있으나, 실제 통신 흐름은 서버 중심으로 구성된다2. Room 기반 구조Photon은 Room(방) 개념을 사용하여 유저들을 논리적으로 그룹핑함.. 2025. 3. 25. 이전 1 ··· 7 8 9 10 11 12 13 ··· 23 다음 반응형