호우동의 개발일지

Today :

article thumbnail
[Unity 3D] 팝업시스템(1)- 텍스트 길이에 반응하는 팝업창 구현 및 설명
Unity Study/Concept 2023. 2. 4. 20:34

1. 레이아웃 생성 및 설정 캔버스의 하위 요소로 빈 오브젝트인 max와 그 하위 오브젝트인 popup을 만든다. max와 popup에 Vertical Layout Group 컴포넌트를 추가한다. max - 만들고 있는 팝업의 최대 크기를 결정하기 위해 생성 최대 영역의 크기를 보기 위해 임시로 이미지 삽입 Child Alignment를 Middle Center로 맞춘다. → 팝업 텍스트 가운데 정렬 Control Child Size Width/Height를 체크한다. 하위 요소에 의해서 사이즈가 결정되도록 함. → 텍스트의 길이에 따라 팝업창의 길이를 조절하기 위함 Child Force Expand Width/Height 체크를 해제 PopUp 하위 요소로 팝업 배경을 위한 Image UI(BackGr..

article thumbnail
[Unity 3D] UI - Layout Element 개념 정리 및 Text에 활용
Unity Study/Concept 2023. 2. 3. 23:30

해당 포스팅은 Layout과 Layout Controller의 개념을 알고 있다는 전제로 하는 설명이기 때문에 아래 링크에서 Layout Controller에 대한 개념을 보시는 것을 추천드립니다. [Unity 3D] UI 레이아웃 개념과 컨트롤러(Layout Controller) 기초 정리 Layout Controller 오브젝트를 일정한 규칙에 따라 배치하는 것 Inspector : 디버그(Debug) 모드 Min Width : 최소한의 너비 Min Height : 최소한의 높이 Preferred Width : 선호되는 너비 Preferred Height : 선호되는 높이 howudong.tistory.com 더보기 Layout Element Layout Controller 안에 있는 UI 요소들이 ..

article thumbnail
[Unity 3D] UI 레이아웃 개념과 컨트롤러(Layout Controller) 기초 정리
Unity Study/Concept 2023. 1. 30. 15:58

Layout Controller 오브젝트를 일정한 규칙에 따라 배치하는 것 Inspector : 디버그(Debug) 모드 Min Width : 최소한의 너비 Min Height : 최소한의 높이 Preferred Width : 선호되는 너비 Preferred Height : 선호되는 높이 Flexible Width : 너비가 늘어나는가? Flexible Height : 높이가 늘어나는가? Layout Component 사용하기 색이 다른 이미지 UI 4개를 만들어두고 빈 오브젝트 layout의 하위 오브젝트로 설정 Horizontal Layout Group Vertical Layout Group도 속성이 똑같음. layout 오브젝트에 Horizontal Layout Group 컴포넌트를 추가 위와 같이..

article thumbnail
[Unity 3D] 패킹(Packing)의 필요성과 두가지 시스템( Legacy, Atlas )
Unity Study/Concept 2023. 1. 30. 13:28

Draw Call(Batches) Batches(Draw Call) : CPU가 GPU에게 렌더링 할 항목(텍스처)들을 미리 알려주는 것 어떤 값을 넘겨주냐에 따라서 Draw Call이 결정 Draw Call 관리가 중요한 이유 Draw Call이 쌓일수록 전체적인 성능이 급격히 저하 모바일은 최대 100개 이하의 Draw Call을 유지해야 함 Draw Call을 줄이기 위해 Packing을 사용 Packing Sprite를 하나로 묶는 것 원하는 텍스처들을 가지고 있는 텍스처 뭉치를 만드는 것 Packing 원리 텍스처 하나를 Draw Call을 보냄 하나의 Draw Call 안에서 두 개의 스프라이트를 Render CPU가 GPU에게 텍스쳐를 요청하는 명령을 한 번만 처리할 수 있게 만듦 → 여러 ..

article thumbnail
[Unity 3D] 나인슬라이스(9-Slice)의 사용법과 필요성
Unity Study/Concept 2023. 1. 25. 21:20

9 Slice 이미지를 9조각으로 나누어 영역별로 사이즈를 조절하는 테크닉 Image Type Image 컴포넌트 속성 중 Image Type에서 사용 Sliced와 Tiled에서 사용 9 Slice가 되어있지 않으면 Sliced와 Tiled 사용 불가능 9 Slice 사용 Project에 이미지 원본 파일을 클릭 Inspector에서 Sprite Editor 클릭 아래와 같이 초록색 선으로 9개의 네모 영역을 만든 후, 우측 상단에 Apply 경고 문구가 사라진 것을 확인할 수 있다. 9 Slice를 하면 뭐가 다를까? 그림으로 보는 것이 가장 빠르다. 왼쪽은 Sliced 적용 / 오른쪽은 Simple 이미지이다. Simple은 크기가 바뀔 때마다 전체 이미지 비율이 그에 상응하여 바뀐다. Sliced..

article thumbnail
[Unity 3D] Rect Transform 이해하고 응용하기
Unity Study/Concept 2023. 1. 24. 18:51

RectTransform UI 한정에서 사용해서 컴포넌트 Transform을 상속받음 Transform의 속성/기능 사용 가능 UI는 모두 Transform 대신 RectTransform임 RectTransform 속성 UI 좌표계는 스크린과 다르게 한가운데가 (0,0,0)으로 시작 이는 Anchors(앵커)의 디폴트 값이 (0,0,0)이기 때문 → 앵커 값을 변경하면 포지션 값이 달라진다. 포지션은 Pivot(피벗)과 Anchor(앵커)의 영향을 받는다. Rotation, Scale - Transfrom과 같음. 단, Scale에 Z는 존재하지 않음 Pivot(피벗) Rect Transform의 Position은 Anchor을 원점으로 잡고 가운데 Pivot까지의 거리를 측정하여 UI를 배치 Ancho..

article thumbnail
[Unity 3D] Image 와 Text 컴포넌트 및 프로퍼티 의미와 활용법 정리
Unity Study/Concept 2023. 1. 12. 12:00

Image Canvas Renderer : 상위 Canvas의 UI 요소라는 뜻 Source Image 화면에 나타날 이미지 Sprite 형식의 텍스쳐 타입(Texture Type)만 넣을 수 있음 다른 타입은 넣을 수 없다. Raycast Target 버튼 클릭 같은 터치 이벤트가 해당 UI에 의해 가려질 수 있는가를 설정 뒤에 있는 버튼이 앞에 Image에 가려져 있다고 가정 Raycast Target 체크 → Raycast가 이미지 통과 못함(버튼 클릭 안됨) Raycast Traget 체크 X → Raycast 이미지 통과(버튼 클릭) Image Type Simple : Sprite를 Rect 크기에 따라 그대로 넣는다. Sliced : 스프라이트를 9개의 영역으로 나누어 각자 다른 방식으로 리사..

article thumbnail
[Unity 3D] 캔버스(Canvas)와 UI 기본 개념과 자주 쓰는 옵션 정리
Unity Study/Concept 2023. 1. 9. 12:37

UI UI Component를 생성하면 Canvas, EventSystem도 같이 생성됨 UI 가 화면에 나타나기까지의 과정 3D 렌더링 시스템에서 Vertex(정점)가 Vertex Buffer에 들어감 Vertex Buffer : 렌더링에 사용할 Vertex를 모아놓은 버퍼 Vertex(정점) : 3D 모델링의 가장 기본 단위 정점들이 도형(Polygon)을 이루게 됨 Polygon들이 모여 하나의 모델을 이루게 됨 Canvas 스크린과 매칭되는 UI 출력 영역(도화지) Vertex Buffer가 위치하는 곳 UI가 Canvas의 자식요소여야 볼 수 있음 UI들의 Vertex(정점)들은 사실상 UI가 아닌 Canvas에 저장됨 Canvas Render Mode Screen Space - Overlay ..