[Swift] Swift 동시성 사용하기
·
Apple/Swift
안녕하세요! 오웬입니다 🎵 최근에 개발을 하면서 동시성에 관련한 오류나 경고를 많이 보고 있는데 정작 이런 동시성에 관한 문제가 왜 생기는 건지 제대로 이해를 못 하고 있는 것 같고 AI에 너무 의존하고 있는 것 같아서 제대로 공부를 해보려고 합니다. 해당 내용에 대해서 나도 제대로 공부해보고 싶다 하시는 분들은 아래 링크 참고하면 좋을 것 같습니다!https://developer.apple.com/kr/videos/play/wwdc2025/268/ Swift 동시성 사용하기 - WWDC25 - 비디오 - Apple DeveloperSwift의 주요 동시성 개념을 알아보세요. 동시성은 앱 반응성과 성능을 향상하는 데 도움이 되고 Swift는 비동기성 및 동시성 코드를 올바르게 작성하기 쉽도록 설계되었습..
[Swift] 3D 스캔 앱을 로컬 서버와 연결하기
·
Apple/Swift
안녕하세요! 피피아노입니다 🎵 iOS 16부터 제공되는 Object Capture API를 사용하면 iPad의 LiDAR 센서로 실제 물체를 3D 모델로 변환할 수 있습니다. 하지만 생성된 모델을 어떻게 활용할 것인가에 대한 고민이 생겼습니다. 처음에는 아이폰과 아이패드 내부에만 저장하고 있었는데, 이렇게 되면 여러 기기에서 모델을 공유하기 어렵고, 서버에서 추가 처리를 할 수 없으며, 데이터 분석이나 백업이 불편했습니다. 물론 학습 목적으로 만든 앱이기 때문에 해당 부분이 없다고 해서 치명적인 문제가 발생하는 것은 아니지만, 실제로 서비스를 한다면 이러한 부분도 빼놓을 수 없을 정도로 중요한 부분이기 때문에 스캔 후 사용자가 원하면 바로 서버로 업로드하는 기능을 추가하기로 하였습니다. 우선 사용한 ..
[iOS] Object Capture 사용하기
·
Apple/iOS
안녕하세요! 피피아노입니다 🎵 WWDC23에서 공개된 iOS용 Object Capture를 이용해서 기존에 Mac에서만 사용할 수 있었던 Object Capture API를 이제 iOS에서도 경험할 수 있게 되었습니다. Object Capture 주요 개선 사항iOS용 Object Cature API를 살펴보기 전에 새롭게 추가되거나 개선된 부분을 살펴보면, iPhone이나 iPad에 있는 LiDAR 센서를 통해 더 많은 물체를 지원한다는 점입니다. 기존에는 충분한 텍스처 디테일이 있는 물체에 최적화되어 있었지만, LiDAR Scanner를 이용하여 의자나 가구처럼 텍스처 디테일이 부족한 물체의 재구성 품질을 향상시켰다고 합니다. 작동 원리는 RGB 이미지 외에 LiDAR는 물체의 3D 모양에 대한 포..
[Metal] Apple의 Metal 입문하기
·
Apple/Metal
안녕하세요! 피피아노입니다 🎵 iOS 개발을 하시는 분들 중에 그래픽이나 게임 관련을 작업하시는 분들이라면 한번 쯤은 들어보셨을 Metal에 대해서 포스팅을 작성해보려고 합니다. Metal은 2014년에 애플이 공개한 API로 그래픽 성능을 최대한 끌어올리기 위해 만든 API입니다. 물론 그 전에는 그래픽 성능을 끌어올리기 위한 방법이 없었던 건 아니고 OpenGL(Open Graphics Library)이라는 게 있었는데 2018년도부터 OpenGL이 deprecate가 되어서 더 이상 쓰이지 않게 되었습니다. OpenGL ES는 여러 플랫폼에서 동작하는 범용성을 추구합니다. 하지만 Metal은 애플 생태계에 특화되어 설계되었습니다.(애플이 만들었으니 당연한 말 같기도..) Metal의 핵심 구성 요..
[Metal] Metal API 알아보기
·
Apple/Metal
안녕하세요! 피피아노입니다 🎵이번 포스팅에서는 애플의 그래픽 API인 Metal에 대해서 포스팅을 해보려고 합니다. Metal이란?Metal은 Apple이 2014년에 발표한 저수준(low-level) 그래픽스 및 컴퓨팅 API입니다. iOS, macOS, tvOS 기기에서 GPU의 성능을 최대한 활용할 수 있도록 설계되었으며, OpenGL과 OpenCL을 대체하는 Apple의 통합 솔루션입니다. Metal의 핵심 목표는 CPU 오버헤드를 최소화하고 GPU와의 직접적인 통신을 가능하게 하여, 개발자들이 Apple 하드웨어의 잠재력을 완전히 끌어낼 수 있도록 하는 것입니다.주요 특징과 장점Metal API가 제공하는 핵심적인 이점들을 살펴보면, 먼저 극도로 낮은 오버헤드를 들 수 있습니다. 드로우 콜(d..
[SwiftUI] NavigationLink VS NavigationStack
·
Apple/SwiftUI
안녕하세요! 피피아노입니다 🎵 SwiftUI로 앱을 개발하다 보면 화면 전환(Navigation)을 구현해야 하는 순간이 반드시 있습니다. 이때 가장 많이 접하게 되는 2가지 개념이 NavigationLink와 NavigationStack입니다. 둘 다 화면 전환을 할 때 쓰이는 것까지는 알겠는데, 정확히 뭐가 어떻게 다르고 언제 뭘 써야 하는지 헷갈리기도 하고 이번 기회에 확실하게 알고 넘어가기 위해서 글을 정리하게 됐습니다. NavigationLink: 화면 전환 트리거NavigationLink는 네비게이션 프레젠테이션을 제어하는 뷰입니다. 쉽게 말해서 그냥 사용자가 탭하면 다음화면으로 이동하게 하는 버튼입니다. 애플 공식 문서에 적혀있는 내용을 보면 아래처럼 나와 있습니다."People clic..