View in English

  • 메뉴 열기 메뉴 닫기
  • Apple Developer
검색
검색 닫기
  • Apple Developer
  • 뉴스
  • 둘러보기
  • 디자인
  • 개발
  • 배포
  • 지원
  • 계정
페이지에서만 검색

빠른 링크

5 빠른 링크

비디오

메뉴 열기 메뉴 닫기
  • 컬렉션
  • 주제
  • 전체 비디오
  • 소개

더 많은 비디오

스트리밍은 대부분의 브라우저와
Developer 앱에서 사용할 수 있습니다.

  • 개요
  • 코드
  • Mac에 게임 가져오기, 2부: 셰이더 컴파일하기

    3부로 구성된 ‘Mac에 게임 가져오기' 두 번째 세션에서는 HLSL 셰이더를 Metal로 가져올 때 Metal 셰이더 컨버터로 능률을 높이는 방법을 살펴보겠습니다. DXIL로 빠르고 통합적인 셰이더 파이프라인을 빌드하는 방법도 알려 드립니다. 해당 셰이더 파이프라인은 모든 셰이더 스테이지를 지원하며, Apple GPU의 고급 기능을 활용할 수 있습니다. 그리고 오프라인 컴파일러로 GPU 바이너리를 생성해 앱 시작 시간과 끊김 현상을 줄이는 방법도 알아보세요. 이번 세션을 최대한 활용하려면 'Mac에 게임 가져오기, 1부: 게임 플랜 만들기'를 먼저 시청하시기 바랍니다. 다음 단계를 살펴볼 준비가 되었다면 'Mac에 게임 가져오기, 3부: Metal로 렌더링하기' 세션도 확인해 보세요.

    챕터

    • 0:00 - Intro
    • 0:49 - New Metal compiler tools
    • 1:54 - Convert your shaders
    • 12:27 - Finalize GPU binaries
    • 18:20 - Wrap-Up

    리소스

    • Download the game porting toolkit
    • Download the Metal shader converter (Mac and Windows)
    • Get started with Metal shader converter
    • Metal
      • HD 비디오
      • SD 비디오

    관련 비디오

    WWDC23

    • 게임을 Mac으로 가져오기, 1단계: 기본 계획 세우기
    • Mac에 게임 가져오기, 3부: Metal로 렌더링하기

    Tech Talks

    • iPhone 15 Pro에서 고사양 게임 선보이기
    • M3 및 A17 Pro의 GPU 개선 사항 알아보기

    WWDC22

    • Metal 3로 바인드리스 구현
    • Metal 3를 통한 GPU 바이너리 타겟팅 및 최적화

    WWDC21

    • Discover compilation workflows in Metal

    WWDC20

    • Build GPU binaries with Metal
  • 다운로드
    Array
    • 14:28 - Json Metal Script

      {“libraries": {
          "paths": [
         {"path": “ba.metallib”, "label": "myMetalLib"}
      
          ]
        },
        "pipelines": {
          "render_pipelines": [{
            "vertex_function": "alias:myMetalLib#v",
            "fragment_function": "alias:myMetalLib#f",
            "raster_sample_count": 2,
            "color_attachments": [{
                "pixel_format": "BGRA8Unorm"
            }],
            "depth_attachment_pixel_format":      
              "Depth32Float"
          }]
        }
      }
    • 16:30 - Testing Binary Archive hit

      // Create Pipeline Descriptor
      MTLComputePipelineDescriptor *computeDesc = [MTLComputePipelineDescriptor new];
      computeDesc.binaryArchives = @[existingBinaryArchive];
      computeDesc.computeFunction = computeFn;
      id<MTLComputePipelineState> computePS = 
                           [device newComputePipelineStateWithDescriptor:computeDesc
                                           options:MTLPipelineOptionFailonBinaryArchiveMiss
                                           error:&err];                                                                                        
      
      if(computePS == nil)
      {
          // Binary archive is missing compiled shader.
      }
    • 17:03 - Loading appropriate Binary Archive

      // Load OS-specific binary archives
      
      
      MTLComputePipelineDescriptor *computeDesc = [MTLComputePipelineDescriptor new];
      
      if (@available(macOS 14, *)) {
          computeDesc.binaryArchives = @[binaryArchive_macOS14];
      } else {
          computeDesc.binaryArchives = @[binaryArchive_macOS13_3];
      }  
      computeDesc.computeFunction = computeFn;
      id<MTLComputePipelineState> computePS = 
                           [device newComputePipelineStateWithDescriptor:computeDesc
                                           options:nil
                                           error:&err];
  • 찾고 계신 콘텐츠가 있나요? 위에 주제를 입력하고 원하는 내용을 바로 검색해 보세요.

    쿼리를 제출하는 중에 오류가 발생했습니다. 인터넷 연결을 확인하고 다시 시도해 주세요.

Developer Footer

  • 비디오
  • WWDC23
  • Mac에 게임 가져오기, 2부: 셰이더 컴파일하기
  • 메뉴 열기 메뉴 닫기
    • iOS
    • iPadOS
    • macOS
    • tvOS
    • visionOS
    • watchOS
    메뉴 열기 메뉴 닫기
    • Swift
    • SwiftUI
    • Swift Playground
    • TestFlight
    • Xcode
    • Xcode Cloud
    • SF Symbols
    메뉴 열기 메뉴 닫기
    • 손쉬운 사용
    • 액세서리
    • 앱 확장 프로그램
    • App Store
    • 오디오 및 비디오(영문)
    • 증강 현실
    • 디자인
    • 배포
    • 교육
    • 서체(영문)
    • 게임
    • 건강 및 피트니스
    • 앱 내 구입
    • 현지화
    • 지도 및 위치
    • 머신 러닝
    • 오픈 소스(영문)
    • 보안
    • Safari 및 웹(영문)
    메뉴 열기 메뉴 닫기
    • 문서(영문)
    • 튜토리얼
    • 다운로드(영문)
    • 포럼(영문)
    • 비디오
    메뉴 열기 메뉴 닫기
    • 지원 문서
    • 문의하기
    • 버그 보고
    • 시스템 상태(영문)
    메뉴 열기 메뉴 닫기
    • Apple Developer
    • App Store Connect
    • 인증서, 식별자 및 프로파일(영문)
    • 피드백 지원
    메뉴 열기 메뉴 닫기
    • Apple Developer Program
    • Apple Developer Enterprise Program
    • App Store Small Business Program
    • MFi Program(영문)
    • News Partner Program(영문)
    • Video Partner Program(영문)
    • Security Bounty Program(영문)
    • Security Research Device Program(영문)
    메뉴 열기 메뉴 닫기
    • Apple과의 만남
    • Apple Developer Center
    • App Store 어워드(영문)
    • Apple 디자인 어워드
    • Apple Developer Academy(영문)
    • WWDC
    Apple Developer 앱 받기
    Copyright © 2025 Apple Inc. 모든 권리 보유.
    약관 개인정보 처리방침 계약 및 지침