본문 바로가기

Apple16

[iOS] RealityKit, ARKit - MotionCapture 예제 ARViewContainer SwiftUI는 기본적으로 UIKit 또는 AppKit 컴포넌트를 직접 지원하지 않는다. 즉, ARView와 같은 UIKit 컴포넌트를 SwiftUI에서 바로 사용할 수 없다. 따라서, UIKit의 ARView를 SwiftUI 뷰에서 사용하고자 할 때는 UIViewRepresentable 프로토콜을 채택하여 UIKit 뷰를 SwiftUI 뷰로 변환해야 한다. ARView, Entity란? struct ARViewContainer: UIViewRepresentable { typealias UIViewType = ARView //이 메서드는 SwiftUI 뷰가 생성될 때 호출. //여기서 실제 ARView 인스턴스를 생성하고 초기 설정을 수행. func makeUIView(con.. 2024. 2. 14.
[iOS] SIMD3 현재 보고 있는 AR, 그래픽스 관련하여 3D모델의 위치를 추적하고 저장하는 과정에서 많이 보이는 타입이다. SIMD3는 단일 명령 다중 데이터(Single Instruction, Multiple Data, SIMD) 프로그래밍 모델을 따르는 벡터 타입으로, 세 개의 스칼라 값을 갖는 벡터를 표현한다. struct SIMD3 where Scalar : SIMDScalar SIMD3는 제네릭 구조체로, Scalar 타입의 세 개의 요소를 갖는다. 이때, Scalar는 SIMDScalar 프로토콜을 준수해야 하며, 이는 주로 기본 수치 타입(int, float 등)을 의미한다. 연산자와 메서드 SIMD3 구조체는 연산자를 통해 벡터 간 연산을 지원한다. 예를 들어, &* 연산자는 두 벡터의 요소별 곱셈을 수.. 2024. 2. 6.
RealityKit - ARView, Entity RealityKit is… ARKit 위에 구축된, 증강 현실을 위한 고수준 프레임워크. 자체적인 ARView를 사용하여 AR 콘텐츠를 표시하며, 이 ARView는 내부적으로 ARSession을 사용하여 ARKit과 통신한다. ARView RealityKit에서 AR 경험을 제공하기 위해 사용되는 뷰이다. 뷰는 단일 Scene 인스턴스를 가지며, Scene 인스턴스에는 실제 세계의 어떤 것에 콘텐츠를 고정시키는 AnchorEntity 인스턴스를 추가할 수 있다. 각 AnchorEntity에는 Scene의 컨텐츠를 구성하는 Entity, Entity 계층이 추가될 수 있다. Entity RealityKit에서는 Scene 내의 모든 요소가 Entity라는 단 하나의 클래스에서 파생된다. Entity는 여러.. 2024. 2. 3.
[iOS] ARKit(1) - OverView, Setting 요즘 그래픽스 관련 서적을 참고하고 Metal 관련 코드를 공부하고 있다. 그러다가 집중력이 흐려질땐 내부적으로 Metal 기능을 사용하고 있는 ARKit, RealityKit과 같은 프레임워크를 경험하면서 Top - Down 방식으로 접근해보는 것도 도움이 될 것이라 판단했다. ARKit ARKit 프레임워크의 주요 목적은 증강 현실(AR) 경험을 개발하는 것이며 제공하는 기능은 다음의 4가지다. motion trackingworld tracking환경의 표면, 크기, 형태를 파악디스플레이 편의성ARKit의 차별화된 기능: 마커리스 추적ARKit의 특징 중 하나는 markerless tracking 이다. 추적 카드(마커)도 필요 없이 주변 환경을 파악하고, 가상 콘텐츠를 실제 환경에 자연스럽게 어우러.. 2024. 1. 21.
[SwiftUI] View scene window이란? UIKit에서도 본 거 같은데? 자바로 코테를 준비하다가 Swift로 전향한지 이제 한달...? 처음으로 Swift로 도전하는 네이버 파이낸셜 연계형 인턴 코테보고 왔습니다. 완전 말렸어요 ㅠㅠ. 알고리즘 공부는 잠시 쉬고 다시 SwiftUI 달립니다. UIKit과 SwiftUI를 완전 다른 기술이라고 취급하고 싶지 않고 그동안 UIKit과 함께하면서 생긴 자잘한 노하우들을 활용할 생각이기에 두 개념의 매핑되는 것과 차이점 장단점들을 비교해가면서 포스팅할 생각입니다. 또한 이 방법이 UIKit에 대한 이해도를 스스로 테스트 해볼 수 있을 것이라 생각합니다. 사이드 프로젝트 Bidit 개발중 시뮬레이터를 돌려보다가 실수로 기기를 macOS로 설정하고 돌린 적이 있습니다. 안 되겠지? 하고 기다려봤는데 모바일 형태가 아닌 작은 창 형태로 .. 2022. 12. 18.
[iOS] SNS 로그인과 문자인증 사용시 심사 리젝이 되는 경우 지난 포스트에서 언급하였듯이 해외에서는 문자인증을 받을 수 없기때문에 테스트 계정을 제공해야하죠. 제 계정을 제공하였고 네덜란드에서 심사를 하기위해 로그인이 시도된 것을 바로 확인하고 수락하였기 때문에 다른 사유로 리젝을 당했었습니다. 그런데 이번엔 갑자기 로그인으로 문제를 삼았고 당시 데모데이에서 스태프 역할을 맡고 있었는데 또 뭐가 문제지 하고 집중이 되지 않았었네요. 알고보니 이번엔 네덜란드가 아닌 UK에서 시도하였네요. 해외 로그인 제한이 걸려있었기 때문에 또 다시 수락을 해야하는데 제가 확인하지 못하였습니다. 해외 로그인 제한을 풀 수 있는 방법이 있었네요. 얼른 다시 제출해야겠습니다. 2022. 11. 20.
[iOS] 앱스토어 리젝 사유 - 에이젠 외주 프로젝트가 드디어 끝이 보입니다. 09시~18시까지 진행되는 수업과 외주를 병행하면서 얻어가는 것도 많지만 포기한 것도 그만큼 많았던 것 같네요. 중간엔 제 실력에 맞지 않는 주제넘는 도전이었나 고민도 했었습니다. 끝이 안 보이던 외주 프로젝트가 어느새 AppStore 심사 관문에 들어서니 뿌듯합니다ㅎㅎ. 물론 아직 버그와 디자인관련 QC에서 해결되지 않은 부분이 있기때문에 하자보수 기간동안 계속 진행해야겠지만요. 본론으로 돌아가서 제목에 나와있듯이 프로젝트의 심사는 이미 제출하였고 리젝을 당하였습니다. 지난 번 Bidit심사 당시에는 첫 심사 리젝이 제 기분을 우울하게 만들었는데 이제 아무렇지 않네요. 사유는 아래와 같습니다. Guideline 1.5 - Safety - Developer Info.. 2022. 11. 12.
728x90