초면

4371 단어 Vulkan
볼칸에게 손을 내밀어 보세요.
Windows로 시도해 봤는데 7과 10이 모두 새로운 GPU라면 비교적 유연할 것이다.
OS 의존이 아닌 GPU 의존으로, D3D 12와 달리 Windows 7에서도 이동할 수 있어 감사하다.
쿵푸를 쌓으면서 볼칸이 움직이는 안드로이드가 손에 들어오기를 기다린다.
하지만 먼저 말씀드리자면 삼각형이 나오면 2000줄 이상이 듭니다.
쉽지 않아요.
이번 코드는

환경은 Windows 10+vs 2015입니다.나는 glfw로 창문을 꺼내 보았다.
개시하다
https://github.com/ColonelThirtyTwo/dvulkan
이렇게 하려고 했는데 중간에 끼니까 해결이 안 돼서 C++로 익숙해졌어요.
나는 어느 정도 파악한 후에 D언어에 도전할 계획이다.
API의 호출 절차 등은 코드를 보면 비교적 빠르기 때문에 다음은 다른 내용을 써야 한다.

인쇄 디버그 기능이 있어야 합니다

  • http://gpuopen.com/using-the-vulkan-validation-layers/
  • 이게 있으면 API에서 오류를 호출할 때 오류 메시지를 받을 수 있어 진전이 있다.
    vkCreateInstance 이후에 바로 하는 것이 좋습니다.

    참고 자료

  • https://renderdoc.org/vulkan-in-30-minutes.html
  • 어느 정도 OpenGL과 DirectX 지식이 있는 사람에게 다른 점을 선뜻 설명한다.

    블칸이 쓰는 면도기는 SPIR-V입니다.


    이원 형식의 방법이 SPIR-V를 결정한 것 같습니다.
    SPIR-V 형식을 어떻게 얻는지 말하자면, 컴파일러는github에 있다.
    이걸 세우면...
    glslangValidator.exe
    SDK는 얻을 수 있지만 처음부터 구축돼 있었다.
    C:/VulkanSDK/1.0.13.0/Bin/glslangValidator.exe
    만약 이것이 있다면,glsl을 SPIR-V 형식으로 미리 컴파일할 수 있습니다.
    Usage: glslangValidator [option]... [file]...
    
    Where: each 'file' ends in .<stage>, where <stage> is one of
        .conf   to provide an optional config file that replaces the default configuration
                (see -c option below for generating a template)
        .vert   for a vertex shader
        .tesc   for a tessellation control shader
        .tese   for a tessellation evaluation shader
        .geom   for a geometry shader
        .frag   for a fragment shader
        .comp   for a compute shader
    
    Compilation warnings and errors will be printed to stdout.
    
    To get other information, use one of the following options:
    Each option must be specified separately.
      -V          create SPIR-V binary, under Vulkan semantics; turns on -l;
                  default file name is <stage>.spv (-o overrides this)
                  (unless -o is specified, which overrides the default file name)
      -G          create SPIR-V binary, under OpenGL semantics; turns on -l;
                  default file name is <stage>.spv (-o overrides this)
      -H          print human readable form of SPIR-V; turns on -V
      -E          print pre-processed GLSL; cannot be used with -l;
                  errors will appear on stderr.
      -c          configuration dump;
                  creates the default configuration file (redirect to a .conf file)
      -d          default to desktop (#version 110) when there is no shader #version
                  (default is ES version 100)
      -D          input is HLSL
      -e          specify entry-point name
      -h          print this usage message
      -i          intermediate tree (glslang AST) is printed out
      -l          link all input files together to form a single module
      -m          memory leak mode
      -o  <file>  save binary into <file>, requires a binary option (e.g., -V)
      -q          dump reflection query database
      -r          relaxed semantic error-checking mode
      -s          silent mode
      -t          multi-threaded mode
      -v          print version strings
      -w          suppress warnings (except as required by #extension : warn)
    
    > glslangValidator.exe hoge.vert -V -l -o hoge.vert.spv
    
    참고로 하다
    https://github.com/LunarG/VulkanSamples/blob/master/API-Samples/15-draw_cube/15-draw_cube.cpp
    glsl에서 SPIR-V로 컴파일된 코드가 들어가서 수확을 시도했기 때문에 프로그램 라이브러리로 사용됩니다.
    원본 코드를 오픈한 라이브러리인 만큼 반사나 면도기 편집기 등 도구 개발이 가능해 이 부분도 기대된다.내용은 전혀 확인되지 않았지만hlsl의 디렉터리가 있기 때문에 다양한 차폐물 언어를 SPIR-V 형식으로 컴파일했습니다.그런데 이걸 어떻게 발음하면 좋을까요?'대단해'이런 건가?

    끝맺다


    블칸이 유행할지는 아직 알 수 없지만 새로운 GPU에 최신 드라이버를 설치했다면 블칸SDK만 설치하면 비교적 좋은 개발이 가능할 것으로 보인다.시작해도 될 것 같아서요.

    좋은 웹페이지 즐겨찾기