TECHARTNOMAD | TECHARTFLOWIO.COM

GPU 27

[INDEX] GPU DRIVEN

[UNITY6] For GPU Driven Rendering. BRG | GRD이번주에 오랫만에 유니티 6 에 추가 된 핵심 렌더링 피처 그러니까 드디어... GPU Driven 의 기본적인 형태가 들어왔기에...영상 소개로 만들 요량으로... 먼저 간단히 스넵샷 한 장.BRG : Batch Render Grotechartnomad.tistory.com GPU-Driven Renderer에서의 Heterogeneous AoS Instance Encoding메이즈라인 velog 미러.오늘도 지하철을 저 처럼 한 시간씩 타는 직장동료분들을 위한 읽을 거리를 추가 했습니다.엔지니어 Zino의 글을 읽고 추가로 정리한 내용입니다.Heterogenous AoS instance encodingtechartnoma..

INDEX 2026.01.03

[번역] Unity에서 스킨드 메시의 GPU Driven 렌더링 구현

저자: 乐只人서문최근 프로젝트에서 SkinnedMesh의 GPU Driven 렌더링을 지원해야 하는 요구사항이 있었는데, 마침 얼마 전 Digital Dragons에서 발표된 Erik Jansson의 강연을 보게 되었습니다. 그중 Alan Wake 2의 GPU Driven SkinnedMesh 렌더링 소개가 있어, 아이디어를 정리하고 시도해 본 뒤 전체 구현 과정을 기록하게 되었습니다. 이 글에서는 GPU Driven 파이프라인의 기초 지식이나 관련 구축 구현에 대해서는 구체적으로 다루지 않습니다. 이러한 선행 지식이 없다면 다른 관련 기술 문서를 먼저 참고하여 이해한 후 이 글을 읽는 것을 추천합니다.아래는 Alan Wake 2의 GPU Driven 렌더링 Meshlet 시각화 및 실제 효과 이미지입니..

TECH.ART.FLOW.IO 2026.01.03

Bindless 렌더링: 현대 GPU-Driven 그래픽스의 근간

메이즈라인 공식 블로그 글을 소개하고 있습니다.본 토픽은 현대 그래픽스 기술의 핵심인 Bindless 렌더링의 개념과 발전 과정, 그리고 실제 구현 기법을 심층적으로 다룹니다. 이 기술은 기존의 복잡한 리소스 바인딩 절차를 제거하고 GPU가 직접 대규모 리소스 배열에 접근하도록 하여, CPU 오버헤드를 획기적으로 줄이고 렌더링 효율을 극대화합니다. 특히 DirectX 12와 Vulkan 같은 최신 API에서의 표준화 과정과 함께, UE5의 Nanite나 DOOM Eternal 같은 최첨단 엔진들이 이를 어떻게 활용하는지 상세히 분석합니다. 또한 하드웨어 제조사별 차이점과 GPU Driven 파이프라인으로의 전환이 갖는 구조적 의의를 설명하며, 차세대 그래픽스 설계를 위한 기술적 통찰을 제공합니다. 결국 ..

MAZELINE TOPIC 2025.12.23

Quake III Fast Inverse Square Root: 전설적인 알고리즘의 현대적 재조명

메이즈라인 Velog 미러글입니다. Quake III Fast Inverse Square Root: 전설적인 알고리즘의 현대적 재조명1999년, id Software가 공개한 Quake III Arena의 소스 코드에는 게임 개발사에 전설처럼 회자되는 알고리즘이 포함되어 있었다. 바로 Fast Inverse Square Root, 일명 '0x5f3759df 매직 넘버'로 알려진 이 코드는 당velog.iofloat Q_rsqrt( float number ){ long i; float x2, y; const float threehalfs = 1.5F; x2 = number * 0.5F; y = number; i = * ( long * ) &y; ..

MAZELINE TOPIC 2025.11.13

[번역] SLG 게임에서의 나무 컬링 최적화 - GPU 기반 접근법

저자: 燕生1. 서론SLG 게임 개발 과정에서 자주 마주하게 되는 문제가 있습니다. 바로 장면 내에서 수많은 나무와 건물이 서로 겹치면서 발생하는 시각적 충돌입니다.위 이미지에서 보시는 것처럼, 빨간색 구체는 건물을 나타내고 녹색 큐브는 나무를 나타냅니다. 이때 나무와 빨간색 건물이 서로 겹치면서 시각적 오류가 발생하게 됩니다. 이 문제를 해결하기 위해 CPU를 활용한 바운딩 박스 컬링 방식을 고려할 수 있습니다. 각 나무와 건물 사이의 거리를 순회하며 반경을 기준으로 검사한 후, 범위 내에 있으면 비활성화하는 방식입니다.하지만 모바일 환경에서는 "배경 나무"(모든 정적 장식용 식물을 포함)를 바이너리 파일로 압축하여 처리합니다. 이는 단순히 몇 바이트를 절약하기 위함이 아니라, 초대형 샌드박스 맵 + ..

TECH.ART.FLOW.IO 2025.10.25

[INDEX] GPU.UPDATE

GPU-Driven Renderer에서의 Heterogeneous AoS Instance Encoding메이즈라인 velog 미러.오늘도 지하철을 저 처럼 한 시간씩 타는 직장동료분들을 위한 읽을 거리를 추가 했습니다.엔지니어 Zino의 글을 읽고 추가로 정리한 내용입니다.Heterogenous AoS instance encoding techartnomad.tistory.com Adreno 830 GPUVisual Subsystem Adreno GPUReal-time Hardware-Accelerated Ray Tracing with Global IlluminationGPU는 실시간 하드웨어 가속 레이 트레이싱을 지원하여 지원되는 게임에 사실적인 반사, 그림자 및 조명 효과를 제공합니techartnom..

INDEX 2025.10.24

GPU-Driven Renderer에서의 Heterogeneous AoS Instance Encoding

메이즈라인 velog 미러.오늘도 지하철을 저 처럼 한 시간씩 타는 직장동료분들을 위한 읽을 거리를 추가 했습니다.엔지니어 Zino의 글을 읽고 추가로 정리한 내용입니다.Heterogenous AoS instance encoding for a GPU-driven renderer대규모 오픈 월드 게임을 만들다 보면 한 가지 딜레마에 부딪힙니다. 수만 개의 나무, 건물, 캐릭터를 화면에 렌더링해야 하는데, 각 오브젝트마다 필요한 데이터가 전부 다릅니다. 어떤 오브젝트는 단순한 정적 메시만 있으면 되지만, 어떤 것은 스키닝 데이터, 복잡한 머티리얼, LOD 정보 등 방대한 데이터를 요구합니다.이런 상황에서 Heterogeneous AoS(Array of Structures) instance encoding이 ..

MAZELINE TOPIC 2025.10.23

GPU 병렬 연산: Warp Divergence 이해하고 해결하기

메이즈라인 velog 미러 입니다. GPU 병렬 연산: Warp Divergence 이해하고 해결하기GPU 병렬 연산: Warp Divergence 이해하고 해결하기 GPU 프로그래밍을 하다 보면 성능 최적화에서 자주 마주치는 개념이 바로 Warp Divergence입니다. 특히 셰이더 프로그래밍에서 이를 이해하고 적절히 대velog.ioGPU 병렬 연산: Warp Divergence 이해하고 해결하기GPU 프로그래밍을 하다 보면 성능 최적화에서 자주 마주치는 개념이 바로 Warp Divergence입니다. 특히 셰이더 프로그래밍에서 이를 이해하고 적절히 대응하는 것은 성능에 큰 영향을 미칩니다. 이번 글에서는 Warp의 개념부터 Divergence가 발생하는 상황, 그리고 이를 해결하는 베스트 프랙티스..

MAZELINE TOPIC 2025.10.20

브랜치 프리 셰이더: 원-핫 마스크로 버텍스 컬러 채널 추출하기. Update

메이즈라인 velog 미러 글입니다.셰이더 최적화: 분기문 없이 버텍스 컬러 채널 선택하기GPU에서 분기문은 비용이 비쌉니다. 특히 모바일이나 타일 기반 렌더러에서는 더욱 그렇습니다. 이번 글에서는 if/else 분기문을 원-핫 마스크와 dot product를 활용해 완전히 제거하는 최적화 기법을 소개합니다.문제 상황아웃라인 셰이더를 작성할 때 버텍스 컬러의 특정 채널(R, G, B, A)을 선택해야 하는 경우가 있습니다. 예를 들어, 아티스트가 버텍스 컬러의 R 채널에는 아웃라인 두께를, G, B, A 채널에는 다른 속성을 저장했다면, 머티리얼 프로퍼티로 어떤 채널을 사용할지 선택할 수 있어야 합니다.기존 방식: 분기문 사용가장 직관적인 방법은 if/else 분기문을 사용하는 것입니다.프로퍼티 선언[E..

MAZELINE TOPIC 2025.10.20

일부 휴대폰에서 VulkanRHI를 사용할 때 GPUSort 결과가 정확하지 않는 이슈.

오늘 고객사에 출근 했는데 니아그라 이펙트에 문제가 있는걸 TA 분이 테스트 하고 있더군요. 部分手机上,使用VulkanRHI时,GPUSort的结果不正确Soc: Snapdragon 8gen3,GPU:Adreno 750forums.unrealengine.com아무튼 문제는갤럭시 S24 에서 니아그라 GPU Sort 에 문제가 있는 점을 발견. 해결 해 나가는 과정에서 위 쓰레드를 이성학 사원이 발견.결론적으로 갤럭시 24 그러니까 아드레노 740 만 문제가 있으며 이 문제는 엔진 레벨에서 수정 해 봐야 의미가 없음.하드웨어 벤더 레벨에서 드라이버 수정을 해도(퀄컴에서 수정을 해도) 이게 삼성 갤럭시 S24를 제작하는 삼성 개발팀에서 퀄컴으로 부터 패치를 받아서 삼성 OS 에 통합을 해서 시스템 업데이트로 배..

UNREAL ENGINE 2025.09.12