유니티 TextMeshPro 두가지(UI, 3D Text) 유니티의 TextMeshPro는 두가지가 있습니다. 1)UI의 TextMeshPro를 생성합니다. 2)UI의 TextMeshPro는 canvas renderer와 TextMeshPro - Text(UI) 컴포넌트를 가지고있습니다. 3)캔버스의 자식 오브젝트로써 위치, 회전, 스케일을 설정합니다. 4)3D Object의 TextMeshPro를 생성합니다. 5)3D Object의 TextMeshPro는 mesh renderer와 TextMeshPro - Text 컴포넌트를 가지고있습니다. 6)3D 오브젝트로써 월드공간에서 위치, 회전, 스케일을 설정합니다.
유니티에서 texture import settings의 텍스처 해상도(NPOT, ToNearest) 프로젝트 에셋으로 가져오기한 텍스처의 미리보기(import settings) 해상도와 텍스처 파일의 해상도가 다른 이유 1)유니티에서 가져오기(import)할 텍스처의 해상도를 확인합니다(842 x 483) 2)유니티 프로젝트에서 해당 텍스처를 가져오기하면 texture import settings의 하단 미리보기(preview) 표시되는 텍스처 해상도(1024 x 512)가 파일의 해상도(842 x 483)와 동일하지않은것을 확인할수있습니다 3)이것은 유니티가 NPOT(2의 거듭제곱이 아님) 텍스처에 대하여 가장 가까운 2의 거듭제곱 해상도로 재조정했기때문입니다. import settings의 advan..
유니티에서 orthographic 카메라의 size 설정하기 씬의 plane 오브젝트 영역과 orthographic 카메라의 뷰를 일치시키는 방법 1)씬에 plane오브젝트(projection area)와 카메라를 생성합니다. 2)plane 오브젝트의 스케일을 설정합니다(스트린 해상도와 동일한 비율의 스케일을 설정합니다) 3)카메라의 projection을 기본 perspective으로 설정합니다. 4)게임의 스크린 해상도를 설정합니다. 예에서 1280 x 800 해상도를 설정하였습니다(plane 오브젝트의 스케일과 동일한 비율의 해상도로 설정합니다, 16:9) 5)카메라의 projection을 orthographic으로 변경합니다. 6)plane 오브젝트 영역과 orthographic 카메라의 뷰가 일치..
깃허브(github) 프라이빗(private) 리포지토리에서 사용자 접근 허용하기 프라이빗(private) 리포지토리에서 사용자를 초대하고 읽기(read) 접근 허용하는 방법(collaborators) private으로 설정한 리포지토리는 공개되지않습니다. 일부 사용자에게 리포지토리를 공개하려면 새로운 조직을 생성하고 사용자를 초대해야합니다. 새로운 조직(organization) 생성하기 1)상단 메뉴에서 new organization으로 이동합니다. 2)create a free organization을 선택합니다. 3)조직의 이름 및 기타 옵션을 설정합니다. 4)계정을 확인하고 다음으로 이동합니다. 5)새로운 조직(organization)을 생성하였습니다. skip this step을 선택합니다. 6)..
유니티 공식 샘플 에셋 다운로드(unity asset store) 유니티에서 제공하는 공식 유니티 에셋(프로젝트, 튜토리얼, 모델, 프랍, 기타) https://assetstore.unity.com/publishers/1 UI Toolkit Sample – Dragon Crashers https://assetstore.unity.com/packages/essentials/tutorial-projects/ui-toolkit-sample-dragon-crashers-231178 Unity Terrain - HDRP Demo Scene https://assetstore.unity.com/packages/3d/environments/unity-terrain-hdrp-demo-scene-213198 Starter..
유니티 URP shadow receiver 무료에셋 증강현실(AR) 콘텐츠에서 평면에 그림자를 렌더링하는데 주로 활용할수있는 무료 에셋입니다(URP) https://assetstore.unity.com/packages/vfx/shaders/shadow-receiver-urp-free-228074 https://youtu.be/i9IuSopnUko URP 에셋에서 transparent receive shadow에 체크하고 그림자의 cascade count 속성에 수치 1로설정합니다.
유니티에서 Unlit 쉐이더의 그림자 표현(shadow only) 빛의 영향을 받지않는 unlit 쉐이더를 사용하는 오브젝트의 그림자를 표현하기(mesh renderer의 shadow only를 사용한 방법) 1)씬에 큐브 오브젝트를 생성합니다. 기본 재질(Lit)을 사용하는 오브젝트의 그림자가 표현되는것을 확인할수있습니다. 2)Unlit 쉐이더의 재질을 생성하고 큐브 오브젝트의 재질로 설정합니다. 3)Unlit 쉐이더는 빛의 영향을 받지않는 쉐이더로 그림자가 표현되지않는것을 확인할수있습니다. 4)큐브 오브젝트를 복사합니다. 5)복사한 큐브 오브젝트는 오직 그림자를 표현하기 위한것입니다. 6)Lit쉐이더의 재질을 생성하고 복사한 큐브 오브젝트의 재질로 설정합니다. 7)해당 오브젝트의 mesh render..
유니티(unity)에서 재질의 쉐이더 속성(properties)을 확인하는 방법 1)재질의 쉐이더 속성을 확인하려면 재질을 선택하고 우측 상단의 edit shader로 이동합니다. 2)코드 에디터의 쉐이더 코드에서 속성(properties)을 확인할수있습니다. 3)또는 재질을 선택하고 인스펙터에서 우측 상단의 debug를 선택합니다. 4)디버그 모드에서 saved properties로 이동합니다. 5)재질의 쉐이더 속성을 확인할수있습니다.
유니티(unity)의 오브젝트 브러시 페인팅 도구 폴리 브러시(polybrush) 소개 유니티의 폴리브러시는 유니티 에디터에서 메시 페인팅, 텍스처 및 컬러 블렌딩, 버텍스 컬러페인팅 등의 유용한 오브젝트 브러시 페인팅 기능을 제공합니다. 유니티 패키지 관리자(package manager)에서 다운로드 및 설치하여 사용할수있습니다. 폴리브러시(polybrush) 기능 https://unity.com/kr/features/polybrush Polybrush Polybrush의 다양한 기능에 대해 알아보세요. Unity 에디터에서 텍스처와 컬러를 블렌딩하고, 메시를 만들거나, 오브젝트를 흩뿌릴 수 있습니다. 이제 ProBuilder, ProGrids와 함께 Unity에 속하게 되었습니 unity.com 폴리..
유니티(unity)에서 쉐이더그래프(shader graph)에서 생성한 쉐이더 코드 확인 (유니티 버전 2020.3.0f1, URP) 1)쉐이더그래프(shader graph)에서 생성한 쉐이더를 사용하는 재질을 선택합니다. 재질에서 사용가능한 쉐이더 속성들을 확인할수있습니다. 2)재질의 우측 상단에서 select shader를 선택하면 재질에서 사용중인 쉐이더로 이동합니다. 3)인스펙터에서 쉐이더의 view generated shader로 이동합니다.
유니티(unity)에서 애니메이션 커브(AnimationCurve)를 이용한 점프 구현 AnimationCurve.Evaluate 함수를 사용해서 게임오브젝트 이동시키는 방법 1)두개의 애니메이션 커브(AnimationCurve) 유형 변수를 선언합니다(뛰어오르는 동작, 낙하하는 동작) 2)점프에서 뛰어오르는 동작에 대한 그래프를 설정합니다. 시간이 지남에 따라서 속도가 감소합니다(곡선의 기울기) 3)점프에서 낙하하는 동작에 대한 그래프를 설정합니다. 시간이 지남에 따라서 속도가 증가합니다(곡선의 기울기) 4)아래 스크립트에서 점프를 실행하면 뛰어오르는 동작을 진행하고 이어서 낙하하는 동작을 진행합니다. 5)점프 높이와 시간을 설정합니다. 6)게임을 시작하고 점프를 실행하면 뛰어오를때 속도가 감소하고 낙..
유니티(unity)에서 애니메이션 커브를 사용하여 게임오브젝트 이동시키기 사용자 정의 애니메이션 커브를 설정하고 Vector3.Lerp함수와 AnimationCurve.Evaluate 함수를 사용해서 게임오브젝트 이동시키는 방법 1)씬에 게임오브젝트를 생성하고 원점에 위치시킵니다(0, 0, 0) 2)게임을 시작하면 아래 스크립트에서 시작 위치(startPos)와 목표 위치(targetPos)를 설정합니다. 3)지속시간동안(duration) 시작 위치에서 목표 위치까지 오브젝트를 점차적으로 이동시킵니다. 4)AnimationCurve.Evaluate 함수에서 곡선 그래프(curve)의 시간(그래프의 가로 축)에 대한 값(그래프의 세로 축)을 리턴합니다. 5)애니메이션 커브(AnimationCurve)의 그..