Unity 5

[Shader] Fog with SkyBox

f공부용으로 작성되는 페이지입니다. 틀린 부분이나 환경에 따라 오류가 발생할 수 있습니다. 해당 예제는 유니티의 Built-in 코드를 기반으로 작업하였다. 이것은 수정하기전의 모습이다. World 전체에 Fog Lighting이 적용되지 않는 것이 확인된다. 기존의 코드에서 수정한 부분들 위에서 언급한 Fog 관련 처리 및 include할 HLSL 파일들 수정이 주로 이루어졌다. 기존 코드는 CG기반이기에 HLSL로 수정 작성하면서 필요해진 작업이다. 즉, 본래 사용되었던 내장함수들을 사용할 수 없기 때문에 추가하거나 대체해줄 필요가 있었다. 1. Unity_PI PI는 우리가 알고있는 파이(x) 즉 3.14이다. URP에서 내장되어있지 않으므로 직접 추가해주었다. 2. UnityObj..

Shader 2025.05.08

[Unity] Object Pooling

Object Pooling이란?Object Pooling은 성능 최적화를 위해 자주 생성하고 파괴해야하는 오브젝트를 사전에 새성하고 재사용하는 방법이다.나의 경우에는 프로젝트에서 주기적으로 ball을 발사하는 canon때문에 사용하게 되었다.  처음에 작성했던 스크립트는 Instanctiate를 한 다음, 특정 Y축에 도달하면 Destory되도록 만들어 놓았다.여기서 문제가 발생한다.  Instantiate는 새로운 메모리를 할당하고 초기화(= 용량 낭비 발생 가능성 증가)Destroy는 오브젝트를 메모리에서 제거하고 Garbage Collection을 통해 메모리 정리 (= 시점 예측 불가 및 프레임 드랍 발생 가능성)  Object Pooling은 자주 사용될 오브젝트를 생성해둔다음, 사용하지 않는 ..

Unity/자료 2025.04.09

[Unity] Android 무선으로 빌드하기

USB port를 매번 사용하는게 번거로워서 무선 빌드를 활용하기로 했다.내가 사용하는 os가 Android 이므로 Android만 다룬다  0. 무선 디버깅 설정[개발자 옵션] -> [무선 디버깅] 으로 이동한다.(현재는 이미 커넥트 된 상태라서 아래에 페어링 기기가 뜬다.)  페어링 코드 기기 페어링을 선택 후 해당하는 페어링 코드와 IP주소를 추후 사용하면 된다. 1. ADB(Android Debug Bridge) 확인[Unity] -> [Edit] -> [Preferences] -> [External Tools]에서 Andriod SDK Tools의 경로를 복사한다.해당 경로로 이동한 뒤 CMD를 열어준다.  2.  CMD 아래의 순서대로 진행한다. 1. dir 입력 : 해당 주소에 있는 디렉토리..

Unity/자료 2025.03.21

[C#] Delegate : Action, Func

공부용으로 작성되는 페이지입니다. 틀린 부분이나 환경에 따라 오류가 발생할 수 있습니다.  지난 시간에 이어서 Delegate 관련을 공부해본다  [C#] Delegate(대리자) : Event, Lambda공부용으로 작성되는 페이지입니다. 틀린 부분이나 환경에 따라 오류가 발생할 수 있습니다.   1. Delegate 란?'대리자' 라는 의미를 가지고 있으며 함수의 주소값을 가지고 대신 호출한다. Class, Ahungrykang.tistory.com 함수의 대리 호출을 위해서 선언하는 것은 번거로울 수 있으므로 EventHandler처럼 미리 선언된 Delegate를 사용해본다. Delegate의 일종이므로 앞서 배웠던 체인이나 람다식도 사용할 수 있다. 이 두 가지를 사용하는 이유는 결국 코드의 간..

Unity/C# 2025.03.16