TECHARTNOMAD | TECHARTFLOWIO.COM

2025/02 26

Quickstart: Folder Merge

여러 파일이 들어있는 프로젝트 폴더를 상상해보세요. 이 폴더로 이틀 동안 작업하면서 두 개의 다른 Git 브랜치에 저장했다고 가정해보세요. 또는 폴더를 만들어 두 명의 팀원과 공유하고 그들이 개선을 도왔던 팀 시나리오를 떠올려보세요.이렇게 하면 세 가지 버전이 생성됩니다: 원본 폴더(조상)와 두 개의 새로운 폴더입니다. 이들을 통합해야 합니다. Beyond Compare에서는 이 과정을 폴더 병합 세션이라고 합니다. 이 예제에서 사용된 파일을 다운로드하려면 다음 링크에서 마우스 오른쪽 버튼을 클릭하고 "다른 이름으로 저장"을 선택하세요: 17KBtest-merge-for-three-folders-A-Z.ziparchive프로젝트 폴더에 설정된 26개의 빈 파일은 다음과 같습니다:Here are the m..

TECH.ART.FLOW.IO 2025.02.17

World Partition-> Runtime Partition

UE5의 새로운 레벨 분할 기술은 런타임에서 그 장점이 두드러집니다.레벨의 정적 오브젝트들은 레벨 시작 시 단 한 번만 계산되어 메모리에 저장되므로, 이전의 Bake 방식과 비교해도 게임 실행 중 성능 부담이 발생하지 않습니다.또한 에디터(Editor)에서 오브젝트와 스트리밍 레벨 간의 관계(진입/이탈)를 일일이 처리할 필요가 없어져 오픈 월드 씬 편집이 한결 수월해졌습니다.관련 설정World Partition SetupRuntime Hash ClassWorldPartitionRuntimeHashSet와 WorldPartitionRuntimeSpatialHash는 언리얼 엔진의 World Partition 시스템에서 사용되는 두 가지 런타임 해싱 전략입니다. 각각의 차이점을 살펴보겠습니다.1. World..

UNREAL ENGINE 2025.02.17

[TIP] 유니티 6. 하나의 서브메시에 다중 머티리얼 적용하는 법.

유니티 6 는 이 전 버전에 비해 GPU Driven 친화적으로 진화하고 있다.기본적인 설정은 GPU 상주드로어등이 꺼져 있겠지만 HIZB 등을 사용하거나 좀 더 고도화 된 유니티 6 렌더패스와 GPU 최적화를 활용하기 위해서는 켜 주는 것이 보통일 것이다.다만 이 전에 우리가 자주 사용했던 단일 서브메시에 2개 이상의 멀티머티리얼을 적용 할 경우 렌더링 처리 되지 않음으로 유니티에서 GPU Driven 관련 콤포넌트를 만들어 놓았다.간단히 예로 들면...주로 알파테스트와 알파블렌드 두 개의 페스를 머티리얼로 처리 하는 경우가 많은 상황에서 이렇게 Hair 객체에 스크립트 콤포넌트를 추가 할 수 있다.유니티에서 제공하고 있ㅎ는 Disallow GPU Driven Rendering 콤포넌트를 적용 해 주면..

유니티 6.2 렌더링 패스

유니티 포럼에서 유니티 엔지니어의 말. Forward투명 및 불투명 오브젝트를 한 번에 하나씩 렌더링합니다. 각 오브젝트에 대해 영향을 미치는 광원 목록을 바인딩. GPU에서는 이 목록을 반복하며 조명을 누적.이 방식의 장점은 매우 단순하고 CPU 비용이 낮다는 것입니다. 매우 단순한 장면에서는 이 방식이 유리.단점은오버드로우, 즉 나중에 다른 지오메트리에 의해 가려질 픽셀의 조명 처리에 비용이 발생.광원 수가 제한적.GPU 기반 렌더링 및 GPU 오클루전 컬링과 호환되지 않음.Forward+CPU에서 Burst를 사용하여 모든 가시 광원과 반사 프로브를 스크린 스페이스 클러스터로 정렬. 각 스크린 스페이스 클러스터에 대한 광원 목록이 생성되면 이를 GPU로 업로드한다. 투명 및 불투명 오브젝트를 이제 ..

UNITY3D 2025.02.10

9.8.5 Screen Space Depth 기반 Rim light 따라잡기 도입글 소개

9.8.5 Screen Space Depth 기반 Rim light 따라잡기게임 그래픽이나 3D 애니메이션 분야에서는 물체의 가장자리를 빛으로 감싸 윤곽선을 돋보이게 만드는 ‘Rim Lighting’ 기법이 자주 사용된다. 간단히 설명하면, 데브 기반 림라이팅이란 물체와 주변 사이의 깊이 차이를 활용해 물체의 에지(가장자리)에만 빛이 닿는 효과를 연출하는 것이다. 이번 장에서는 이러한 림라이팅을 구현할 수 있는 방법에 대해 살펴보려 한다.림라이팅이 게임 업계에서 본격적으로 사용되기 시작한 시점은 대략 2003년 무렵으로 추정된다(정확한 연도는 명확하지 않다). DirectX 9.0 기반에서 개발이 활발해지던 시기부터, 게임브리오 엔진이나 언리얼 엔진 2.X 등을 사용하던 시대를 거쳐, 현재의 다양한 모바..

Scene Templates 좀 알아보자.

저녁 시간에는 주로 유니티로 MMO 를 개발하는 회사를 컨설팅 하고 있는 터라 스트리밍 터레인 예제를 제작해야 하는데 뭐 문서 보다가 씬템플릿이 있길레 뭔가 하고 해서 유니티 문서 기반으로 정리 해 본것이다.Scene Templates새로운 씬을 만들기 위해 Unity는 Scene Template(시작하고자 하는 모든 콘텐츠가 포함된 사전 구성된 씬)을 복사한다. 예를 들어, 기본 템플릿에는 카메라와 라이트가 포함되어 있다.프로젝트에서 사용 가능한 새로운 씬의 유형을 정의하기 위해 사용자 정의 Scene Template을 만들 수 있다. 예를 들어, 서로 다른 게임 레벨에 대한 템플릿을 만들어 팀원들이 올바른 에셋과 구성으로 씬을 시작할 수 있도록 할 수 있다.모든 Unity 씬은 Scene Templa..

UNITY3D 2025.02.05

모바일 셰이더 구조 분석 및 정리.1

MobileBasePassPixelShader.usfMobileLightingCommon.ush는 언리얼 엔진의 모바일 쉐이딩 파이프라인에서 가장 핵심이 되는 쉐이더 코드 파일이다. 이 파일은 모바일 플랫폼에서 최적의 성능을 발휘하기 위해 정교하게 설계된 조명 계산 시스템과 효율적인 렌더링 파이프라인을 체계적으로 구현한다. 이어지는 내용에서 이 파일의 구조와 주요 기능을 상세히 분석해보도록 한다.1. 파일 개요MobileLightingCommon.ush는 모바일 환경에 특화된 핵심적인 조명 계산 기능을 제공하는 통합 쉐이더 파일이다. 이 파일은 Main 함수를 중심으로 다양한 조명 함수들과 최적화된 데이터 구조를 정의하고 있으며, 이를 통해 모바일 디바이스에서도 효율적이면서 시각적으로 뛰어난 조명 처리를..

UNREAL ENGINE 2025.02.05

10장. 스타일 캐릭터 셰이딩과 사용자화 셰이더라이브러리 제작법. 들어가는 글 소개.

본 장에서는 스타일 캐릭터 셰이딩(Stylized Character Shading)의 구현 방법론을 상세하게 제시한다. 특히 물리 기반 렌더링(PBR, Physically Based Rendering) 셰이더의 핵심 연산과 기술적 원리를 체계적이고 심도 있게 다루고있다. 복잡한 조명 계산과 다양한 재질의 정교한 상호작용을 통해 최상급 시각 효과를 구현하는 첨단 렌더링 과정을 최대한 상세하게 다룸으로서 이 전과는 다른 좀 더 전문적인 셰이더 개발 역량을 배양하는 토대를 만들고자 한다. 큰 범위로 나누어 보면… 현대 그래픽스 파이프라인의 핵심인 PBR 기반 연산 체계의 깊이 있는 이해와 확장 가능한 맞춤형 셰이더 라이브러리 구축 방법론에 중점을 둔다. 고급 렌더링 기술의 근간이 되는 BRDF(Bidirec..

9장. 셀 스타일 캐릭터 렌더링. 들어가는 글 소개.

총 15장 이상으로 구성 된 국내 최초의 찐 실무기반 셰이더 프로그래밍 책 이라고 말 할수 있을 만큼 공을 들여서 쓰고 있는 "모두의 셰이더 프로그래밍" 의 9장 도입문의 일부를 소개 합니다. 이 서적은 (주)책만 에서 출판 예정이며 2025년 상반기 출간을 목표로 하고 있습니다만~ 아마 이렇게 쓰면서 분량이 늘어나는 걸 보면 초여름에나 출간이 되지 않을까 싶어요.셀 스타일 렌더링(Cel Style Rendering)은 센과 치히로의 행방불명과 같은 애니메이션 또는 다양한 3D 게임에 사용되는 툰 렌더링(Toon Rendering)은 3D 컴퓨터 그래픽스에서 만화 스타일의 이미지를 표현하기 위해 개발된 렌더링 기법으로, 현실적인 조명과 질감보다는 단순화된 색상, 윤곽선, 그리고 명확한 음영을 강조한다. ..