Shaderc VkRunner (GPU Shader Sandbox)
S

Shaderc VkRunner (GPU Shader Sandbox)

VkRunner is a Vulkan shader testing tool based on Piglit's shader_runner, aiming to support test scripts as similar as possible to Piglit's shader_test format. It supports writing shaders in GLSL or SPIR-V and provides a rich set of test commands to verify shader behavior, including drawing, computing, and probe detection functions.
2.5 points
7.6K

What is VkRunner?

VkRunner is a tool for testing Vulkan shaders by executing test scripts similar to Piglit's shader_test format. It allows developers to verify shader functionality through drawing operations and color probes.

How to use VkRunner?

VkRunner requires glslangValidator for GLSL-to-SPIR-V compilation. Tests are written in a script format with sections for shaders, vertex data, and test commands like draw operations and color probes.

Use Cases

Ideal for Vulkan developers needing to test shader functionality, verify rendering outputs, or validate SPIR-V compilation results across different hardware/drivers.

Key Features

Shader Testing
Supports testing vertex, fragment, and compute shaders through drawing operations and compute dispatches.
SPIR-V Support
Can test shaders provided as either GLSL source (compiled to SPIR-V) or pre-compiled SPIR-V assembly.
Buffer Management
Provides commands for managing uniform buffers (UBO), storage buffers (SSBO) and push constants.
Pipeline Configuration
Allows detailed configuration of graphics pipeline state including blend modes, depth testing, and stencil operations.
Advantages
Compatible with Piglit's shader_test format for easier migration
Supports both GLSL and SPIR-V shader inputs
Detailed pipeline state configuration for testing various Vulkan features
Can be used as both CLI tool and embeddable library
Limitations
Requires glslangValidator for GLSL compilation
Primarily designed for functional testing rather than performance testing
Limited documentation compared to commercial tools

Getting Started

Install Dependencies
Install Rust toolchain and glslangValidator (from KhronosGroup/glslang repository).
Write Test Script
Create a .shader_test file with [vertex shader], [fragment shader], and [test] sections.
Run Tests
Execute tests using the vkrunner binary or cargo run.

Example Use Cases

Simple Triangle Test
Verify a basic vertex+fragment shader renders a red triangle correctly
Compute Shader Test
Verify compute shader correctly processes data in storage buffer

Frequently Asked Questions

How do I specify Vulkan version requirements?
Can I test tessellation shaders?
How to handle test failures?

Additional Resources

Piglit Project
Original shader_test format reference
glslang Repository
Required GLSL-to-SPIR-V compiler
Vulkan Specification
Official Vulkan API documentation

Installation

Copy the following command to your Client for configuration
Note: Your key is sensitive information, do not share it with anyone.

Alternatives

A
Acemcp
Acemcp is an MCP server for codebase indexing and semantic search, supporting automatic incremental indexing, multi-encoding file processing, .gitignore integration, and a Web management interface, helping developers quickly search for and understand code context.
Python
8.7K
5 points
B
Blueprint MCP
Blueprint MCP is a chart generation tool based on the Arcade ecosystem. It uses technologies such as Nano Banana Pro to automatically generate visual charts such as architecture diagrams and flowcharts by analyzing codebases and system architectures, helping developers understand complex systems.
Python
6.9K
4 points
M
MCP Agent Mail
MCP Agent Mail is a mail - based coordination layer designed for AI programming agents, providing identity management, message sending and receiving, file reservation, and search functions, supporting asynchronous collaboration and conflict avoidance among multiple agents.
Python
8.4K
5 points
M
MCP
The Microsoft official MCP server provides search and access functions for the latest Microsoft technical documentation for AI assistants
11.9K
5 points
A
Aderyn
Aderyn is an open - source Solidity smart contract static analysis tool written in Rust, which helps developers and security researchers discover vulnerabilities in Solidity code. It supports Foundry and Hardhat projects, can generate reports in multiple formats, and provides a VSCode extension.
Rust
10.6K
5 points
D
Devtools Debugger MCP
The Node.js Debugger MCP server provides complete debugging capabilities based on the Chrome DevTools protocol, including breakpoint setting, stepping execution, variable inspection, and expression evaluation.
TypeScript
8.9K
4 points
S
Scrapling
Scrapling is an adaptive web scraping library that can automatically learn website changes and re - locate elements. It supports multiple scraping methods and AI integration, providing high - performance parsing and a developer - friendly experience.
Python
11.6K
5 points
M
Mcpjungle
MCPJungle is a self-hosted MCP gateway used to centrally manage and proxy multiple MCP servers, providing a unified tool access interface for AI agents.
Go
0
4.5 points
N
Notion Api MCP
Certified
A Python-based MCP Server that provides advanced to-do list management and content organization functions through the Notion API, enabling seamless integration between AI models and Notion.
Python
17.5K
4.5 points
G
Gitlab MCP Server
Certified
The GitLab MCP server is a project based on the Model Context Protocol that provides a comprehensive toolset for interacting with GitLab accounts, including code review, merge request management, CI/CD configuration, and other functions.
TypeScript
19.3K
4.3 points
D
Duckduckgo MCP Server
Certified
The DuckDuckGo Search MCP Server provides web search and content scraping services for LLMs such as Claude.
Python
54.2K
4.3 points
M
Markdownify MCP
Markdownify is a multi-functional file conversion service that supports converting multiple formats such as PDFs, images, audio, and web page content into Markdown format.
TypeScript
28.3K
5 points
U
Unity
Certified
UnityMCP is a Unity editor plugin that implements the Model Context Protocol (MCP), providing seamless integration between Unity and AI assistants, including real - time state monitoring, remote command execution, and log functions.
C#
24.0K
5 points
F
Figma Context MCP
Framelink Figma MCP Server is a server that provides access to Figma design data for AI programming tools (such as Cursor). By simplifying the Figma API response, it helps AI more accurately achieve one - click conversion from design to code.
TypeScript
50.8K
4.5 points
G
Gmail MCP Server
A Gmail automatic authentication MCP server designed for Claude Desktop, supporting Gmail management through natural language interaction, including complete functions such as sending emails, label management, and batch operations.
TypeScript
18.1K
4.5 points
C
Context7
Context7 MCP is a service that provides real-time, version-specific documentation and code examples for AI programming assistants. It is directly integrated into prompts through the Model Context Protocol to solve the problem of LLMs using outdated information.
TypeScript
75.8K
4.7 points
AIBase
Zhiqi Future, Your AI Solution Think Tank
© 2025AIBase