[1] MTLSamplerState texture가 어떻게 샘플링되어야하는 지를 정의하는 객체이다. (여기 예제에서는 texture를 input image라고 생각하면 됨) MTLDevice의 아래 함수를 통해 만들 수 있다. func makeSamplerState(descriptor: MTLSamplerDescriptor) -> MTLSamplerState? (메탈에서는 pipleline, sampler에 해당하는 클래스 이름에 State를 붙여서 MTLPipelineState, MTLSamplerState 라고 한다. 왜지..?) 아래에서는 descriptor를 알아보자-!! [2] MTLSamplerDescriptor descriptor를 만들고 descriptor의 프로터피들을 세팅한다. 그 de..
Using a Render Pipeline to Render Primitives 정리-!! (예제가 objective-c라서 swift로 해두신 이 블로그 정말 정말 많이 참고 했어요 감사합니다...!! ) 이전 포스팅에서 이어집니다. 저기 주석을 지우고 삼각형을 그리라는 명령을 이어서 해줄 것입니다. 우리의 목표는 이렇게 생긴 삼각형을 그려주는 것--!! 샘플은 삼각형 세 꼭지점(vertext)에 대한 position과 color를 제공합니다. render pipeline이 그 데이터를 사용해서 triangle을 렌더링할 것 입니다. [1] Metal Render Pipeline render pipeline은 많은 단계가 있습니다. 샘플은 세 단계에 초점을 맞춥니다. 1. vertex stage 2. ..
여기서 봤는데, 너무 간결한데 쏙쏙 이해가 잘되게 쓰셨다..!! 감동.. 🥺 Creating a device A Metal device (MTLDevice) is the interface to the GPU. It supports methods for creating objects such as function libraries and textures. Creating a library The library (MTLLibrary) is a repository of kernel functions (in our case, compute shaders) that are typically compiled into your application by Xcode. Creating a Command Queue The..
Using Metal to Draw a View’s Contents 정리 메탈로 graphics content를 렌더링 하는 법을 배울 것-!! 1. MTKView 준비 & 세팅 2. MTKViewDelegate 설정 3. MTLCommandQueue 준비 4. Render Pass Descriptor & Render Pass 만들기 5. Drawable을 screen에 present하기 6. Command Buffer를 commit 하기 [1] MTKView 준비 & 세팅 MetalKit 은 메탈 앱을 적은 코드로 더 빠르고 쉽게 만들 수 있게 해주는 프레임 워크이다. 우선 MetalKit을 import 해준다. import MetalKit draw를 위해 MTKView를 준비한다. MTKView는 N..
Basic Tasks and Concepts 중, Performing Calculations on a GPU 정리 1. 메탈 파일 만들고 MSL로 GPU 함수 작성하기 2. MTLDevice 준비하기 3. MTLCommandQueue 준비하기 4. 메탈 함수 불러와서 pipeline으로 컨버팅하기 5. MTLBuffer 만들고 버퍼에 데이터 load해주기 6. MTLCommand Buffer 만들기 7. MTLCommand Encoder 만들기 8. Command Buffer를 commit해서 commands 실행시켜주기 [1] MSL로 GPU 함수 작성하기 두 array의 elements들을 더한 값을 result라는 array에 추가하는 코드를 살펴보자 아래 코드는 CPU에서 연산이 수행..
- Total
- Today
- Yesterday
- Flutter Spacer
- SerializerMethodField
- flutter build mode
- flutter 앱 출시
- Flutter 로딩
- Django Firebase Cloud Messaging
- cocoapod
- ribs
- flutter dynamic link
- flutter deep link
- Sketch 누끼
- Flutter Clipboard
- Python Type Hint
- Flutter getter setter
- 장고 URL querystring
- DRF APIException
- Flutter Text Gradient
- 플러터 얼럿
- Watch App for iOS App vs Watch App
- drf custom error
- METAL
- github actions
- PencilKit
- 플러터 싱글톤
- Django Heroku Scheduler
- 장고 Custom Management Command
- ipad multitasking
- Dart Factory
- 구글 Geocoding API
- Django FCM
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |