Skip to content

Latest commit

 

History

History
321 lines (178 loc) · 12.4 KB

README-kor.adoc

File metadata and controls

321 lines (178 loc) · 12.4 KB

Vulkan® Guide

Vulkan Logo
Khronos logo

Vulkan Guide는 개발자가 Vulkan의 세계를 시작하는 데 도움을 주기 위해 작성되었습니다. 이 가이드는 개발자가 원하는 내용에 따라 다른 유용한 링크로 연결되는 가벼운 읽기를 목표로 합니다. 모든 정보는 Vulkan의 다양한 뉘앙스를 더 잘 이해할 수 있도록 돕기 위한 것입니다.

Note

Vulkan Guide는 asciidoctor guide.adoc 를 사용해 하나의 페이지로서 빌드할 수 있습니다.

Note

Vulkan에서 사용하는 특수한 용어에 대한 혼란을 막기 위해 명령과 연관된 경우 번역하지 않고 용어 발음을 그대로 사용하였습니다.
Attachment 첨부 - (주로 이미지) 버퍼 데이터를 원하는 용도로 장치가 사용할 수 있게 제공합니다.
Binding 바인딩 - 장치, 데이터 등을 원하는 참조에 연결하는 동작
Device 장치 - 일반적으로 GPU 처리 장치를 의미
Extension 확장판, 확장기능 - 표준에 정의돼 있지 않으나 특별한 기능을 제공하기 위해 제공되는 확장 기능으로, 크로노스 그룹의 공식 확장판과 각 기업이 추가한 벤더 확장판이 있음
Expose 노출/공개 - (드라이버가 애플리케이션이) 사용할 수 있도록 정보를 노출한다는 의미
Layer 레이어 - 특정한 (주로 검증) 목적을 위해 구성된 Vulkan 소프트웨어 계층
Layout 레이아웃 - 데이터(주로 이미지)의 형식이나 종류를 의미
Render Pass 렌더패스 - 실제 그리는 동작을 규정하는 하나의 작업 단위를 정의
Sparse Memory 희소 메모리 - 큰 크기의 이미지로 정의하지만, 실제로는 작은 부분의 이미지만을 사용하는 메모리 관리 방식
State 스테이트 - 파이프 라인 스테이트 변수를 의미
Stage 스테이지 - 파이프라인의 처리 단계를 의미

2. Vulkan 사용법

2.5. WSI

  • VK_EXT_depth_range_unrestricted, VK_EXT_depth_clip_enable, VK_EXT_depth_clip_control

  • VK_EXT_image_robustness, VK_EXT_robustness2, VK_EXT_pipeline_robustness

  • VK_EXT_extended_dynamic_state, VK_EXT_extended_dynamic_state2, VK_EXT_extended_dynamic_state3, VK_EXT_vertex_input_dynamic_state, VK_EXT_color_write_enable, VK_EXT_attachment_feedback_loop_dynamic_state

  • VK_EXT_subgroup_size_control, VK_KHR_shader_subgroup_extended_types, VK_EXT_shader_subgroup_ballot, VK_EXT_shader_subgroup_vote

  • VK_KHR_uniform_buffer_standard_layout, VK_KHR_relaxed_block_layout, VK_EXT_scalar_block_layout

  • VK_KHR_shader_atomic_int64, VK_EXT_shader_image_atomic_int64, VK_EXT_shader_atomic_float, VK_EXT_shader_atomic_float2

3. 확장 기능을 사용하는 시점과 이유

Note

다음은 다양한 Vulkan 확장 기능에 대한 추가 참조 자료입니다. 확장 기능에 대한 자세한 내용은 Vulkan 사양서를 참조하세요

  • VK_EXT_4444_formats, VK_KHR_bind_memory2, VK_KHR_create_renderpass2, VK_KHR_dedicated_allocation, VK_KHR_driver_properties, VK_KHR_get_memory_requirements2, VK_KHR_get_physical_device_properties2, VK_EXT_host_query_reset, VK_KHR_maintenance1, VK_KHR_maintenance2, VK_KHR_maintenance3, VK_KHR_maintenance4, VK_KHR_separate_depth_stencil_layouts, VK_KHR_depth_stencil_resolve, VK_EXT_separate_stencil_usage, VK_EXT_sampler_filter_minmax, VK_KHR_sampler_mirror_clamp_to_edge, VK_EXT_ycbcr_2plane_444_formats, VK_KHR_format_feature_flags2, VK_EXT_rgba10x6_formats, VK_KHR_copy_commands2

  • VK_KHR_device_group, VK_KHR_device_group_creation

  • VK_KHR_external_fence, VK_KHR_external_memory, VK_KHR_external_semaphore

  • VK_KHR_acceleration_structure, VK_KHR_ray_tracing_pipeline, VK_KHR_ray_query, VK_KHR_pipeline_library, VK_KHR_deferred_host_operations

  • VK_KHR_8bit_storage, VK_KHR_16bit_storage, VK_KHR_shader_clock, VK_EXT_shader_demote_to_helper_invocation, VK_KHR_shader_draw_parameters, VK_KHR_shader_float16_int8, VK_KHR_shader_float_controls, VK_KHR_shader_non_semantic_info, VK_EXT_shader_stencil_export, VK_KHR_shader_terminate_invocation, VK_EXT_shader_viewport_index_layer, VK_KHR_spirv_1_4, VK_KHR_storage_buffer_storage_class, VK_KHR_variable_pointers, VK_KHR_vulkan_memory_model, VK_KHR_workgroup_memory_explicit_layout, VK_KHR_zero_initialize_workgroup_memory

  • VK_EXT_custom_border_color, VK_EXT_border_color_swizzle, VK_EXT_depth_clip_enable, VK_EXT_depth_clip_control, VK_EXT_provoking_vertex, VK_EXT_transform_feedback, VK_EXT_image_view_min_lod