数据集:
Vipitis/Shadertoys
The Shadertoys dataset contains over 44k renderpasses collected from the Shadertoy.com API. Some shader programm contain multiple render passes. To browse a subset of this dataset, look at the ShaderEval space. A finer variant of this dataset is Shadertoys-fine .
text-generation the dataset can be used to train generative language models, for code completion tasks. ShaderEval task1 from ShaderEval uses a dataset derived from Shadertoys to test return completion of autoregressive language models.
A data point consists of the whole shadercode, some information from the API as well as additional metadata.
{ 'num_passes': 1, 'has_inputs': False, 'name': 'Image', 'type': 'image', 'code': '<full code>', 'title': '<title of the shader>', 'description': '<description of the shader>', 'tags': ['tag1','tag2','tag3', ... ], 'license': 'unknown', 'author': '<username>', 'source': 'https://shadertoy.com/view/<shaderID>' }
Currently available (shuffled):
Data retrieved starting 2022-07-20
All data was collected via the Shadertoy.com API and then iterated over the items in 'renderpass' while adding some of the fields from 'info'. The code to generate these datasets should be published on the GitHub repository in the near future.
Who are the source language producers?Shadertoy.com contributers which publish shaders as 'public+API'
The Default license for each Shader is CC BY-NC-SA 3.0. However, some Shaders might have a different license attached. The Dataset is currently not filtering for any licenses but gives a license tag, if easily recognizeable by naive means. Please check the first comment of each shader program yourself as to not violate any copyrights for downstream use. The main license requires share alike and by attribution. Attribution of every data field can be found in the 'author' column, but might not include further attribution within the code itself or parents from forked shaders.