반응형 개발878 Unity)영상으로 녹화 하기(Editor:Recoder) 영상으로 녹화 하기(Editor:Recoder) Unity Recoder 패키지를 사용해서 '재생모드'중에 데이터를 캡처하고 저장이 가능한 패키지로 Editor에서만 사용이 가능하다. Unity 화면에서 영상을 녹화할때 사용하면 쓸만하다. 동영상, 애니메이션 클립, GIF, 오디오 녹음의 다양한 형태로 저장이 가능하다. 레코드 창을 사용하면 현재 장면의 다양한 유형의 데이터를 캡처하고 여러가지 녹화 설정( 프레임, 시간 간격,포맷, 애니메이션 클립 등등)으로 녹화가 가능하다. 옵션 설명 Frame Rate 녹화 프레임 (Target FPS, Max FPS, Cap FPS) Recording Mode 녹화 모드 Outpu.. 2023. 12. 15. Unity 코드) GameObject 전체 경로 찾기(부모 오브젝트 포함) (GameObject : Path) GameObject 전체 경로 찾기(부모 오브젝트 포함) (GameObject : Path) 간단하게 특정 오브젝트(GameObject)를 기준으로 부모오브젝트를 찾는 코드이다. public string GetGameObjectPath(GameObject obj) { string path = null; if (obj) //오브젝트가 존재하면 { path = obj.name; while (obj.transform.parent) //부모가 존재하면 { obj = obj.transform.parent.gameObject; path = obj.name + '/' + path; //경로 추가 } } return path; //경로 반환 } Unity 의 GameObject의 구조는 Root 를 기준으로 하위에 추.. 2023. 12. 13. 문제해결)Visual Studio (EditorConfig) 생성 메뉴가 없는 경우 Visual Studio (EditorConfig) 생성 메뉴가 없는 경우 추가하려고해도 EditorConfig가 없는 경우가 있다. 그런 경우에 editorconfig 파일을 생성하는 방법을 간략하게 포스팅 한다. (VisualStudio 2022, Window 환경) [도구] - [옵션] [옵션 메뉴] - [텍스트 편집기] - [C#] - [일반] 설정에서 .editorconfig 파일생성 '버튼' 클릭 클릭하게되면 해당 파일을 저장할수있는 메뉴가 나온다. 이름 그대로 저장을 한다. 해당 파일이 정상적으로 생성된 것을 확인 할 수 있다. Visual Sutdio 옵션 대화 상자의 코드 스타일 : [링크] 코드 스타일 옵션 및 코드 정리 - Vi.. 2023. 12. 13. Unity) RectTransform 비율(%)로 Layout 처리하기 RectTransform 비율(%)로 Layout 처리하기 Unity RectTransform을 비율로 처리하는 방법에 대해서 간략하게 포스팅한다. 테스트 케이스 1 - Hierarchy > 흰색 배경의 오브젝트에 0.45%의 빨간색 영역을 차지하려면 컴포넌트를 다음과 같이 처리하면 된다. 결론적으로는RectTransform 의 Size Delta/ Anchors / Pivot 의 설정으로 다음과 같이 처리가 된 것이다. Anchors Max : 0 ~ 1 사이의 값이고 여기의 0.45 이때 중요한 Size Delta 값은 0,0,0,0 이여야 한다.Pivot 값은 어디를 기준으로 중심점을 처리할 것이야 하는 수치 값이다. Hierarchy > 테스트 케이스 2 - Component > 왼.. 2023. 12. 12. Unity) 에디터 디자인 가이드(Unity Editor Design Guide) 에디터 디자인 가이드(Unity Editor Design Guide) Unity Editor의 디자인 사이트이다. Unity Editor©에 대한 직관적이고 매력적인 경험을 구축하기 위한 공식 지침사이트로 유니티를 구성하는데에 있어서 레이아웃에 대한 정보와 구성에 대한 가이드가 잘 나와있다. 사이트 : [링크] Unity | Editor Foundations Design System Guidance for building intuitive and engaging experiences for the Unity Editor. www.foundations.unity.com Unity 공식 디자인 가이드 사이트로 컬러부터 에디터, 컴포넌트 등 다양한 형태의 가이드를 제시하고 있다. 간단하게 살펴보면 다음과 같다.. 2023. 12. 11. 개발지식) 언어 품질 보증 (LQA : Linguistic Quality Assurance) 언어 품질 보증 (LQA : Linguistic Quality Assurance) LQA라는건 언어에 대한 품질 보증을 말한다. 언어 번역은 로컬라이징에서 가장 기본이 되는 항목이다. 언어 번역은 콘텐트 생성, 번역, 소프트웨어 개발과 같은 맥락에서 아주 중요한 역할을 한다. 문화적 차이나 메시지에 따라 받아들이는 의미가 다르기 때문에 유저의 커뮤니케이션 요소가 강화된 오늘날에서는 중요하다. 잘못된 번역 숫자 형식 / 통화 / 달력/ 날짜 국가별 측정 단위 기준 ( 길이 단위 - 킬로미터 / 피트, 무게 - 킬로그램/ 파운드 등) 국가 표기 오류(우편번호, 주소 ,이름 ,전화번호 등) 일관성 없는 번역 문자 깨짐 글꼴 / 문장 길이 디바이스 UI/ UX 문화적 이슈(금기, 각 문화권 별로 다.. 2023. 12. 7. 개발관련) 3D Character 이동 거리(보폭) 3D Character 이동 거리(보폭) 3D 캐릭터를 기반으로 보폭에 대한 거리를 계산하는 작업을 수행하는 경우 캐릭터의 애니메이션과 움직임을 고려해서 작업을 해야 어색하지 않다. 순서 설명 애니메이션 분석 캐릭터의 걷거나 뛰는 애니메이션을 프레임으로 분류한다. 한 단계로 캐릭터가 이동하는 거리를 측정 보폭 계산 한 걸음으로 이동한 거리를 얻은 후에는 이를 사용하여 보폭을 계산한다.(보폭은 한 발을 딛고 다시 같은 발을 딛는 지점까지의 거리) 배율 인수 게임에 다양한 크기의 캐릭터가 포함된 경우 배율 인수가 필요할 수 있다. (캐릭터의 크기에 따라 보폭을 조정하여 현실적인 움직임 비율을 보장) 가변 속도 캐릭터가 다양한 속도로 움직일 수 있는지 고려가 필요하다. 현실감 vs.. 2023. 12. 7. Unity) 컷아웃 마스크(Cutout Mask / Reverse Mask) 컷아웃 마스크(Cutout Mask / Reverse Mask) Unity 에서 특정한 곳만 보이도록 처리하기 위해서 찾다가 발견한 코드로 간단하게 포스팅한다. Mask의 기능을 활용해서 특정 영역을 기준으로 마스크 처리되는 효과이다. 원본 링크: [링크] using UnityEngine; using UnityEngine.UI; using UnityEngine.Rendering; using System.Collections; public class CutoutMaskUI : Image { protected override void Start() { base.Start(); StartCoroutine(Fix()); } private IEnumerator Fix() { y.. 2023. 12. 6. Xcode)Xcode Version / Swift Version 확인 방법 Xcode Version / Swift Version 확인 방법 Xcode의 버전과 Swift Version 을 확인하는 방법을 간단하게 포스팅한다. [Xcode]-[About Xcode] 를 선택하면 현재 Xcode 버전을 확인 가능하다. Xcode 터미널 - 명령어 입력 swift --Version [Build Settings] - 'swift' 검색 Swift Version : [링크] Swift Version A site that answers the question which versions of Swift and Xcode go together? swiftversion.net ★☆☆☆☆ 2023. 12. 4. 문제해결) 소스트리 실행 불가 (SourceTree 캐시 삭제) 소스트리 실행 불가 (SourceTree 캐시 삭제) 사용을 잘 하던 소스트리가 로고화면만 뜨고 계속 실행이 안되는 현상이 발생했다. Window 환경에서 사용하고 있었는데 컴퓨터 재부팅도 해보고 프로그램도 재시작했는데 여전히 불통이었다. 로그 파일에서도 문제가 있는것 같았다. 간단하게 소스트리의 설정 파일을 초기화하는 설정 파일을 찾아보았다. Window를 기준으로 해당 경로를 들어간다. C:\Users\{사용자이름}\AppData\Local\Atlassian\SourceTree.exe~\{버전} 해당 경로의 파일을 삭제하고 다시 SourceTree를 재실행한다. Coposition.cache Assemblies.cache 해당 파일을 삭제하고 재 실행하면 다시 파일이 생성되면서 실행이.. 2023. 12. 3. Unity) 코루틴(Coroutine)대신 쓰레드(Thread)를 사용해야하는 이유 코루틴(Coroutine)대신 쓰레드(Thread)를 사용해야하는 이유 Coroutine을 사용하는 경우와 Thread를 사용하면 좋은 경우에 대해서 간략하게 포스팅한다. Unity API는 스레드로부터 안전하지 않고 제한 없이 Thread를 생성이 가능하다. Unity API는 Main Thread에서 호출되어야하기 때문에 Coroutine 이 이에 해당한다. Unity Corotine은 동시성이 존재하고 Thread는 병렬성이 존재하는 특징으로 간단하게 생각하면 Main Thread에서 호출되어야하는 일이 아닌 복잡하고 병렬로 로드가 필요한 Work를 Thread로 사용하면 좋다. Thread를 생성해서 사용하는것도 비용이 들기 때문에 신중하게 고려하고 Main Thread에 동기화되는 시점도 고려해.. 2023. 12. 1. 개인생각) return null 은 좋지 않다? return null 은 좋지 않다? 작업을 하다가 return null 으로 리터럴 타입을 지정하는 경우가 종종 있다. 본인도 어느정도 코드 규약에서 해당 경우를 사용해서 궁금증이 생겨서 좀더 찾아보게 되었다. null 리턴은 왜 나쁠까? [원문] null 리턴은 왜 나쁠까? 코드 복잡성 관리 측면에서 의미를 축약한 표현의 문제와 해결 방법을 예제로 알아봐요. velog.io 해당 글을 보게되면서 간략하게 개인 생각을 정리하는 포스팅을 한다. 단점 설명 잠재적인 null 참조 예외 호출 코드가 반환된 값을 적절하게 처리하지 않고 해당 값이 null이 아니라고 가정하는 경우 런타임에서 Null 참조 예외가 발생할 수 있습니다. 명확성 부족 null.. 2023. 11. 29. 개발지식) 휴먼 이슈(Human Issue) 휴먼 이슈(Human Issue) 개발하는 과정에서 발생하는 사람이 일으키는 이슈들중에서 커뮤니케이션 오류 / 단순 실수 / 코드 가독성이 떨어져서 잘못 짠 코드 등등 여러가지 형태로 이야기할 수 있다. 대부분은 그전에 협의한 내용을 까먹거나 인수인계가 되지 않고 진행하다가 발생한 상황에서 자주 발생한다. 개발자들은 코드의 품질 향상을 위해서 '휴먼 이슈'를 줄이기 위한 여러가지 환경(혹은 프로세스)등을 만든다. 개발자 입장에서는 Git Hooks 도 하나의 휴먼이슈 방지하기 위한 룰에 해당된다. 그 외 휴먼이슈를 방지하기 위해서 여러가지 인지가 가능한 여러가지 장치 (Web Hook , 권한 설정) 등이 존재한다. 명확한 코드 작성 가독성이 높은 코드를 작성하면 다른 개발자들이 코드를 이해하고 유지 보.. 2023. 11. 28. Tip) iOS App Name 축약 확인 방법(앱 이름/앱 타이틀 길이 확인) iOS App Name 축약 확인 방법(앱 이름/앱 타이틀 길이 확인) iOS는 App의 이름이 길어지면 ... 으로 축약되는 형식이다. 근데 정확하게 어느정도 되면 축약이되는지 설명이 없어서 찾다가 알게되어서 포스팅한다. 기본적으로 App Name은 최대 30글자라고하는데 실제 축약이되는 기준은 사이즈 마다 다르다고 한다. 'w' 글자는 'i'보다 더 많은 공간을 차지하기 때문에 App Name(Title)이 노출되는 기준이 달라진다. iOS는 고정 너비 텍스트에 의존하지 않기 때문이다. 축약이되는지 미리 확인할수 있는 방법이있다. 앱이나 웹 클립의 제목을 선택하세요. iOS 기기에서 Safari를 엽니다. 임의의 웹페이지로 이동 일반적으로 "공유" 버튼으로 알려진 상자 내부에 위쪽을 가리키는 화살표가.. 2023. 11. 27. 기본기)URL(Uniform Resource Location) Format (UriBuilder) URL(Uniform Resource Location) Format (UriBuilder) URL(Uniform Resource Location) : 웹페이지, 이미지, 동영상과 같은 정보가 위치하는 유니크한 위치 정보로 URL의 구성은 다음과 같다. 예시 URL : https://www.example.com/path/to/resource?param1=value1¶m2=value2#section1 이름 구분 프로토콜(통신규약) http:// 도메인(host) www.example.com 경로(url-path) path/to/resource 넘겨주는 인자(query) param1=value1¶m2=value2 section #section using Syst.. 2023. 11. 24. 이전 1 ··· 8 9 10 11 12 13 14 ··· 59 다음 반응형