게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
metal, 좋긴 하다
게시물ID : programmer_3937짧은주소 복사하기
작성자 : 3dArtist
추천 : 1
조회수 : 1274회
댓글수 : 5개
등록시간 : 2014/06/12 03:50:01
뭐 metal이 흑역사(?)가 될 수도 있다고 생각은 하지만, metal api 자체는 매우 훌륭합니다. 공개된 자료를 다 흝어 본 결과 OpenGL보다 쓰기 편하고, 개념적으로 잘 정리되어 있습니다. DirectX는 안 본지 꽤 되어서 비교하긴 뭐 하지만, DX11? 뭐 그 쯤을 생각해 보면, api 자체는 metal 더 직관적이고 좋네요.

가이드에 있는 샘플 일부를 가져와 봤습니다.

// library 가 있네요. 

  NSError *errors;
  id <MTLLibrary> library = [device newLibraryWithSource:progSrc options:nil error:&errors];
  id <MTLFunction> vertFunc = [library newFunctionWithName:@"hello_vertex" options:nil error:&errors];
  id <MTLFunction> fragFunc = [library newFunctionWithName:@"hello_fragment" options:nil error:&errors];

 

  pipeline = [device newRenderPipelineStateWithDescriptor:pipelineDesc error:&errors];

좋긴 좋습니다. 

Metal을 쓰면 좋은 점을 꼽아보자면
1. 속도 10 배 (이게 약간 의심스럽네요. 갑자기 10배라니, 애플이 약간 "뻥"을 치는 경우가 있는데 이번에는 좀 심하게 친 것도 같습니다. 그래도 엄청난 속도 향상임에는 의심의 여지가 없네요.)
2. Metal api, metal shading language 둘 다 OpenGL보다 직관적이고, 쓰기 편합니다. 더 막강한 거 같기도 하고...

Metal을 쓰기 주저되는 점
1. 많은 변화를 예고합니다. swift가 나온 상태에서 swift호환 문제가 있을 거 같고, descriptor가 엄청 많은데 이 것들도 정리가 될 듯 하기도 하고, 아무튼, 너무 많이 변해서 기다려 배우는 게 나을지도 모르겠습니다. 그러니까, 열심히 봤는데 쓰지를 못 하는 "흑역사"가 될 수도 있는 거죠. ㅠ.ㅠ
2. 자료가 너무 부족하다. WWDC 2014에서 공개한 Sample Code에 없네요. Source 받아보세요라고 분명 말 했는데, 없어요. XCode에서 돌려보면 module 'Metal' not found. 간단히 말하면 아직 없다는 거죠. ㅠ.ㅠ 

결론은 이겁니다. 아직 이르다. 그럼, 난 뭐 한거지. ㅠ.ㅠ 역쉬 내 예감이 맞았어, 소소한 흑역사 추가. ㅠ.ㅠ

p.s. 그래도 보시겠다는 분들은 metal 관련 비디오 두편 보시고, metal programming guide는 대충 보세요. 서로 겹치는 게 많으면서도 미묘하게 보충하고 있네요. metal shading language는 안 봤습니다. 
p.s. 마지막 글입니다. 공부하면서 글 적는게 보통 스트레스가 아니네요. 왜 사람들이 가르치듯 글을 쓰는지 알겠습니다. 일단, 다 익히고, 확신을 가지면서 글을 써야지, 배우면서 글을 쓰니까 아주 머리가 뽀개지는 것 같네요.
p.s. 읽어주셔서 감사합니다.


전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호