본문 바로가기
반응형

개발779

개발용어)Recap (repeat the main points of an explanation or description) Recap (repeat the main points of an explanation or description ) 비즈니스 용어로 '핵심이 되는 설명이나 묘사를 반복하다'라는 표현의 약어이다. recapitulation의 줄임말으로 표현하기도 한다. 주로 회의나 중요한 결정, 토론 이후에 간략하게 정리하는데 주로 사용된다고 한다. 이전에 언급된 내용이나 중요한 포인트를 정리해서 전반적인 이해도를 높이고 공유하는데 도움이 된다고 한다. 공유하는 내용은 주로 프로젝트 진행 상황, 회의 결과, 핵심 메시지 혹은 목적 아젠다 등이 포함된다. 상황 내용 회의 후에 이메일로 보고서 요약 보내기 "Dear Team, thank you for the productive mee.. 2023. 12. 27.
문제해결) 소스트리 실행 안되는 경우(SpellChecker Error) 소스트리 실행 안되는 경우(SpellChecker Error) 최초 실행과정에서 해당 SpellChecker Error가 나오면서 해당 경로의 디렉토리가 유효하지 않다고 한다. 여기서 "예"를 눌러주고 진행한다. 소스트리의 Temp 폴더도 삭제한다. 다시 소스트리를 재 실행하면 정상적으로 동작하는 것을 알 수 있다. ★☆☆☆☆ 2023. 12. 26.
Unity) 동일한 프로젝트를 참조하는 여러 Unity 인스턴스 실행 (심볼릭 링크로 동일한 프로젝트 다중 실행) 동일한 프로젝트를 참조하는 여러 Unity 인스턴스 실행 (심볼릭 링크로 동일한 프로젝트 다중 실행) 유니티의 프로젝트 구조와 심볼릭 링크를 활용해서 동일한 프로젝트를 참조하는 여러 Unity 인스턴스를 실행이 가능하다. 심볼릭 링크를 만들면 다음과 같이 '바로가기' 형태로 복사가되는데 ※ 다중 편집을 하면 문제가되기 때문에 문제가 발생할 수 있다는 점을 유의해서 사용하자. 새로운 이름의 폴더를 하나 만들고 심볼릭 링크로 Unity 프로젝트에 필요한 파일들을 복사한다. 필요한 폴더는 다음과 같다. 이름 설명 Assets 프로젝트의 Reousrce Packages Unity Project 에 포함된 Package ProjectSetting Unity Project 를 구성하는 설정 cd mklink /D .. 2023. 12. 26.
C#) Call Stack (StackTrace) Call Stack (StackTrace) 현재 실행 중인 메서드의 호출 스택의 스택 트레이스를 만드는 방법을 간단하게 포스팅한다. public class Utill { private static string TAG = "[ProjectFinder]"; public static void ShowLog(string _log) { #if PROJECT_FINDER #if SHOW_LOG_CALL_STACK var stackTrace = new System.Diagnostics.StackTrace(true); var previusCallStack = stackTrace.GetFrame(1); if(previusCallStack != null) Debug.Log($"{TAG}-[{previu.. 2023. 12. 26.
Unity) UIObject Drag And Drop (UI오브젝트 드래그 앤 드랍) UIObject Drag And Drop (UI오브젝트 드래그 앤 드랍) 간단하게 UI Object를 Drag & Drop 하는 코드를 포스팅한다. using UnityEngine.EventSystems; public class Item : MonoBehaviour, IPointerDownHandler, IPointerUpHandler, IDragHandler, IDropHandler { private bool isDragging = false; private Vector2 originalPointerPosition; private Vector3 originalLocalPosition; private Vector2 currentDragDelta; private RectTransform canvasRect.. 2023. 12. 20.
C#)CallerFilePath : 호출자 정보 확인 CallerFilePath : 호출자 정보 확인 CallerFilePath은 C# 5.0이상에서 사용하는 Attribute로 현재 멤버, 혹은 메소드가 포함된 경로를 제공한다. 주로 사용하는 경우는 로깅이나 디버깅같은 자신의 위치(경로)를 파악할때 사용한다. 로그 파일 확인하는 예제 using System; using System.Runtime.CompilerServices; class Logger { public static void LogFilePath([CallerFilePath] string filePath = "") { Console.WriteLine("File Path: " + filePath); } public static void Main() { LogFilePath(); } .. 2023. 12. 18.
개발용어)M/M(Man-Month) M/M(Man-Month) 한명의 인원이 한달 동안 일할때 생기는 작업량/ 비용을 측정 하거나 표현하는데 사용하는 용어로 인력과 시간에 대한 관계와 밀접한 관계가 있다. Man-Month는 프로젝트의 일정을 계획하고 작업의 규모를 나타내거나 이해하는데 도움을 주며, 작업자(개발자)의 인력이 얼마나 투입이 필요한지가 수치로 표현되어서 작업의 예측을 쉽게 할 수 있다. 예시 설명 개발기간 예측 다른 비슷한 제품의 MM을 고려해서 예측 인력 투입 3명의 작업자가 5달 동안 작업해야함. 더 많은 인력을 투입으로 개발기간을 축소 회고 작업 이후의 회고 과정에서 인력 및 비용을 나타낼때 사용 설명 프로젝트 복잡성 개발 작업의 양을 나타내지만 프로젝트/업무의 복잡성.. 2023. 12. 15.
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 비율로 처리하기 RectTransform 비율로 처리하기 Unity RectTransform을 비율로 처리하는 방법에 대해서 간략하게 포스팅한다. 흰색 배경의 오브젝트에 0.45%의 빨간색 영역을 차지하려면 컴포넌트를 다음과 같이 처리하면 된다. 결론적으로는RectTransform 의 Size Delta/ Anchors / Pivot 의 설정으로 다음과 같이 처리가 된 것이다. Anchors Max : 0 ~ 1 사이의 값이고 여기의 0.45 < 이 값이 전체를 기준으로 비율(45%)를 나타내고 이때 중요한 Size Delta 값은 0,0,0,0 이여야 한다. Pivot 값은 어디를 기준으로 중심점을 처리할 것이야 하는 수치 값이다. Unity discussions. Position UI ele.. 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.
반응형