본문 바로가기

분류 전체보기45

[Shader] Post Processing : Tint Effect 공부용으로 작성되는 페이지입니다. 틀린 부분이나 환경에 따라 오류가 발생할 수 있습니다. 원래 Post Processing 관련 글을 작성하고 있었는데 생각해보니 간단한걸 먼저 만들어보고 진행하는게 좋을 거 같아서 먼저 작성하게되었다. 미리보기 : 최종 결과물 생각했던 것 보다 만들기 너무 힘들었다. 엄밀히 따지자면 Tint shader 자체는 복잡하지 않은데 렌더피쳐랑 너무 오래 싸웠다... Custom Post Processing : Tint 처음 만들어보는 효과인 만큼 가장 기본적인 효과라고 할 수 있는 Tint 효과를 만들어보려고 한다. 유니티 내장 Post Processing을 살펴보면 Tint는 따로 존재하는 효과가 아니라 Bloom의 Value에 해당한다.내가 만들 Tint 효과는.. 2025. 6. 11.
[Shader] 카툰 렌더링 #1 렌더링의 기본 원리 공부용으로 작성되는 페이지입니다. 틀린 부분이나 환경에 따라 오류가 발생할 수 있습니다. 렌더링이란 무엇인가? : 빛, 표면, 카메라에 대하여 렌더링이란 다양한 디지털 데이터를 계산하여 화면 이미지로 출력하는 작업을 이야기한다.우리가 보는 모니터 화면은 결국 픽셀의 집합으로, FULL HD(1920x1080) 기준 총 200만개의 픽셀로 구성되어 있다.이러한 픽셀마다 색을 지정해주는 것을 렌더링 작업이라고 말한다. 렌더링 계산에는 빛, 물체 표면, 카메라(=눈) 이 필요하다. 빛과 색 물체는 특정 가시 광선(파장)을 반사하고 나머지는 흡수할 뿐 실제로는 색이 없다. 예를 들어 빨간 사과는 물체 자체가 '빨강색'을 고유하게 지니고 있는 게 아니라 빨간 파장을 반사해서 빨간색으로 보이는 것. 이렇게 .. 2025. 6. 9.
[자료구조] 탐색 (Search) 공부용으로 작성되는 페이지입니다. 틀린 부분이나 환경에 따라 오류가 발생할 수 있습니다. 탐색이란?기억공간에 저장된 특정 데이터를 착아내는 작업을 말한다.순차 탐색 : 순서화 되어 있지 않은 데이터를 첫 번째부터 차례대로 탐색하는 방식제어 탐색 : 반드시 순서화 되어있는 데이터를 탐색하는 방식 비유하자면 어지럽혀진 창고에서 물건을 찾는 것이 순차 탐색, 정돈된 도서관에서 책을 찾는 것이 제어 탐색이라 볼 수 있다.제어탐색 즉 앞서 배웠던 정렬을 토대로 한 번 순서화된 데이터에서 탐색하는 방식을 제어 탐색이라한다.제어 탐색 방식은 아무리 빨라도 시간 복잡도가 O(logN)이라는 특징을 가진다. 이진 탐색 (Binary Search)피보나치 탐색 (Fibonacci Search)보간 탐색 (Interp.. 2025. 6. 9.
[자료구조] 정렬 (sorting) - 퀵, 힙, 병합, 기수 정렬 공부용으로 작성되는 페이지입니다. 틀린 부분이나 환경에 따라 오류가 발생할 수 있습니다. 복습 앞서 학습했던 Big-O 표기법을 숙지해가며 공부하자. 스택(LIFO) : 가장 나중에 들어온 데이터가 먼저 삭제 큐(FIFO) : 가장 먼저 들어온 데이터가 먼저 삭제 퀵 정렬 (Quick Sort)데이터들을 피벗(키)으로 부분적으로 나누어 가며 정렬하는 방법앞서 살펴본 정렬들과 달리 평균 시간복잡도는 O(n log n)이다. 최악 시간복잡도는 여전히 O(n^2) Pivot을 기준으로 작은 값은 왼쪽, 큰 값은 오른쪽으로 분할프로그램을 Recall해야하므로 Stack 요구분할(Divide)와 정복(Conquer)을 활용 ex) 초기값 : 15 30 60 5 35 18예시에서는 가장 오른쪽 수인 18.. 2025. 6. 9.
[photon] Photon Fusion Host Mode 기본 세팅 1. Photon Fusion이란? Photon Fusion: Setting the Benchmark for Multiplayer games.Snapshot of Fusion Capabilities Discover the essential details of the top-tier state-sync netcode SDK designed for Unity professionals. HAVE A LOOKwww.photonengine.com 포톤 퓨전은 상태 전송 라이브러리로, Tick-기반 시뮬레이션을 지원할 뿐만 아니라 지연 보상 기능 또한 제공한다. 나의 경우 현재 진행하고 있는 개인 프로젝트가 멀티 플레이가 가능하도록 하고싶기 때문에 관심을 가지게 되었다. 서버 모드호스트 모드공유 모드 현재 진행.. 2025. 6. 5.
[자료구조] 정렬 (sorting) - 버블 ,선택, 삽입, 쉘 알고리즘 공부용으로 작성되는 페이지입니다. 틀린 부분이나 환경에 따라 오류가 발생할 수 있습니다. 정렬의 개념각 데이터를 특정 항목으로 오름차순 혹은 내림차순으로 재배열하는 작업을 말한다.정렬의 종류내부 정렬 : 삽입법, 교환법, 선택법, 병합법, 분배법 등 데이터량이 적을 때 RAM과 같은 주기억장치에 정렬하는 방법을 말한다.RAM은 속도가 빠른 대신에 용량이 작다. 외부 정렬 : 밸런스 병합 정렬, 캐스케이드 병합 정렬, 폴리파즈 병합 정렬, 오실레이팅 병합 정렬 대용량의 데이터를 HDD, SSD와 같은 보조기억장치에서 기억시켜서 정렬하는 방법을 말한다.내부정렬과는 반대로 속도가 느린 대신 용량이 크다. 컴퓨팅에서는 주기억장치가 내부 정렬 : 버블 정렬두 개의 데이터를 비교하여 크기에 따라 위치를 서로 .. 2025. 6. 5.
[자료구조] 비선형 자료구조 : 트리, 그래프 공부용으로 작성되는 페이지입니다. 틀린 부분이나 환경에 따라 오류가 발생할 수 있습니다. 선형구조가 주로 자료에서 input-output하는 것에 초첨이 맞춰져있다면 비선형 자료구조 자료 뒤에 여러 자료가 존재하는 형태를 보인다. 비선형 자료구조 : 트리 트리의 개념 노드들이 나뭇가지처럼 연결된 계층적인 자료구조를 가리키며 주로 조직 구조도, 연산 수식을 표현하는데 적합하다.노드 : 자료 항목을 가지는 트리를 구성하는 기본 요소 루트 노드 : 트리의 가장 맨 상단에 있는 노드차수(Degree) : 각 노드에서 뻗어나온 가지 수 리프 노드 : 자식이 하나도 없는, 차수가 0인 노드. 보통 마지막 노드가 이에 해당한다. 트리 뎁스 : 트리의 최대 깊이 트리 데그리 : 노드 차수 중 최대 차수 이진 트리 .. 2025. 6. 4.
[자료] Shader Graph, VFX Graph 샘플 예제 大분석 공부용으로 작성되는 페이지입니다. 틀린 부분이나 환경에 따라 오류가 발생할 수 있습니다. Unite Seoul 영상을 천천히 보면서 한 번 다시 정리해보고 싶은것들 중심으로 내용을 정리해본다 Vfx Graph 관련은 따로 작성하지 않았따 Shader Graph1. Default ShadersLit Shader(= PBR) Unlit Shader : 조명이 필요없는 시각 효과나 고유 오브젝트에 사용 (= 저사양 하드웨어 적합)2. Vertex Shader정점 단위 계산 : 객체의 공간적 변형, mesh 왜곡, 애니메이션 효과 등 처리 (=position) 법선(Normal) 벡터 변환텍스쳐 좌표 조작output은 Interpolator에 저장되어 Fragment Shader로 전달됨 3. Frag.. 2025. 6. 4.
[Shader] Depth Map 공부용으로 작성되는 페이지입니다. 틀린 부분이나 환경에 따라 오류가 발생할 수 있습니다. Depth Map이란?viewpoint(일반적으로 카메라)로부터 물체 표면과의 거리와 관련된 정보가 담긴 채널을 의미한다.모션 트래킹할 때 사용하는 센서들도 보통 Depth Map 옵션을 가지고 있다.일본어로는 深度マップ 이라고 하는등 결국 초첨은 '깊이' 이다. Depth Map 뜯어보기 Depth Map의 경우 유니티 자체에 예제로 있기 때문에 오늘은 작성보다는 어떻게 구성되고 작동되는지를 공부하는데 초첨을 맞췄다.우선 예제에서 복잡한 부분(체크 알고리즘)은 제외하고 Depth와 관련된 부분만 남겨서 정리하였다. Properties { } SubShader { Tags { .. 2025. 6. 3.
[Unity] ScriptableRendererFeature 작성하기 공부용으로 작성되는 페이지입니다. 틀린 부분이나 환경에 따라 오류가 발생할 수 있습니다. ScriptableRendererFeature?쉐이더를 작성하면서 ScriptableRendereFeature 부분이 길어져서 따로 작성하게 되었다. ScriptableRendererFeature는 파이프라인을 커스터마이징할 수 있게 해주는 기능이다.객체에 단순히 Material을 적용시키는게 아니라, 이미 만들어진 맵에 후처리로 shader를 적용해야할 경우 파이프라인에 추가해서 처리하는 것. 이미 만들어진 씬에 필터 같은 shader를 적용하고 싶을 때 유용하게 쓸 수 있는 기능이다. 작성 과정 세팅된 파이프라인(이 경우 URP)에 Renderer Features를 추가하기 위해서는 ScriptableR.. 2025. 6. 1.