유니티(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..
유니티(unity)에서 환경 조명 설정하기(조명세기, 스카이박스, 그라디언트, 단일색상) (유니티 버전 2020.3.0f1, built-in render pipeline) 1)씬에 스피어 게임오브젝트를 생성합니다. 2)스피어 오브젝트의 표면에 환경 조명에 의한 색상과 음영이 표현되고있는것을 확인할수있습니다. 3)라이팅 윈도우의 environment에서 environment lighting(환경 조명)의 source가 skybox(스카이박스)로 설정되어있는것을 확인할수있습니다. 4)스카이박스 재질(skybox material)은 기본 default-skybox 재질로 설정되어있는것을 확인할수있습니다. 5)스피어 오브젝트 표면의 색상과 음영이 기본 default-skybox 재질의 스카이박스 환경 조명에 의..
유니티(unity)에서 모델의 메시 정보 확인하기 정점 개수(vertices), 삼각형 개수(triangles), UV 레이아웃(UV Layout) 버텍스 색상(Vertex Color), 노말(Normals), 기타(UV Checker, Tangents, Blendshapes) 1)프로젝트에서 모델을 선택합니다. 2)model import settings에서 모델의 미리보기를 제공하지만 메시 정보를 확인할수없습니다. 3)모델의 하위에 존재하는 메시를 선택합니다. 4)inspector에서 모델의 메시 정보를 확인할수있습니다. 5)미리보기 하단에서 메시를 구성하는 정점 및 삼각형의 개수가 표시되는것을 확인할수있습니다. 6)미리보기에서 메시를 표시하는 방법을 선택합니다(Shaded, UV Checker, UV..
유니티 에셋 추천 Edy's Vehicle Physics - 자동차 물리 엔진 도구(차량운전, 충돌, 피해효과, 지면재질, 오디오효과, 기타) Edy's Vehicle Physics는 간편한 설정으로 사용자 차량을 리깅 및 구성하여 차량을 운전 및 제어할수있는 기능을 제공합니다. 그밖에 차량 충돌, 피해, 지면재질(지면흔적, 스키드마크, 연기등), 오디오(엔진, 변속, 충격, 기타)등의 효과를 사용할수있습니다. Edy's Vehicle Physics 유니티 에셋 스토어(asset store) https://assetstore.unity.com/packages/tools/physics/edy-s-vehicle-physics-403 Edy's Vehicle Physics 사용법 동영상 (Edy's Vehic..
유니티 에셋 curvy에서 generator의 volume caps사용하기 generator로 생성한 볼륨(volume)에 평평한 캡(cap)을 생성하는 방법 1)씬에 curvy spline을 생성한다. 2)새로운 curvy generator를 생성한다. 3)생성한 generator의 그래프 편집(edit graph)으로 이동한다. 4)새로운 shape extrusion 템플릿을 생성한다. 5)생성한 샘플 템플릿은 5가지 모듈을 사용하여 메시를 생성한다. 6)input spline path의 spline을 제거하고 씬에 생성한 사용자 스플라인을 설정한다 7)사용자 스플라인으로 생성한 shape extrusion 메시를 확인할수있다. 8)메시의 시작과 끝에 hole을 확인할수있다. 9)새로운 volume ..
유니티의 특수 폴더(special folder)와 데이터경로(datapath) 유니티의 특수 폴더 https://docs.unity3d.com/Manual/SpecialFolders.html Unity - Manual: Special folder names Batching with the AssetDatabase Special folder names You can usually choose any name you like for the folders you create to organise your Unity project. However, there are folder names that Unity reserves for special purposes. For example, you must place..
유니티 에셋 curvy에서 애니메이션 해상도 높이기 일반적으로 스플라인의 포인트 개수를 증가시키거나 보간방법(interpolation)을 설정하면 스플라인 위에서 이동하는 오브젝트의 애니메이션 해상도를 높일수있다. 다음은 spline controller의 속성을 설정하여 애니메이션 해상도를 높이는 방법이다. 아래 예에서 스플라인을 적은 개수의 포인트로 구성하고 보간방법으로 linear를 선택한 환경을 설정하였다. 1)씬에 linear 형식의 스플라인을 생성한다. 2)적은 개수의 CP로 이루어진 곡선형태의 스플라인을 생성한다. 2)오브젝트(spline controller)의 애니메이션을 확인한다. 오브젝트의 축과 스플라인 위 포인트(CP)의 탄젠트 및 오리엔테이션이 일치되면서 애니메이션이 연속적이지 않은것..
유니티 에셋 curvy -스플라인에 오브젝트 정렬하기(generator, volume spots) generator의 volume spots 모듈을 사용하여 스플라인에 오브젝트를 정렬하는 방법 1)씬에 스플라인을 생성한다. 2)새로운 generator 게임오브젝트를 생성한다. 3)generator의 edit graph로 이동한다. 4)input spline path 모듈을 추가하고 스플라인을 참조시킨다 5)rasterize path 모듈을 추가하고 입력에 input spline path를 설정한다. 6)스플라인에 정렬할 오브젝트를 생성한다(cube) 7)input gameobjects 모듈을 추가하고 cube 오브젝트를 참조시킨다. volume spots 모듈을 추가하고 입력에 rasterize path..
유니티 에셋 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를 가져오는 함수. 스플라인 ..