본문 바로가기
반응형

unity246

유니티 UI - Text Mesh Pro 텍스트에 그림자 효과 넣기 (Drop Shadow) 깃허브 데스크탑으로 프로젝트 관리하기 강의 오픈!! (인프런 바로가기) Unity 전체 링크 Text에 그림자를 추가하기 위해서는 아래와 같이 Shadow 컴포넌트를 추가했었다. 그러나 Text Mesh Pro에서는 Shadow 컴포넌트를 추가해도 아무 반응이 없다. 텍스트 메쉬 프로에는 그림자 효과가 내장되어 있다.그림자 효과를 위해서는 바로 아래의 Material을 수정하면 된다. (Shadow 컴포넌트는 삭제) Underlay를 체크하고 Softness 슬라이드를 이동해보자.그리고 Offset을 적절히 변경해보자.그림자 효과가 나타나는 것을 알 수 있다. 또한 Outline을 선택하면 간단히 외곽선 효과를 줄 수 있다. Unity Plus: Easy 2D, 3D, VR, & AR software f.. 2022. 7. 4.
유니티 - 쿼터니언과 회전의 덧셈 (How to Add Two Quaternions) Unity 전체 링크 유니티의 회전은 쿼터니언을 이용해야 한다. 인스펙터의 Rotation은 Vector3로 표현되지만 실제 타입은 Quaternion이다. 유니티가 사용자에게 보기 좋게 Vector3로 변환해 준 것이다. Rotation은 Vector3가 아니기 때문에 Quaternion.Euler(Vector3)로 변환해야 한다. 그리고 Rotation의 값을 얻기 위해서는 rotation의 eulerAngles로 접근한다. 먼저 QuaternionTest.cs를 추가해보자. 실제 Rotation은 Vector3가 아니기 때문에 Quaternion.Euler(Vector3)로 변환한다. using System.Collections; using System.Collections.Generic; usin.. 2022. 7. 2.
유니티 에셋 - 런타임 파일 브라우저로 파일 저장하기 (Save Files using Runtime File Browser) Unity 전체 링크 런타임 파일 브라우저로 파일 업로드하기 간단한 파일 브라우저(Simple File Browser)에서 파일을 저장해보자. 파일 업로드의 예시 코드에서 파일을 저장하는 코드는 아래와 같이 주석으로 처리되어 있다. // Show a save file dialog // onSuccess event: not registered (which means this dialog is pretty useless) // onCancel event: not registered // Save file/folder: file, Allow multiple selection: false // Initial path: "C:\", Initial filename: "Screenshot.png" // Title: .. 2022. 7. 2.
유니티 에셋 - 런타임 파일 브라우저로 파일 업로드하기 (Upload Files using Runtime File Browser) Unity 전체 링크 런타임 파일 브라우저로 파일 저장하기 유니티 PC 버전에서 런타임에 파일 브라우저를 이용해 파일을 불러오고 싶을 때가 있다. 만들어놓은 게임 맵(스테이지)을 불러오거나, SAVE 파일 등을 불러올 때 파일 브라우저가 있으면 편리하다. 간단한 파일 브라우저(Simple File Browser)를 이용해보자. 아래는 런타임에 파일 브라우저를 사용할 수 있는 무료 에셋이다. https://assetstore.unity.com/packages/tools/gui/runtime-file-browser-113006 Runtime File Browser | GUI 도구 | Unity Asset Store Use the Runtime File Browser from yasirkula on your .. 2022. 6. 29.
유니티 - SmoothDamp를 코루틴에서 사용하기 (SmoothDamp with Coroutine) Unity 전체 링크 오브젝트를 생성할 때, 위에서 아래로 빠르게 내려오는 효과를 만들어보자. 이때 Effect로 목표 지점에 가까워지면 감속하게 만들어보자. 현재 오브젝트를 기준으로 Y가 10 보다 큰 값에서 내려온다고 가정하자. SmoothDamp를 이용하여 간단한 예제를 만들어 볼 수 있다. https://docs.unity3d.com/kr/530/ScriptReference/Vector3.SmoothDamp.html Vector3-SmoothDamp - Unity 스크립팅 API Gradually changes a vector towards a desired goal over time. docs.unity3d.com SmoothDampUpdate.cs는 업데이트 문 SmoothDamp를 사용하였다.. 2022. 6. 28.
유니티 - 머티리얼 로드하고 바꾸기 (Load and Change Materials) Unity 전체 링크 Resources 폴더 아래에 있는 모든 머티리얼(Material)을 가져오고, 각 블럭의 index에 맞게 material을 교체해보자. 먼저 큐브를 넉넉히(10개) 만들고 보기 좋게 정렬해두자. 각 큐브는 ChangeMaterial.cs를 가지고 있다. index를 0 ~ 10으로 적절히 변경해둔다. Resources 폴더 아래에 Material/BlockColor에 변경하고 싶은 Material을 준비해둔다. Ctrl + Shift + N으로 빈 오브젝트를 만든 후 아래의 BlockCreator.cs를 추가한다. Resources.LoadAll로 Resources 폴더 아래의 "Material/BlockColor"에 있는 Material을 모두 가져왔다. using System.. 2022. 6. 26.
유니티 디버깅 - Error Pause를 활성화하여 에러 발생 시 게임 멈추기 Unity 전체 링크 스크립트로 게임을 멈추는 방법은 아래와 같다. - Time.timeScale을 변경하여 Time.deltaTime을 0으로 만들기 - EditorApplication.isPaused를 true로 변경하여 실제 게임을 멈추기 그러나 EditorApplication.isPaused를 true로 변경할 필요 없이 에러 로그를 남기면 강제로 게임을 멈추는 기능을 유니티 엔진이 제공한다. 큐브에 PauseTest.cs를 추가한다. PauseTest에 OnMouseDown을 아래와 같이 추가해보자. using System.Collections; using System.Collections.Generic; using UnityEngine; public class PauseTest : MonoBe.. 2022. 6. 26.
유니티 - JsonUtility로 Json 내보내기 : (4) Export Unity 전체 링크 JsonUtility로 Json 파싱하기 (1) Json Parsing (2) Json Array Parsing (배열 파싱) (3) Array of Objects in Json Array Parsing (배열 안에 있는 오브젝트 배열 파싱) (4) Json Export (파일 출력, 내보내기) 이제 class를 json으로 export 해보자. foreach에서 id를 각각 1씩 증가시킨 후, 값이 제대로 변경되었는지 확인한다. File 출력(WriteAllText)를 사용해가 위해 System.IO를 선언한다. using System.IO; ... void Start() { TextAsset textAsset = Resources.Load("Json/LottoWinningNumb.. 2022. 6. 25.
유니티 - JsonUtility로 Json 파싱하기 : (3) 오브젝트 배열 파싱 Unity 전체 링크 JsonUtility로 Json 파싱하기 (1) Json Parsing (2) Json Array Parsing (배열 파싱) (3) Array of Objects in Json Array Parsing (배열 안에 있는 오브젝트 배열 파싱) (4) Json Export (파일 출력, 내보내기) 이전 글에서 사용한 json 배열 중 오브젝트 1개는 아래와 같다. { "id": "0", "date": " 0-00-00", "number": [0,0,0,0,0,0], "bonus": 0 } 이 오브젝트에 다시 오브젝트 배열이 있는 경우를 생각해보자. test 내부에 { int, string, int[] } 오브젝트가 배열로 있다. { "id": "0", "date": " 0-00-00".. 2022. 6. 25.
반응형