TECHARTNOMAD | TECHARTFLOWIO.COM

unity 15

RHIDrawIndexedPrimitiveIndirect 또는 DrawMeshInstancedIndirect 와 GPU Buffer 개요.

IndirectDraw:드로우 콜(draw call)의 횟수를 줄여 렌더링 성능을 향상시키는 기술입니다.GPU에게 드로우할 인스턴스의 개수, 시작 인덱스 등을 명령어 형태로 전달하여, CPU의 개입을 최소화하고 GPU가 스스로 드로잉 작업을 처리하도록 합니다.Mesh Instance:하나의 메시를 여러 번 복제하여 화면에 렌더링하는 기술입니다.각 인스턴스는 위치, 회전, 크기 등의 변환 정보를 가지고 있어, 다양한 오브젝트를 효율적으로 생성할 수 있습니다.Constant Buffer:GPU가 쉽게 접근할 수 있는 메모리 공간으로, 쉐이더에서 자주 참조되는 데이터를 저장하는 데 사용됩니다.내용이 변경될 때마다 CPU에서 GPU로 데이터를 복사해야 하므로, 너무 자주 변경되는 데이터를 저장하기에는 비효율적입..

[번역] Unity6에서 RenderGraph를 활용해보자 - 구현 응용편 1편

이전 글 Unity6에서 RenderGraph를 활용해보자 - 기본 기능편 을 먼저 읽고 오는 것이 좋아요. [번역]Unity6에서 RenderGraph를 활용해보자 - 기본 기능편역자의 말.최근 보름동안 유니티2022 버전에서 개발 된 렌더링 메서드들을 유니티6 으로 전환하고 있습니다. 역자 역시 Render Graph 를 최근에서야 다뤄보고 있기 때문에 많은 자료와 예제들을 찾아techartnomad.tistory.com소개안녕하세요, CyberAgent SGE코아텍 소속 장유빈입니다. 지난 시간에는 RenderGraph의 기본 개념과 유용한 기능에 대해 알아보았습니다.이번 시간에는 RenderGraph를 구체적으로 어떻게 다루는지에 대한 응용편에 대해 알아보도록 하겠습니다. 이번 글에서는 Rende..

TECH.ART.FLOW.IO 2024.10.06

[소식][번역]URP 17로의 업그레이드와 Render Graph 활용 방법

2024년 9월 초 U/Day Tokyo 2024 에서 소개 된 URP17 과 렌더그래프에 대한 활용방법이라는 주제의 강연입니다. 그리고 추가로... 게임개발자이신 쿄우카이님의 Zenn 블로그에 실린 글을 간략히 소개 해 보겠습니다.유니티의 RenderGraph System(URP17)을 지원하는 가장 심플한 Custom RP를 만들어보기 라는 블로그 글을 발췌 했습니다. Unity의 RenderGraphSystem(URP17)을 지원하는 가장 심플한 Custom RP를 만들어보기서론 출력을 잘 못해서 연습도 겸해서 여러 가지를 작성해 보려고 글을 올리기 시작했습니다. 이번에는 Unity 2023.3에서 URP에서도 RenderGraph를 활성화할 수 있게 되었기 때문에 RenderGraphSyste v..

TECH.ART.FLOW.IO 2024.10.06

URP의 Unity 렌더 그래프 시스템

유니티 공식 문서 렌더그래프 시스템 소개부터 활용까지의 내용을 소개 합니다. URP의 렌더 그래프 시스템 소개렌더 그래프 시스템은 유니버설 렌더 파이프라인(URP)에서 스크립터블 렌더 패스를 작성하는 데 사용하는 API 세트입니다.렌더 그래프 API를 사용하여 스크립터블 렌더 패스를 생성할 때 URP에 다음을 알려줍니다:사용할 텍스처 또는 렌더 텍스처입니다. 이 단계는 레코딩 단계입니다.레코딩 단계의 텍스처 또는 렌더 텍스처를 사용하여 실행할 그래픽 명령입니다. 이 단계는 실행 단계입니다.그런 다음 스크립터블 렌더 패스를 URP 렌더러에 추가할 수 있습니다. 스크립터블 렌더 패스는 URP의 내부 렌더 그래프의 일부가 되며, 이는 각 프레임을 통과하는 렌더 패스 URP 단계의 시퀀스입니다. URP는 렌더 ..

UNITY3D 2024.09.28

[번역] 유니티 Shader Warmup에 대하여

저자: 倉平 안녕하세요!열정개발부 프로그래머 구라히라 입니다!9월에 접어들면서 날씨가 선선해져서 다행이지만, 대신 날씨가 변덕스러워지는 경우가 많네요.외출 중 갑작스러운 게릴라성 폭우를 만날 때도 많을 것이다.이럴 때만 우산을 가지고 오지 않았다면....흠뻑 젖을 각오로 움직일지, 멈출 때까지 기다릴지 고민이다.준비하면 고생하지 않고, 번거롭지 않게 작은 우산을 들고 다니는 것을 추천합니다.이번 시간에는 Unity에서 셰이더 로딩에 대해 알아보겠습니다.이 글에서는 Unity 버전 2022.3.44f1을 사용하고 있습니다.또한, URP의 샘플 장면을 사용하였습니다. URP 3D 샘플유연성과 성능을 겸비한 멋진 그래픽스를 만들고, 커스터마이즈하고, 스케일링하는 방법을 알아보세요.unity.com처음 그릴 때..

TECH.ART.FLOW.IO 2024.09.12

[번역] GPU 인스턴스 기반 잔디 렌더링 연구 노트

역자의 말.사실 2019년도에 오픈월드 프로젝트 게임제작을 할 때 엔진부서에 간접그리기 등에 대한 도입을 계속 요청 했지만 메시 그래스 템플릿을 활용한 GPU 인스턴스로만 최적화 처리를 했던 것이 아직도 아쉽기도 하고... ( 다만 최적화는 잘 되었음.... 다행하게도 ? ) 2019년 중후반 까지만 해도 보편적으로 업계에서 간접그리기와 GPU 폐색에 대한 이해도가 그리 높은 편이 아니었던 터 이기도 하고... 특히 중국은... 한국도 마찬가지지만... 2019년도에 콘솔 게임 진영에서는 이미 이러한 처리가 점점 보편화 되어가고 있던 터라는 점이 있었는데... 아무튼.. 또 읽어볼만한 잘 정돈 된 기사가 있어서 이렇게 간략히 번역처리 하여 공유 해 봅니다. 저자 wqaetly - Overviewwqaet..

TECH.ART.FLOW.IO 2024.07.04

[번역]언리얼 엔진 초실감 인간을 해부하는 렌더링 기술 Part 2 - 눈동자 렌더링

역자의 말 캐릭터에게 마지막으로 생명을 불어넣는 작업은 눈동자에 있다고 단언컨데 말할 수 있습니다. 오랜 시간 역자 역시도 눈동자 표현과 그 주변 표현에 대한 관심을 갖고 있었고 구현을 해 왔는데요... 최근 5년간은 모바일 게임만 만들었기 때문에 이렇게 세부적인 분석에 도달 할 기회가 없었습니다. 그래픽스 프로그래머인 장 선생의 세부적인 분석 글을 보면 아티스트보다 더 뛰어난 관찰력을 갖고 있음이 느껴집니다. 중국에서는 전문가 집단이라는게 있고 많은 엔지니어와 미술가 들이 전문가 등급이 되기 위해 많은 노력을 하는데요... 이 기사 전문에서도 그런 부분들이 느껴집니다.저자Timlly-Chang 이 전에 동 저자의 멋진 언리얼 엔진 모바일 해부 분석글을 읽으신 적이 있습니다. 최근에 알았지만 넷이즈에서 ..

TECH.ART.FLOW.IO 2024.06.10

[기초]간단한 카툰 렌더링 학습코스. 파트 1.

저자의 말.Preface이 글을 쓰면서 옛 추억을 떠올릴 수 있을 것 같습니다. 그래서... 처음부터 너무 어려운 것을 하고 싶지는 않았다는 말씀을 드리고 싶습니다. 처음부터 어려운 일을 다루면 제가 먼저 지칠 것 같았거든요. 본문으로 돌아가서... 각 효과 섹션은 최대한 간단하게 설명하려고 노력했습니다. 몇 년 동안 팀 운영에 신경을 쓰다 보니 개인적으로 기술적인 부분을 자세히 설명하는 능력이 떨어진 것 같아서 스스로 되새기는 자세를 유지하려고 합니다. 대부분의 설명은 프로그래머를 위한 것이 아니라 셰이딩에 관심이 있는 아티스트를 위한 것입니다. 렌더링 프로그래머나 테크니컬 아티스트에게 전적으로 의존하기보다는 구현 측면을 이해하면 아티스트도 생각을 정리한 후 소통할 수 있을 것입니다. 워낙 기본적인 내..

UNITY3D 2024.06.05

Iridescence 효과 : 방막필름 효과 구현.

2021년 봄 프로젝트B 작업을 할 때 스타일라이즈 오브제 특히 금속질감을 갖거나 유기그릇이나 코팅 된 오브제에 사용하면 예쁠 것 같아서 적용 했던 것이다.Iridescence 구현방식은 여러가지가 있는데 가장 간단한건 그냥 레인보우 램프로 리맵 하는 것들인데 최근의 모던 GPU 에서는 굳이 그렇게 까지 간단히 할 필요는 없어보인다. 특히 최근 언리얼엔진 5에 추가 된  Thin Film 셰이딩은 좀 색다른 LUT 방식인데 속도면에서 볼 때 모바일게임에 적용해도 문제 없을 정도의 성능을 보여주기도 하고... 시간이 나면 유니티로 포팅 해 봐야겠다는 생각이 있기도 하고... 아무튼 이건 매우 전형적인 Iridescence 계산공식을 따르고 있는 거다. 아래꺼는 임포탄트 셈플링으로 구현 해 봤던 거고... ..

UNITY3D 2024.05.25

[번역] 피부 렌더링 연구 기록

토픽 저자 : 판스칭 ( 范世青 )효과 분해듀얼 로브 PBR간접 조명, AO 보정사전 통합된 SSS 기반 스킨, 일반 + 카메라 공간피부 위의 소프트 쉐이딩은 주로 모바일 SSSM이 켜지지 않은 상태에서 ShadowMap을 기반으로 한 간편한 PCF 쉐이딩옵션, 테두리옵션, 측면 조명옵션, 보조 조명ToneMapping화면 공간의 표면 아래 산란 효과에 기반한 SSSSS 계산.1 더블베이스 PBR기본 BRDF 강조 공식, 쿡-토런스, UE 소스 코드에서 파생된 코드// GGX / Trowbridge-Reitz // [Walter et al. 2007, "Microfacet models for refraction through rough surfaces"] float D_GGX( float a2, floa..

TECH.ART.FLOW.IO 2024.04.19