유니티 에셋 curvy API와 유용한 함수 및 프로퍼티 Curvy API Reference https://api.curvyeditor.com/710/ isInitialized bool IsInitialized [get] 스플라인이 완전히 초기화되고 모든 세그먼트가 로드되었는지 여부를 확인하는데 사용한다. https://api.curvyeditor.com/710/class_fluffy_underware_1_1_curvy_1_1_curvy_spline.html 코루틴에서 스플라인이 초기화될때까지 대기한다. GetTangent, GetTangentFast Vector3 GetTangent (float localF, Space space=Space.Self) 포인트의 tangent를 가져오는 함수. 스플라인 ..
유니티 URP에서 포스트프로세싱 사용하기(post processing) URP는 자체통합 포스트프로세싱을 제공한다. 씬에 볼륨을 추가하고 카메라에서 post processing을 활성화하여 단순한방법으로 사용할수있다. 1)URP 프로젝트에서 씬을 구성하였다. 2)씬에 게임오브젝트를 생성하고 volume 컴포넌트를 추가한다. 3)volume의 profile에서 우측의 new를 클릭한다. 4)새로운 볼륨 프로파일이 생성된것을 확인할수있다. 5)프로젝트의 에셋 폴더에서 새로 생성한 프로파일 에셋을 확인할수있다. 6)프로파일을 선택하고 add override를 클릭한다. 7)추가할 포스트프로세싱을 선택한다. 8)추가한 포스트프로세싱을 활성화한다. 9)포스트프로세싱을 사용할 카메라를 선택하고 rendering의 ..
유니티 에셋 curvy - 스플라인 연결하기(connection) connection을 사용하여 두개 이상의 스플라인을 연결할수있다. 1)씬에 두개의 스플라인을 생성한다. 2)connection에 사용할 두 포인트를 선택한다. 예에서 첫번째 스플라인의 마지막 포인트와 두번째 스플라인의 첫번째 포인트를 선택하였다. 3)도구모음에서 connect를 클릭한다. 4)connection을 설정한 포인트는 추가적인 connection 속성들을 표시한다(control point options, follow-up, connection option) 5)씬의 _CurvyGlobal_ 오브젝트의 하위에 connection 게임오브젝트가 추가된것을 확인할수있다. 6)connection 게임오브젝트를 선택하면 마찬가지로 해당..
유니티 에셋 curvy - generator 메시의 해상도 높이기 1)씬을 표시하는 draw mode를 wireframe으로 변경한다. 2)generator에 의해서 생성된 메시의 와이어프레임을 확인할수있다. shape의 해상도 3)input spline shape을 선택한다. 입력 shape이 2D/Circle로 설정되어있는것을 확인할수있다. count는 circle shape의 포인트 개수를 의미한다(CP) 4)view의 approximation에 체크하면 스플라인의 캐시포인트를 표시한다. 5)shape의 스플라인에서 max points per unit의 수치를 증가시킨다. max points per unit는 월드 거리 유닛 단위당 최대 샘플링 포인트 개수를 의미한다. 또는 cache density..
유니티 에셋 curvy - 스플라인에서 메시 생성하기(generator) generator의 shape extrusion를 사용하여 메시를 생성하는 방법 1)씬에 스플라인을 생성한다 2)새로운 generator 게임오브젝트를 생성한다. 3)generator의 edit graph로 이동한다. 4)그래프에서 마우스 우클릭한후 add template의 shape extrusion을 선택한다. 5)5가지 모듈(input spline path, input spline shape, shape extrusion, volume mesh, create mesh)을 사용하여 최종적으로 메시를 생성한다. 6)씬에서 생성한 메시를 확인할수있다. shape extrusion은 경로를(spline path) 따라서 모양을(spl..
유니티 URP프로젝트에서 기존의 쉐이더 업그레이드하기 프로젝트에서 URP로 설정한 이후에 재질이 보라색으로 표시되는 경우 쉐이더 전환을 사용하여 문제를 해결할수있다 (사용자가 작성한 쉐이더, custom shader는 전환되지않는다) 1)아래 예에서 URP로 전환한 프로젝트의 재질 및 모델이 보라색으로 표시되는것을 확인할수있다. 이것은 URP에서 빌트인 렌더파이프라인의 쉐이더를 지원하지않기때문이다. 2)기존 프로젝트에서 사용중인 쉐이더를 URP 호환 쉐이더로 전환해야한다. 프로젝트의 모든 재질 또는 선택한 재질을 URP 호환 쉐이더 및 재질로 업그레이드할수있다. 상단의 edit 메뉴에서 render pipeline> URP>upgrade project materials to URP materials 또는..
유니티 프로젝트에서 빌트인 렌더파이프라인을 URP로 업그레이드하기 (built-in render pipeline to universal render pipeline) URP는 자체 통합 후처리 솔루션을 제공한다. 만약 프로젝트가 post processing v2를 사용하고있다면 해당 패키지를 삭제해야한다. 1)일반적으로 유니티에서 새로운 프로젝트를 생성할 경우 템플릿에서 URP를 선택할수있다. 2)만약 기본 3D 템플릿으로 생성한 프로젝트가 존재한다면 해당 프로젝트에 URP를 설치 및 설정할수있다. 3)일반적으로 3D 템플릿으로 생성한 유니티 프로젝트는 기본 빌트인 렌더파이프라인을 사용한다. 프로젝트가 현재 사용중인 렌더파이프라인은 project settings의 graphics에서 확인할수있다. 현재 ..
유니티 에셋 curvy - 스플라인 생성하기(draw spline) 1)씬에 새로운 스플라인을 생성하기위해서 scene view의 좌측 상단 curvy toorbar ui에서 draw spline을 선택한다. 2)스플라인을 정렬할 평면을 선택한다. 예에서 xz평면을 선택하였다. 3)씬에서 ctrl+좌클릭으로 포인트를 추가하여 스플라인을 생성한다. xz평면을 활성화하였기때문에 포인트의 y값이 0을 가지는 스플라인을 생성하였다. 4)hierarchy에서 스플라인 오브젝트(curvy spline)를 확인할수있다. 스플라인 오브젝트는 자식오브젝트로 포인트를(CP, curvy spline segment) 가지고있다. 5)스플라인 오브젝트에 curvy spline 컴포넌트가 추가되어있는것을 확인할수있다. 6)컴포넌..
유니티 에셋 추천 - curvy, 스플라인 에디터 CURVY는 유니티에서 사용가능한 스플라인 편집 툴이다. 스플라인 생성 및 편집 뿐만 아니라 다양하고 유용한 기능들을 제공한다(orientation management, connection, generator, controllers, etc) 최적화된 캐싱 시스템을 사용하며 스레딩 및 개체 풀링을 통해 빠르게 작동하도록 설계되었다. Curvy curvyeditor.com/ Curvy 소개 동영상 youtu.be/aw5qSHN92YA Curvy 동영상 튜토리얼 www.youtube.com/playlist?list=PLatR0iPtXq-x8gDP9tNaxC5Pp32DEL6fS Curvy Splines tutorials Various tutorials for ..
유니티에서 패키지를 기본값으로 재설정하기(reset pacakges to defaults) 패키지를 기본값으로 재설정하면 프로젝트에서 사용자가 설치한 모든 패키지들을 제거하고 기본값으로 초기화합니다. 이 작업은 컴파일 또는 프로젝트 손상을 발생시킬수있습니다. 아래 예에서 일부 패키지의 an error occurred while resolving packages:project has invalid dependencies 에러를 해결하기 위해 패키지를 초기화하였습니다. 1)콘솔에서 project has invalid dependencies 에러를 확인합니다. 2)package manager에서 일부 패키지의 an error occurred while resolving packages 에러를 확인할수있습니다...
유니티 게임 그래픽 최적화 주제 모음 프러스텀컬링 오쿨루젼컬링 정적 배칭 유니티에서 정적배칭(static batching) 사용하기 동적 배칭 유니티에서 동적배칭 사용하기(dynamic batching) GPU인스턴싱 유니티 GPU 인스턴싱(instancing) vsync CombineMeshes함수 유니티에서 CombineMeshes 함수를 이용하여 배칭하기 LOD(level of detail) 유니티에서 LOD 그룹 설정하기 라이팅기법 라이트맵 gpu스키닝 라이트프로브 리플렉션 프로브 텍스처 압축 파티클최적화 렌더링파이프라인(빌트인, URP, HDRP) 유니티의 렌더링 파이프라인(built-in, SRP, URP, HDRP) 포워드렌더링, 디퍼드렌더링 안티 엘리어싱 유니티 안타 엘리어싱(anti-al..
유니티 터레인(terrain) 에셋 - terraworld, terrarland3https://terraunity.com/ terraworldhttps://assetstore.unity.com/packages/tools/terrain/terraworld-automated-level-designer-156561 terraland3https://assetstore.unity.com/packages/tools/terrain/terraland-3-119097