일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 작업 집합
- URP로 변경
- C언어
- Toon Shader
- 게임 수학
- Cell Look
- 개인 바이트
- VR
- 가상 바이트
- 메모리 누수
- 프로그래밍 기초
- Specular
- URP
- ASW(Application SpaceWarp)
- Cell Shader
- Windows Build
- Private Bytes
- ColorGradingLutPass
- 3d
- OculusMotionVectorPass
- 벡터
- Virtual Byte
- Cartoon Rendering
- Three(Two) Tone Shading
- AppSW
- Rim Light
- working set
- Today
- Total
목록Unity/Unity 관련 (25)
WinCNT
서론 이번에는 Volume의 Bloom의 어떠한 속성들을 찾지 못 해서 삽질했던 경험에 대해서 써보려고 한다 Bloom하면 URP에 대한 내용 같지만, 이번 내용은 사실 Bloom 자체와는 아무런 연관이 없기에 Unity 관련 내용에 정리하고자 한다 그래도 배경 설명을 위해 Bloom에 대해 간단히 정리 유니티 URP에서 Bloom(다른 엔진들도 비슷하겠지만)은 다음과 같은 구조로 구현된다 Bloom할 부분 필터링(하면서 1/2 해상도로 Downscale) 위의 결과를 1/2 해상도로 Blur를 하면서 Downsampling 특정 횟수 반복 위의 결과를 2배 해상도로 Upsampling 특정 횟수 반복(Downsampling 때와 같은 횟수) 결과적으로 Downsampling 하기 전, 즉 필터링 후의 ..
서론 저번 글에 이어지는 EditorWindow 내용이다 https://wincnt-shim.tistory.com/406 Unity의 EditorWindow를 한 번 알아보자 그 첫번째! 덤으로 Reflection과 PropertyDrawer로 List 요소만 표시해 서론 전임자(필자는 만난 적 없음)가 전 프로젝트(필자는 참가한 적 없음)에서 만들었던 툴을 현재 담당하는 프로젝트에 마이그레이션하는 업무를 담당하게 되었다 아쉽게도 무지성으로 스크립 wincnt-shim.tistory.com 테스트를 위해 선택한 GameObject를 Count하는 메소드 작성 의미 없는 메소드를 만들어도 슬플 뿐이니 무엇인가 기능을 하나 만들어서 테스트해보자 이번 대상은 선택한 GameObject를 Count하는 메소드이..
서론 전임자(필자는 만난 적 없음)가 전 프로젝트(필자는 참가한 적 없음)에서 만들었던 툴을 현재 담당하는 프로젝트에 마이그레이션하는 업무를 담당하게 되었다 아쉽게도 무지성으로 스크립트를 복사하는 방법은 당연히 불가능했다…따흐흑 살짝 살펴보니 EditorWindow에 대한 지식이 없으면 옮길 것도 못 옮길 것 같아서 우선 EditorWindow에 대해서 알아보기로 하였다 Hello, World! 역시 Unity, 공식 문서에 튜토리얼이 있었다 커스텀 에디터 창 생성 - Unity 매뉴얼 커스텀 에디터 창 생성 - Unity 매뉴얼 커스텀 에디터 창을 사용하면 직접 에디터와 워크플로를 만들어 Unity를 확장할 수 있습니다. 이 가이드는 코드를 사용하여 에디터 창을 만들고, 사용자 입력에 응답하고, UI의..
서론 전에 커스텀 ShaderGUI를 구현하는 법을 작성한 적이 있었다 https://wincnt-shim.tistory.com/371 Unity에서 커스텀 ShaderGUI를 구현해보자! 그 첫번째 서론 이번에는 Unity에서 커스텀 ShaderGUI를 구현해보기로 했다 ShaderGUI란 특정 셰이더의 머티리얼에 대한 Inspector의 UI를 제작할 수 있게 해주는 클래스라고 생각하면 될 것 같다 이 글에 구현하면 wincnt-shim.tistory.com 그 글을 작성한 뒤로 새롭게 알게 된 방법들이 있어서 추가로 정리하고자 한다 그리고 셰이더 키워드를 On/Off하는 방법도 겸사겸사 정리하고자 한다 ShaderGUI의 존재 의의를 뒤흔드는 MaterialPropertyDrawer 사실 간단한 U..
서론 유니티에는 비동기 처리를 위한 몇 가지 기법들이 존재한다(멀티 스레드인지는 차치하고) 대표적인 것이 바로 Coroutine, Task, UniTask이다 정말 단순하게 설명하자면 Coroutine는 유니티에서 제공하는 비동기 처리 기법이고, Task는 C#(5.0 이상)에서 제공하는 비동기 처리 기법이다 UniTask는 Task를 Unity에서 효율적으로 사용할 수 있게 Cysharp(Cygames의 자회사)에서 만든 라이브러리라고 보면 될 것 같다 이번에는 UniTask를 설치하고 간단히 사용해본 내용을 정리해보고자 한다 근데 굳이 UniTask를 써야 함? 결론부터 말하자면 굳이 UniTask를 쓰는 게 낫다 필자도 이번에 조사하면서 알게 되었는데 여러 메리트가 있었다 우선 UniTask는 코루..
서론 유니티를 2021.3에서 2022.3으로 버전하던 도중, 버전 업 가이드에 Navigation and Pathfinding이 바뀌었다는 문구가 있었다 Navigation and Pathfinding is moving from the Unity core to the AI Navigation package 조금 조사해보니 예전부터 사용된 빌트 인 네이게이션 시스템도 있는 것 같고, Unity 2022.2 이전이지만 실험적 패캐지로써 사용하는 경우도 있는 것 같았다 (심지어 따로 깃허브에서 소스를 받아서 쓰는 경우도 있었음) 필자의 경우 Unity를 버전 업하니 com.unity.ai.navigation가 1.0.0-exp.4에서 1.1.4로 변경되었다 문제는 그로 인해 사용법과 인터페이스도 좀 바뀐 것..
서론 Unity 카테고리에 작성할 건 아닌 것 같지만 최종적으로는 Unity와 같이 쓸 예정이니 일단 여기에 정리해본다 PowerShell 스크립트가 있으니 금방할 수 있을 줄 알았는데 역시나 많은 삽질이 있었다(…) 이번에 작성한 Github Actions의 기본 구조 Github Actions에 대한 자세한 설명은 훨씬 좋은 글이 많으니 사용한 부분에 대해서만 간략하게 정리해 가려고 한다 job과 step의 이름은 Action의 Summary 표시되니 잘 설정하는 게 좋다 참고로 필자의 경우 runs-on: [ self-hosted ]에서 설정된 빌드 머신은 Windows 운영 체제이다 (GitHub Actions 작성 전에 PowerShell이나 CMD로 테스트한 이유) # Github Action..
서론 이번에는 Unity에서 커스텀 ShaderGUI를 구현해보기로 했다 ShaderGUI란 특정 셰이더의 머티리얼에 대한 Inspector의 UI를 제작할 수 있게 해주는 클래스라고 생각하면 될 것 같다 이 글에 구현하면서 알게 된 내용을 정리하고자 한다 커스텀 셰이더 GUI를 구현하면 좋은 점? 어디까지나 개인적 의견이지만… 역시 최고의 장점은 머티리얼의 프로터티를 보기 좋게 정리할 수 있다는 점이라고 본다 위는 URP의 디폴트 Lit 셰이더인데 토글, 체크 박스, 셀렉트 박스 등으로 깔끔하게 정리된 것을 볼 수 있다 두번째로는 커스텀 GUI를 통해서 셰이더의 키워드를 설정할 수 있게 된다는 점이다 즉 셰이더에서 #pragma multi_compile과 #pragma shader_feature 등에 ..
서론 CMD(Command Prompt)의 bat파일을 완성해서 달성감에 젖어있을 때, 회사의 빌드 머신은 PowerShell 위주로 돌아간다는 것을 알게 되었다 조금 살펴보니 bat파일의 내용을 못 쓸 것은 아니었지만, 다른 Github Actions 설정들은 전부 PowerShell로 되어 있었기에 이에 맞추기로 하였다 즉, 이번 글은 CMD의 bat파일을 PowerShell로 바꾸면서 발생한 삽집들을 정리한 글이다 하지만 사실 명령어 대부분은 호환됩니다 소제목 그대로 CMD의 명령어는 대부분 호완이 되기 때문에 그대로 사용해도 상관 없다고 한다 역시 Microsoft야! 예를 들어 PowerShell 스크립트에서 Write-Output 대신에 CMD의 echo를 써도 정작 작동하고, Set-Loca..
서론 이번 작업은 Github Actions을 통한 테스트 자동화의 사전 준비라는 느낌이다 물론 테스트 자동화라고 해도 딱히 거창한 것은 아니고, 이번에 할 것은 특히 더 그렇다 아무튼 이번에는 CMD(Command Prompt), 정확히는 bat파일로 오큘러스2의 VR기기를 여러 모로 조작하는 것이 목표일 뿐! 그를 위해서는 ADB(Android Device Bridge)를 사용할 필요가 있다는 것을 알게 되었고, 조사와 시행착오를 통해 알게 된 내용을 정리하고자 한다 adb.exe가 있는 폴더로 이동하자! adb.exe는 자주 사용할 것이기 때문에 아예 처음부터 adb.exe가 있는 폴더로 이동하기로 했다 (물론 환경 변수 등을 설정했다면 딱히 필요 없겠지만) 다음은 예제이다 @echo off @RE..