32 lines
14 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Utilities which holds references to GPU-owned. Usually a resource is a wrapper which makes using buffers or textures simpler."><meta name="keywords" content="rust, rustlang, rust-lang, resource"><title>maplibre::render::resource - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" type="text/css" href="../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../ayu.css" disabled><link rel="stylesheet" type="text/css" href="../../../dark.css" disabled><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../../../storage.js"></script><script src="../../../crates.js"></script><script defer src="../../../main.js"></script>
<noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="alternate icon" type="image/png" href="../../../favicon-16x16.png"><link rel="alternate icon" type="image/png" href="../../../favicon-32x32.png"><link rel="icon" type="image/svg+xml" href="../../../favicon.svg"></head><body class="rustdoc mod"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button><a class="sidebar-logo" href="../../../maplibre/index.html"><div class="logo-container"><img class="rust-logo" src="../../../rust-logo.svg" alt="logo"></div>
</a><h2 class="location"></h2>
</nav>
<nav class="sidebar"><a class="sidebar-logo" href="../../../maplibre/index.html"><div class="logo-container"><img class="rust-logo" src="../../../rust-logo.svg" alt="logo"></div>
</a><h2 class="location"><a href="#">Module resource</a></h2><div class="sidebar-elems"><section><div class="block"><ul><li><a href="#modules">Modules</a></li><li><a href="#structs">Structs</a></li><li><a href="#enums">Enums</a></li><li><a href="#constants">Constants</a></li><li><a href="#traits">Traits</a></li></ul></div></section><div id="sidebar-vars" data-name="resource" data-ty="mod" data-relpath="./"></div><script defer src="./sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../../maplibre/index.html"><img class="rust-logo" src="../../../rust-logo.svg" alt="logo"></a><nav class="sub"><div class="theme-picker hidden"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="22" height="22" alt="Pick another theme!" src="../../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><span></span><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><div class="main-heading">
<h1 class="fqn"><span class="in-band">Module <a href="../../index.html">maplibre</a>::<wbr><a href="../index.html">render</a>::<wbr><a class="mod" href="#">resource</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span></h1><span class="out-of-band"><a class="srclink" href="../../../src/maplibre/render/resource/mod.rs.html#1-28">source</a> · <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span></div><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Utilities which holds references to GPU-owned. Usually a resource is a wrapper which makes using
buffers or textures simpler.</p>
</div></details><h2 id="modules" class="small-section-header"><a href="#modules">Modules</a></h2>
<div class="item-table"><div class="item-row"><div class="item-left module-item"><a class="mod" href="buffer_pool/index.html" title="maplibre::render::resource::buffer_pool mod">buffer_pool</a><span title="Restricted Visibility">&nbsp;🔒</span> </div><div class="item-right docblock-short"><p>A ring-buffer like pool of <a href="wgpu::Buffer">buffers</a>.</p>
</div></div><div class="item-row"><div class="item-left module-item"><a class="mod" href="globals/index.html" title="maplibre::render::resource::globals mod">globals</a><span title="Restricted Visibility">&nbsp;🔒</span> </div><div class="item-right docblock-short"><p>A bind group which binds a buffer with global data like the current camera transformations.</p>
</div></div><div class="item-row"><div class="item-left module-item"><a class="mod" href="pipeline/index.html" title="maplibre::render::resource::pipeline mod">pipeline</a><span title="Restricted Visibility">&nbsp;🔒</span> </div><div class="item-right docblock-short"><p>Utility for creating <a href="wgpu::RenderPipeline">RenderPipelines</a></p>
</div></div><div class="item-row"><div class="item-left module-item"><a class="mod" href="shader/index.html" title="maplibre::render::resource::shader mod">shader</a><span title="Restricted Visibility">&nbsp;🔒</span> </div><div class="item-right docblock-short"><p>Utilities for creating shader states.</p>
</div></div><div class="item-row"><div class="item-left module-item"><a class="mod" href="surface/index.html" title="maplibre::render::resource::surface mod">surface</a><span title="Restricted Visibility">&nbsp;🔒</span> </div><div class="item-right docblock-short"><p>Utilities for handling surfaces which can be either headless or headed. A headed surface has
a handle to a window. A headless surface renders to a texture.</p>
</div></div><div class="item-row"><div class="item-left module-item"><a class="mod" href="texture/index.html" title="maplibre::render::resource::texture mod">texture</a><span title="Restricted Visibility">&nbsp;🔒</span> </div><div class="item-right docblock-short"><p>Utility for a texture view which can either be created by a <a href="wgpu::TextureView"><code>TextureView</code></a>
or <a href="wgpu::SurfaceTexture"><code>SurfaceTexture</code></a></p>
</div></div><div class="item-row"><div class="item-left module-item"><a class="mod" href="tracked_render_pass/index.html" title="maplibre::render::resource::tracked_render_pass mod">tracked_render_pass</a><span title="Restricted Visibility">&nbsp;🔒</span> </div><div class="item-right docblock-short"><p>A render pass which allows tracking, for example using a tracing framework.</p>
</div></div></div><h2 id="structs" class="small-section-header"><a href="#structs">Structs</a></h2>
<div class="item-table"><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.BackingBufferDescriptor.html" title="maplibre::render::resource::BackingBufferDescriptor struct">BackingBufferDescriptor</a></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.BufferDimensions.html" title="maplibre::render::resource::BufferDimensions struct">BufferDimensions</a></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.BufferPool.html" title="maplibre::render::resource::BufferPool struct">BufferPool</a></div><div class="item-right docblock-short"><p>This is inspired by the memory pool in Vulkan documented
<a href="https://gpuopen-librariesandsdks.github.io/VulkanMemoryAllocator/html/custom_memory_pools.html">here</a>.</p>
</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.BufferedTextureHead.html" title="maplibre::render::resource::BufferedTextureHead struct">BufferedTextureHead</a></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.FragmentState.html" title="maplibre::render::resource::FragmentState struct">FragmentState</a></div><div class="item-right docblock-short"><p>Describes the fragment process in a render pipeline.</p>
</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Globals.html" title="maplibre::render::resource::Globals struct">Globals</a></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.IndexEntry.html" title="maplibre::render::resource::IndexEntry struct">IndexEntry</a></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.RenderPipelineDescriptor.html" title="maplibre::render::resource::RenderPipelineDescriptor struct">RenderPipelineDescriptor</a></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.RingIndex.html" title="maplibre::render::resource::RingIndex struct">RingIndex</a></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Surface.html" title="maplibre::render::resource::Surface struct">Surface</a></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.Texture.html" title="maplibre::render::resource::Texture struct">Texture</a></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.TrackedRenderPass.html" title="maplibre::render::resource::TrackedRenderPass struct">TrackedRenderPass</a></div><div class="item-right docblock-short"><p>A [<code>RenderPass</code>], which tracks the current pipeline state to ensure all draw calls are valid.
It is used to set the current [<code>RenderPipeline</code>], <a href="BindGroup"><code>BindGroups</code></a> and buffers.
After all requirements are specified, draw calls can be issued.</p>
</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.VertexBufferLayout.html" title="maplibre::render::resource::VertexBufferLayout struct">VertexBufferLayout</a></div><div class="item-right docblock-short"><p>Describes how the vertex buffer is interpreted.</p>
</div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.VertexState.html" title="maplibre::render::resource::VertexState struct">VertexState</a></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.WindowHead.html" title="maplibre::render::resource::WindowHead struct">WindowHead</a></div><div class="item-right docblock-short"></div></div></div><h2 id="enums" class="small-section-header"><a href="#enums">Enums</a></h2>
<div class="item-table"><div class="item-row"><div class="item-left module-item"><a class="enum" href="enum.BackingBufferType.html" title="maplibre::render::resource::BackingBufferType enum">BackingBufferType</a></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left module-item"><a class="enum" href="enum.Head.html" title="maplibre::render::resource::Head enum">Head</a></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left module-item"><a class="enum" href="enum.TextureView.html" title="maplibre::render::resource::TextureView enum">TextureView</a></div><div class="item-right docblock-short"><p>Describes a <a href="texture/enum.TextureView.html" title="TextureView"><code>TextureView</code></a>.</p>
</div></div></div><h2 id="constants" class="small-section-header"><a href="#constants">Constants</a></h2>
<div class="item-table"><div class="item-row"><div class="item-left module-item"><a class="constant" href="constant.FEATURE_METADATA_SIZE.html" title="maplibre::render::resource::FEATURE_METADATA_SIZE constant">FEATURE_METADATA_SIZE</a></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left module-item"><a class="constant" href="constant.INDICES_SIZE.html" title="maplibre::render::resource::INDICES_SIZE constant">INDICES_SIZE</a></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left module-item"><a class="constant" href="constant.LAYER_METADATA_SIZE.html" title="maplibre::render::resource::LAYER_METADATA_SIZE constant">LAYER_METADATA_SIZE</a></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left module-item"><a class="constant" href="constant.VERTEX_SIZE.html" title="maplibre::render::resource::VERTEX_SIZE constant">VERTEX_SIZE</a></div><div class="item-right docblock-short"></div></div></div><h2 id="traits" class="small-section-header"><a href="#traits">Traits</a></h2>
<div class="item-table"><div class="item-row"><div class="item-left module-item"><a class="trait" href="trait.Queue.html" title="maplibre::render::resource::Queue trait">Queue</a></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left module-item"><a class="trait" href="trait.RenderPipeline.html" title="maplibre::render::resource::RenderPipeline trait">RenderPipeline</a></div><div class="item-right docblock-short"></div></div></div></section></div></main><div id="rustdoc-vars" data-root-path="../../../" data-current-crate="maplibre" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.62.0 (a8314ef7d 2022-06-27)" ></div>
</body></html>