분류 전체보기 43

[Unity] 고급네비메쉬

고급네비메쉬 소개 유니티에서 2022 버전부터 기존 네비메쉬의 단점을 보완한 고급네비메쉬를 제공한다. 이에 대해 알아보자. 아래 영상을 참고했다. https://www.youtube.com/watch?v=OIcqe4ad5oA 유니티 패키지 매니저에서 AI 네비게이션을 인스톨하자. 유니티 버전이 2022 이상이 아니라면 아래 깃허브에서 고급네비메쉬를 따로 추가해줘야한다. https://github.com/Unity-Technologies/NavMeshComponents GitHub - Unity-Technologies/NavMeshComponents: High Level API Components for Runtime NavMesh Building High Level API Components for Ru..

Unity/정보 2023.09.23

[Unity] Poisson Disk Sampling

Poisson Disk Sampling 소개 알고리즘을 사용하여 특정 영역에서 지정된 반지름 내에 겹치지 않는 점을 생성하는 것을 말합니다. 아래 영상을 참고하여 알아볼 것이다. https://www.youtube.com/watch?v=7WcmyxyFO7o 주요 기능 위 영상에서 쓰인 코드는 2개로 첫번째는 실제로 배치될 위치를 계산하는 코드다. 각 후보 위치는 주어진 반지름 내에서 무작위로 생성되고, IsValid 메서드를 사용하여 다른 점과 충돌하지 않는지 확인한다. 후보 위치가 통과할 경우 위치 목록에 추가하고 격자 배열에 해당 위치를 표시한다. 그렇지 않은 경우, 후보 위치는 제거한다. spawnPoints 리스트가 비어질 때까지 반복하며 최종적으로 사용될 위치가 들어가있는 points 리스트가 ..

Unity/정보 2023.09.16

[Unity] Path Creator - 설정한 경로대로 물체 움직이기

Path Creator 소개 유니티 및 깃허브에서 무료로 사용 가능하며 사용자가 설정한 경로대로 물체가 움직이도록하는 기능이다. 커브 같은 것도 자연스럽게 경로가 잡히므로 여러 방면으로 사용 가능할 듯 싶다. https://assetstore.unity.com/packages/tools/utilities/b-zier-path-creator-136082 Bézier Path Creator | 유틸리티 도구 | Unity Asset Store Use the Bézier Path Creator from Sebastian Lague on your next project. Find this utility tool & more on the Unity Asset Store. assetstore.unity.com or..

Unity/정보 2023.08.31

[Unity] 스크립트 인스펙터 꾸미기

1. Header (string) 인스펙터 내에 타이틀을 달 수 있다. using System.Collections; using System.Collections.Generic; using UnityEngine; public class inspectorTest : MonoBehaviour { [Header("Title name")] public int speed; public int power; public int HP; } 2. Space (float) 필드 사이에 여백을 만들 수 있다. using System.Collections; using System.Collections.Generic; using UnityEngine; public class inspectorTest : MonoBehaviour..

Unity/정보 2023.05.09

[Unity] UI에 커스텀 머티리얼을 사용하고 마스크 기능이 안될 때

커스텀 머티리얼의 쉐이더 코드에 밑의 코드를 알맞게 추가해주면 해결된다. Shader "Custom/Opaque" { Properties { [PerRendererData] _MainTex ("Sprite Texture", 2D) = "white" {} _Color ("Tint", Color) = (1,1,1,1) // required for UI.Mask _StencilComp ("Stencil Comparison", Float) = 8 _Stencil ("Stencil ID", Float) = 0 _StencilOp ("Stencil Operation", Float) = 0 _StencilWriteMask ("Stencil Write Mask", Float) = 255 _StencilReadMask ..

Unity/오류 해결 2023.04.26

[Unity] 사용자 커스텀 마우스 커서 적용

1. 코드상으로 적용하기 UnityEngine.Cursor.SetCursor(cursorTexture2D, hotSpot, cursorMode); cursorTexture2D - 커서 이미지로 사용될 Texture2D hotSpot - 텍스쳐의 어느 부분을 마우스의 입력 좌표로 할 것인지 cursorMode - Cursor.Auto와 Cursor.ForeceSoftware가 있다. Auto는 하드웨어의 커서를 사용하며 윈도우 커서에 이미지를 입힌다. (일반적 사용) ForeceSoftware는 소프트웨어에서 커서를 그려서 사용한다. 2. 에디터로 적용하기 에디터로 적용하는건 기본상태 커서 밖에 없다. 일단 사용하고자 하는 이미지의 Texture Type을 Cursor로 변경해준다. 이후 Project S..

Unity/정보 2023.04.25

[Unity] apk 용량 경량화 방법들

1. 빌드시 압축 방식 빌드 할 때 압축 방식을 아래 사진의 위치에서 선택 할 수 있다. 해당 옵션은 다음과 같이 3가지가 있다. Default 기본 압축 포맷입니다. ZIP는 LZ4 및 LZ4HC보다 압축률은 조금 더 뛰어나지만 데이터의 압축을 푸는 속도가 느립니다. LZ4 개발용 빌드에 적합한 고속 압축 포맷입니다. LZ4 압축을 사용하면 Unity에서 빌드된 게임과 앱의 로딩 시간이 크게 향상됩니다. 자세한 내용은 BuildOptions.CompressWithLz4를 참조하십시오. LZ4HC 높은 압축률을 자랑하는 LZ4 변형 포맷입니다. LZ4HC는 빌드 속도가 느리지만 릴리스 빌드에서 더 뛰어난 결과를 제공합니다. LZ4HC 압축을 사용하면 Unity에서 빌드된 게임과 앱의 로딩 시간이 크게 향..

Unity/정보 2023.04.21

[Unity] 아바타 마스크를 이용해서 부위별로 방향 분리 하는 방법

위 사진처럼 캐릭터의 부위별(상체, 하체 등)로 방향을 다르게 주는 것이 최종 목표이다. 부위별로 다른 애니메이션 재생은 많이 알려져 있으므로 다루지 않을 것이다. 1. 작업 할 캐릭터 모델을 받아오자 캐릭터와 애니메이션을 무료로 가져올 수 있는 사이트인 믹사모에서 가져오자. https://www.mixamo.com/#/ 자신이 가진 캐릭터를 사이트를 이용하여 믹사모의 애니메이션을 적용 시킬수도 있고 믹사모 캐릭터와 애니메이션을 조합하여 다운로드 할 수도 있으니 여러모로 혼자 개발할 때 유용한 사이트다. 지금 캐릭터, 애니메이션은 아래의 두가지를 조합하자. 캐릭터와 애니메이션을 선택하면 오른쪽에서 미리보기를 볼 수 있으며 다운로드를 누르면 아래와 같은 창이 뜬다. 옵션은 사진과 동일하게 한 뒤에 다시 다..

Unity/정보 2023.04.21