기능 | 스크린 샷 | 소개 | 설치 | 건물 | changelog
GLSL 및 HLSL 셰이더의 가벼운 편집기 및 GPU 기반 알고리즘을 개발하기위한 완전한 IDE.
Qt6Multimedia 로 제작 된 경우에만).

시작하려면 도움말 메뉴에서 샘플 세션을 열고 놀 수 있습니다.
셰이더를 시험해 보려면 세션에서는 파이프 라인 상태 및 데이터가 운영 해야하는 데이터와 함께 추첨 및 계산 호출을 정의 할 수 있습니다.
세션 메뉴 나 컨텍스트 메뉴의 항목으로 채워질 수 있습니다. 실행 취소/재조정, 복사/붙여 넣기 및 드래그/드롭은 예상대로 작동해야합니다 (여러 인스턴스 사이). 항목을 텍스트 편집기로 끌어 올릴 수도 있습니다 (JSON으로 직렬화 됨).
샘플 세션은 템플릿으로도 사용할 수 있습니다. 세션을 새 위치에 복사하는 세션을 저장합니다.
세션은 애니메이션에 대해 관련성이있는 [F7] 또는 꾸준히 [F8] 가 변경 될 때마다 자동으로 [F6]를 평가할 수 있습니다. 마지막 평가에 기여한 모든 항목이 강조 표시됩니다.
세션의 항목은 OpenGL 응용 프로그램을 작성하여 알려진 개념에 거의 해당합니다.
전화 - 가장 두드러지게 무승부 및 컴퓨팅 호출입니다. 세션이 평가 될 때마다 모든 활성 호출은 연속 순서로 평가됩니다. 확인란을 사용하여 de-/활성화 될 수 있습니다. 각 호출의 경과 시간은 메시지 창에 출력됩니다 (GPU 타이머 쿼리를 사용하여 측정 됨).
프로그램 - 하나 또는 다중 셰이더로 구성되며 함께 연결되므로 추첨 또는 컴퓨팅 호출로 사용할 수 있습니다.
텍스처 - 모든 종류의 색상, 깊이 또는 스텐실 텍스처를 만들 수 있습니다. 샘플 소스, 이미지 및 출력 및 대상 첨부 파일 역할을합니다. 파일로 뒷받침 할 수 있습니다.
대상 - 추첨 호출이 렌더링 해야하는 위치를 지정합니다. 여러 이미지를 첨부 할 수 있습니다. 첨부 된 이미지 유형에 따라 다른 렌더 상태를 구성 할 수 있습니다.
바인딩 - 프로그램의 균일, 샘플러, 이미지 및 버퍼에 데이터를 바인딩 할 수 있습니다. 바인딩은 동일한 이름의 바인딩 또는 범위 끝 ( 그룹 참조)으로 대체 될 때까지 모든 후속 통화에 영향을 미칩니다. 바인딩의 이름은 프로그램의 바인딩 포인트의 이름과 일치해야합니다.
버퍼 - 버퍼 블록은 이진 내 영역의 구조를 정의합니다. 일부 데이터 유형의 여러 필드가있는 행으로 구성됩니다. 버퍼는 이진 파일로 백업 할 수 있습니다.
스트림 - 정점 셰이더의 입력 역할을합니다. 스트림은 여러 속성으로 구성되며, 참조 버퍼 블록에서 데이터를 얻습니다.
그룹 -보다 복잡한 세션을 구성 할 수 있습니다. 인라인 범위가 점검되지 않으면 새로운 범위를 엽니 다. 범위 내의 항목은 범위 외부의 항목에 대해 보이지 않습니다 (콤보 상자에는 나타나지 않음).
스크립트 - 스크립트 파일에서 JavaScript 함수 및 변수를 정의 할 수 있으며, 이후 균일 한 바인딩 표현식에 사용할 수 있습니다. 스크립트를 사용하여 세션을 동적으로 채우고 버퍼 및 텍스처 데이터를 생성 할 수 있습니다. 전체 세션에는 하나의 JavaScript 상태가 있으며 스크립트는 연속 순서로 평가됩니다 ( 그룹 범위는 효과가 없습니다).
AUR에서 최신 빌드를 설치할 수 있습니다.
휴대용 빌드는 최신 릴리스 페이지에서 다운로드 할 수 있습니다.
C ++ 20 준수 컴파일러가 필요합니다. CMAKE 빌드 시스템을위한 스크립트가 제공됩니다. VCPKG와 같은 패키지 관리자를 사용하거나 다른 방법으로 설치할 수있는 다음 라이브러리에 따라 다릅니다.
# install dependencies
sudo apt install build-essential git cmake qtdeclarative6-dev libdrm-dev pkg-config libxcb * -dev libx11-dev libxrandr-dev
# check out source
git clone --recurse-submodules https://github.com/houmain/gpupad
cd gpupad
# install vcpkg
git clone --depth=1 https://github.com/microsoft/vcpkg.git
vcpkg/bootstrap-vcpkg.sh
# install additional dependencies using vcpkg
vcpkg/vcpkg install vulkan " ktx[vulkan] " glslang spirv-cross vulkan-memory-allocator spdlog
# build
cmake -B build -DCMAKE_TOOLCHAIN_FILE=vcpkg/scripts/buildsystems/vcpkg.cmake
cmake --build build -j8 # install Qt6
# https://doc.qt.io/qt-6/get-and-install-qt.html
# check out source
git clone --recurse-submodules https://github.com/houmain/gpupad
cd gpupad
# install vcpkg
git clone --depth=1 https://github.com/microsoft/vcpkg.git
vcpkg b ootstrap-vcpkg
# install dependencies using vcpkg
vcpkg v cpkg install vulkan " ktx[vulkan] " glslang spirv-cross vulkan-memory-allocator spdlog
# build
cmake -B build -DCMAKE_PREFIX_PATH=C: Q t 6 .7.2 m svc2022_64 -DCMAKE_TOOLCHAIN_FILE=vcpkg s cripts b uildsystems v cpkg.cmake
cmake --build build -j8 GPUPAD는 GNU GPLV3에 따라 출시됩니다. 라이센스 세부 정보는 LICENSE 참조하십시오.