0부터 Vulkan Ray Tracing[0]
개시하다
2020년 11월Vulkan Ray Tracing의 최종 사양에 발매됐고, 12월에는 최종 규격에 대응하는 볼칸SDK1.2.162.0을 공개했다.이렇게 되면 개발자는 다중 플랫폼에서 실시간 지연을 할 수 있다.
이 보도에 관하여
이 글에서는 Vulkan Ray Tracing이 각 단계에 따라 0에서 삼각형까지의 단계를 설명합니다.
이 문장은 다음과 같은 특징이 있다.
vulkan.hpp
를 사용하기 때문에 불필요한 설명이 없음조수 정보
지연과 무관한 Vulkan의 설치 섹션은 도우미로 건너뛸 수 있습니다.이 조수는 단지 간단한 함수를 총결해 낸 정도일 뿐 큰 종류는 없다.그래서 디자인으로는 좋지 않지만 간단하게 읽을 수 있어요.또한 이 조수는 대부분Vulkan Tutorial을 따르기 때문에 함수가 잘 모르면 여기를 참조하여 이해할 수 있다.
컨디션
창고.
이 글에 사용된 프로그램은 이 창고에 놓여 있다.
필자 정보(optional)
필자는 볼칸에 막 입문한 학생이어서 이해가 부족한 점도 많다.나는 인터넷에 잘못된 기술을 남겨서는 안 된다고 생각한다. 만약 그렇지 않은 곳이 있으면 반드시 지적해 주십시오.의 DM도 괜찮다.
프로젝트 설정
청원
설정
상기 요구를 충족시키기 위해 항목을 만드십시오.
자세한 내용은 Vulkan Tutorial 개발 환경 스탬프를 참조하십시오.이 글은
vulkan.h
이 아니라 vulkan.hpp
을 사용하지만, 이 파일들은 SDK의 같은 디렉터리에 포함되어 있기 때문에 설정을 변경할 필요가 없습니다.개인적으로 GLFW는 vcpkg 가져오기를 사용하는 것이 가장 간단하다고 생각합니다.
다음은 조수를 다운로드하여 프로젝트에 추가하십시오.여기서 다운로드할 수 있습니다.
0. 데이텀 코드
기본 코드
코드 당장 써.우선 기초 코드를 기술하다.
#include "vkutils.hpp"
class Application
{
public:
void run()
{
initWindow();
initVulkan();
mainLoop();
cleanup();
}
private:
void initWindow()
{
}
void initVulkan()
{
}
void mainLoop()
{
}
void cleanup()
{
}
};
int main()
{
Application app;
try {
app.run();
} catch (const std::exception& e) {
std::cerr << e.what() << std::endl;
return EXIT_FAILURE;
}
return EXIT_SUCCESS;
}
오류 없이 실행할 수 있는지 확인하십시오.창을 GLFW로 내보내기
GLFW를 사용하여 창을 엽니다.우선 클래스에서 창 크기를 정의합니다.
const uint32_t WIDTH = 800;
const uint32_t HEIGHT = 600;
다음에 창의 제어점을 클래스 변수에 추가합니다.private:
GLFWwindow* window;
initWindow()
에 창을 생성합니다.void initWindow()
{
glfwInit();
glfwWindowHint(GLFW_CLIENT_API, GLFW_NO_API);
glfwWindowHint(GLFW_RESIZABLE, GLFW_FALSE);
window = glfwCreateWindow(WIDTH, HEIGHT, "Vulkan", nullptr, nullptr);
}
mainLoop()
에 순환을 추가합니다.void mainLoop()
{
while (!glfwWindowShouldClose(window)) {
glfwPollEvents();
}
}
cleanup()
에서 GLFW를 끝내는 것을 잊지 마세요.void cleanup()
{
glfwDestroyWindow(window);
glfwTerminate();
}
이렇게 실행하면 창이 나올 거예요.기준 코드가 완성되었습니다.다음 장에서는 Vulkan 설정을 수행합니다.
연기 사항은 이미 삭제되었으니, 이어서 이 책을 보십시오.기사처럼 공짜예요.
여기까지의 C++ 코드(00 base code.cpp)
Reference
이 문제에 관하여(0부터 Vulkan Ray Tracing[0]), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/nishiki/articles/202965ae2a4c2c텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)