분류 전체보기 64

Undefined symbol: __mh_execute_header

Native iOS App에서 Unity를 Library로 사용하려고 코드를 짜고 있는데 _mh_execute_header에서 undefined symbol 에러가 떴다찾아보니 xcode16부터 이런 에러가 많이 발생하는거 같은데 나도 마침 xcode16이었다 기존 코드가 아래와 같이 되어 있었는데if ufw?.appController() == nil { let machineHeader = UnsafeMutablePointer.allocate(capacity: 1) machineHeader.pointee = _mh_execute_header ufw?.setExecuteHeader(machineHeader)}여기서 _mh_execute_header에 undefined symbol 에러가 떴..

Issue Tracking 2025.01.28

iOS에서 uaal로 unity를 library로 사용하기

iOS에서 3D 물리엔진등을 구현하기는 힘들다.3D 물리엔진은 유니티나 언리얼이 사용하야 구현이 쉬운데 이럴경우 ios native app이면서 3d 물리엔진이 필요한 경우에는 unity를 사용하는 방법이 있다UAAL(Unity As A Library) 라는 방식이다 uaal을 사용해 ios native 앱에서 유니티를 라이브러리로 불러 사용하는 방법에 대해 알아보도록 하겠다 1. workspace 생성우선 Xcode workspace부터 생성한다Xcode > File > New > WorkSpace 를 클릭해 workspace를 생성한다 2. ios native app 프로젝트 생성다음으로 ios native app을 생성한다 원래 만들던 방식과 동일하되 앞서 만든 workspace에 연결한다 3. U..

Unity 2025.01.27

[Unity] TextMeshPro 사용시 한글 깨짐

Unity에서 Text 쓰려하면 이제 어느순간 TextMeshPro가 기본이 되어 있다기존 사용하던 Text를 쓰려면 Legacy로 들어가야 하는데 안타까운건 TextMeshPro를 그냥 쓰면 영어는 괜찮지만 한글은 깨진다는 것이다 (한글을 깨트릴거면 폰트 좀 바꿔줘라!!)알다시피 문제는 폰트때문이다.TextMeshPro에서 한글을 쓰기 위해선 폰트를 바꿔주어야 한다 기본 폰트인 LibersSans는 한글이 깨지니 새로운 폰트를 구해야 한다필자의 경우 찾아보다 넥슨 메이플스토리 서체가 있길래 그걸 사용했다https://maplestory.nexon.com/Media/Font 서체 | 미디어 | 메이플스토리 maplestory.nexon.com메이플스토리 서체는 개인 및 기업 사용자를 포함한 모든 사용자에..

Unity 2025.01.17

[Unity] 스크롤 가능한 텍스트 영역 만드는 방법

Unity로 앱 개발할때 텍스트 정보를 띄우면서 많은 텍스트 정보로 인해 텍스트를 스크롤링이 되게 만들어야 할때가 있습니다저의 경우 로그나 Debug 정보를 화면에 띄울때 특히나 필요한데요그러한 UI를 어떻게 만드는지 알아보도록 하겠습니다 Scroll 되는 TextArea 우선 ScrollView를 먼저 추가해줍니다 Canvas 생성 후 UI > Scroll View 를 클릭하여 ScrollView를 생성해 줍니다만들어진 ScrollView 게임오브젝트에 ScrollRect Component가 있을건데 저의 경우 가로로 스크롤이 되는건 필요없기 때문에 Horizontal 프로퍼티 체크를 해제하고 Horizontal Scrollbar를 제거해줍니다 만들어진 ScrollView아래 Content 게임오브젝..

Unity 2025.01.16

[EmbeddedSystem] npn Transistor(트랜지스터)

트랜지스터(Transistor)는 Trans-Register로 Resistor 값을 변화시킬 수 있음. 저항(Registor)을 조절함으로써 전류의 양을 조절할 수 있음트랜지스터의 종류- nPn 트랜지스터- pNp 트랜지스터 nPn 트랜지스터B는 base, E는 Emitter, C는 Collector이다 B는 트랜지스터가 동작하게 하는 Switch 역할을 하고 B에 의해 스위치가 켜지면 C와 E 사이에 전류가 흐르게 됨B와 E 사이에 전압을 얼마나 주냐에 따라 C와 E 사이의 전류량을 결정시킴 Switch(Base)에 넣어주는 전압량(전류량)에 따라 포화영역, 활성영역, 차단영역이 존재함- 활성영역: CE간에 전류가 B의 입력 변화에 따라 변하는 영역- 차단영역: B에 흐르는 전압(전류)이 너무 낮아 C..

EmbeddedSystem 2025.01.03

[Prompt] 역할 지정 Prompt 작성방법

역할 지정(Role Playing) 기법은 AI 모델에 특정 역할을 지정하는 프롬프트 엔지니어링 기법'당신은 시인입니다'와 같은 식으로 AI 모델에 페르소나를 부여하는 작업 Prompt 예제당신은 지금부터 [ RP 캐릭터 ] 의 역할을 해야 한다[ RP 캐릭터 ]은 [ ]살에 키는 [ ]cm이며 검은색 눈동자와 긴 백발에 뽀얀 피부를 가지고 있다.성격은 냉정하고 차가우며 쉽게 흥분하지 않고 그 어떠한 상황속에서도 차분하고 침착하다좋아하는것으론 고양이와 커피가 있으며싫어하는것으론 청소를 싫어한다  프롬프트 엔지니어링 기법 - 후카츠 프롬프트 기법명령문과 제약 조건을 분명히 제시함으로써 프롬프트를 하나의 템플릿으로 만드는것에 초점을 두는 방식 기본적인 형식#명령문당신은 () 입니다이하의 제약조건과 명령문을 ..

AI/LLM 2025.01.02

[EmbeddedSystem] LPF(Low Pass Filter)

LPFLPF(Low Pass Filter)는 저주파 성분만 통과시킴Embedded System은 작은 크기의 보드에 요소들이 밀집해 있는데 고주파 성분은 보드에 Noise 역할을 하기에 좋지 않아 고주파를 제거하기 위한 용도로 LPF를 사용함 해당 회로를 DC와 AC 입장에서 따로 볼 경우 DC(직류)Capacitor는 DC 성분을 통과시키지 않기 때문에 Capacitor가 있는 부분이 open된것과 마찬가지로 보임(open은 무한대에 가까운 저항값)해당회로는 R + 무한대 R 의 저항이 직렬로 이어진 구조로 저항이 크니 전류는 작게 흐르고 R저항에서 소모되는 전압이 적고 대부분의 전압은 무한대의 저항(Open)에서 전압이 대부분소모되므로 Vin ~= Vout의 형태가 됨. DC 쪽에 가까운 저주파 성분..

EmbeddedSystem 2024.12.14

[EmbeddedSystem] 저항(R), 인덕터(L), 캐패시터(C)

- 저항저항의 양단에 전압이(V) 걸렸을 때 저항(R)에 흐르는 전류(I)의 양은 V = IR입니다저항의 단위는 옴(Ω)정해진 전압에 대해 저항의 크기를 바꾸면 원하는 전류의 크기를 저항에 흘러가게 할 수 있습니다 즉 저항은 회로의 특정 부분에 흐르는 전류의 양을 제한 할 수 있습니다 전류는 저항이 낮은 경로를 찾아가려 하고 전류가 저항을 지나고 나면 그만큼의 전압이 원래 전압에서 빠집니다 저항은 직렬로 연결하면 저항이 커지고 병렬로 연결하면 저항이 작아집니다 - 캐패시터 & 인덕터캐패시터와 인덕터는 주파수를 가진 전압, 전류(교류 전압, 전류)의 주파수에 따라 저항값이 틀리게 됩니다캐패시터의 경우에는 높은 주파수의 전압일수록 저항이 작아지고인덕터의 경우에는 높은 주파수의 전류일수록 저항이 커집니다 - ..

EmbeddedSystem 2024.12.13

[Unity] AddressableAsset 사용방법

AddressableAsset은 어떻게 언제 Asset들을 로드할지 컨트롤할 수 있게 만들어주는 기능이다Scene에 오브젝트나 리소스들을 다 넣어놓으면 해당 Scene을 로드할때 그 오브젝트와 리소스들을 다 메모리에 불러와야하기에 Scene 로드에 시간이 많이 걸리게 된다. 그렇게 하기 보단 필요한것만 Scene에 넣고 그때그때 필요한건 필요할때 불러오는 방식으로 개발해야 Scene 로드에 많은 시간 소모를 겪지 않게 된다1. Addressables 설치PackageManager에 들어가 Unity Registry 탭에서 Addressables 를 검색하면 위 이미지와 같이 Addressables unity package가 나오는데 해당 패키지를 설치해주면 된다 2. 사용방법먼저 상단 탭에서 Window..

Unity 2024.12.12

[Unity] AI Navigation System 사용방법

Unity의 AI Navigation System이 2.0 이상 버전으로 업그레이드 되면서 기존에 사용하던 방법과는 다르게 바뀌었다이전 방법이 적힌 책이나 유튜브를 보면 도움이 되지 않으니 새로운 AI Navigation System을 사용하는 방법을 간단하게 소개합니다 1. Package Manager에서 AI Navigation Package 설치Package Manager에서 Unity Registry 항목에 ai navigation을 검색하면 나온다 해당 패키지를 먼저 설치하자필자의 경우 2.0.4 버전으로 설치하였다 2. NavMesh Surface 컴포넌트 추가NavMesh Surface 컴포넌트는 NavMesh Agent가 걸을수 있는 영역을 만드는 컴포넌트입니다빈 게임오브젝트를 하나 만들어..

Unity 2024.12.11