유니티 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 - 스플라인 컨트롤러 사용하기(spline controller) spline controller는 게임오브젝트를 스플라인에 정렬하거나 이동시키는데 사용된다. 게임오브젝트의 path 애니메이션에 사용할수있다. 1)씬에 스플라인 게임오브젝트와 컨트롤러로 사용할 cube 게임오브젝트를 생성한다. 2)cube 게임오브젝트에 spline controller 컴포넌트를 추가한다. 3)spline에 path로 사용할 curvy spline 게임오브젝트를 참조시킨다. 4)position 값을 조절하면 cube 게임오브젝트가 스플라인 위의 상대위치 및 절대위치에 정렬되어 이동하는것을 확인할수있다. spline controller 컴포넌트의 주요 속성들 speed - 런타임에 게임오브젝트가 스플라인..
유니티 에셋 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 ..
유니티 BGdatabase에서 코드 생성(code generation)사용하기 https://www.bansheegz.com/BGDatabase/CodeGeneration/ BGDatabase의 CodeGeneration을 사용하면 데이터베이스 액세스를 단순화하고 API를 더욱 간편하게 사용할수있다. CodeGeneration없이 기본 BGDatabase API를 사용한 경우 CodeGeneration를 사용하여 데이터베이스에 접근한 경우(extension classes) BGDatabase에서 code generation 활성화하기(코드 생성) 1)BGDatabase의 addons 메뉴에서 codegen을 선택한다. 2)enabled에 체크하고 code generation의 설정을 마친후 generat..
유니티에서 사용자 정의 Inspector 만들기(에디터 스크립트) editor scripting learn.unity.com/tutorial/editor-scripting?language=en CustomEditors docs.unity3d.com/Manual/editor-CustomEditors.html 1)스크립트를 생성한다(test.cs) 2)스크립트의 에디터 스크립트를 생성한다(testEditor.cs) 에디터 스크립트에 네임스페이스를 추가한다. using UnityEditor; 에디터스크립트는 Editor 클래스로부터 상속받는다. public class LevelScriptEditor : Editor { } 어트리뷰트를 추가한다(CustomEditor) [CustomEditor(typeof(te..
유니티 BGdatabase에서 nested field 활용하기(스크립트) 스크립트에서 nested field의 값을 가져오기 및 설정하기 nested field의 값을 가져오기 1)아래에서 tree 테이블은 nested 타입의 필드(branch)를 가지며 필드의 값들은 각각 테이블(nested meta)을 가진다. nested meta(branch) 2)아래 스크립트에서 tree 테이블 첫번째 행(meta[0])의 필드(branch)에 대한 값을 가져온다. 필드가 nested 타입인 경우 행의 리스트(List) 형식으로 가져올수있다. 3)nested 필드의 테이블 목록 이름을 출력한다. nested field의 값을 설정하기 4)아래 테이블에서 nested 필드(branch)의 값이 none으로 표시되는..
유니티 BGdatabase에서 nested field(nested meta) 사용하기 nested field는 소유자 테이블(owner)과 다수대일 관계를 가지는 새로운 테이블(nested meta)을 만드는 필드이다. 1)데이터베이스 및 테이블의 구조를 관리하기위해 configuration 탭으로 이동한다. 아래 예에서 정수형, 실수형 필드를 포함하는 tree 테이블을 선택하였다. 2)새로운 필드 추가에(branch)서 relation의 nested 타입을 선택한다. 3)테이블에 nested 타입의 필드(branch)가 추가된것을 확인할수있다. 4)좌측에서 nested field(nested meta)를 선택한다. nested field의 테이블(nested meta)에서 새로운 필드를 추가할수있다. ..
유니티 BGdatabase에서 기본 api 사용법 BGdatabase에서 제공하는 c# 기본 API를 사용하여 데이터베이스에 접근하는 방법 https://www.bansheegz.com/BGDatabase/API/ 네임스페이스 추가 using BansheeGz.BGDatabase; BGdatabase에서 사용되는 네가지 주요 클래스 BGRepo.cs BGRepo.cs는 데이터베이스이다. 기본 데이터베이스에 접근하기위해 BGRepo.I를 사용한다. var repo = BGRepo.I; 이름이 table1인 테이블 가져오기 var meta = repo["table1"]; 테이블의 고유 ID로 가져오기 var meta = repo[new BGId("HTAOdRaxlEGU1aefSG+Nbw")]; BGMetaE..
유니티 BGdatabase에서 데이터베이스 관리하기(테이블, 필드, 행) 데이터베이스는 4 개의 주요 부분인 테이블(meta), 테이블 필드(field), 테이블 행(entity), 데이터베이스 애드온으로 구성된다. 모든 테이블, 필드, 행(entity)은 고유한 ID와 이름을 가지고있다. 1)configuration 탭에서 데이터베이스의 구조(테이블, 필드)를 관리한다. 새로운 테이블(metas)을 생성하기 위해 +아이콘 클릭한다. 2)테이블의 이름을 설정하고 add를 클릭한다. 3)새로운 테이블이 생성된것을 확인할수있다. 테이블은 고유한 아이디와 이름을 가진다. 4)아래 표시한 +아이콘을 클릭하여 테이블의 필드를 추가한다. 5)add field에서 필드의 이름과 타입을 설정한다. 아래 웹사이트에서 B..
유니티 BGdatabase 초기 설정, 데이터베이스 생성하기 1)프로젝트에서 데이터베이스의 리소스 폴더를 생성한다(Assets\Database\Resources) 2)에셋을 설치하고 상단의 window 메뉴에서 BGDatabase로 이동한다. 3)새로운 데이터베이스를 생성하기위해 create new database file을 클릭한다. 4)Loader에서 Resources를 선택하고 데이터베이스 폴더의 경로를 설정한후 create를 클릭한다. Loader(Resources, StreamingAssets, Custom)의 장단점을 아래 웹사이트에서 확인할수있다. http://www.bansheegz.com/BGDatabase/Setup/ 5)새로운 데이터베이스가 생성된것을 확인할수있다. BGDatabase..