--- title: "Resources" date: 2021-01-25T14:31:59-08:00 weight: 3 --- MoonWorks provides eight different kinds of graphics resources that you use to construct your renderer. `Buffer` holds generic data, like vertex information for example. The way this data is interpreted is determined by the pipeline. `Texture` holds image data in a specified format. Textures can also be rendered to. `Sampler` tells a shader how it should sample texture data. `ShaderModule` is a SPIR-V shader module. `GraphicsPipeline` sets up the graphics device to do rendering work. `ComputePipeline` sets up the graphics device to do computational work using [compute shaders](https://anteru.net/blog/2018/intro-to-compute-shaders/index.html). This is all pretty abstract. Let's get into some more detail.