2021-01-25 22:59:27 +00:00
---
title: "Resources"
date: 2021-01-25T14:31:59-08:00
weight: 3
---
2021-01-28 22:03:19 +00:00
MoonWorks provides eight different kinds of graphics resources that you use to construct your renderer.
2021-01-25 22:59:27 +00:00
`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.
`Sampler` tells a shader how it should sample texture data.
`GraphicsPipeline` sets up the graphics device to do rendering work.
`RenderTarget` is a structure that can be rendered to.
`Framebuffer` is essentially a collection of `RenderTarget` s.
2021-01-27 03:11:37 +00:00
`RenderPass` is a structure that tells the `GraphicsPipeline` how it should use a `Framebuffer` .
2021-01-25 22:59:27 +00:00
2021-01-28 22:03:19 +00:00
`ComputePipeline` sets up the graphics device to do computational work using [compute shaders ](https://anteru.net/blog/2018/intro-to-compute-shaders/index.html ).
2021-01-25 22:59:27 +00:00
This is all pretty abstract. Let's get into some more detail.