유니티에서 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로설정합니다.
유니티(unity)에서 재질의 쉐이더 속성(properties)을 확인하는 방법 1)재질의 쉐이더 속성을 확인하려면 재질을 선택하고 우측 상단의 edit shader로 이동합니다. 2)코드 에디터의 쉐이더 코드에서 속성(properties)을 확인할수있습니다. 3)또는 재질을 선택하고 인스펙터에서 우측 상단의 debug를 선택합니다. 4)디버그 모드에서 saved properties로 이동합니다. 5)재질의 쉐이더 속성을 확인할수있습니다.
유니티(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)의 그..
유니티(unity)에서 constant force 사용하기 constant force를 사용하여 리지드바디에 일정함 힘을 추가할수있습니다. 게임오브젝트의 월드공간 및 로컬공간에서 힘 또는 토크를 적용하여 게임오브젝트를 이동 또는 회전시킬수있습니다. 1)씬에 constant force 를 사용할 오브젝트를 생성합니다. 2)게임 오브젝트에 리지드바디 컴포넌트(rigidbody)를 추가합니다. is kinematic와 constraints(freeze position, rotation)을 체크해제합니다. 3)constant force 컴포넌트를 추가합니다. 4)게임오브젝트의 기즈모 표시방법을 local로 설정합니다. 5)constant force 컴포넌트의 force 속성에 값을 입력하고 게임을 실행합니다. ..
유니티(unity)에서 OnTriggerEnter 함수를 사용하여 충돌 감지(OnTriggerEnter, OnTriggerStay, OnTriggerExit) (유니티 버전 2020.3.0f1, built-in render pipeline) OnTriggerEnter 함수는 두 개의 게임오브젝트가 충돌할 때 호출됩니다. OnTriggerEnter 함수를 사용하는경우 두 개의 게임 오브젝트 모두 콜라이더 컴포넌트를 가지고있어야하고 그중 하나는 isTrigger가 활성화되어있어야합니다. 또 적어도 하나의 게임 오브젝트가 리지드바디 컴포넌트를 가지고있어야합니다. 1)씬에 두개의 게임오브젝트를 생성합니다(sphere, cube) 2)스피어 오브젝트에 리지드바디(rigidbody) 컴포넌트를 추가합니다. 스피어오..
유니티(unity)에서 재질의 디퓨즈맵과 노말맵 사용(diffuse map, normal map) (유니티 버전 2020.3.0f1, built-in render pipeline) 1)디퓨즈맵(diffuse map)과 노말맵(normal map)으로 사용할 텍스처 이미지를 준비합니다 2)유니티 프로젝트로 가져오기한 노말맵의 텍스처 이미지는 texture import settings에서 텍스처 유형(texture type)을 normal map으로 설정합니다. 3)기본 standard 재질을 생성하고 오브젝트에 재질을 할당합니다. 4)재질의 albedo에 디퓨즈 텍스처 이미지를 설정합니다. 5)오브젝트의 표면에서 albedo의 텍스처 이미지가 표현되는것을 확인할수있습니다. 6)재질의 normap map에 ..
유니티(unity)에서 텍스처 이미지 큐브맵(cube map)을 환경반사에 사용하기 (유니티 버전 2020.3.0f1, built-in render pipeline) 1)씬에 스피어 게임오브젝트를 생성합니다. 2)오브젝트에 기본 standard 재질을 할당합니다. 3)metallic, smootness의 수치를 높입니다. 4)오브젝트의 표면에서 스카이박스에 의한 환경 반사가 표현되는것을 확인할수있습니다. 5)라이팅의 환경(lighting window, environment)에서 환경 반사(environment reflections) 소스(source)가 기본 스카이박스 재질(default-skybox)을 사용하는 스카이박스(skybox)로 설정되어있는것을 확인할수있습니다. default-skybox(ma..