Piping just the vertex glyph representation first to test the stencil buffer

master
mitchellhansen 4 years ago
parent bb8144bb01
commit b3e092e25a

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

@ -3,6 +3,6 @@
}</pre></div><div class='docblock'><p>Trait which may be inherited by objects that wish to be drawn to the screen</p>
</div>
<h2 id='required-methods' class='small-section-header'>Required methods<a href='#required-methods' class='anchor'></a></h2><div class='methods'><h3 id='tymethod.get' class='method'><code id='get.v'>fn <a href='#tymethod.get' class='fnname'>get</a>(&amp;self) -&gt; <a class="enum" href="../../../sfml_rust/util/vertex/enum.VertexTypes.html" title="enum sfml_rust::util::vertex::VertexTypes">VertexTypes</a></code></h3></div><span class='loading-content'>Loading content...</span>
<h2 id='implementors' class='small-section-header'>Implementors<a href='#implementors' class='anchor'></a></h2><div class='item-list' id='implementors-list'><h3 id='impl-Drawable' class='impl'><code class='in-band'>impl Drawable for <a class="struct" href="../../../sfml_rust/sprite/struct.Sprite.html" title="struct sfml_rust::sprite::Sprite">Sprite</a></code><a href='#impl-Drawable' class='anchor'></a><a class='srclink' href='../../../src/sfml_rust/sprite.rs.html#56-61' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.get' class="method hidden"><code id='get.v-1'>fn <a href='#method.get' class='fnname'>get</a>(&amp;self) -&gt; <a class="enum" href="../../../sfml_rust/util/vertex/enum.VertexTypes.html" title="enum sfml_rust::util::vertex::VertexTypes">VertexTypes</a></code><a class='srclink' href='../../../src/sfml_rust/sprite.rs.html#57-59' title='goto source code'>[src]</a></h4></div></div><span class='loading-content'>Loading content...</span><script type="text/javascript">window.inlined_types=new Set([]);</script><script type="text/javascript" async
<h2 id='implementors' class='small-section-header'>Implementors<a href='#implementors' class='anchor'></a></h2><div class='item-list' id='implementors-list'><h3 id='impl-Drawable' class='impl'><code class='in-band'>impl Drawable for <a class="struct" href="../../../sfml_rust/drawables/compu_sprite/struct.CompuSprite.html" title="struct sfml_rust::drawables::compu_sprite::CompuSprite">CompuSprite</a></code><a href='#impl-Drawable' class='anchor'></a><a class='srclink' href='../../../src/sfml_rust/drawables/compu_sprite.rs.html#55-59' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.get' class="method hidden"><code id='get.v-1'>fn <a href='#method.get' class='fnname'>get</a>(&amp;self) -&gt; <a class="enum" href="../../../sfml_rust/util/vertex/enum.VertexTypes.html" title="enum sfml_rust::util::vertex::VertexTypes">VertexTypes</a></code><a class='srclink' href='../../../src/sfml_rust/drawables/compu_sprite.rs.html#56-58' title='goto source code'>[src]</a></h4></div><h3 id='impl-Drawable-1' class='impl'><code class='in-band'>impl Drawable for <a class="struct" href="../../../sfml_rust/drawables/polygon/struct.Polygon.html" title="struct sfml_rust::drawables::polygon::Polygon">Polygon</a></code><a href='#impl-Drawable-1' class='anchor'></a><a class='srclink' href='../../../src/sfml_rust/drawables/polygon.rs.html#63-68' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.get-1' class="method hidden"><code id='get.v-2'>fn <a href='#method.get-1' class='fnname'>get</a>(&amp;self) -&gt; <a class="enum" href="../../../sfml_rust/util/vertex/enum.VertexTypes.html" title="enum sfml_rust::util::vertex::VertexTypes">VertexTypes</a></code><a class='srclink' href='../../../src/sfml_rust/drawables/polygon.rs.html#64-66' title='goto source code'>[src]</a></h4></div><h3 id='impl-Drawable-2' class='impl'><code class='in-band'>impl Drawable for <a class="struct" href="../../../sfml_rust/drawables/rect/struct.Rect.html" title="struct sfml_rust::drawables::rect::Rect">Rect</a></code><a href='#impl-Drawable-2' class='anchor'></a><a class='srclink' href='../../../src/sfml_rust/drawables/rect.rs.html#52-57' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.get-2' class="method hidden"><code id='get.v-3'>fn <a href='#method.get-2' class='fnname'>get</a>(&amp;self) -&gt; <a class="enum" href="../../../sfml_rust/util/vertex/enum.VertexTypes.html" title="enum sfml_rust::util::vertex::VertexTypes">VertexTypes</a></code><a class='srclink' href='../../../src/sfml_rust/drawables/rect.rs.html#53-55' title='goto source code'>[src]</a></h4></div><h3 id='impl-Drawable-3' class='impl'><code class='in-band'>impl Drawable for <a class="struct" href="../../../sfml_rust/drawables/sprite/struct.Sprite.html" title="struct sfml_rust::drawables::sprite::Sprite">Sprite</a></code><a href='#impl-Drawable-3' class='anchor'></a><a class='srclink' href='../../../src/sfml_rust/drawables/sprite.rs.html#56-61' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.get-3' class="method hidden"><code id='get.v-4'>fn <a href='#method.get-3' class='fnname'>get</a>(&amp;self) -&gt; <a class="enum" href="../../../sfml_rust/util/vertex/enum.VertexTypes.html" title="enum sfml_rust::util::vertex::VertexTypes">VertexTypes</a></code><a class='srclink' href='../../../src/sfml_rust/drawables/sprite.rs.html#57-59' title='goto source code'>[src]</a></h4></div></div><span class='loading-content'>Loading content...</span><script type="text/javascript">window.inlined_types=new Set([]);</script><script type="text/javascript" async
src="../../../implementors/sfml_rust/canvas/canvas_frame/trait.Drawable.js">
</script></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../../";window.currentCrate = "sfml_rust";</script><script src="../../../aliases.js"></script><script src="../../../main.js"></script><script defer src="../../../search-index.js"></script></body></html>

@ -1,4 +1,4 @@
<!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="API documentation for the Rust `canvas_state` mod in crate `sfml_rust`."><meta name="keywords" content="rust, rustlang, rust-lang, canvas_state"><title>sfml_rust::canvas::canvas_state - Rust</title><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="../../../dark.css"><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script src="../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="shortcut icon" href="../../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../../sfml_rust/index.html'><div class='logo-container'><img src='../../../rust-logo.png' alt='logo'></div></a><p class='location'>Module canvas_state</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#structs">Structs</a></li></ul></div><p class='location'><a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>canvas</a></p><script>window.sidebarCurrent = {name: 'canvas_state', ty: 'mod', relpath: '../'};</script><script defer src="../sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../../settings.html"><img src="../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../../src/sfml_rust/canvas/canvas_state.rs.html#1-558' title='goto source code'>[src]</a></span><span class='in-band'>Module <a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>canvas</a>::<wbr><a class="mod" href=''>canvas_state</a></span></h1><h2 id='structs' class='section-header'><a href="#structs">Structs</a></h2>
<!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="API documentation for the Rust `canvas_state` mod in crate `sfml_rust`."><meta name="keywords" content="rust, rustlang, rust-lang, canvas_state"><title>sfml_rust::canvas::canvas_state - Rust</title><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="../../../dark.css"><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script src="../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="shortcut icon" href="../../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../../sfml_rust/index.html'><div class='logo-container'><img src='../../../rust-logo.png' alt='logo'></div></a><p class='location'>Module canvas_state</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#structs">Structs</a></li></ul></div><p class='location'><a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>canvas</a></p><script>window.sidebarCurrent = {name: 'canvas_state', ty: 'mod', relpath: '../'};</script><script defer src="../sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../../settings.html"><img src="../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../../src/sfml_rust/canvas/canvas_state.rs.html#1-557' title='goto source code'>[src]</a></span><span class='in-band'>Module <a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>canvas</a>::<wbr><a class="mod" href=''>canvas_state</a></span></h1><h2 id='structs' class='section-header'><a href="#structs">Structs</a></h2>
<table><tr class='module-item'><td><a class="struct" href="struct.CanvasState.html" title='sfml_rust::canvas::canvas_state::CanvasState struct'>CanvasState</a></td><td class='docblock-short'><p>Canvas state is used for storage of texture and image buffers in addition to vertex buffers
Canvas state also contains logic for writing the stored buffers to the command_buffer</p>
</td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../../";window.currentCrate = "sfml_rust";</script><script src="../../../aliases.js"></script><script src="../../../main.js"></script><script defer src="../../../search-index.js"></script></body></html>

File diff suppressed because one or more lines are too long

@ -1,2 +1,2 @@
<!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="API documentation for the Rust `compu_frame` mod in crate `sfml_rust`."><meta name="keywords" content="rust, rustlang, rust-lang, compu_frame"><title>sfml_rust::compute::compu_frame - Rust</title><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="../../../dark.css"><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script src="../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="shortcut icon" href="../../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../../sfml_rust/index.html'><div class='logo-container'><img src='../../../rust-logo.png' alt='logo'></div></a><p class='location'>Module compu_frame</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#structs">Structs</a></li></ul></div><p class='location'><a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>compute</a></p><script>window.sidebarCurrent = {name: 'compu_frame', ty: 'mod', relpath: '../'};</script><script defer src="../sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../../settings.html"><img src="../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../../src/sfml_rust/compute/compu_frame.rs.html#1-56' title='goto source code'>[src]</a></span><span class='in-band'>Module <a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>compute</a>::<wbr><a class="mod" href=''>compu_frame</a></span></h1><h2 id='structs' class='section-header'><a href="#structs">Structs</a></h2>
<!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="API documentation for the Rust `compu_frame` mod in crate `sfml_rust`."><meta name="keywords" content="rust, rustlang, rust-lang, compu_frame"><title>sfml_rust::compute::compu_frame - Rust</title><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="../../../dark.css"><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script src="../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="shortcut icon" href="../../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../../sfml_rust/index.html'><div class='logo-container'><img src='../../../rust-logo.png' alt='logo'></div></a><p class='location'>Module compu_frame</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#structs">Structs</a></li></ul></div><p class='location'><a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>compute</a></p><script>window.sidebarCurrent = {name: 'compu_frame', ty: 'mod', relpath: '../'};</script><script defer src="../sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../../settings.html"><img src="../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../../src/sfml_rust/compute/compu_frame.rs.html#1-62' title='goto source code'>[src]</a></span><span class='in-band'>Module <a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>compute</a>::<wbr><a class="mod" href=''>compu_frame</a></span></h1><h2 id='structs' class='section-header'><a href="#structs">Structs</a></h2>
<table><tr class='module-item'><td><a class="struct" href="struct.CompuFrame.html" title='sfml_rust::compute::compu_frame::CompuFrame struct'>CompuFrame</a></td><td class='docblock-short'></td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../../";window.currentCrate = "sfml_rust";</script><script src="../../../aliases.js"></script><script src="../../../main.js"></script><script defer src="../../../search-index.js"></script></body></html>

File diff suppressed because one or more lines are too long

@ -1,2 +0,0 @@
<!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="API documentation for the Rust `compu_sprite` mod in crate `sfml_rust`."><meta name="keywords" content="rust, rustlang, rust-lang, compu_sprite"><title>sfml_rust::compute::managed::compu_sprite - Rust</title><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="../../../../dark.css"><link rel="stylesheet" type="text/css" href="../../../../light.css" id="themeStyle"><script src="../../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../../noscript.css"></noscript><link rel="shortcut icon" href="../../../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../../../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../../../sfml_rust/index.html'><div class='logo-container'><img src='../../../../rust-logo.png' alt='logo'></div></a><p class='location'>Module compu_sprite</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#structs">Structs</a></li></ul></div><p class='location'><a href='../../../index.html'>sfml_rust</a>::<wbr><a href='../../index.html'>compute</a>::<wbr><a href='../index.html'>managed</a></p><script>window.sidebarCurrent = {name: 'compu_sprite', ty: 'mod', relpath: '../'};</script><script defer src="../sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../../../settings.html"><img src="../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../../../src/sfml_rust/compute/managed/compu_sprite.rs.html#1-48' title='goto source code'>[src]</a></span><span class='in-band'>Module <a href='../../../index.html'>sfml_rust</a>::<wbr><a href='../../index.html'>compute</a>::<wbr><a href='../index.html'>managed</a>::<wbr><a class="mod" href=''>compu_sprite</a></span></h1><h2 id='structs' class='section-header'><a href="#structs">Structs</a></h2>
<table><tr class='module-item'><td><a class="struct" href="struct.CompuSprite.html" title='sfml_rust::compute::managed::compu_sprite::CompuSprite struct'>CompuSprite</a></td><td class='docblock-short'></td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../../../";window.currentCrate = "sfml_rust";</script><script src="../../../../aliases.js"></script><script src="../../../../main.js"></script><script defer src="../../../../search-index.js"></script></body></html>

@ -1,2 +1,2 @@
<!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="API documentation for the Rust `managed` mod in crate `sfml_rust`."><meta name="keywords" content="rust, rustlang, rust-lang, managed"><title>sfml_rust::compute::managed - Rust</title><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="../../../dark.css"><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script src="../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="shortcut icon" href="../../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../../sfml_rust/index.html'><div class='logo-container'><img src='../../../rust-logo.png' alt='logo'></div></a><p class='location'>Module managed</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#modules">Modules</a></li></ul></div><p class='location'><a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>compute</a></p><script>window.sidebarCurrent = {name: 'managed', ty: 'mod', relpath: '../'};</script><script defer src="../sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../../settings.html"><img src="../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../../src/sfml_rust/compute/managed/mod.rs.html#2-5' title='goto source code'>[src]</a></span><span class='in-band'>Module <a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>compute</a>::<wbr><a class="mod" href=''>managed</a></span></h1><h2 id='modules' class='section-header'><a href="#modules">Modules</a></h2>
<table><tr class='module-item'><td><a class="mod" href="compu_buffer/index.html" title='sfml_rust::compute::managed::compu_buffer mod'>compu_buffer</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="mod" href="compu_kernel/index.html" title='sfml_rust::compute::managed::compu_kernel mod'>compu_kernel</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="mod" href="compu_sprite/index.html" title='sfml_rust::compute::managed::compu_sprite mod'>compu_sprite</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="mod" href="handles/index.html" title='sfml_rust::compute::managed::handles mod'>handles</a></td><td class='docblock-short'></td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../../";window.currentCrate = "sfml_rust";</script><script src="../../../aliases.js"></script><script src="../../../main.js"></script><script defer src="../../../search-index.js"></script></body></html>
<!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="API documentation for the Rust `managed` mod in crate `sfml_rust`."><meta name="keywords" content="rust, rustlang, rust-lang, managed"><title>sfml_rust::compute::managed - Rust</title><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="../../../dark.css"><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script src="../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="shortcut icon" href="../../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../../sfml_rust/index.html'><div class='logo-container'><img src='../../../rust-logo.png' alt='logo'></div></a><p class='location'>Module managed</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#modules">Modules</a></li></ul></div><p class='location'><a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>compute</a></p><script>window.sidebarCurrent = {name: 'managed', ty: 'mod', relpath: '../'};</script><script defer src="../sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../../settings.html"><img src="../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../../src/sfml_rust/compute/managed/mod.rs.html#2-4' title='goto source code'>[src]</a></span><span class='in-band'>Module <a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>compute</a>::<wbr><a class="mod" href=''>managed</a></span></h1><h2 id='modules' class='section-header'><a href="#modules">Modules</a></h2>
<table><tr class='module-item'><td><a class="mod" href="compu_buffer/index.html" title='sfml_rust::compute::managed::compu_buffer mod'>compu_buffer</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="mod" href="compu_kernel/index.html" title='sfml_rust::compute::managed::compu_kernel mod'>compu_kernel</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="mod" href="handles/index.html" title='sfml_rust::compute::managed::handles mod'>handles</a></td><td class='docblock-short'></td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../../";window.currentCrate = "sfml_rust";</script><script src="../../../aliases.js"></script><script src="../../../main.js"></script><script defer src="../../../search-index.js"></script></body></html>

@ -1 +1 @@
initSidebarItems({"mod":[["compu_buffer",""],["compu_kernel",""],["compu_sprite",""],["handles",""]]});
initSidebarItems({"mod":[["compu_buffer",""],["compu_kernel",""],["handles",""]]});

@ -0,0 +1,2 @@
<!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="API documentation for the Rust `compu_sprite` mod in crate `sfml_rust`."><meta name="keywords" content="rust, rustlang, rust-lang, compu_sprite"><title>sfml_rust::drawables::compu_sprite - Rust</title><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="../../../dark.css"><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script src="../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="shortcut icon" href="../../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../../sfml_rust/index.html'><div class='logo-container'><img src='../../../rust-logo.png' alt='logo'></div></a><p class='location'>Module compu_sprite</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#structs">Structs</a></li></ul></div><p class='location'><a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>drawables</a></p><script>window.sidebarCurrent = {name: 'compu_sprite', ty: 'mod', relpath: '../'};</script><script defer src="../sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../../settings.html"><img src="../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../../src/sfml_rust/drawables/compu_sprite.rs.html#1-59' title='goto source code'>[src]</a></span><span class='in-band'>Module <a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>drawables</a>::<wbr><a class="mod" href=''>compu_sprite</a></span></h1><h2 id='structs' class='section-header'><a href="#structs">Structs</a></h2>
<table><tr class='module-item'><td><a class="struct" href="struct.CompuSprite.html" title='sfml_rust::drawables::compu_sprite::CompuSprite struct'>CompuSprite</a></td><td class='docblock-short'></td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../../";window.currentCrate = "sfml_rust";</script><script src="../../../aliases.js"></script><script src="../../../main.js"></script><script defer src="../../../search-index.js"></script></body></html>

@ -0,0 +1,2 @@
<!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="API documentation for the Rust `drawables` mod in crate `sfml_rust`."><meta name="keywords" content="rust, rustlang, rust-lang, drawables"><title>sfml_rust::drawables - Rust</title><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="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../sfml_rust/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Module drawables</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#modules">Modules</a></li></ul></div><p class='location'><a href='../index.html'>sfml_rust</a></p><script>window.sidebarCurrent = {name: 'drawables', ty: 'mod', relpath: '../'};</script><script defer src="../sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/sfml_rust/drawables/mod.rs.html#1-4' title='goto source code'>[src]</a></span><span class='in-band'>Module <a href='../index.html'>sfml_rust</a>::<wbr><a class="mod" href=''>drawables</a></span></h1><h2 id='modules' class='section-header'><a href="#modules">Modules</a></h2>
<table><tr class='module-item'><td><a class="mod" href="compu_sprite/index.html" title='sfml_rust::drawables::compu_sprite mod'>compu_sprite</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="mod" href="polygon/index.html" title='sfml_rust::drawables::polygon mod'>polygon</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="mod" href="rect/index.html" title='sfml_rust::drawables::rect mod'>rect</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="mod" href="sprite/index.html" title='sfml_rust::drawables::sprite mod'>sprite</a></td><td class='docblock-short'></td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "sfml_rust";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>

@ -0,0 +1,3 @@
<!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="API documentation for the Rust `polygon` mod in crate `sfml_rust`."><meta name="keywords" content="rust, rustlang, rust-lang, polygon"><title>sfml_rust::drawables::polygon - Rust</title><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="../../../dark.css"><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script src="../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="shortcut icon" href="../../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../../sfml_rust/index.html'><div class='logo-container'><img src='../../../rust-logo.png' alt='logo'></div></a><p class='location'>Module polygon</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#structs">Structs</a></li></ul></div><p class='location'><a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>drawables</a></p><script>window.sidebarCurrent = {name: 'polygon', ty: 'mod', relpath: '../'};</script><script defer src="../sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../../settings.html"><img src="../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../../src/sfml_rust/drawables/polygon.rs.html#1-68' title='goto source code'>[src]</a></span><span class='in-band'>Module <a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>drawables</a>::<wbr><a class="mod" href=''>polygon</a></span></h1><h2 id='structs' class='section-header'><a href="#structs">Structs</a></h2>
<table><tr class='module-item'><td><a class="struct" href="struct.Polygon.html" title='sfml_rust::drawables::polygon::Polygon struct'>Polygon</a></td><td class='docblock-short'><p>Convex multi verticy polygon</p>
</td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../../";window.currentCrate = "sfml_rust";</script><script src="../../../aliases.js"></script><script src="../../../main.js"></script><script defer src="../../../search-index.js"></script></body></html>

@ -0,0 +1 @@
initSidebarItems({"struct":[["Polygon","Convex multi verticy polygon"]]});

@ -0,0 +1,32 @@
<!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="API documentation for the Rust `Polygon` struct in crate `sfml_rust`."><meta name="keywords" content="rust, rustlang, rust-lang, Polygon"><title>sfml_rust::drawables::polygon::Polygon - Rust</title><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="../../../dark.css"><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script src="../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="shortcut icon" href="../../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../../down-arrow.svg");}</style></head><body class="rustdoc struct"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../../sfml_rust/index.html'><div class='logo-container'><img src='../../../rust-logo.png' alt='logo'></div></a><p class='location'>Struct Polygon</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#fields">Fields</a><div class="sidebar-links"><a href="#structfield.verts">verts</a></div><a class="sidebar-title" href="#methods">Methods</a><div class="sidebar-links"><a href="#method.new">new</a></div><a class="sidebar-title" href="#implementations">Trait Implementations</a><div class="sidebar-links"><a href="#impl-Clone">Clone</a><a href="#impl-Debug">Debug</a><a href="#impl-Drawable">Drawable</a></div><a class="sidebar-title" href="#synthetic-implementations">Auto Trait Implementations</a><div class="sidebar-links"><a href="#impl-RefUnwindSafe">RefUnwindSafe</a><a href="#impl-Send">Send</a><a href="#impl-Sync">Sync</a><a href="#impl-Unpin">Unpin</a><a href="#impl-UnwindSafe">UnwindSafe</a></div><a class="sidebar-title" href="#blanket-implementations">Blanket Implementations</a><div class="sidebar-links"><a href="#impl-Any">Any</a><a href="#impl-Borrow%3CT%3E">Borrow&lt;T&gt;</a><a href="#impl-BorrowMut%3CT%3E">BorrowMut&lt;T&gt;</a><a href="#impl-Content">Content</a><a href="#impl-Erased">Erased</a><a href="#impl-From%3CT%3E">From&lt;T&gt;</a><a href="#impl-Into%3CU%3E">Into&lt;U&gt;</a><a href="#impl-SafeBorrow%3CT%3E">SafeBorrow&lt;T&gt;</a><a href="#impl-Same%3CT%3E">Same&lt;T&gt;</a><a href="#impl-SetParameter">SetParameter</a><a href="#impl-SupersetOf%3CSS%3E">SupersetOf&lt;SS&gt;</a><a href="#impl-ToOwned">ToOwned</a><a href="#impl-TryFrom%3CU%3E">TryFrom&lt;U&gt;</a><a href="#impl-TryInto%3CU%3E">TryInto&lt;U&gt;</a></div></div><p class='location'><a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>drawables</a>::<wbr><a href='index.html'>polygon</a></p><script>window.sidebarCurrent = {name: 'Polygon', ty: 'struct', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../../settings.html"><img src="../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../../src/sfml_rust/drawables/polygon.rs.html#10-16' title='goto source code'>[src]</a></span><span class='in-band'>Struct <a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>drawables</a>::<wbr><a href='index.html'>polygon</a>::<wbr><a class="struct" href=''>Polygon</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class='rust struct'>pub struct Polygon {
pub verts: <a class="enum" href="../../../sfml_rust/util/vertex/enum.VertexTypes.html" title="enum sfml_rust::util::vertex::VertexTypes">VertexTypes</a>,
// some fields omitted
}</pre></div><div class='docblock'><p>Convex multi verticy polygon</p>
</div><h2 id='fields' class='fields small-section-header'>
Fields<a href='#fields' class='anchor'></a></h2><span id="structfield.verts" class="structfield small-section-header"><a href="#structfield.verts" class="anchor field"></a><code id="verts.v">verts: <a class="enum" href="../../../sfml_rust/util/vertex/enum.VertexTypes.html" title="enum sfml_rust::util::vertex::VertexTypes">VertexTypes</a></code></span><h2 id='methods' class='small-section-header'>Methods<a href='#methods' class='anchor'></a></h2><h3 id='impl' class='impl'><code class='in-band'>impl <a class="struct" href="../../../sfml_rust/drawables/polygon/struct.Polygon.html" title="struct sfml_rust::drawables::polygon::Polygon">Polygon</a></code><a href='#impl' class='anchor'></a><a class='srclink' href='../../../src/sfml_rust/drawables/polygon.rs.html#19-62' title='goto source code'>[src]</a></h3><div class='docblock'><p>Container class which implements drawable.</p>
</div><div class='impl-items'><h4 id='method.new' class="method"><code id='new.v'>pub fn <a href='#method.new' class='fnname'>new</a>(position: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a>, size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a>, depth: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>) -&gt; <a class="struct" href="../../../sfml_rust/drawables/polygon/struct.Polygon.html" title="struct sfml_rust::drawables::polygon::Polygon">Polygon</a></code><a class='srclink' href='../../../src/sfml_rust/drawables/polygon.rs.html#22-61' title='goto source code'>[src]</a></h4><div class='docblock'></div></div><h2 id='implementations' class='small-section-header'>Trait Implementations<a href='#implementations' class='anchor'></a></h2><div id='implementations-list'><h3 id='impl-Drawable' class='impl'><code class='in-band'>impl <a class="trait" href="../../../sfml_rust/canvas/canvas_frame/trait.Drawable.html" title="trait sfml_rust::canvas::canvas_frame::Drawable">Drawable</a> for <a class="struct" href="../../../sfml_rust/drawables/polygon/struct.Polygon.html" title="struct sfml_rust::drawables::polygon::Polygon">Polygon</a></code><a href='#impl-Drawable' class='anchor'></a><a class='srclink' href='../../../src/sfml_rust/drawables/polygon.rs.html#63-68' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.get' class="method hidden"><code id='get.v'>fn <a href='../../../sfml_rust/canvas/canvas_frame/trait.Drawable.html#tymethod.get' class='fnname'>get</a>(&amp;self) -&gt; <a class="enum" href="../../../sfml_rust/util/vertex/enum.VertexTypes.html" title="enum sfml_rust::util::vertex::VertexTypes">VertexTypes</a></code><a class='srclink' href='../../../src/sfml_rust/drawables/polygon.rs.html#64-66' title='goto source code'>[src]</a></h4></div><h3 id='impl-Clone' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="struct" href="../../../sfml_rust/drawables/polygon/struct.Polygon.html" title="struct sfml_rust::drawables::polygon::Polygon">Polygon</a></code><a href='#impl-Clone' class='anchor'></a><a class='srclink' href='../../../src/sfml_rust/drawables/polygon.rs.html#9' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.clone' class="method hidden"><code id='clone.v'>fn <a href='https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone' class='fnname'>clone</a>(&amp;self) -&gt; <a class="struct" href="../../../sfml_rust/drawables/polygon/struct.Polygon.html" title="struct sfml_rust::drawables::polygon::Polygon">Polygon</a></code><a class='srclink' href='../../../src/sfml_rust/drawables/polygon.rs.html#9' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Returns a copy of the value. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone">Read more</a></p>
</div><h4 id='method.clone_from' class="method hidden"><code id='clone_from.v'>fn <a href='https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#method.clone_from' class='fnname'>clone_from</a>(&amp;mut self, source: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>Self)</code><span class='since' title='Stable since Rust version 1.0.0'>1.0.0</span><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/clone.rs.html#131-133' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#method.clone_from">Read more</a></p>
</div></div><h3 id='impl-Debug' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="../../../sfml_rust/drawables/polygon/struct.Polygon.html" title="struct sfml_rust::drawables::polygon::Polygon">Polygon</a></code><a href='#impl-Debug' class='anchor'></a><a class='srclink' href='../../../src/sfml_rust/drawables/polygon.rs.html#9' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.fmt' class="method hidden"><code id='fmt.v'>fn <a href='https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt' class='fnname'>fmt</a>(&amp;self, f: &amp;mut <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a>) -&gt; <a class="type" href="https://doc.rust-lang.org/nightly/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></code><a class='srclink' href='../../../src/sfml_rust/drawables/polygon.rs.html#9' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></p>
</div></div></div><h2 id='synthetic-implementations' class='small-section-header'>Auto Trait Implementations<a href='#synthetic-implementations' class='anchor'></a></h2><div id='synthetic-implementations-list'><h3 id='impl-Send' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="../../../sfml_rust/drawables/polygon/struct.Polygon.html" title="struct sfml_rust::drawables::polygon::Polygon">Polygon</a></code><a href='#impl-Send' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-Unpin' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="../../../sfml_rust/drawables/polygon/struct.Polygon.html" title="struct sfml_rust::drawables::polygon::Polygon">Polygon</a></code><a href='#impl-Unpin' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-Sync' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="../../../sfml_rust/drawables/polygon/struct.Polygon.html" title="struct sfml_rust::drawables::polygon::Polygon">Polygon</a></code><a href='#impl-Sync' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-UnwindSafe' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.UnwindSafe.html" title="trait std::panic::UnwindSafe">UnwindSafe</a> for <a class="struct" href="../../../sfml_rust/drawables/polygon/struct.Polygon.html" title="struct sfml_rust::drawables::polygon::Polygon">Polygon</a></code><a href='#impl-UnwindSafe' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-RefUnwindSafe' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.RefUnwindSafe.html" title="trait std::panic::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="../../../sfml_rust/drawables/polygon/struct.Polygon.html" title="struct sfml_rust::drawables::polygon::Polygon">Polygon</a></code><a href='#impl-RefUnwindSafe' class='anchor'></a></h3><div class='impl-items'></div></div><h2 id='blanket-implementations' class='small-section-header'>Blanket Implementations<a href='#blanket-implementations' class='anchor'></a></h2><div id='blanket-implementations-list'><h3 id='impl-ToOwned' class='impl'><code class='in-band'>impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html" title="trait alloc::borrow::ToOwned">ToOwned</a> for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,&nbsp;</span></code><a href='#impl-ToOwned' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#81-92' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Owned' class="type"><code id='Owned.t'>type <a href='https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#associatedtype.Owned' class="type">Owned</a> = T</code></h4><div class='docblock'><p>The resulting type after obtaining ownership.</p>
</div><h4 id='method.to_owned' class="method hidden"><code id='to_owned.v'>fn <a href='https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#tymethod.to_owned' class='fnname'>to_owned</a>(&amp;self) -&gt; T</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#85-87' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Creates owned data from borrowed data, usually by cloning. <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#tymethod.to_owned">Read more</a></p>
</div><h4 id='method.clone_into' class="method hidden"><code id='clone_into.v'>fn <a href='https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#method.clone_into' class='fnname'>clone_into</a>(&amp;self, target: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut </a>T)</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#89-91' title='goto source code'>[src]</a></h4><div class='stability hidden'><div class='stab unstable'><details><summary><span class='emoji'>🔬</span> This is a nightly-only experimental API. (<code>toowned_clone_into</code>)</summary><p>recently added</p>
</details></div></div><div class='docblock hidden'><p>Uses borrowed data to replace owned data, usually by cloning. <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#method.clone_into">Read more</a></p>
</div></div><h3 id='impl-Into%3CU%3E' class='impl'><code class='in-band'>impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;U&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt;,&nbsp;</span></code><a href='#impl-Into%3CU%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#544-549' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.into' class="method hidden"><code id='into.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.Into.html#tymethod.into' class='fnname'>into</a>(self) -&gt; U</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#546-548' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id='impl-From%3CT%3E' class='impl'><code class='in-band'>impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt; for T</code><a href='#impl-From%3CT%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#553-555' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.from' class="method hidden"><code id='from.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from' class='fnname'>from</a>(t: T) -&gt; T</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#554' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id='impl-TryFrom%3CU%3E' class='impl'><code class='in-band'>impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;T&gt;,&nbsp;</span></code><a href='#impl-TryFrom%3CU%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#572-578' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Error' class="type"><code id='Error.t'>type <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error' class="type">Error</a> = <a class="enum" href="https://doc.rust-lang.org/nightly/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></code></h4><div class='docblock'><p>The type returned in the event of a conversion error.</p>
</div><h4 id='method.try_from' class="method hidden"><code id='try_from.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#tymethod.try_from' class='fnname'>try_from</a>(value: U) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;T, &lt;T as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt;&gt;::<a class="type" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#575-577' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id='impl-TryInto%3CU%3E' class='impl'><code class='in-band'>impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a>&lt;U&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;,&nbsp;</span></code><a href='#impl-TryInto%3CU%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#560-567' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Error-1' class="type"><code id='Error.t-1'>type <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#associatedtype.Error' class="type">Error</a> = &lt;U as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="type" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></code></h4><div class='docblock'><p>The type returned in the event of a conversion error.</p>
</div><h4 id='method.try_into' class="method hidden"><code id='try_into.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#tymethod.try_into' class='fnname'>try_into</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;U, &lt;U as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="type" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#564-566' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id='impl-BorrowMut%3CT%3E' class='impl'><code class='in-band'>impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a>&lt;T&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></code><a href='#impl-BorrowMut%3CT%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#218-220' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.borrow_mut' class="method hidden"><code id='borrow_mut.v'>fn <a href='https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut' class='fnname'>borrow_mut</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut </a>T</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#219' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></p>
</div></div><h3 id='impl-Borrow%3CT%3E' class='impl'><code class='in-band'>impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a>&lt;T&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></code><a href='#impl-Borrow%3CT%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#213-215' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.borrow' class="method hidden"><code id='borrow.v'>fn <a href='https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow' class='fnname'>borrow</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>T</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#214' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></p>
</div></div><h3 id='impl-Any' class='impl'><code class='in-band'>impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></code><a href='#impl-Any' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/any.rs.html#100-102' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.type_id' class="method hidden"><code id='type_id.v'>fn <a href='https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id' class='fnname'>type_id</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/any.rs.html#101' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id">Read more</a></p>
</div></div><h3 id='impl-SetParameter' class='impl'><code class='in-band'>impl&lt;T&gt; SetParameter for T</code><a href='#impl-SetParameter' class='anchor'></a></h3><div class='impl-items'><h4 id='method.set' class="method hidden"><code id='set.v'>fn <a href='#method.set' class='fnname'>set</a>&lt;T&gt;(&amp;mut self, value: T) -&gt; &lt;T as Parameter&lt;Self&gt;&gt;::Result <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: Parameter&lt;Self&gt;,&nbsp;</span></code></h4><div class='docblock hidden'><p>Sets <code>value</code> as a parameter of <code>self</code>.</p>
</div></div><h3 id='impl-Same%3CT%3E' class='impl'><code class='in-band'>impl&lt;T&gt; Same&lt;T&gt; for T</code><a href='#impl-Same%3CT%3E' class='anchor'></a></h3><div class='impl-items'><h4 id='associatedtype.Output' class="type"><code id='Output.t'>type <a href='#associatedtype.Output' class="type">Output</a> = T</code></h4><div class='docblock'><p>Should always be <code>Self</code></p>
</div></div><h3 id='impl-SupersetOf%3CSS%3E' class='impl'><code class='in-band'>impl&lt;SS, SP&gt; SupersetOf&lt;SS&gt; for SP <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;SS: SubsetOf&lt;SP&gt;,&nbsp;</span></code><a href='#impl-SupersetOf%3CSS%3E' class='anchor'></a></h3><div class='impl-items'><h4 id='method.to_subset' class="method hidden"><code id='to_subset.v'>fn <a href='#method.to_subset' class='fnname'>to_subset</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;SS&gt;</code></h4><div class='docblock hidden'><p>The inverse inclusion map: attempts to construct <code>self</code> from the equivalent element of its superset. <a href="#method.to_subset">Read more</a></p>
</div><h4 id='method.is_in_subset' class="method hidden"><code id='is_in_subset.v'>fn <a href='#method.is_in_subset' class='fnname'>is_in_subset</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></h4><div class='docblock hidden'><p>Checks if <code>self</code> is actually part of its subset <code>T</code> (and can be converted to it).</p>
</div><h4 id='method.to_subset_unchecked' class="method hidden"><code id='to_subset_unchecked.v'>unsafe fn <a href='#method.to_subset_unchecked' class='fnname'>to_subset_unchecked</a>(&amp;self) -&gt; SS</code></h4><div class='docblock hidden'><p>Use with care! Same as <code>self.to_subset</code> but without any property checks. Always succeeds.</p>
</div><h4 id='method.from_subset' class="method hidden"><code id='from_subset.v'>fn <a href='#method.from_subset' class='fnname'>from_subset</a>(element: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>SS) -&gt; SP</code></h4><div class='docblock hidden'><p>The inclusion map: converts <code>self</code> to the equivalent element of its superset.</p>
</div></div><h3 id='impl-Content' class='impl'><code class='in-band'>impl&lt;T&gt; Content for T</code><a href='#impl-Content' class='anchor'></a></h3><div class='impl-items'><h4 id='method.ref_from_ptr' class="method hidden"><code id='ref_from_ptr.v'>fn <a href='#method.ref_from_ptr' class='fnname'>ref_from_ptr</a>(ptr: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.pointer.html">*mut </a><a class="enum" href="https://doc.rust-lang.org/nightly/core/ffi/enum.c_void.html" title="enum core::ffi::c_void">c_void</a>, size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.pointer.html">*mut T</a>&gt;</code></h4><div class='docblock hidden'><p>Builds a pointer to this type from a raw pointer.</p>
</div><h4 id='method.is_size_suitable' class="method hidden"><code id='is_size_suitable.v'>fn <a href='#method.is_size_suitable' class='fnname'>is_size_suitable</a>(size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></h4><div class='docblock hidden'><p>Returns true if the size is suitable to store a type like this.</p>
</div><h4 id='method.indiv_size' class="method hidden"><code id='indiv_size.v'>fn <a href='#method.indiv_size' class='fnname'>indiv_size</a>() -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code></h4><div class='docblock hidden'><p>Returns the size of an individual element.</p>
</div></div><h3 id='impl-Erased' class='impl'><code class='in-band'>impl&lt;T&gt; Erased for T</code><a href='#impl-Erased' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-SafeBorrow%3CT%3E' class='impl'><code class='in-band'>impl&lt;T&gt; SafeBorrow&lt;T&gt; for T</code><a href='#impl-SafeBorrow%3CT%3E' class='anchor'></a></h3><div class='impl-items'></div></div></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../../";window.currentCrate = "sfml_rust";</script><script src="../../../aliases.js"></script><script src="../../../main.js"></script><script defer src="../../../search-index.js"></script></body></html>

@ -0,0 +1,2 @@
<!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="API documentation for the Rust `rect` mod in crate `sfml_rust`."><meta name="keywords" content="rust, rustlang, rust-lang, rect"><title>sfml_rust::drawables::rect - Rust</title><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="../../../dark.css"><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script src="../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="shortcut icon" href="../../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../../sfml_rust/index.html'><div class='logo-container'><img src='../../../rust-logo.png' alt='logo'></div></a><p class='location'>Module rect</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#structs">Structs</a></li></ul></div><p class='location'><a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>drawables</a></p><script>window.sidebarCurrent = {name: 'rect', ty: 'mod', relpath: '../'};</script><script defer src="../sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../../settings.html"><img src="../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../../src/sfml_rust/drawables/rect.rs.html#1-57' title='goto source code'>[src]</a></span><span class='in-band'>Module <a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>drawables</a>::<wbr><a class="mod" href=''>rect</a></span></h1><h2 id='structs' class='section-header'><a href="#structs">Structs</a></h2>
<table><tr class='module-item'><td><a class="struct" href="struct.Rect.html" title='sfml_rust::drawables::rect::Rect struct'>Rect</a></td><td class='docblock-short'></td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../../";window.currentCrate = "sfml_rust";</script><script src="../../../aliases.js"></script><script src="../../../main.js"></script><script defer src="../../../search-index.js"></script></body></html>

@ -0,0 +1 @@
initSidebarItems({"struct":[["Rect",""]]});

@ -0,0 +1,31 @@
<!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="API documentation for the Rust `Rect` struct in crate `sfml_rust`."><meta name="keywords" content="rust, rustlang, rust-lang, Rect"><title>sfml_rust::drawables::rect::Rect - Rust</title><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="../../../dark.css"><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script src="../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="shortcut icon" href="../../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../../down-arrow.svg");}</style></head><body class="rustdoc struct"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../../sfml_rust/index.html'><div class='logo-container'><img src='../../../rust-logo.png' alt='logo'></div></a><p class='location'>Struct Rect</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#fields">Fields</a><div class="sidebar-links"><a href="#structfield.verts">verts</a></div><a class="sidebar-title" href="#methods">Methods</a><div class="sidebar-links"><a href="#method.new">new</a></div><a class="sidebar-title" href="#implementations">Trait Implementations</a><div class="sidebar-links"><a href="#impl-Clone">Clone</a><a href="#impl-Debug">Debug</a><a href="#impl-Drawable">Drawable</a></div><a class="sidebar-title" href="#synthetic-implementations">Auto Trait Implementations</a><div class="sidebar-links"><a href="#impl-RefUnwindSafe">RefUnwindSafe</a><a href="#impl-Send">Send</a><a href="#impl-Sync">Sync</a><a href="#impl-Unpin">Unpin</a><a href="#impl-UnwindSafe">UnwindSafe</a></div><a class="sidebar-title" href="#blanket-implementations">Blanket Implementations</a><div class="sidebar-links"><a href="#impl-Any">Any</a><a href="#impl-Borrow%3CT%3E">Borrow&lt;T&gt;</a><a href="#impl-BorrowMut%3CT%3E">BorrowMut&lt;T&gt;</a><a href="#impl-Content">Content</a><a href="#impl-Erased">Erased</a><a href="#impl-From%3CT%3E">From&lt;T&gt;</a><a href="#impl-Into%3CU%3E">Into&lt;U&gt;</a><a href="#impl-SafeBorrow%3CT%3E">SafeBorrow&lt;T&gt;</a><a href="#impl-Same%3CT%3E">Same&lt;T&gt;</a><a href="#impl-SetParameter">SetParameter</a><a href="#impl-SupersetOf%3CSS%3E">SupersetOf&lt;SS&gt;</a><a href="#impl-ToOwned">ToOwned</a><a href="#impl-TryFrom%3CU%3E">TryFrom&lt;U&gt;</a><a href="#impl-TryInto%3CU%3E">TryInto&lt;U&gt;</a></div></div><p class='location'><a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>drawables</a>::<wbr><a href='index.html'>rect</a></p><script>window.sidebarCurrent = {name: 'Rect', ty: 'struct', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../../settings.html"><img src="../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../../src/sfml_rust/drawables/rect.rs.html#6-12' title='goto source code'>[src]</a></span><span class='in-band'>Struct <a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>drawables</a>::<wbr><a href='index.html'>rect</a>::<wbr><a class="struct" href=''>Rect</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class='rust struct'>pub struct Rect {
pub verts: <a class="enum" href="../../../sfml_rust/util/vertex/enum.VertexTypes.html" title="enum sfml_rust::util::vertex::VertexTypes">VertexTypes</a>,
// some fields omitted
}</pre></div><div class='docblock'></div><h2 id='fields' class='fields small-section-header'>
Fields<a href='#fields' class='anchor'></a></h2><span id="structfield.verts" class="structfield small-section-header"><a href="#structfield.verts" class="anchor field"></a><code id="verts.v">verts: <a class="enum" href="../../../sfml_rust/util/vertex/enum.VertexTypes.html" title="enum sfml_rust::util::vertex::VertexTypes">VertexTypes</a></code></span><h2 id='methods' class='small-section-header'>Methods<a href='#methods' class='anchor'></a></h2><h3 id='impl' class='impl'><code class='in-band'>impl <a class="struct" href="../../../sfml_rust/drawables/rect/struct.Rect.html" title="struct sfml_rust::drawables::rect::Rect">Rect</a></code><a href='#impl' class='anchor'></a><a class='srclink' href='../../../src/sfml_rust/drawables/rect.rs.html#15-51' title='goto source code'>[src]</a></h3><div class='docblock'><p>Container class which implements drawable.</p>
</div><div class='impl-items'><h4 id='method.new' class="method"><code id='new.v'>pub fn <a href='#method.new' class='fnname'>new</a>(position: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a>, size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a>, depth: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>) -&gt; <a class="struct" href="../../../sfml_rust/drawables/rect/struct.Rect.html" title="struct sfml_rust::drawables::rect::Rect">Rect</a></code><a class='srclink' href='../../../src/sfml_rust/drawables/rect.rs.html#18-50' title='goto source code'>[src]</a></h4><div class='docblock'></div></div><h2 id='implementations' class='small-section-header'>Trait Implementations<a href='#implementations' class='anchor'></a></h2><div id='implementations-list'><h3 id='impl-Drawable' class='impl'><code class='in-band'>impl <a class="trait" href="../../../sfml_rust/canvas/canvas_frame/trait.Drawable.html" title="trait sfml_rust::canvas::canvas_frame::Drawable">Drawable</a> for <a class="struct" href="../../../sfml_rust/drawables/rect/struct.Rect.html" title="struct sfml_rust::drawables::rect::Rect">Rect</a></code><a href='#impl-Drawable' class='anchor'></a><a class='srclink' href='../../../src/sfml_rust/drawables/rect.rs.html#52-57' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.get' class="method hidden"><code id='get.v'>fn <a href='../../../sfml_rust/canvas/canvas_frame/trait.Drawable.html#tymethod.get' class='fnname'>get</a>(&amp;self) -&gt; <a class="enum" href="../../../sfml_rust/util/vertex/enum.VertexTypes.html" title="enum sfml_rust::util::vertex::VertexTypes">VertexTypes</a></code><a class='srclink' href='../../../src/sfml_rust/drawables/rect.rs.html#53-55' title='goto source code'>[src]</a></h4></div><h3 id='impl-Clone' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="struct" href="../../../sfml_rust/drawables/rect/struct.Rect.html" title="struct sfml_rust::drawables::rect::Rect">Rect</a></code><a href='#impl-Clone' class='anchor'></a><a class='srclink' href='../../../src/sfml_rust/drawables/rect.rs.html#5' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.clone' class="method hidden"><code id='clone.v'>fn <a href='https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone' class='fnname'>clone</a>(&amp;self) -&gt; <a class="struct" href="../../../sfml_rust/drawables/rect/struct.Rect.html" title="struct sfml_rust::drawables::rect::Rect">Rect</a></code><a class='srclink' href='../../../src/sfml_rust/drawables/rect.rs.html#5' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Returns a copy of the value. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone">Read more</a></p>
</div><h4 id='method.clone_from' class="method hidden"><code id='clone_from.v'>fn <a href='https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#method.clone_from' class='fnname'>clone_from</a>(&amp;mut self, source: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>Self)</code><span class='since' title='Stable since Rust version 1.0.0'>1.0.0</span><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/clone.rs.html#131-133' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#method.clone_from">Read more</a></p>
</div></div><h3 id='impl-Debug' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="../../../sfml_rust/drawables/rect/struct.Rect.html" title="struct sfml_rust::drawables::rect::Rect">Rect</a></code><a href='#impl-Debug' class='anchor'></a><a class='srclink' href='../../../src/sfml_rust/drawables/rect.rs.html#5' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.fmt' class="method hidden"><code id='fmt.v'>fn <a href='https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt' class='fnname'>fmt</a>(&amp;self, f: &amp;mut <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a>) -&gt; <a class="type" href="https://doc.rust-lang.org/nightly/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></code><a class='srclink' href='../../../src/sfml_rust/drawables/rect.rs.html#5' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></p>
</div></div></div><h2 id='synthetic-implementations' class='small-section-header'>Auto Trait Implementations<a href='#synthetic-implementations' class='anchor'></a></h2><div id='synthetic-implementations-list'><h3 id='impl-Send' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="../../../sfml_rust/drawables/rect/struct.Rect.html" title="struct sfml_rust::drawables::rect::Rect">Rect</a></code><a href='#impl-Send' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-Unpin' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="../../../sfml_rust/drawables/rect/struct.Rect.html" title="struct sfml_rust::drawables::rect::Rect">Rect</a></code><a href='#impl-Unpin' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-Sync' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="../../../sfml_rust/drawables/rect/struct.Rect.html" title="struct sfml_rust::drawables::rect::Rect">Rect</a></code><a href='#impl-Sync' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-UnwindSafe' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.UnwindSafe.html" title="trait std::panic::UnwindSafe">UnwindSafe</a> for <a class="struct" href="../../../sfml_rust/drawables/rect/struct.Rect.html" title="struct sfml_rust::drawables::rect::Rect">Rect</a></code><a href='#impl-UnwindSafe' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-RefUnwindSafe' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.RefUnwindSafe.html" title="trait std::panic::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="../../../sfml_rust/drawables/rect/struct.Rect.html" title="struct sfml_rust::drawables::rect::Rect">Rect</a></code><a href='#impl-RefUnwindSafe' class='anchor'></a></h3><div class='impl-items'></div></div><h2 id='blanket-implementations' class='small-section-header'>Blanket Implementations<a href='#blanket-implementations' class='anchor'></a></h2><div id='blanket-implementations-list'><h3 id='impl-ToOwned' class='impl'><code class='in-band'>impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html" title="trait alloc::borrow::ToOwned">ToOwned</a> for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,&nbsp;</span></code><a href='#impl-ToOwned' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#81-92' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Owned' class="type"><code id='Owned.t'>type <a href='https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#associatedtype.Owned' class="type">Owned</a> = T</code></h4><div class='docblock'><p>The resulting type after obtaining ownership.</p>
</div><h4 id='method.to_owned' class="method hidden"><code id='to_owned.v'>fn <a href='https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#tymethod.to_owned' class='fnname'>to_owned</a>(&amp;self) -&gt; T</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#85-87' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Creates owned data from borrowed data, usually by cloning. <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#tymethod.to_owned">Read more</a></p>
</div><h4 id='method.clone_into' class="method hidden"><code id='clone_into.v'>fn <a href='https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#method.clone_into' class='fnname'>clone_into</a>(&amp;self, target: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut </a>T)</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#89-91' title='goto source code'>[src]</a></h4><div class='stability hidden'><div class='stab unstable'><details><summary><span class='emoji'>🔬</span> This is a nightly-only experimental API. (<code>toowned_clone_into</code>)</summary><p>recently added</p>
</details></div></div><div class='docblock hidden'><p>Uses borrowed data to replace owned data, usually by cloning. <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#method.clone_into">Read more</a></p>
</div></div><h3 id='impl-Into%3CU%3E' class='impl'><code class='in-band'>impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;U&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt;,&nbsp;</span></code><a href='#impl-Into%3CU%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#544-549' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.into' class="method hidden"><code id='into.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.Into.html#tymethod.into' class='fnname'>into</a>(self) -&gt; U</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#546-548' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id='impl-From%3CT%3E' class='impl'><code class='in-band'>impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt; for T</code><a href='#impl-From%3CT%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#553-555' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.from' class="method hidden"><code id='from.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from' class='fnname'>from</a>(t: T) -&gt; T</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#554' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id='impl-TryFrom%3CU%3E' class='impl'><code class='in-band'>impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;T&gt;,&nbsp;</span></code><a href='#impl-TryFrom%3CU%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#572-578' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Error' class="type"><code id='Error.t'>type <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error' class="type">Error</a> = <a class="enum" href="https://doc.rust-lang.org/nightly/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></code></h4><div class='docblock'><p>The type returned in the event of a conversion error.</p>
</div><h4 id='method.try_from' class="method hidden"><code id='try_from.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#tymethod.try_from' class='fnname'>try_from</a>(value: U) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;T, &lt;T as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt;&gt;::<a class="type" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#575-577' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id='impl-TryInto%3CU%3E' class='impl'><code class='in-band'>impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a>&lt;U&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;,&nbsp;</span></code><a href='#impl-TryInto%3CU%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#560-567' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Error-1' class="type"><code id='Error.t-1'>type <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#associatedtype.Error' class="type">Error</a> = &lt;U as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="type" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></code></h4><div class='docblock'><p>The type returned in the event of a conversion error.</p>
</div><h4 id='method.try_into' class="method hidden"><code id='try_into.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#tymethod.try_into' class='fnname'>try_into</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;U, &lt;U as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="type" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#564-566' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id='impl-BorrowMut%3CT%3E' class='impl'><code class='in-band'>impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a>&lt;T&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></code><a href='#impl-BorrowMut%3CT%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#218-220' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.borrow_mut' class="method hidden"><code id='borrow_mut.v'>fn <a href='https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut' class='fnname'>borrow_mut</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut </a>T</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#219' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></p>
</div></div><h3 id='impl-Borrow%3CT%3E' class='impl'><code class='in-band'>impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a>&lt;T&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></code><a href='#impl-Borrow%3CT%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#213-215' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.borrow' class="method hidden"><code id='borrow.v'>fn <a href='https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow' class='fnname'>borrow</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>T</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#214' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></p>
</div></div><h3 id='impl-Any' class='impl'><code class='in-band'>impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></code><a href='#impl-Any' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/any.rs.html#100-102' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.type_id' class="method hidden"><code id='type_id.v'>fn <a href='https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id' class='fnname'>type_id</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/any.rs.html#101' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id">Read more</a></p>
</div></div><h3 id='impl-SetParameter' class='impl'><code class='in-band'>impl&lt;T&gt; SetParameter for T</code><a href='#impl-SetParameter' class='anchor'></a></h3><div class='impl-items'><h4 id='method.set' class="method hidden"><code id='set.v'>fn <a href='#method.set' class='fnname'>set</a>&lt;T&gt;(&amp;mut self, value: T) -&gt; &lt;T as Parameter&lt;Self&gt;&gt;::Result <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: Parameter&lt;Self&gt;,&nbsp;</span></code></h4><div class='docblock hidden'><p>Sets <code>value</code> as a parameter of <code>self</code>.</p>
</div></div><h3 id='impl-Same%3CT%3E' class='impl'><code class='in-band'>impl&lt;T&gt; Same&lt;T&gt; for T</code><a href='#impl-Same%3CT%3E' class='anchor'></a></h3><div class='impl-items'><h4 id='associatedtype.Output' class="type"><code id='Output.t'>type <a href='#associatedtype.Output' class="type">Output</a> = T</code></h4><div class='docblock'><p>Should always be <code>Self</code></p>
</div></div><h3 id='impl-SupersetOf%3CSS%3E' class='impl'><code class='in-band'>impl&lt;SS, SP&gt; SupersetOf&lt;SS&gt; for SP <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;SS: SubsetOf&lt;SP&gt;,&nbsp;</span></code><a href='#impl-SupersetOf%3CSS%3E' class='anchor'></a></h3><div class='impl-items'><h4 id='method.to_subset' class="method hidden"><code id='to_subset.v'>fn <a href='#method.to_subset' class='fnname'>to_subset</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;SS&gt;</code></h4><div class='docblock hidden'><p>The inverse inclusion map: attempts to construct <code>self</code> from the equivalent element of its superset. <a href="#method.to_subset">Read more</a></p>
</div><h4 id='method.is_in_subset' class="method hidden"><code id='is_in_subset.v'>fn <a href='#method.is_in_subset' class='fnname'>is_in_subset</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></h4><div class='docblock hidden'><p>Checks if <code>self</code> is actually part of its subset <code>T</code> (and can be converted to it).</p>
</div><h4 id='method.to_subset_unchecked' class="method hidden"><code id='to_subset_unchecked.v'>unsafe fn <a href='#method.to_subset_unchecked' class='fnname'>to_subset_unchecked</a>(&amp;self) -&gt; SS</code></h4><div class='docblock hidden'><p>Use with care! Same as <code>self.to_subset</code> but without any property checks. Always succeeds.</p>
</div><h4 id='method.from_subset' class="method hidden"><code id='from_subset.v'>fn <a href='#method.from_subset' class='fnname'>from_subset</a>(element: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>SS) -&gt; SP</code></h4><div class='docblock hidden'><p>The inclusion map: converts <code>self</code> to the equivalent element of its superset.</p>
</div></div><h3 id='impl-Content' class='impl'><code class='in-band'>impl&lt;T&gt; Content for T</code><a href='#impl-Content' class='anchor'></a></h3><div class='impl-items'><h4 id='method.ref_from_ptr' class="method hidden"><code id='ref_from_ptr.v'>fn <a href='#method.ref_from_ptr' class='fnname'>ref_from_ptr</a>(ptr: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.pointer.html">*mut </a><a class="enum" href="https://doc.rust-lang.org/nightly/core/ffi/enum.c_void.html" title="enum core::ffi::c_void">c_void</a>, size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.pointer.html">*mut T</a>&gt;</code></h4><div class='docblock hidden'><p>Builds a pointer to this type from a raw pointer.</p>
</div><h4 id='method.is_size_suitable' class="method hidden"><code id='is_size_suitable.v'>fn <a href='#method.is_size_suitable' class='fnname'>is_size_suitable</a>(size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></h4><div class='docblock hidden'><p>Returns true if the size is suitable to store a type like this.</p>
</div><h4 id='method.indiv_size' class="method hidden"><code id='indiv_size.v'>fn <a href='#method.indiv_size' class='fnname'>indiv_size</a>() -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code></h4><div class='docblock hidden'><p>Returns the size of an individual element.</p>
</div></div><h3 id='impl-Erased' class='impl'><code class='in-band'>impl&lt;T&gt; Erased for T</code><a href='#impl-Erased' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-SafeBorrow%3CT%3E' class='impl'><code class='in-band'>impl&lt;T&gt; SafeBorrow&lt;T&gt; for T</code><a href='#impl-SafeBorrow%3CT%3E' class='anchor'></a></h3><div class='impl-items'></div></div></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../../";window.currentCrate = "sfml_rust";</script><script src="../../../aliases.js"></script><script src="../../../main.js"></script><script defer src="../../../search-index.js"></script></body></html>

@ -0,0 +1 @@
initSidebarItems({"mod":[["compu_sprite",""],["polygon",""],["rect",""],["sprite",""]]});

@ -0,0 +1,2 @@
<!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="API documentation for the Rust `sprite` mod in crate `sfml_rust`."><meta name="keywords" content="rust, rustlang, rust-lang, sprite"><title>sfml_rust::drawables::sprite - Rust</title><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="../../../dark.css"><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script src="../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="shortcut icon" href="../../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../../sfml_rust/index.html'><div class='logo-container'><img src='../../../rust-logo.png' alt='logo'></div></a><p class='location'>Module sprite</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#structs">Structs</a></li></ul></div><p class='location'><a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>drawables</a></p><script>window.sidebarCurrent = {name: 'sprite', ty: 'mod', relpath: '../'};</script><script defer src="../sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../../settings.html"><img src="../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../../src/sfml_rust/drawables/sprite.rs.html#1-61' title='goto source code'>[src]</a></span><span class='in-band'>Module <a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>drawables</a>::<wbr><a class="mod" href=''>sprite</a></span></h1><h2 id='structs' class='section-header'><a href="#structs">Structs</a></h2>
<table><tr class='module-item'><td><a class="struct" href="struct.Sprite.html" title='sfml_rust::drawables::sprite::Sprite struct'>Sprite</a></td><td class='docblock-short'></td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../../";window.currentCrate = "sfml_rust";</script><script src="../../../aliases.js"></script><script src="../../../main.js"></script><script defer src="../../../search-index.js"></script></body></html>

@ -1,12 +1,12 @@
<!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="API documentation for the Rust `Sprite` struct in crate `sfml_rust`."><meta name="keywords" content="rust, rustlang, rust-lang, Sprite"><title>sfml_rust::sprite::Sprite - Rust</title><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="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc struct"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../sfml_rust/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Struct Sprite</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#fields">Fields</a><div class="sidebar-links"><a href="#structfield.verts">verts</a></div><a class="sidebar-title" href="#methods">Methods</a><div class="sidebar-links"><a href="#method.new">new</a></div><a class="sidebar-title" href="#implementations">Trait Implementations</a><div class="sidebar-links"><a href="#impl-Clone">Clone</a><a href="#impl-Debug">Debug</a><a href="#impl-Drawable">Drawable</a></div><a class="sidebar-title" href="#synthetic-implementations">Auto Trait Implementations</a><div class="sidebar-links"><a href="#impl-RefUnwindSafe">RefUnwindSafe</a><a href="#impl-Send">Send</a><a href="#impl-Sync">Sync</a><a href="#impl-Unpin">Unpin</a><a href="#impl-UnwindSafe">UnwindSafe</a></div><a class="sidebar-title" href="#blanket-implementations">Blanket Implementations</a><div class="sidebar-links"><a href="#impl-Any">Any</a><a href="#impl-Borrow%3CT%3E">Borrow&lt;T&gt;</a><a href="#impl-BorrowMut%3CT%3E">BorrowMut&lt;T&gt;</a><a href="#impl-Content">Content</a><a href="#impl-Erased">Erased</a><a href="#impl-From%3CT%3E">From&lt;T&gt;</a><a href="#impl-Into%3CU%3E">Into&lt;U&gt;</a><a href="#impl-SafeBorrow%3CT%3E">SafeBorrow&lt;T&gt;</a><a href="#impl-Same%3CT%3E">Same&lt;T&gt;</a><a href="#impl-SetParameter">SetParameter</a><a href="#impl-SupersetOf%3CSS%3E">SupersetOf&lt;SS&gt;</a><a href="#impl-ToOwned">ToOwned</a><a href="#impl-TryFrom%3CU%3E">TryFrom&lt;U&gt;</a><a href="#impl-TryInto%3CU%3E">TryInto&lt;U&gt;</a></div></div><p class='location'><a href='../index.html'>sfml_rust</a>::<wbr><a href='index.html'>sprite</a></p><script>window.sidebarCurrent = {name: 'Sprite', ty: 'struct', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/sfml_rust/sprite.rs.html#9-15' title='goto source code'>[src]</a></span><span class='in-band'>Struct <a href='../index.html'>sfml_rust</a>::<wbr><a href='index.html'>sprite</a>::<wbr><a class="struct" href=''>Sprite</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class='rust struct'>pub struct Sprite {
pub verts: <a class="enum" href="../../sfml_rust/util/vertex/enum.VertexTypes.html" title="enum sfml_rust::util::vertex::VertexTypes">VertexTypes</a>,
<!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="API documentation for the Rust `Sprite` struct in crate `sfml_rust`."><meta name="keywords" content="rust, rustlang, rust-lang, Sprite"><title>sfml_rust::drawables::sprite::Sprite - Rust</title><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="../../../dark.css"><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script src="../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="shortcut icon" href="../../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../../down-arrow.svg");}</style></head><body class="rustdoc struct"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../../sfml_rust/index.html'><div class='logo-container'><img src='../../../rust-logo.png' alt='logo'></div></a><p class='location'>Struct Sprite</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#fields">Fields</a><div class="sidebar-links"><a href="#structfield.verts">verts</a></div><a class="sidebar-title" href="#methods">Methods</a><div class="sidebar-links"><a href="#method.new">new</a></div><a class="sidebar-title" href="#implementations">Trait Implementations</a><div class="sidebar-links"><a href="#impl-Clone">Clone</a><a href="#impl-Debug">Debug</a><a href="#impl-Drawable">Drawable</a></div><a class="sidebar-title" href="#synthetic-implementations">Auto Trait Implementations</a><div class="sidebar-links"><a href="#impl-RefUnwindSafe">RefUnwindSafe</a><a href="#impl-Send">Send</a><a href="#impl-Sync">Sync</a><a href="#impl-Unpin">Unpin</a><a href="#impl-UnwindSafe">UnwindSafe</a></div><a class="sidebar-title" href="#blanket-implementations">Blanket Implementations</a><div class="sidebar-links"><a href="#impl-Any">Any</a><a href="#impl-Borrow%3CT%3E">Borrow&lt;T&gt;</a><a href="#impl-BorrowMut%3CT%3E">BorrowMut&lt;T&gt;</a><a href="#impl-Content">Content</a><a href="#impl-Erased">Erased</a><a href="#impl-From%3CT%3E">From&lt;T&gt;</a><a href="#impl-Into%3CU%3E">Into&lt;U&gt;</a><a href="#impl-SafeBorrow%3CT%3E">SafeBorrow&lt;T&gt;</a><a href="#impl-Same%3CT%3E">Same&lt;T&gt;</a><a href="#impl-SetParameter">SetParameter</a><a href="#impl-SupersetOf%3CSS%3E">SupersetOf&lt;SS&gt;</a><a href="#impl-ToOwned">ToOwned</a><a href="#impl-TryFrom%3CU%3E">TryFrom&lt;U&gt;</a><a href="#impl-TryInto%3CU%3E">TryInto&lt;U&gt;</a></div></div><p class='location'><a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>drawables</a>::<wbr><a href='index.html'>sprite</a></p><script>window.sidebarCurrent = {name: 'Sprite', ty: 'struct', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../../settings.html"><img src="../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../../src/sfml_rust/drawables/sprite.rs.html#9-15' title='goto source code'>[src]</a></span><span class='in-band'>Struct <a href='../../index.html'>sfml_rust</a>::<wbr><a href='../index.html'>drawables</a>::<wbr><a href='index.html'>sprite</a>::<wbr><a class="struct" href=''>Sprite</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class='rust struct'>pub struct Sprite {
pub verts: <a class="enum" href="../../../sfml_rust/util/vertex/enum.VertexTypes.html" title="enum sfml_rust::util::vertex::VertexTypes">VertexTypes</a>,
// some fields omitted
}</pre></div><div class='docblock'></div><h2 id='fields' class='fields small-section-header'>
Fields<a href='#fields' class='anchor'></a></h2><span id="structfield.verts" class="structfield small-section-header"><a href="#structfield.verts" class="anchor field"></a><code id="verts.v">verts: <a class="enum" href="../../sfml_rust/util/vertex/enum.VertexTypes.html" title="enum sfml_rust::util::vertex::VertexTypes">VertexTypes</a></code></span><h2 id='methods' class='small-section-header'>Methods<a href='#methods' class='anchor'></a></h2><h3 id='impl' class='impl'><code class='in-band'>impl <a class="struct" href="../../sfml_rust/sprite/struct.Sprite.html" title="struct sfml_rust::sprite::Sprite">Sprite</a></code><a href='#impl' class='anchor'></a><a class='srclink' href='../../src/sfml_rust/sprite.rs.html#18-55' title='goto source code'>[src]</a></h3><div class='docblock'><p>Container class which implements drawable.</p>
</div><div class='impl-items'><h4 id='method.new' class="method"><code id='new.v'>pub fn <a href='#method.new' class='fnname'>new</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;position: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;depth: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;texture_handle: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="struct" href="../../sfml_rust/canvas/managed/handles/struct.CanvasTextureHandle.html" title="struct sfml_rust::canvas::managed::handles::CanvasTextureHandle">CanvasTextureHandle</a>&gt;<br>) -&gt; <a class="struct" href="../../sfml_rust/sprite/struct.Sprite.html" title="struct sfml_rust::sprite::Sprite">Sprite</a></code><a class='srclink' href='../../src/sfml_rust/sprite.rs.html#21-54' title='goto source code'>[src]</a></h4><div class='docblock'></div></div><h2 id='implementations' class='small-section-header'>Trait Implementations<a href='#implementations' class='anchor'></a></h2><div id='implementations-list'><h3 id='impl-Drawable' class='impl'><code class='in-band'>impl <a class="trait" href="../../sfml_rust/canvas/canvas_frame/trait.Drawable.html" title="trait sfml_rust::canvas::canvas_frame::Drawable">Drawable</a> for <a class="struct" href="../../sfml_rust/sprite/struct.Sprite.html" title="struct sfml_rust::sprite::Sprite">Sprite</a></code><a href='#impl-Drawable' class='anchor'></a><a class='srclink' href='../../src/sfml_rust/sprite.rs.html#56-61' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.get' class="method hidden"><code id='get.v'>fn <a href='../../sfml_rust/canvas/canvas_frame/trait.Drawable.html#tymethod.get' class='fnname'>get</a>(&amp;self) -&gt; <a class="enum" href="../../sfml_rust/util/vertex/enum.VertexTypes.html" title="enum sfml_rust::util::vertex::VertexTypes">VertexTypes</a></code><a class='srclink' href='../../src/sfml_rust/sprite.rs.html#57-59' title='goto source code'>[src]</a></h4></div><h3 id='impl-Clone' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="struct" href="../../sfml_rust/sprite/struct.Sprite.html" title="struct sfml_rust::sprite::Sprite">Sprite</a></code><a href='#impl-Clone' class='anchor'></a><a class='srclink' href='../../src/sfml_rust/sprite.rs.html#8' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.clone' class="method hidden"><code id='clone.v'>fn <a href='https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone' class='fnname'>clone</a>(&amp;self) -&gt; <a class="struct" href="../../sfml_rust/sprite/struct.Sprite.html" title="struct sfml_rust::sprite::Sprite">Sprite</a></code><a class='srclink' href='../../src/sfml_rust/sprite.rs.html#8' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Returns a copy of the value. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone">Read more</a></p>
Fields<a href='#fields' class='anchor'></a></h2><span id="structfield.verts" class="structfield small-section-header"><a href="#structfield.verts" class="anchor field"></a><code id="verts.v">verts: <a class="enum" href="../../../sfml_rust/util/vertex/enum.VertexTypes.html" title="enum sfml_rust::util::vertex::VertexTypes">VertexTypes</a></code></span><h2 id='methods' class='small-section-header'>Methods<a href='#methods' class='anchor'></a></h2><h3 id='impl' class='impl'><code class='in-band'>impl <a class="struct" href="../../../sfml_rust/drawables/sprite/struct.Sprite.html" title="struct sfml_rust::drawables::sprite::Sprite">Sprite</a></code><a href='#impl' class='anchor'></a><a class='srclink' href='../../../src/sfml_rust/drawables/sprite.rs.html#18-55' title='goto source code'>[src]</a></h3><div class='docblock'><p>Container class which implements drawable.</p>
</div><div class='impl-items'><h4 id='method.new' class="method"><code id='new.v'>pub fn <a href='#method.new' class='fnname'>new</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;position: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.f32.html">f32</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;depth: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;texture_handle: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="struct" href="../../../sfml_rust/canvas/managed/handles/struct.CanvasTextureHandle.html" title="struct sfml_rust::canvas::managed::handles::CanvasTextureHandle">CanvasTextureHandle</a>&gt;<br>) -&gt; <a class="struct" href="../../../sfml_rust/drawables/sprite/struct.Sprite.html" title="struct sfml_rust::drawables::sprite::Sprite">Sprite</a></code><a class='srclink' href='../../../src/sfml_rust/drawables/sprite.rs.html#21-54' title='goto source code'>[src]</a></h4><div class='docblock'></div></div><h2 id='implementations' class='small-section-header'>Trait Implementations<a href='#implementations' class='anchor'></a></h2><div id='implementations-list'><h3 id='impl-Drawable' class='impl'><code class='in-band'>impl <a class="trait" href="../../../sfml_rust/canvas/canvas_frame/trait.Drawable.html" title="trait sfml_rust::canvas::canvas_frame::Drawable">Drawable</a> for <a class="struct" href="../../../sfml_rust/drawables/sprite/struct.Sprite.html" title="struct sfml_rust::drawables::sprite::Sprite">Sprite</a></code><a href='#impl-Drawable' class='anchor'></a><a class='srclink' href='../../../src/sfml_rust/drawables/sprite.rs.html#56-61' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.get' class="method hidden"><code id='get.v'>fn <a href='../../../sfml_rust/canvas/canvas_frame/trait.Drawable.html#tymethod.get' class='fnname'>get</a>(&amp;self) -&gt; <a class="enum" href="../../../sfml_rust/util/vertex/enum.VertexTypes.html" title="enum sfml_rust::util::vertex::VertexTypes">VertexTypes</a></code><a class='srclink' href='../../../src/sfml_rust/drawables/sprite.rs.html#57-59' title='goto source code'>[src]</a></h4></div><h3 id='impl-Clone' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="struct" href="../../../sfml_rust/drawables/sprite/struct.Sprite.html" title="struct sfml_rust::drawables::sprite::Sprite">Sprite</a></code><a href='#impl-Clone' class='anchor'></a><a class='srclink' href='../../../src/sfml_rust/drawables/sprite.rs.html#8' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.clone' class="method hidden"><code id='clone.v'>fn <a href='https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone' class='fnname'>clone</a>(&amp;self) -&gt; <a class="struct" href="../../../sfml_rust/drawables/sprite/struct.Sprite.html" title="struct sfml_rust::drawables::sprite::Sprite">Sprite</a></code><a class='srclink' href='../../../src/sfml_rust/drawables/sprite.rs.html#8' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Returns a copy of the value. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone">Read more</a></p>
</div><h4 id='method.clone_from' class="method hidden"><code id='clone_from.v'>fn <a href='https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#method.clone_from' class='fnname'>clone_from</a>(&amp;mut self, source: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>Self)</code><span class='since' title='Stable since Rust version 1.0.0'>1.0.0</span><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/clone.rs.html#131-133' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#method.clone_from">Read more</a></p>
</div></div><h3 id='impl-Debug' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="../../sfml_rust/sprite/struct.Sprite.html" title="struct sfml_rust::sprite::Sprite">Sprite</a></code><a href='#impl-Debug' class='anchor'></a><a class='srclink' href='../../src/sfml_rust/sprite.rs.html#8' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.fmt' class="method hidden"><code id='fmt.v'>fn <a href='https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt' class='fnname'>fmt</a>(&amp;self, f: &amp;mut <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a>) -&gt; <a class="type" href="https://doc.rust-lang.org/nightly/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></code><a class='srclink' href='../../src/sfml_rust/sprite.rs.html#8' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></p>
</div></div></div><h2 id='synthetic-implementations' class='small-section-header'>Auto Trait Implementations<a href='#synthetic-implementations' class='anchor'></a></h2><div id='synthetic-implementations-list'><h3 id='impl-Send' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="../../sfml_rust/sprite/struct.Sprite.html" title="struct sfml_rust::sprite::Sprite">Sprite</a></code><a href='#impl-Send' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-Unpin' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="../../sfml_rust/sprite/struct.Sprite.html" title="struct sfml_rust::sprite::Sprite">Sprite</a></code><a href='#impl-Unpin' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-Sync' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="../../sfml_rust/sprite/struct.Sprite.html" title="struct sfml_rust::sprite::Sprite">Sprite</a></code><a href='#impl-Sync' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-UnwindSafe' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.UnwindSafe.html" title="trait std::panic::UnwindSafe">UnwindSafe</a> for <a class="struct" href="../../sfml_rust/sprite/struct.Sprite.html" title="struct sfml_rust::sprite::Sprite">Sprite</a></code><a href='#impl-UnwindSafe' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-RefUnwindSafe' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.RefUnwindSafe.html" title="trait std::panic::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="../../sfml_rust/sprite/struct.Sprite.html" title="struct sfml_rust::sprite::Sprite">Sprite</a></code><a href='#impl-RefUnwindSafe' class='anchor'></a></h3><div class='impl-items'></div></div><h2 id='blanket-implementations' class='small-section-header'>Blanket Implementations<a href='#blanket-implementations' class='anchor'></a></h2><div id='blanket-implementations-list'><h3 id='impl-ToOwned' class='impl'><code class='in-band'>impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html" title="trait alloc::borrow::ToOwned">ToOwned</a> for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,&nbsp;</span></code><a href='#impl-ToOwned' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#81-92' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Owned' class="type"><code id='Owned.t'>type <a href='https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#associatedtype.Owned' class="type">Owned</a> = T</code></h4><div class='docblock'><p>The resulting type after obtaining ownership.</p>
</div></div><h3 id='impl-Debug' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="../../../sfml_rust/drawables/sprite/struct.Sprite.html" title="struct sfml_rust::drawables::sprite::Sprite">Sprite</a></code><a href='#impl-Debug' class='anchor'></a><a class='srclink' href='../../../src/sfml_rust/drawables/sprite.rs.html#8' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.fmt' class="method hidden"><code id='fmt.v'>fn <a href='https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt' class='fnname'>fmt</a>(&amp;self, f: &amp;mut <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a>) -&gt; <a class="type" href="https://doc.rust-lang.org/nightly/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></code><a class='srclink' href='../../../src/sfml_rust/drawables/sprite.rs.html#8' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></p>
</div></div></div><h2 id='synthetic-implementations' class='small-section-header'>Auto Trait Implementations<a href='#synthetic-implementations' class='anchor'></a></h2><div id='synthetic-implementations-list'><h3 id='impl-Send' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="../../../sfml_rust/drawables/sprite/struct.Sprite.html" title="struct sfml_rust::drawables::sprite::Sprite">Sprite</a></code><a href='#impl-Send' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-Unpin' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="../../../sfml_rust/drawables/sprite/struct.Sprite.html" title="struct sfml_rust::drawables::sprite::Sprite">Sprite</a></code><a href='#impl-Unpin' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-Sync' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="../../../sfml_rust/drawables/sprite/struct.Sprite.html" title="struct sfml_rust::drawables::sprite::Sprite">Sprite</a></code><a href='#impl-Sync' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-UnwindSafe' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.UnwindSafe.html" title="trait std::panic::UnwindSafe">UnwindSafe</a> for <a class="struct" href="../../../sfml_rust/drawables/sprite/struct.Sprite.html" title="struct sfml_rust::drawables::sprite::Sprite">Sprite</a></code><a href='#impl-UnwindSafe' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-RefUnwindSafe' class='impl'><code class='in-band'>impl <a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.RefUnwindSafe.html" title="trait std::panic::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="../../../sfml_rust/drawables/sprite/struct.Sprite.html" title="struct sfml_rust::drawables::sprite::Sprite">Sprite</a></code><a href='#impl-RefUnwindSafe' class='anchor'></a></h3><div class='impl-items'></div></div><h2 id='blanket-implementations' class='small-section-header'>Blanket Implementations<a href='#blanket-implementations' class='anchor'></a></h2><div id='blanket-implementations-list'><h3 id='impl-ToOwned' class='impl'><code class='in-band'>impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html" title="trait alloc::borrow::ToOwned">ToOwned</a> for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,&nbsp;</span></code><a href='#impl-ToOwned' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#81-92' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Owned' class="type"><code id='Owned.t'>type <a href='https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#associatedtype.Owned' class="type">Owned</a> = T</code></h4><div class='docblock'><p>The resulting type after obtaining ownership.</p>
</div><h4 id='method.to_owned' class="method hidden"><code id='to_owned.v'>fn <a href='https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#tymethod.to_owned' class='fnname'>to_owned</a>(&amp;self) -&gt; T</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#85-87' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Creates owned data from borrowed data, usually by cloning. <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#tymethod.to_owned">Read more</a></p>
</div><h4 id='method.clone_into' class="method hidden"><code id='clone_into.v'>fn <a href='https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#method.clone_into' class='fnname'>clone_into</a>(&amp;self, target: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;mut </a>T)</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#89-91' title='goto source code'>[src]</a></h4><div class='stability hidden'><div class='stab unstable'><details><summary><span class='emoji'>🔬</span> This is a nightly-only experimental API. (<code>toowned_clone_into</code>)</summary><p>recently added</p>
</details></div></div><div class='docblock hidden'><p>Uses borrowed data to replace owned data, usually by cloning. <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#method.clone_into">Read more</a></p>
@ -28,4 +28,4 @@
</div></div><h3 id='impl-Content' class='impl'><code class='in-band'>impl&lt;T&gt; Content for T</code><a href='#impl-Content' class='anchor'></a></h3><div class='impl-items'><h4 id='method.ref_from_ptr' class="method hidden"><code id='ref_from_ptr.v'>fn <a href='#method.ref_from_ptr' class='fnname'>ref_from_ptr</a>(ptr: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.pointer.html">*mut </a><a class="enum" href="https://doc.rust-lang.org/nightly/core/ffi/enum.c_void.html" title="enum core::ffi::c_void">c_void</a>, size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.pointer.html">*mut T</a>&gt;</code></h4><div class='docblock hidden'><p>Builds a pointer to this type from a raw pointer.</p>
</div><h4 id='method.is_size_suitable' class="method hidden"><code id='is_size_suitable.v'>fn <a href='#method.is_size_suitable' class='fnname'>is_size_suitable</a>(size: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></h4><div class='docblock hidden'><p>Returns true if the size is suitable to store a type like this.</p>
</div><h4 id='method.indiv_size' class="method hidden"><code id='indiv_size.v'>fn <a href='#method.indiv_size' class='fnname'>indiv_size</a>() -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code></h4><div class='docblock hidden'><p>Returns the size of an individual element.</p>
</div></div><h3 id='impl-Erased' class='impl'><code class='in-band'>impl&lt;T&gt; Erased for T</code><a href='#impl-Erased' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-SafeBorrow%3CT%3E' class='impl'><code class='in-band'>impl&lt;T&gt; SafeBorrow&lt;T&gt; for T</code><a href='#impl-SafeBorrow%3CT%3E' class='anchor'></a></h3><div class='impl-items'></div></div></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "sfml_rust";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>
</div></div><h3 id='impl-Erased' class='impl'><code class='in-band'>impl&lt;T&gt; Erased for T</code><a href='#impl-Erased' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-SafeBorrow%3CT%3E' class='impl'><code class='in-band'>impl&lt;T&gt; SafeBorrow&lt;T&gt; for T</code><a href='#impl-SafeBorrow%3CT%3E' class='anchor'></a></h3><div class='impl-items'></div></div></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../../";window.currentCrate = "sfml_rust";</script><script src="../../../aliases.js"></script><script src="../../../main.js"></script><script defer src="../../../search-index.js"></script></body></html>

@ -1 +1 @@
<!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="API documentation for the Rust `main` fn in crate `sfml_rust`."><meta name="keywords" content="rust, rustlang, rust-lang, main"><title>sfml_rust::main - Rust</title><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="../dark.css"><link rel="stylesheet" type="text/css" href="../light.css" id="themeStyle"><script src="../storage.js"></script><noscript><link rel="stylesheet" href="../noscript.css"></noscript><link rel="shortcut icon" href="../favicon.ico"><style type="text/css">#crate-search{background-image:url("../down-arrow.svg");}</style></head><body class="rustdoc fn"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../sfml_rust/index.html'><div class='logo-container'><img src='../rust-logo.png' alt='logo'></div></a><div class="sidebar-elems"><p class='location'><a href='index.html'>sfml_rust</a></p><script>window.sidebarCurrent = {name: 'main', ty: 'fn', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../settings.html"><img src="../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../src/sfml_rust/main.rs.html#61-219' title='goto source code'>[src]</a></span><span class='in-band'>Function <a href='index.html'>sfml_rust</a>::<wbr><a class="fn" href=''>main</a></span></h1><pre class='rust fn'>pub fn main()</pre></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../";window.currentCrate = "sfml_rust";</script><script src="../aliases.js"></script><script src="../main.js"></script><script defer src="../search-index.js"></script></body></html>
<!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="API documentation for the Rust `main` fn in crate `sfml_rust`."><meta name="keywords" content="rust, rustlang, rust-lang, main"><title>sfml_rust::main - Rust</title><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="../dark.css"><link rel="stylesheet" type="text/css" href="../light.css" id="themeStyle"><script src="../storage.js"></script><noscript><link rel="stylesheet" href="../noscript.css"></noscript><link rel="shortcut icon" href="../favicon.ico"><style type="text/css">#crate-search{background-image:url("../down-arrow.svg");}</style></head><body class="rustdoc fn"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../sfml_rust/index.html'><div class='logo-container'><img src='../rust-logo.png' alt='logo'></div></a><div class="sidebar-elems"><p class='location'><a href='index.html'>sfml_rust</a></p><script>window.sidebarCurrent = {name: 'main', ty: 'fn', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../settings.html"><img src="../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../src/sfml_rust/main.rs.html#41-197' title='goto source code'>[src]</a></span><span class='in-band'>Function <a href='index.html'>sfml_rust</a>::<wbr><a class="fn" href=''>main</a></span></h1><pre class='rust fn'>pub fn main()</pre></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../";window.currentCrate = "sfml_rust";</script><script src="../aliases.js"></script><script src="../main.js"></script><script defer src="../search-index.js"></script></body></html>

@ -1,3 +1,3 @@
<!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="API documentation for the Rust `sfml_rust` crate."><meta name="keywords" content="rust, rustlang, rust-lang, sfml_rust"><title>sfml_rust - Rust</title><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="../dark.css"><link rel="stylesheet" type="text/css" href="../light.css" id="themeStyle"><script src="../storage.js"></script><noscript><link rel="stylesheet" href="../noscript.css"></noscript><link rel="shortcut icon" href="../favicon.ico"><style type="text/css">#crate-search{background-image:url("../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../sfml_rust/index.html'><div class='logo-container'><img src='../rust-logo.png' alt='logo'></div></a><p class='location'>Crate sfml_rust</p><div class="sidebar-elems"><a id='all-types' href='all.html'><p>See all sfml_rust's items</p></a><div class="block items"><ul><li><a href="#modules">Modules</a></li><li><a href="#functions">Functions</a></li></ul></div><p class='location'></p><script>window.sidebarCurrent = {name: 'sfml_rust', ty: 'mod', relpath: '../'};</script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../settings.html"><img src="../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../src/sfml_rust/main.rs.html#1-219' title='goto source code'>[src]</a></span><span class='in-band'>Crate <a class="mod" href=''>sfml_rust</a></span></h1><h2 id='modules' class='section-header'><a href="#modules">Modules</a></h2>
<table><tr class='module-item'><td><a class="mod" href="canvas/index.html" title='sfml_rust::canvas mod'>canvas</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="mod" href="compute/index.html" title='sfml_rust::compute mod'>compute</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="mod" href="sprite/index.html" title='sfml_rust::sprite mod'>sprite</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="mod" href="util/index.html" title='sfml_rust::util mod'>util</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="mod" href="vkprocessor/index.html" title='sfml_rust::vkprocessor mod'>vkprocessor</a></td><td class='docblock-short'></td></tr></table><h2 id='functions' class='section-header'><a href="#functions">Functions</a></h2>
<!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="API documentation for the Rust `sfml_rust` crate."><meta name="keywords" content="rust, rustlang, rust-lang, sfml_rust"><title>sfml_rust - Rust</title><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="../dark.css"><link rel="stylesheet" type="text/css" href="../light.css" id="themeStyle"><script src="../storage.js"></script><noscript><link rel="stylesheet" href="../noscript.css"></noscript><link rel="shortcut icon" href="../favicon.ico"><style type="text/css">#crate-search{background-image:url("../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../sfml_rust/index.html'><div class='logo-container'><img src='../rust-logo.png' alt='logo'></div></a><p class='location'>Crate sfml_rust</p><div class="sidebar-elems"><a id='all-types' href='all.html'><p>See all sfml_rust's items</p></a><div class="block items"><ul><li><a href="#modules">Modules</a></li><li><a href="#functions">Functions</a></li></ul></div><p class='location'></p><script>window.sidebarCurrent = {name: 'sfml_rust', ty: 'mod', relpath: '../'};</script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../settings.html"><img src="../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../src/sfml_rust/main.rs.html#1-197' title='goto source code'>[src]</a></span><span class='in-band'>Crate <a class="mod" href=''>sfml_rust</a></span></h1><h2 id='modules' class='section-header'><a href="#modules">Modules</a></h2>
<table><tr class='module-item'><td><a class="mod" href="canvas/index.html" title='sfml_rust::canvas mod'>canvas</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="mod" href="compute/index.html" title='sfml_rust::compute mod'>compute</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="mod" href="drawables/index.html" title='sfml_rust::drawables mod'>drawables</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="mod" href="util/index.html" title='sfml_rust::util mod'>util</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="mod" href="vkprocessor/index.html" title='sfml_rust::vkprocessor mod'>vkprocessor</a></td><td class='docblock-short'></td></tr></table><h2 id='functions' class='section-header'><a href="#functions">Functions</a></h2>
<table><tr class='module-item'><td><a class="fn" href="fn.main.html" title='sfml_rust::main fn'>main</a></td><td class='docblock-short'></td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../";window.currentCrate = "sfml_rust";</script><script src="../aliases.js"></script><script src="../main.js"></script><script defer src="../search-index.js"></script></body></html>

@ -1 +1 @@
initSidebarItems({"fn":[["main",""]],"mod":[["canvas",""],["compute",""],["sprite",""],["util",""],["vkprocessor",""]]});
initSidebarItems({"fn":[["main",""]],"mod":[["canvas",""],["compute",""],["drawables",""],["util",""],["vkprocessor",""]]});

@ -1,2 +0,0 @@
<!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="API documentation for the Rust `sprite` mod in crate `sfml_rust`."><meta name="keywords" content="rust, rustlang, rust-lang, sprite"><title>sfml_rust::sprite - Rust</title><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="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../sfml_rust/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Module sprite</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#structs">Structs</a></li></ul></div><p class='location'><a href='../index.html'>sfml_rust</a></p><script>window.sidebarCurrent = {name: 'sprite', ty: 'mod', relpath: '../'};</script><script defer src="../sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/sfml_rust/sprite.rs.html#1-61' title='goto source code'>[src]</a></span><span class='in-band'>Module <a href='../index.html'>sfml_rust</a>::<wbr><a class="mod" href=''>sprite</a></span></h1><h2 id='structs' class='section-header'><a href="#structs">Structs</a></h2>
<table><tr class='module-item'><td><a class="struct" href="struct.Sprite.html" title='sfml_rust::sprite::Sprite struct'>Sprite</a></td><td class='docblock-short'></td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "sfml_rust";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>

@ -1,4 +1,4 @@
<!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="API documentation for the Rust `vkprocessor` mod in crate `sfml_rust`."><meta name="keywords" content="rust, rustlang, rust-lang, vkprocessor"><title>sfml_rust::vkprocessor - Rust</title><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="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../sfml_rust/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Module vkprocessor</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#structs">Structs</a></li></ul></div><p class='location'><a href='../index.html'>sfml_rust</a></p><script>window.sidebarCurrent = {name: 'vkprocessor', ty: 'mod', relpath: '../'};</script><script defer src="../sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/sfml_rust/vkprocessor.rs.html#1-322' title='goto source code'>[src]</a></span><span class='in-band'>Module <a href='../index.html'>sfml_rust</a>::<wbr><a class="mod" href=''>vkprocessor</a></span></h1><h2 id='structs' class='section-header'><a href="#structs">Structs</a></h2>
<!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="API documentation for the Rust `vkprocessor` mod in crate `sfml_rust`."><meta name="keywords" content="rust, rustlang, rust-lang, vkprocessor"><title>sfml_rust::vkprocessor - Rust</title><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="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../sfml_rust/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Module vkprocessor</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#structs">Structs</a></li></ul></div><p class='location'><a href='../index.html'>sfml_rust</a></p><script>window.sidebarCurrent = {name: 'vkprocessor', ty: 'mod', relpath: '../'};</script><script defer src="../sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/sfml_rust/vkprocessor.rs.html#1-321' title='goto source code'>[src]</a></span><span class='in-band'>Module <a href='../index.html'>sfml_rust</a>::<wbr><a class="mod" href=''>vkprocessor</a></span></h1><h2 id='structs' class='section-header'><a href="#structs">Structs</a></h2>
<table><tr class='module-item'><td><a class="struct" href="struct.VkProcessor.html" title='sfml_rust::vkprocessor::VkProcessor struct'>VkProcessor</a></td><td class='docblock-short'><p>VKProcessor holds the vulkan instance information, the swapchain,
and the compute and canvas states</p>
</td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "sfml_rust";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>

@ -10,7 +10,7 @@
}</pre></div><div class='docblock'><p>VKProcessor holds the vulkan instance information, the swapchain,
and the compute and canvas states</p>
</div><h2 id='fields' class='fields small-section-header'>
Fields<a href='#fields' class='anchor'></a></h2><span id="structfield.instance" class="structfield small-section-header"><a href="#structfield.instance" class="anchor field"></a><code id="instance.v">instance: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;Instance&gt;</code></span><span id="structfield.physical" class="structfield small-section-header"><a href="#structfield.physical" class="anchor field"></a><code id="physical.v">physical: PhysicalDevice&lt;'a&gt;</code></span><span id="structfield.device" class="structfield small-section-header"><a href="#structfield.device" class="anchor field"></a><code id="device.v">device: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;Device&gt;</code></span><span id="structfield.queues" class="structfield small-section-header"><a href="#structfield.queues" class="anchor field"></a><code id="queues.v">queues: QueuesIter</code></span><span id="structfield.queue" class="structfield small-section-header"><a href="#structfield.queue" class="anchor field"></a><code id="queue.v">queue: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;Queue&gt;</code></span><span id="structfield.swapchain" class="structfield small-section-header"><a href="#structfield.swapchain" class="anchor field"></a><code id="swapchain.v">swapchain: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;Swapchain&lt;Window&gt;&gt;&gt;</code></span><span id="structfield.swapchain_images" class="structfield small-section-header"><a href="#structfield.swapchain_images" class="anchor field"></a><code id="swapchain_images.v">swapchain_images: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;SwapchainImage&lt;Window&gt;&gt;&gt;&gt;</code></span><h2 id='methods' class='small-section-header'>Methods<a href='#methods' class='anchor'></a></h2><h3 id='impl' class='impl'><code class='in-band'>impl&lt;'a&gt; <a class="struct" href="../../sfml_rust/vkprocessor/struct.VkProcessor.html" title="struct sfml_rust::vkprocessor::VkProcessor">VkProcessor</a>&lt;'a&gt;</code><a href='#impl' class='anchor'></a><a class='srclink' href='../../src/sfml_rust/vkprocessor.rs.html#51-322' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.new' class="method"><code id='new.v'>pub fn <a href='#method.new' class='fnname'>new</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;instance: &amp;'a <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;Instance&gt;, <br>&nbsp;&nbsp;&nbsp;&nbsp;surface: &amp;'a <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;Surface&lt;Window&gt;&gt;<br>) -&gt; <a class="struct" href="../../sfml_rust/vkprocessor/struct.VkProcessor.html" title="struct sfml_rust::vkprocessor::VkProcessor">VkProcessor</a>&lt;'a&gt;</code><a class='srclink' href='../../src/sfml_rust/vkprocessor.rs.html#55-89' title='goto source code'>[src]</a></h4><div class='docblock'><p>Creates a new VkProcessor from an instance and surface
Fields<a href='#fields' class='anchor'></a></h2><span id="structfield.instance" class="structfield small-section-header"><a href="#structfield.instance" class="anchor field"></a><code id="instance.v">instance: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;Instance&gt;</code></span><span id="structfield.physical" class="structfield small-section-header"><a href="#structfield.physical" class="anchor field"></a><code id="physical.v">physical: PhysicalDevice&lt;'a&gt;</code></span><span id="structfield.device" class="structfield small-section-header"><a href="#structfield.device" class="anchor field"></a><code id="device.v">device: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;Device&gt;</code></span><span id="structfield.queues" class="structfield small-section-header"><a href="#structfield.queues" class="anchor field"></a><code id="queues.v">queues: QueuesIter</code></span><span id="structfield.queue" class="structfield small-section-header"><a href="#structfield.queue" class="anchor field"></a><code id="queue.v">queue: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;Queue&gt;</code></span><span id="structfield.swapchain" class="structfield small-section-header"><a href="#structfield.swapchain" class="anchor field"></a><code id="swapchain.v">swapchain: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;Swapchain&lt;Window&gt;&gt;&gt;</code></span><span id="structfield.swapchain_images" class="structfield small-section-header"><a href="#structfield.swapchain_images" class="anchor field"></a><code id="swapchain_images.v">swapchain_images: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;SwapchainImage&lt;Window&gt;&gt;&gt;&gt;</code></span><h2 id='methods' class='small-section-header'>Methods<a href='#methods' class='anchor'></a></h2><h3 id='impl' class='impl'><code class='in-band'>impl&lt;'a&gt; <a class="struct" href="../../sfml_rust/vkprocessor/struct.VkProcessor.html" title="struct sfml_rust::vkprocessor::VkProcessor">VkProcessor</a>&lt;'a&gt;</code><a href='#impl' class='anchor'></a><a class='srclink' href='../../src/sfml_rust/vkprocessor.rs.html#51-321' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.new' class="method"><code id='new.v'>pub fn <a href='#method.new' class='fnname'>new</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;instance: &amp;'a <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;Instance&gt;, <br>&nbsp;&nbsp;&nbsp;&nbsp;surface: &amp;'a <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;Surface&lt;Window&gt;&gt;<br>) -&gt; <a class="struct" href="../../sfml_rust/vkprocessor/struct.VkProcessor.html" title="struct sfml_rust::vkprocessor::VkProcessor">VkProcessor</a>&lt;'a&gt;</code><a class='srclink' href='../../src/sfml_rust/vkprocessor.rs.html#55-89' title='goto source code'>[src]</a></h4><div class='docblock'><p>Creates a new VkProcessor from an instance and surface
This includes the physical device, queues, compute and canvas state</p>
</div><h4 id='method.is_open' class="method"><code id='is_open.v'>pub fn <a href='#method.is_open' class='fnname'>is_open</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code><a class='srclink' href='../../src/sfml_rust/vkprocessor.rs.html#92-95' title='goto source code'>[src]</a></h4><div class='docblock'><p>VKProcessor controls the window. So it will let the main loop know when it is done</p>
</div><h4 id='method.create_swapchain' class="method"><code id='create_swapchain.v'>pub fn <a href='#method.create_swapchain' class='fnname'>create_swapchain</a>(&amp;mut self, surface: &amp;'a <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;Surface&lt;Window&gt;&gt;)</code><a class='srclink' href='../../src/sfml_rust/vkprocessor.rs.html#98-131' title='goto source code'>[src]</a></h4><div class='docblock'><p>Using the surface, we calculate the surface capabilities and create the swapchain and swapchain images</p>
@ -26,7 +26,8 @@ This includes the physical device, queues, compute and canvas state</p>
</div><h4 id='method.new_compute_buffer' class="method"><code id='new_compute_buffer.v'>pub fn <a href='#method.new_compute_buffer' class='fnname'>new_compute_buffer</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;&amp;mut self, <br>&nbsp;&nbsp;&nbsp;&nbsp;data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>&gt;, <br>&nbsp;&nbsp;&nbsp;&nbsp;dimensions: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a>, <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;stride: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u32.html">u32</a><br>) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="struct" href="../../sfml_rust/compute/managed/handles/struct.CompuBufferHandle.html" title="struct sfml_rust::compute::managed::handles::CompuBufferHandle">CompuBufferHandle</a>&gt;</code><a class='srclink' href='../../src/sfml_rust/vkprocessor.rs.html#211-213' title='goto source code'>[src]</a></h4><div class='docblock'><p>Builds a compute buffer and returns it's handle</p>
</div><h4 id='method.read_compute_buffer' class="method"><code id='read_compute_buffer.v'>pub fn <a href='#method.read_compute_buffer' class='fnname'>read_compute_buffer</a>(&amp;mut self, handle: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="struct" href="../../sfml_rust/compute/managed/handles/struct.CompuBufferHandle.html" title="struct sfml_rust::compute::managed::handles::CompuBufferHandle">CompuBufferHandle</a>&gt;) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>&gt;</code><a class='srclink' href='../../src/sfml_rust/vkprocessor.rs.html#216-218' title='goto source code'>[src]</a></h4><div class='docblock'><p>Takes a compute buffer handle and returns the read data</p>
</div><h4 id='method.write_compute_buffer' class="method"><code id='write_compute_buffer.v'>pub fn <a href='#method.write_compute_buffer' class='fnname'>write_compute_buffer</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;&amp;self, <br>&nbsp;&nbsp;&nbsp;&nbsp;handle: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="struct" href="../../sfml_rust/compute/managed/handles/struct.CompuBufferHandle.html" title="struct sfml_rust::compute::managed::handles::CompuBufferHandle">CompuBufferHandle</a>&gt;, <br>&nbsp;&nbsp;&nbsp;&nbsp;data: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>&gt;<br>)</code><a class='srclink' href='../../src/sfml_rust/vkprocessor.rs.html#221-223' title='goto source code'>[src]</a></h4><div class='docblock'><p>Takes a compute buffer handle and writes the received data</p>
</div><h4 id='method.run' class="method"><code id='run.v'>pub fn <a href='#method.run' class='fnname'>run</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;&amp;mut self, <br>&nbsp;&nbsp;&nbsp;&nbsp;surface: &amp;'a <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;Surface&lt;Window&gt;&gt;, <br>&nbsp;&nbsp;&nbsp;&nbsp;canvas_frame: <a class="struct" href="../../sfml_rust/canvas/canvas_frame/struct.CanvasFrame.html" title="struct sfml_rust::canvas::canvas_frame::CanvasFrame">CanvasFrame</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;compute_frame: <a class="struct" href="../../sfml_rust/compute/compu_frame/struct.CompuFrame.html" title="struct sfml_rust::compute::compu_frame::CompuFrame">CompuFrame</a><br>)</code><a class='srclink' href='../../src/sfml_rust/vkprocessor.rs.html#226-321' title='goto source code'>[src]</a></h4><div class='docblock'></div></div><h2 id='synthetic-implementations' class='small-section-header'>Auto Trait Implementations<a href='#synthetic-implementations' class='anchor'></a></h2><div id='synthetic-implementations-list'><h3 id='impl-Send' class='impl'><code class='in-band'>impl&lt;'a&gt; !<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="../../sfml_rust/vkprocessor/struct.VkProcessor.html" title="struct sfml_rust::vkprocessor::VkProcessor">VkProcessor</a>&lt;'a&gt;</code><a href='#impl-Send' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-Unpin' class='impl'><code class='in-band'>impl&lt;'a&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="../../sfml_rust/vkprocessor/struct.VkProcessor.html" title="struct sfml_rust::vkprocessor::VkProcessor">VkProcessor</a>&lt;'a&gt;</code><a href='#impl-Unpin' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-Sync' class='impl'><code class='in-band'>impl&lt;'a&gt; !<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="../../sfml_rust/vkprocessor/struct.VkProcessor.html" title="struct sfml_rust::vkprocessor::VkProcessor">VkProcessor</a>&lt;'a&gt;</code><a href='#impl-Sync' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-UnwindSafe' class='impl'><code class='in-band'>impl&lt;'a&gt; !<a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.UnwindSafe.html" title="trait std::panic::UnwindSafe">UnwindSafe</a> for <a class="struct" href="../../sfml_rust/vkprocessor/struct.VkProcessor.html" title="struct sfml_rust::vkprocessor::VkProcessor">VkProcessor</a>&lt;'a&gt;</code><a href='#impl-UnwindSafe' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-RefUnwindSafe' class='impl'><code class='in-band'>impl&lt;'a&gt; !<a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.RefUnwindSafe.html" title="trait std::panic::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="../../sfml_rust/vkprocessor/struct.VkProcessor.html" title="struct sfml_rust::vkprocessor::VkProcessor">VkProcessor</a>&lt;'a&gt;</code><a href='#impl-RefUnwindSafe' class='anchor'></a></h3><div class='impl-items'></div></div><h2 id='blanket-implementations' class='small-section-header'>Blanket Implementations<a href='#blanket-implementations' class='anchor'></a></h2><div id='blanket-implementations-list'><h3 id='impl-Into%3CU%3E' class='impl'><code class='in-band'>impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;U&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt;,&nbsp;</span></code><a href='#impl-Into%3CU%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#544-549' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.into' class="method hidden"><code id='into.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.Into.html#tymethod.into' class='fnname'>into</a>(self) -&gt; U</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#546-548' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div><h4 id='method.run' class="method"><code id='run.v'>pub fn <a href='#method.run' class='fnname'>run</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;&amp;mut self, <br>&nbsp;&nbsp;&nbsp;&nbsp;surface: &amp;'a <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;Surface&lt;Window&gt;&gt;, <br>&nbsp;&nbsp;&nbsp;&nbsp;canvas_frame: <a class="struct" href="../../sfml_rust/canvas/canvas_frame/struct.CanvasFrame.html" title="struct sfml_rust::canvas::canvas_frame::CanvasFrame">CanvasFrame</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;compute_frame: <a class="struct" href="../../sfml_rust/compute/compu_frame/struct.CompuFrame.html" title="struct sfml_rust::compute::compu_frame::CompuFrame">CompuFrame</a><br>)</code><a class='srclink' href='../../src/sfml_rust/vkprocessor.rs.html#226-320' title='goto source code'>[src]</a></h4><div class='docblock'><p>Run the VKprocessor for a single frame, consuming the Canvas/Compu Frames</p>
</div></div><h2 id='synthetic-implementations' class='small-section-header'>Auto Trait Implementations<a href='#synthetic-implementations' class='anchor'></a></h2><div id='synthetic-implementations-list'><h3 id='impl-Send' class='impl'><code class='in-band'>impl&lt;'a&gt; !<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="../../sfml_rust/vkprocessor/struct.VkProcessor.html" title="struct sfml_rust::vkprocessor::VkProcessor">VkProcessor</a>&lt;'a&gt;</code><a href='#impl-Send' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-Unpin' class='impl'><code class='in-band'>impl&lt;'a&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="../../sfml_rust/vkprocessor/struct.VkProcessor.html" title="struct sfml_rust::vkprocessor::VkProcessor">VkProcessor</a>&lt;'a&gt;</code><a href='#impl-Unpin' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-Sync' class='impl'><code class='in-band'>impl&lt;'a&gt; !<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="../../sfml_rust/vkprocessor/struct.VkProcessor.html" title="struct sfml_rust::vkprocessor::VkProcessor">VkProcessor</a>&lt;'a&gt;</code><a href='#impl-Sync' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-UnwindSafe' class='impl'><code class='in-band'>impl&lt;'a&gt; !<a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.UnwindSafe.html" title="trait std::panic::UnwindSafe">UnwindSafe</a> for <a class="struct" href="../../sfml_rust/vkprocessor/struct.VkProcessor.html" title="struct sfml_rust::vkprocessor::VkProcessor">VkProcessor</a>&lt;'a&gt;</code><a href='#impl-UnwindSafe' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-RefUnwindSafe' class='impl'><code class='in-band'>impl&lt;'a&gt; !<a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.RefUnwindSafe.html" title="trait std::panic::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="../../sfml_rust/vkprocessor/struct.VkProcessor.html" title="struct sfml_rust::vkprocessor::VkProcessor">VkProcessor</a>&lt;'a&gt;</code><a href='#impl-RefUnwindSafe' class='anchor'></a></h3><div class='impl-items'></div></div><h2 id='blanket-implementations' class='small-section-header'>Blanket Implementations<a href='#blanket-implementations' class='anchor'></a></h2><div id='blanket-implementations-list'><h3 id='impl-Into%3CU%3E' class='impl'><code class='in-band'>impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;U&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt;,&nbsp;</span></code><a href='#impl-Into%3CU%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#544-549' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.into' class="method hidden"><code id='into.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.Into.html#tymethod.into' class='fnname'>into</a>(self) -&gt; U</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#546-548' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id='impl-From%3CT%3E' class='impl'><code class='in-band'>impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt; for T</code><a href='#impl-From%3CT%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#553-555' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.from' class="method hidden"><code id='from.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from' class='fnname'>from</a>(t: T) -&gt; T</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#554' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id='impl-TryFrom%3CU%3E' class='impl'><code class='in-band'>impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;T&gt;,&nbsp;</span></code><a href='#impl-TryFrom%3CU%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#572-578' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Error' class="type"><code id='Error.t'>type <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error' class="type">Error</a> = <a class="enum" href="https://doc.rust-lang.org/nightly/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></code></h4><div class='docblock'><p>The type returned in the event of a conversion error.</p>
</div><h4 id='method.try_from' class="method hidden"><code id='try_from.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#tymethod.try_from' class='fnname'>try_from</a>(value: U) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;T, &lt;T as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt;&gt;::<a class="type" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#575-577' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>

@ -1,3 +1,3 @@
var N = null;var sourcesIndex = {};
sourcesIndex["sfml_rust"] = {"name":"","dirs":[{"name":"canvas","dirs":[{"name":"managed","dirs":[{"name":"shader","files":["dynamic_vertex.rs","generic_shader.rs","mod.rs","shader_common.rs","text_shader.rs"]}],"files":["canvas_text.rs","gpu_buffers.rs","handles.rs","mod.rs"]}],"files":["canvas_frame.rs","canvas_state.rs","mod.rs"]},{"name":"compute","dirs":[{"name":"managed","files":["compu_buffer.rs","compu_kernel.rs","compu_sprite.rs","handles.rs","mod.rs"]}],"files":["compu_frame.rs","compu_state.rs","mod.rs"]},{"name":"util","files":["mod.rs","timer.rs","vertex.rs"]}],"files":["main.rs","sprite.rs","vkprocessor.rs"]};
sourcesIndex["sfml_rust"] = {"name":"","dirs":[{"name":"canvas","dirs":[{"name":"managed","dirs":[{"name":"shader","files":["dynamic_vertex.rs","generic_shader.rs","mod.rs","shader_common.rs","text_shader.rs"]}],"files":["canvas_text.rs","gpu_buffers.rs","handles.rs","mod.rs"]}],"files":["canvas_frame.rs","canvas_state.rs","mod.rs"]},{"name":"compute","dirs":[{"name":"managed","files":["compu_buffer.rs","compu_kernel.rs","handles.rs","mod.rs"]}],"files":["compu_frame.rs","compu_state.rs","mod.rs"]},{"name":"drawables","files":["compu_sprite.rs","mod.rs","polygon.rs","rect.rs","sprite.rs"]},{"name":"util","files":["mod.rs","timer.rs","vertex.rs"]}],"files":["main.rs","vkprocessor.rs"]};
createSourceSidebar();

@ -585,7 +585,6 @@
<span id="585">585</span>
<span id="586">586</span>
<span id="587">587</span>
<span id="588">588</span>
</pre><div class="example-wrap"><pre class="rust ">
<span class="kw">use</span> <span class="ident">vulkano</span>::<span class="ident">command_buffer</span>::{<span class="ident">AutoCommandBufferBuilder</span>, <span class="ident">DynamicState</span>};
<span class="kw">use</span> <span class="ident">std</span>::<span class="ident">collections</span>::{<span class="ident">HashMap</span>, <span class="ident">HashSet</span>};
@ -789,7 +788,7 @@
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">compute_path</span> <span class="op">=</span> <span class="ident">project_root</span>.<span class="ident">clone</span>();
<span class="ident">compute_path</span>.<span class="ident">push</span>(<span class="ident">PathBuf</span>::<span class="ident">from</span>(<span class="string">&quot;resources/images/&quot;</span>));
<span class="ident">compute_path</span>.<span class="ident">push</span>(<span class="ident">PathBuf</span>::<span class="ident">from</span>(<span class="ident">image_filename</span>));
<span class="ident">compute_path</span>.<span class="ident">push</span>(<span class="ident">PathBuf</span>::<span class="ident">from</span>(<span class="ident">image_filename</span>.<span class="ident">clone</span>()));
<span class="kw">let</span> <span class="ident">img</span> <span class="op">=</span> <span class="ident">image</span>::<span class="ident">open</span>(<span class="ident">compute_path</span>).<span class="ident">expect</span>(<span class="string">&quot;Couldn&#39;t find image&quot;</span>);
@ -801,7 +800,7 @@
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">image_buffer</span> <span class="op">=</span> <span class="ident">Vec</span>::<span class="ident">new</span>();
<span class="kw">if</span> <span class="ident">pixel_count</span> <span class="op">!</span><span class="op">=</span> <span class="ident">data_length</span> <span class="kw">as</span> <span class="ident">usize</span> {
<span class="macro">println</span><span class="macro">!</span>(<span class="string">&quot;Creating apha channel...&quot;</span>);
<span class="macro">println</span><span class="macro">!</span>(<span class="string">&quot;Creating alpha channel for {}&quot;</span>, <span class="ident">image_filename</span>.<span class="ident">clone</span>());
<span class="kw">for</span> <span class="ident">i</span> <span class="kw">in</span> <span class="ident">img</span>.<span class="ident">raw_pixels</span>().<span class="ident">iter</span>() {
<span class="kw">if</span> (<span class="ident">image_buffer</span>.<span class="ident">len</span>() <span class="op">+</span> <span class="number">1</span>) <span class="op">%</span> <span class="number">4</span> <span class="op">=</span><span class="op">=</span> <span class="number">0</span> {
<span class="ident">image_buffer</span>.<span class="ident">push</span>(<span class="number">255</span>);
@ -825,7 +824,6 @@
<span class="doccomment">/// Load a texture using it&#39;s filename from a file. Returns the handle of the loaded texture</span>
<span class="kw">pub</span> <span class="kw">fn</span> <span class="ident">load_texture</span>(<span class="kw-2">&amp;</span><span class="kw-2">mut</span> <span class="self">self</span>, <span class="ident">filename</span>: <span class="ident">String</span>) <span class="op">-</span><span class="op">&gt;</span> <span class="prelude-ty">Option</span><span class="op">&lt;</span><span class="ident">Arc</span><span class="op">&lt;</span><span class="ident">CanvasTextureHandle</span><span class="op">&gt;</span><span class="op">&gt;</span> {
<span class="kw">let</span> <span class="ident">texture_buffer</span> <span class="op">=</span> <span class="self">self</span>.<span class="ident">get_texture_from_file</span>(<span class="ident">filename</span>.<span class="ident">clone</span>());
<span class="kw">let</span> <span class="ident">handle</span> <span class="op">=</span> <span class="ident">Arc</span>::<span class="ident">new</span>(<span class="ident">CanvasTextureHandle</span> {
<span class="ident">handle</span>: <span class="self">self</span>.<span class="ident">texture_buffers</span>.<span class="ident">len</span>() <span class="kw">as</span> <span class="ident">u32</span>

@ -54,11 +54,19 @@
<span id="54">54</span>
<span id="55">55</span>
<span id="56">56</span>
<span id="57">57</span>
<span id="58">58</span>
<span id="59">59</span>
<span id="60">60</span>
<span id="61">61</span>
<span id="62">62</span>
</pre><div class="example-wrap"><pre class="rust ">
<span class="kw">use</span> <span class="ident">std</span>::<span class="ident">sync</span>::<span class="ident">Arc</span>;
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">canvas</span>::<span class="ident">managed</span>::<span class="ident">handles</span>::{<span class="ident">CanvasImageHandle</span>};
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">compute</span>::<span class="ident">managed</span>::<span class="ident">handles</span>::{<span class="ident">CompuKernelHandle</span>, <span class="ident">CompuBufferHandle</span>};
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">compute</span>::<span class="ident">managed</span>::<span class="ident">compu_sprite</span>::<span class="ident">CompuSprite</span>;
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">drawables</span>::<span class="ident">compu_sprite</span>::<span class="ident">CompuSprite</span>;
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">canvas</span>::<span class="ident">canvas_frame</span>::<span class="ident">Drawable</span>;
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">util</span>::<span class="ident">vertex</span>::<span class="ident">VertexTypes</span>;
<span class="kw">pub</span> <span class="kw">struct</span> <span class="ident">CompuFrame</span> {
<span class="comment">// Vec&lt;(Buffer, Kernel)&gt;</span>
@ -108,7 +116,11 @@
<span class="ident">buffer</span>: <span class="ident">Arc</span><span class="op">&lt;</span><span class="ident">CompuBufferHandle</span><span class="op">&gt;</span>,
<span class="ident">kernel</span>: <span class="ident">Arc</span><span class="op">&lt;</span><span class="ident">CompuKernelHandle</span><span class="op">&gt;</span>,
<span class="ident">sprite</span>: <span class="kw-2">&amp;</span><span class="ident">CompuSprite</span>) {
<span class="comment">// self.swapped_to_image.push((buffer, sprite.get_image_handle().unwrap().clone(), kernel))</span>
<span class="kw">if</span> <span class="kw">let</span> <span class="ident">VertexTypes</span>::<span class="ident">ImageType</span>(<span class="ident">a</span>, <span class="ident">b</span>) <span class="op">=</span> <span class="ident">sprite</span>.<span class="ident">get</span>() {
<span class="self">self</span>.<span class="ident">swapped_to_image</span>.<span class="ident">push</span>((<span class="ident">buffer</span>, <span class="ident">b</span>, <span class="ident">kernel</span>))
}
}
}</pre></div>
</section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../../";window.currentCrate = "sfml_rust";</script><script src="../../../aliases.js"></script><script src="../../../main.js"></script><script src="../../../source-script.js"></script><script src="../../../source-files.js"></script><script defer src="../../../search-index.js"></script></body></html>

@ -279,13 +279,13 @@
<span class="kw">let</span> <span class="ident">buffer</span> <span class="op">=</span> <span class="self">self</span>.<span class="ident">compute_buffers</span>.<span class="ident">get</span>(<span class="ident">buffer_id</span>).<span class="ident">unwrap</span>();
<span class="kw">let</span> <span class="ident">kernel</span> <span class="op">=</span> <span class="self">self</span>.<span class="ident">kernels</span>.<span class="ident">get</span>(<span class="ident">kernel_id</span>).<span class="ident">unwrap</span>();
<span class="kw">let</span> <span class="ident">p</span> <span class="op">=</span> <span class="ident">kernel</span>.<span class="ident">clone</span>().<span class="ident">get_pipeline</span>();
<span class="kw">let</span> <span class="ident">d</span> <span class="op">=</span> <span class="ident">buffer</span>.<span class="ident">get_descriptor_set</span>(<span class="ident">kernel</span>.<span class="ident">clone</span>().<span class="ident">get_pipeline</span>());
<span class="kw">let</span> <span class="ident">pipeline</span> <span class="op">=</span> <span class="ident">kernel</span>.<span class="ident">clone</span>().<span class="ident">get_pipeline</span>();
<span class="kw">let</span> <span class="ident">descriptorset</span> <span class="op">=</span> <span class="ident">buffer</span>.<span class="ident">get_descriptor_set</span>(<span class="ident">kernel</span>.<span class="ident">clone</span>().<span class="ident">get_pipeline</span>());
<span class="kw">let</span> <span class="ident">size</span> <span class="op">=</span> <span class="ident">buffer</span>.<span class="ident">get_size</span>();
<span class="ident">command_buffer</span> <span class="op">=</span> <span class="ident">command_buffer</span>
.<span class="ident">dispatch</span>([<span class="ident">size</span>.<span class="number">0</span> <span class="op">/</span> <span class="number">8</span>, <span class="ident">size</span>.<span class="number">1</span> <span class="op">/</span> <span class="number">8</span>, <span class="number">1</span>], <span class="ident">p</span>, <span class="ident">d</span>, ()).<span class="ident">unwrap</span>()
.<span class="ident">dispatch</span>([<span class="ident">size</span>.<span class="number">0</span> <span class="op">/</span> <span class="number">8</span>, <span class="ident">size</span>.<span class="number">1</span> <span class="op">/</span> <span class="number">8</span>, <span class="number">1</span>], <span class="ident">pipeline</span>, <span class="ident">descriptorset</span>, ()).<span class="ident">unwrap</span>()
}
<span class="comment">// i = (Buffer, Image, Kernel)</span>

@ -144,7 +144,7 @@
};
<span class="comment">// Settings buffer which holds i32&#39;s</span>
<span class="comment">// Compile macros into the kernel eventually to index them</span>
<span class="comment">// TODO: Compile macros into the kernel eventually to index them</span>
<span class="kw">let</span> <span class="ident">settings_buffer</span> <span class="op">=</span> {
<span class="kw">let</span> <span class="ident">vec</span> <span class="op">=</span> <span class="macro">vec</span><span class="macro">!</span>[<span class="ident">dimensions</span>.<span class="number">0</span>, <span class="ident">dimensions</span>.<span class="number">1</span>];
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">buff</span> <span class="op">=</span> <span class="ident">vec</span>.<span class="ident">iter</span>();

@ -1,101 +0,0 @@
<!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="Source to the Rust file `src/compute/managed/compu_sprite.rs`."><meta name="keywords" content="rust, rustlang, rust-lang"><title>compu_sprite.rs.html -- source</title><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="../../../../dark.css"><link rel="stylesheet" type="text/css" href="../../../../light.css" id="themeStyle"><script src="../../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../../noscript.css"></noscript><link rel="shortcut icon" href="../../../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../../../down-arrow.svg");}</style></head><body class="rustdoc source"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../../../sfml_rust/index.html'><div class='logo-container'><img src='../../../../rust-logo.png' alt='logo'></div></a></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../../../settings.html"><img src="../../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><pre class="line-numbers"><span id="1"> 1</span>
<span id="2"> 2</span>
<span id="3"> 3</span>
<span id="4"> 4</span>
<span id="5"> 5</span>
<span id="6"> 6</span>
<span id="7"> 7</span>
<span id="8"> 8</span>
<span id="9"> 9</span>
<span id="10">10</span>
<span id="11">11</span>
<span id="12">12</span>
<span id="13">13</span>
<span id="14">14</span>
<span id="15">15</span>
<span id="16">16</span>
<span id="17">17</span>
<span id="18">18</span>
<span id="19">19</span>
<span id="20">20</span>
<span id="21">21</span>
<span id="22">22</span>
<span id="23">23</span>
<span id="24">24</span>
<span id="25">25</span>
<span id="26">26</span>
<span id="27">27</span>
<span id="28">28</span>
<span id="29">29</span>
<span id="30">30</span>
<span id="31">31</span>
<span id="32">32</span>
<span id="33">33</span>
<span id="34">34</span>
<span id="35">35</span>
<span id="36">36</span>
<span id="37">37</span>
<span id="38">38</span>
<span id="39">39</span>
<span id="40">40</span>
<span id="41">41</span>
<span id="42">42</span>
<span id="43">43</span>
<span id="44">44</span>
<span id="45">45</span>
<span id="46">46</span>
<span id="47">47</span>
<span id="48">48</span>
<span id="49">49</span>
</pre><div class="example-wrap"><pre class="rust ">
<span class="kw">use</span> <span class="ident">std</span>::<span class="ident">sync</span>::<span class="ident">Arc</span>;
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">canvas</span>::<span class="ident">managed</span>::<span class="ident">handles</span>::{<span class="ident">CanvasImageHandle</span>, <span class="ident">CanvasTextureHandle</span>};
<span class="kw">pub</span> <span class="kw">struct</span> <span class="ident">CompuSprite</span> {
<span class="kw">pub</span> <span class="ident">vertices</span>: [(<span class="ident">f32</span>, <span class="ident">f32</span>, <span class="ident">f32</span>); <span class="number">6</span>],
<span class="kw">pub</span> <span class="ident">ti_position</span>: [(<span class="ident">f32</span>, <span class="ident">f32</span>); <span class="number">6</span>],
<span class="ident">position</span>: (<span class="ident">f32</span>, <span class="ident">f32</span>),
<span class="ident">size</span>: (<span class="ident">f32</span>, <span class="ident">f32</span>),
<span class="ident">color</span>: (<span class="ident">f32</span>, <span class="ident">f32</span>, <span class="ident">f32</span>, <span class="ident">f32</span>),
<span class="ident">image_handle</span>: <span class="ident">Arc</span><span class="op">&lt;</span><span class="ident">CanvasImageHandle</span><span class="op">&gt;</span>,
}
<span class="kw">impl</span> <span class="ident">CompuSprite</span> {
<span class="kw">pub</span> <span class="kw">fn</span> <span class="ident">new</span>(<span class="ident">position</span>: (<span class="ident">f32</span>, <span class="ident">f32</span>),
<span class="ident">size</span>: (<span class="ident">f32</span>, <span class="ident">f32</span>),
<span class="ident">depth</span>: <span class="ident">u32</span>,
<span class="ident">image_size</span>: (<span class="ident">f32</span>, <span class="ident">f32</span>),
<span class="ident">image_handle</span>: <span class="ident">Arc</span><span class="op">&lt;</span><span class="ident">CanvasImageHandle</span><span class="op">&gt;</span>) <span class="op">-</span><span class="op">&gt;</span> <span class="ident">CompuSprite</span> {
<span class="kw">let</span> <span class="ident">normalized_depth</span> <span class="op">=</span> (<span class="ident">depth</span> <span class="kw">as</span> <span class="ident">f32</span> <span class="op">/</span> <span class="number">255.0</span>);
<span class="ident">CompuSprite</span> {
<span class="ident">vertices</span>: [
(<span class="ident">position</span>.<span class="number">0</span>, <span class="ident">position</span>.<span class="number">1</span> , <span class="ident">normalized_depth</span>), <span class="comment">// top left</span>
(<span class="ident">position</span>.<span class="number">0</span>, <span class="ident">position</span>.<span class="number">1</span> <span class="op">+</span> <span class="ident">size</span>.<span class="number">1</span> , <span class="ident">normalized_depth</span>), <span class="comment">// bottom left</span>
(<span class="ident">position</span>.<span class="number">0</span> <span class="op">+</span> <span class="ident">size</span>.<span class="number">0</span>, <span class="ident">position</span>.<span class="number">1</span> <span class="op">+</span> <span class="ident">size</span>.<span class="number">1</span>, <span class="ident">normalized_depth</span>), <span class="comment">// bottom right</span>
(<span class="ident">position</span>.<span class="number">0</span>, <span class="ident">position</span>.<span class="number">1</span> , <span class="ident">normalized_depth</span>), <span class="comment">// top left</span>
(<span class="ident">position</span>.<span class="number">0</span> <span class="op">+</span> <span class="ident">size</span>.<span class="number">0</span>, <span class="ident">position</span>.<span class="number">1</span> <span class="op">+</span> <span class="ident">size</span>.<span class="number">1</span>, <span class="ident">normalized_depth</span>), <span class="comment">// bottom right</span>
(<span class="ident">position</span>.<span class="number">0</span> <span class="op">+</span> <span class="ident">size</span>.<span class="number">0</span>, <span class="ident">position</span>.<span class="number">1</span> , <span class="ident">normalized_depth</span>), <span class="comment">// top right</span>
],
<span class="ident">ti_position</span>: [
(<span class="number">0.0</span> , <span class="number">0.0</span> ), <span class="comment">// top left</span>
(<span class="number">0.0</span> , <span class="ident">image_size</span>.<span class="number">1</span>), <span class="comment">// bottom left</span>
(<span class="ident">image_size</span>.<span class="number">0</span>, <span class="ident">image_size</span>.<span class="number">1</span>), <span class="comment">// bottom right</span>
(<span class="number">0.0</span> , <span class="number">0.0</span> ), <span class="comment">// top left</span>
(<span class="ident">image_size</span>.<span class="number">0</span>, <span class="ident">image_size</span>.<span class="number">1</span>), <span class="comment">// bottom right</span>
(<span class="ident">image_size</span>.<span class="number">0</span>, <span class="number">0.0</span> ), <span class="comment">// top right</span>
],
<span class="ident">position</span>: <span class="ident">position</span>,
<span class="ident">size</span>: <span class="ident">size</span>,
<span class="ident">color</span>: (<span class="number">0.0</span>, <span class="number">0.0</span>, <span class="number">0.0</span>, <span class="number">0.0</span>),
<span class="ident">image_handle</span>: <span class="ident">image_handle</span>.<span class="ident">clone</span>(),
}
}
}
</pre></div>
</section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../../../";window.currentCrate = "sfml_rust";</script><script src="../../../../aliases.js"></script><script src="../../../../main.js"></script><script src="../../../../source-script.js"></script><script src="../../../../source-files.js"></script><script defer src="../../../../search-index.js"></script></body></html>

@ -2,11 +2,9 @@
<span id="2">2</span>
<span id="3">3</span>
<span id="4">4</span>
<span id="5">5</span>
</pre><div class="example-wrap"><pre class="rust ">
<span class="kw">pub</span> <span class="kw">mod</span> <span class="ident">compu_buffer</span>;
<span class="kw">pub</span> <span class="kw">mod</span> <span class="ident">compu_sprite</span>;
<span class="kw">pub</span> <span class="kw">mod</span> <span class="ident">compu_kernel</span>;
<span class="kw">pub</span> <span class="kw">mod</span> <span class="ident">handles</span>;</pre></div>
</section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../../../";window.currentCrate = "sfml_rust";</script><script src="../../../../aliases.js"></script><script src="../../../../main.js"></script><script src="../../../../source-script.js"></script><script src="../../../../source-files.js"></script><script defer src="../../../../search-index.js"></script></body></html>

@ -0,0 +1,120 @@
<!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="Source to the Rust file `src/drawables/compu_sprite.rs`."><meta name="keywords" content="rust, rustlang, rust-lang"><title>compu_sprite.rs.html -- source</title><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="../../../dark.css"><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script src="../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="shortcut icon" href="../../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../../down-arrow.svg");}</style></head><body class="rustdoc source"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../../sfml_rust/index.html'><div class='logo-container'><img src='../../../rust-logo.png' alt='logo'></div></a></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../../settings.html"><img src="../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><pre class="line-numbers"><span id="1"> 1</span>
<span id="2"> 2</span>
<span id="3"> 3</span>
<span id="4"> 4</span>
<span id="5"> 5</span>
<span id="6"> 6</span>
<span id="7"> 7</span>
<span id="8"> 8</span>
<span id="9"> 9</span>
<span id="10">10</span>
<span id="11">11</span>
<span id="12">12</span>
<span id="13">13</span>
<span id="14">14</span>
<span id="15">15</span>
<span id="16">16</span>
<span id="17">17</span>
<span id="18">18</span>
<span id="19">19</span>
<span id="20">20</span>
<span id="21">21</span>
<span id="22">22</span>
<span id="23">23</span>
<span id="24">24</span>
<span id="25">25</span>
<span id="26">26</span>
<span id="27">27</span>
<span id="28">28</span>
<span id="29">29</span>
<span id="30">30</span>
<span id="31">31</span>
<span id="32">32</span>
<span id="33">33</span>
<span id="34">34</span>
<span id="35">35</span>
<span id="36">36</span>
<span id="37">37</span>
<span id="38">38</span>
<span id="39">39</span>
<span id="40">40</span>
<span id="41">41</span>
<span id="42">42</span>
<span id="43">43</span>
<span id="44">44</span>
<span id="45">45</span>
<span id="46">46</span>
<span id="47">47</span>
<span id="48">48</span>
<span id="49">49</span>
<span id="50">50</span>
<span id="51">51</span>
<span id="52">52</span>
<span id="53">53</span>
<span id="54">54</span>
<span id="55">55</span>
<span id="56">56</span>
<span id="57">57</span>
<span id="58">58</span>
<span id="59">59</span>
</pre><div class="example-wrap"><pre class="rust ">
<span class="kw">use</span> <span class="ident">std</span>::<span class="ident">sync</span>::<span class="ident">Arc</span>;
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">canvas</span>::<span class="ident">managed</span>::<span class="ident">handles</span>::{<span class="ident">CanvasImageHandle</span>, <span class="ident">CanvasTextureHandle</span>};
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">canvas</span>::<span class="ident">canvas_frame</span>::<span class="ident">Drawable</span>;
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">util</span>::<span class="ident">vertex</span>::{<span class="ident">VertexTypes</span>, <span class="ident">ImageVertex3D</span>};
<span class="kw">pub</span> <span class="kw">struct</span> <span class="ident">CompuSprite</span> {
<span class="kw">pub</span> <span class="ident">verts</span>: <span class="ident">VertexTypes</span>,
<span class="ident">position</span>: (<span class="ident">f32</span>, <span class="ident">f32</span>),
<span class="ident">size</span>: (<span class="ident">f32</span>, <span class="ident">f32</span>),
<span class="ident">color</span>: (<span class="ident">f32</span>, <span class="ident">f32</span>, <span class="ident">f32</span>, <span class="ident">f32</span>),
}
<span class="kw">impl</span> <span class="ident">CompuSprite</span> {
<span class="kw">pub</span> <span class="kw">fn</span> <span class="ident">new</span>(<span class="ident">position</span>: (<span class="ident">f32</span>, <span class="ident">f32</span>),
<span class="ident">size</span>: (<span class="ident">f32</span>, <span class="ident">f32</span>),
<span class="ident">depth</span>: <span class="ident">u32</span>,
<span class="ident">image_size</span>: (<span class="ident">f32</span>, <span class="ident">f32</span>),
<span class="ident">image_handle</span>: <span class="ident">Arc</span><span class="op">&lt;</span><span class="ident">CanvasImageHandle</span><span class="op">&gt;</span>) <span class="op">-</span><span class="op">&gt;</span> <span class="ident">CompuSprite</span> {
<span class="kw">let</span> <span class="ident">normalized_depth</span> <span class="op">=</span> (<span class="ident">depth</span> <span class="kw">as</span> <span class="ident">f32</span> <span class="op">/</span> <span class="number">255.0</span>);
<span class="kw">let</span> <span class="ident">verts</span> <span class="op">=</span> <span class="macro">vec</span><span class="macro">!</span>[
<span class="ident">ImageVertex3D</span> {
<span class="ident">v_position</span>: [<span class="ident">position</span>.<span class="number">0</span>, <span class="ident">position</span>.<span class="number">1</span>, <span class="ident">normalized_depth</span>], <span class="comment">// top left</span>
<span class="ident">ti_position</span>: [<span class="op">-</span><span class="number">0.0</span>, <span class="op">-</span><span class="number">0.0</span>] },
<span class="ident">ImageVertex3D</span> {
<span class="ident">v_position</span>: [<span class="ident">position</span>.<span class="number">0</span>, <span class="ident">position</span>.<span class="number">1</span> <span class="op">+</span> <span class="ident">size</span>.<span class="number">1</span>, <span class="ident">normalized_depth</span>], <span class="comment">// bottom left</span>
<span class="ident">ti_position</span>: [<span class="op">-</span><span class="number">0.0</span>, <span class="ident">image_size</span>.<span class="number">1</span>] },
<span class="ident">ImageVertex3D</span> {
<span class="ident">v_position</span>: [<span class="ident">position</span>.<span class="number">0</span> <span class="op">+</span> <span class="ident">size</span>.<span class="number">0</span>, <span class="ident">position</span>.<span class="number">1</span> <span class="op">+</span> <span class="ident">size</span>.<span class="number">1</span>, <span class="ident">normalized_depth</span>], <span class="comment">// bottom right</span>
<span class="ident">ti_position</span>: [<span class="ident">image_size</span>.<span class="number">0</span>, <span class="ident">image_size</span>.<span class="number">1</span>] },
<span class="ident">ImageVertex3D</span> {
<span class="ident">v_position</span>: [<span class="ident">position</span>.<span class="number">0</span>, <span class="ident">position</span>.<span class="number">1</span>, <span class="ident">normalized_depth</span>], <span class="comment">// top left</span>
<span class="ident">ti_position</span>: [<span class="op">-</span><span class="number">0.0</span>, <span class="op">-</span><span class="number">0.0</span>] },
<span class="ident">ImageVertex3D</span> {
<span class="ident">v_position</span>: [<span class="ident">position</span>.<span class="number">0</span> <span class="op">+</span> <span class="ident">size</span>.<span class="number">0</span>, <span class="ident">position</span>.<span class="number">1</span> <span class="op">+</span> <span class="ident">size</span>.<span class="number">1</span>, <span class="ident">normalized_depth</span>], <span class="comment">// bottom right</span>
<span class="ident">ti_position</span>: [<span class="ident">image_size</span>.<span class="number">0</span>, <span class="ident">image_size</span>.<span class="number">1</span>] },
<span class="ident">ImageVertex3D</span> {
<span class="ident">v_position</span>: [<span class="ident">position</span>.<span class="number">0</span> <span class="op">+</span> <span class="ident">size</span>.<span class="number">0</span>, <span class="ident">position</span>.<span class="number">1</span>, <span class="ident">normalized_depth</span>], <span class="comment">// top right</span>
<span class="ident">ti_position</span>: [<span class="ident">image_size</span>.<span class="number">0</span>, <span class="op">-</span><span class="number">0.0</span>] },
];
<span class="ident">CompuSprite</span> {
<span class="ident">verts</span>: <span class="ident">VertexTypes</span>::<span class="ident">ImageType</span>(<span class="ident">verts</span>, <span class="ident">image_handle</span>.<span class="ident">clone</span>()),
<span class="ident">position</span>: <span class="ident">position</span>,
<span class="ident">size</span>: <span class="ident">size</span>,
<span class="ident">color</span>: (<span class="number">0.0</span>, <span class="number">0.0</span>, <span class="number">0.0</span>, <span class="number">0.0</span>),
}
}
}
<span class="kw">impl</span> <span class="ident">Drawable</span> <span class="kw">for</span> <span class="ident">CompuSprite</span> {
<span class="kw">fn</span> <span class="ident">get</span>(<span class="kw-2">&amp;</span><span class="self">self</span>) <span class="op">-</span><span class="op">&gt;</span> <span class="ident">VertexTypes</span> {
<span class="self">self</span>.<span class="ident">verts</span>.<span class="ident">clone</span>()
}
}</pre></div>
</section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../../";window.currentCrate = "sfml_rust";</script><script src="../../../aliases.js"></script><script src="../../../main.js"></script><script src="../../../source-script.js"></script><script src="../../../source-files.js"></script><script defer src="../../../search-index.js"></script></body></html>

@ -0,0 +1,10 @@
<!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="Source to the Rust file `src/drawables/mod.rs`."><meta name="keywords" content="rust, rustlang, rust-lang"><title>mod.rs.html -- source</title><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="../../../dark.css"><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script src="../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="shortcut icon" href="../../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../../down-arrow.svg");}</style></head><body class="rustdoc source"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../../sfml_rust/index.html'><div class='logo-container'><img src='../../../rust-logo.png' alt='logo'></div></a></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../../settings.html"><img src="../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><pre class="line-numbers"><span id="1">1</span>
<span id="2">2</span>
<span id="3">3</span>
<span id="4">4</span>
</pre><div class="example-wrap"><pre class="rust ">
<span class="kw">pub</span> <span class="kw">mod</span> <span class="ident">polygon</span>;
<span class="kw">pub</span> <span class="kw">mod</span> <span class="ident">sprite</span>;
<span class="kw">pub</span> <span class="kw">mod</span> <span class="ident">rect</span>;
<span class="kw">pub</span> <span class="kw">mod</span> <span class="ident">compu_sprite</span>;</pre></div>
</section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../../";window.currentCrate = "sfml_rust";</script><script src="../../../aliases.js"></script><script src="../../../main.js"></script><script src="../../../source-script.js"></script><script src="../../../source-files.js"></script><script defer src="../../../search-index.js"></script></body></html>

@ -0,0 +1,145 @@
<!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="Source to the Rust file `src/drawables/polygon.rs`."><meta name="keywords" content="rust, rustlang, rust-lang"><title>polygon.rs.html -- source</title><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="../../../dark.css"><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script src="../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="shortcut icon" href="../../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../../down-arrow.svg");}</style></head><body class="rustdoc source"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../../sfml_rust/index.html'><div class='logo-container'><img src='../../../rust-logo.png' alt='logo'></div></a></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../../settings.html"><img src="../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><pre class="line-numbers"><span id="1"> 1</span>
<span id="2"> 2</span>
<span id="3"> 3</span>
<span id="4"> 4</span>
<span id="5"> 5</span>
<span id="6"> 6</span>
<span id="7"> 7</span>
<span id="8"> 8</span>
<span id="9"> 9</span>
<span id="10">10</span>
<span id="11">11</span>
<span id="12">12</span>
<span id="13">13</span>
<span id="14">14</span>
<span id="15">15</span>
<span id="16">16</span>
<span id="17">17</span>
<span id="18">18</span>
<span id="19">19</span>
<span id="20">20</span>
<span id="21">21</span>
<span id="22">22</span>
<span id="23">23</span>
<span id="24">24</span>
<span id="25">25</span>
<span id="26">26</span>
<span id="27">27</span>
<span id="28">28</span>
<span id="29">29</span>
<span id="30">30</span>
<span id="31">31</span>
<span id="32">32</span>
<span id="33">33</span>
<span id="34">34</span>
<span id="35">35</span>
<span id="36">36</span>
<span id="37">37</span>
<span id="38">38</span>
<span id="39">39</span>
<span id="40">40</span>
<span id="41">41</span>
<span id="42">42</span>
<span id="43">43</span>
<span id="44">44</span>
<span id="45">45</span>
<span id="46">46</span>
<span id="47">47</span>
<span id="48">48</span>
<span id="49">49</span>
<span id="50">50</span>
<span id="51">51</span>
<span id="52">52</span>
<span id="53">53</span>
<span id="54">54</span>
<span id="55">55</span>
<span id="56">56</span>
<span id="57">57</span>
<span id="58">58</span>
<span id="59">59</span>
<span id="60">60</span>
<span id="61">61</span>
<span id="62">62</span>
<span id="63">63</span>
<span id="64">64</span>
<span id="65">65</span>
<span id="66">66</span>
<span id="67">67</span>
<span id="68">68</span>
<span id="69">69</span>
<span id="70">70</span>
<span id="71">71</span>
</pre><div class="example-wrap"><pre class="rust ">
<span class="kw">use</span> <span class="ident">std</span>::<span class="ident">sync</span>::<span class="ident">Arc</span>;
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">canvas</span>::<span class="kw-2">*</span>;
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">canvas</span>::<span class="ident">managed</span>::<span class="ident">handles</span>::{<span class="ident">CanvasFontHandle</span>, <span class="ident">CanvasImageHandle</span>, <span class="ident">CanvasTextureHandle</span>, <span class="ident">Handle</span>};
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">canvas</span>::<span class="ident">canvas_frame</span>::{<span class="ident">Drawable</span>};
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">util</span>::<span class="ident">vertex</span>::{<span class="ident">VertexTypes</span>, <span class="ident">TextureVertex3D</span>, <span class="ident">Vertex3D</span>, <span class="ident">ColorVertex3D</span>};
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">drawables</span>::<span class="ident">sprite</span>::<span class="ident">Sprite</span>;
<span class="doccomment">/// Convex multi verticy polygon</span>
<span class="attribute">#[<span class="ident">derive</span>(<span class="ident">Debug</span>, <span class="ident">Clone</span>)]</span>
<span class="kw">pub</span> <span class="kw">struct</span> <span class="ident">Polygon</span> {
<span class="kw">pub</span> <span class="ident">verts</span>: <span class="ident">VertexTypes</span>,
<span class="ident">position</span>: (<span class="ident">f32</span>, <span class="ident">f32</span>),
<span class="ident">size</span>: (<span class="ident">f32</span>, <span class="ident">f32</span>),
}
<span class="doccomment">/// Container class which implements drawable.</span>
<span class="kw">impl</span> <span class="ident">Polygon</span> {
<span class="doccomment">///</span>
<span class="kw">pub</span> <span class="kw">fn</span> <span class="ident">new</span>(<span class="ident">position</span>: (<span class="ident">f32</span>, <span class="ident">f32</span>),
<span class="ident">size</span>: (<span class="ident">f32</span>, <span class="ident">f32</span>),
<span class="ident">depth</span>: <span class="ident">u32</span>,) <span class="op">-</span><span class="op">&gt;</span> <span class="ident">Polygon</span> {
<span class="kw">let</span> <span class="ident">normalized_depth</span> <span class="op">=</span> (<span class="ident">depth</span> <span class="kw">as</span> <span class="ident">f32</span> <span class="op">/</span> <span class="number">255.0</span>);
<span class="kw">let</span> <span class="ident">verts</span> <span class="op">=</span> <span class="macro">vec</span><span class="macro">!</span>[
<span class="ident">ColorVertex3D</span>{<span class="ident">v_position</span>: [<span class="op">-</span><span class="number">0.5</span>, <span class="op">-</span><span class="number">0.5</span>, <span class="ident">normalized_depth</span>], <span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">0.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{<span class="ident">v_position</span>: [<span class="op">-</span><span class="number">1.0</span>, <span class="number">1.0</span>, <span class="ident">normalized_depth</span>], <span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">0.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{<span class="ident">v_position</span>: [<span class="op">-</span><span class="number">0.25</span>, <span class="number">0.0</span>, <span class="ident">normalized_depth</span>], <span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">0.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{<span class="ident">v_position</span>: [<span class="op">-</span><span class="number">0.25</span>, <span class="number">0.0</span>, <span class="ident">normalized_depth</span>], <span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">0.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{<span class="ident">v_position</span>: [<span class="op">-</span><span class="number">1.0</span>, <span class="number">1.0</span>, <span class="ident">normalized_depth</span>], <span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">0.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{<span class="ident">v_position</span>: [<span class="number">0.0</span>, <span class="number">0.5</span>, <span class="ident">normalized_depth</span>], <span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">0.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{<span class="ident">v_position</span>: [<span class="number">0.25</span>, <span class="number">0.0</span>, <span class="ident">normalized_depth</span>], <span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">0.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{<span class="ident">v_position</span>: [<span class="op">-</span><span class="number">1.0</span>, <span class="number">1.0</span>, <span class="ident">normalized_depth</span>], <span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">0.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{<span class="ident">v_position</span>: [<span class="number">0.0</span>, <span class="number">0.5</span>, <span class="ident">normalized_depth</span>], <span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">0.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{<span class="ident">v_position</span>: [<span class="number">0.5</span>, <span class="op">-</span><span class="number">0.5</span>, <span class="ident">normalized_depth</span>], <span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">0.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{<span class="ident">v_position</span>: [<span class="op">-</span><span class="number">1.0</span>, <span class="number">1.0</span>, <span class="ident">normalized_depth</span>], <span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">0.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{<span class="ident">v_position</span>: [<span class="number">0.25</span>, <span class="number">0.0</span>, <span class="ident">normalized_depth</span>], <span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">0.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{<span class="ident">v_position</span>: [<span class="number">0.25</span>, <span class="op">-</span><span class="number">0.5</span>, <span class="ident">normalized_depth</span>], <span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">0.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{<span class="ident">v_position</span>: [<span class="op">-</span><span class="number">1.0</span>, <span class="number">1.0</span>, <span class="ident">normalized_depth</span>], <span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">0.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{<span class="ident">v_position</span>: [<span class="number">0.5</span>, <span class="op">-</span><span class="number">0.5</span>, <span class="ident">normalized_depth</span>], <span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">0.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{<span class="ident">v_position</span>: [<span class="number">0.25</span>, <span class="op">-</span><span class="number">0.5</span>, <span class="ident">normalized_depth</span>], <span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">0.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{<span class="ident">v_position</span>: [<span class="op">-</span><span class="number">1.0</span>, <span class="number">1.0</span>, <span class="ident">normalized_depth</span>], <span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">0.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{<span class="ident">v_position</span>: [<span class="number">0.0</span>, <span class="op">-</span><span class="number">0.1</span>, <span class="ident">normalized_depth</span>], <span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">0.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{<span class="ident">v_position</span>: [<span class="op">-</span><span class="number">0.25</span>, <span class="op">-</span><span class="number">0.5</span>, <span class="ident">normalized_depth</span>], <span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">0.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{<span class="ident">v_position</span>: [<span class="op">-</span><span class="number">1.0</span>, <span class="number">1.0</span>, <span class="ident">normalized_depth</span>], <span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">0.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{<span class="ident">v_position</span>: [<span class="number">0.0</span>, <span class="op">-</span><span class="number">0.1</span>, <span class="ident">normalized_depth</span>], <span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">0.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{<span class="ident">v_position</span>: [<span class="op">-</span><span class="number">0.5</span>, <span class="op">-</span><span class="number">0.5</span>, <span class="ident">normalized_depth</span>], <span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">0.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{<span class="ident">v_position</span>: [<span class="op">-</span><span class="number">1.0</span>, <span class="number">1.0</span>, <span class="ident">normalized_depth</span>], <span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">0.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{<span class="ident">v_position</span>: [<span class="op">-</span><span class="number">0.25</span>, <span class="op">-</span><span class="number">0.5</span>, <span class="ident">normalized_depth</span>], <span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">0.0</span>, <span class="number">1.0</span>] },
];
<span class="ident">Polygon</span> {
<span class="ident">verts</span>: <span class="ident">VertexTypes</span>::<span class="ident">ColorType</span>(<span class="ident">verts</span>),
<span class="ident">position</span>: <span class="ident">position</span>,
<span class="ident">size</span>: <span class="ident">size</span>,
}
}
}
<span class="kw">impl</span> <span class="ident">Drawable</span> <span class="kw">for</span> <span class="ident">Polygon</span> {
<span class="kw">fn</span> <span class="ident">get</span>(<span class="kw-2">&amp;</span><span class="self">self</span>) <span class="op">-</span><span class="op">&gt;</span> <span class="ident">VertexTypes</span> {
<span class="self">self</span>.<span class="ident">verts</span>.<span class="ident">clone</span>()
}
}
</pre></div>
</section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../../";window.currentCrate = "sfml_rust";</script><script src="../../../aliases.js"></script><script src="../../../main.js"></script><script src="../../../source-script.js"></script><script src="../../../source-files.js"></script><script defer src="../../../search-index.js"></script></body></html>

@ -0,0 +1,117 @@
<!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="Source to the Rust file `src/drawables/rect.rs`."><meta name="keywords" content="rust, rustlang, rust-lang"><title>rect.rs.html -- source</title><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="../../../dark.css"><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script src="../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="shortcut icon" href="../../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../../down-arrow.svg");}</style></head><body class="rustdoc source"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../../sfml_rust/index.html'><div class='logo-container'><img src='../../../rust-logo.png' alt='logo'></div></a></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../../settings.html"><img src="../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><pre class="line-numbers"><span id="1"> 1</span>
<span id="2"> 2</span>
<span id="3"> 3</span>
<span id="4"> 4</span>
<span id="5"> 5</span>
<span id="6"> 6</span>
<span id="7"> 7</span>
<span id="8"> 8</span>
<span id="9"> 9</span>
<span id="10">10</span>
<span id="11">11</span>
<span id="12">12</span>
<span id="13">13</span>
<span id="14">14</span>
<span id="15">15</span>
<span id="16">16</span>
<span id="17">17</span>
<span id="18">18</span>
<span id="19">19</span>
<span id="20">20</span>
<span id="21">21</span>
<span id="22">22</span>
<span id="23">23</span>
<span id="24">24</span>
<span id="25">25</span>
<span id="26">26</span>
<span id="27">27</span>
<span id="28">28</span>
<span id="29">29</span>
<span id="30">30</span>
<span id="31">31</span>
<span id="32">32</span>
<span id="33">33</span>
<span id="34">34</span>
<span id="35">35</span>
<span id="36">36</span>
<span id="37">37</span>
<span id="38">38</span>
<span id="39">39</span>
<span id="40">40</span>
<span id="41">41</span>
<span id="42">42</span>
<span id="43">43</span>
<span id="44">44</span>
<span id="45">45</span>
<span id="46">46</span>
<span id="47">47</span>
<span id="48">48</span>
<span id="49">49</span>
<span id="50">50</span>
<span id="51">51</span>
<span id="52">52</span>
<span id="53">53</span>
<span id="54">54</span>
<span id="55">55</span>
<span id="56">56</span>
<span id="57">57</span>
</pre><div class="example-wrap"><pre class="rust ">
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">canvas</span>::<span class="ident">canvas_frame</span>::<span class="ident">Drawable</span>;
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">util</span>::<span class="ident">vertex</span>::{<span class="ident">VertexTypes</span>, <span class="ident">ColorVertex3D</span>};
<span class="doccomment">///</span>
<span class="attribute">#[<span class="ident">derive</span>(<span class="ident">Debug</span>, <span class="ident">Clone</span>)]</span>
<span class="kw">pub</span> <span class="kw">struct</span> <span class="ident">Rect</span> {
<span class="kw">pub</span> <span class="ident">verts</span>: <span class="ident">VertexTypes</span>,
<span class="ident">position</span>: (<span class="ident">f32</span>, <span class="ident">f32</span>),
<span class="ident">size</span>: (<span class="ident">f32</span>, <span class="ident">f32</span>),
}
<span class="doccomment">/// Container class which implements drawable.</span>
<span class="kw">impl</span> <span class="ident">Rect</span> {
<span class="doccomment">///</span>
<span class="kw">pub</span> <span class="kw">fn</span> <span class="ident">new</span>(<span class="ident">position</span>: (<span class="ident">f32</span>, <span class="ident">f32</span>),
<span class="ident">size</span>: (<span class="ident">f32</span>, <span class="ident">f32</span>),
<span class="ident">depth</span>: <span class="ident">u32</span>) <span class="op">-</span><span class="op">&gt;</span> <span class="ident">Rect</span> {
<span class="kw">let</span> <span class="ident">normalized_depth</span> <span class="op">=</span> (<span class="ident">depth</span> <span class="kw">as</span> <span class="ident">f32</span> <span class="op">/</span> <span class="number">255.0</span>);
<span class="kw">let</span> <span class="ident">verts</span> <span class="op">=</span> <span class="macro">vec</span><span class="macro">!</span>[
<span class="ident">ColorVertex3D</span>{
<span class="ident">v_position</span>: [<span class="ident">position</span>.<span class="number">0</span>, <span class="ident">position</span>.<span class="number">1</span>, <span class="ident">normalized_depth</span>], <span class="comment">// top left</span>
<span class="ident">color</span>: [<span class="number">0.0</span>, <span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">0.5</span>] },
<span class="ident">ColorVertex3D</span>{
<span class="ident">v_position</span>: [<span class="ident">position</span>.<span class="number">0</span>, <span class="ident">position</span>.<span class="number">1</span> <span class="op">+</span> <span class="ident">size</span>.<span class="number">1</span>, <span class="ident">normalized_depth</span>], <span class="comment">// bottom left</span>
<span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{
<span class="ident">v_position</span>: [<span class="ident">position</span>.<span class="number">0</span> <span class="op">+</span> <span class="ident">size</span>.<span class="number">0</span>, <span class="ident">position</span>.<span class="number">1</span> <span class="op">+</span> <span class="ident">size</span>.<span class="number">1</span>, <span class="ident">normalized_depth</span>], <span class="comment">// bottom right</span>
<span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{
<span class="ident">v_position</span>: [<span class="ident">position</span>.<span class="number">0</span>, <span class="ident">position</span>.<span class="number">1</span>, <span class="ident">normalized_depth</span>], <span class="comment">// top left</span>
<span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{
<span class="ident">v_position</span>: [<span class="ident">position</span>.<span class="number">0</span> <span class="op">+</span> <span class="ident">size</span>.<span class="number">0</span>, <span class="ident">position</span>.<span class="number">1</span> <span class="op">+</span> <span class="ident">size</span>.<span class="number">1</span>, <span class="ident">normalized_depth</span>], <span class="comment">// bottom right</span>
<span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">1.0</span>] },
<span class="ident">ColorVertex3D</span>{
<span class="ident">v_position</span>: [<span class="ident">position</span>.<span class="number">0</span> <span class="op">+</span> <span class="ident">size</span>.<span class="number">0</span>, <span class="ident">position</span>.<span class="number">1</span>, <span class="ident">normalized_depth</span>], <span class="comment">// top right</span>
<span class="ident">color</span>: [<span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">1.0</span>, <span class="number">1.0</span>] },
];
<span class="ident">Rect</span> {
<span class="ident">verts</span>: <span class="ident">VertexTypes</span>::<span class="ident">ColorType</span>(<span class="ident">verts</span>),
<span class="ident">position</span>: <span class="ident">position</span>,
<span class="ident">size</span>: <span class="ident">size</span>,
}
}
}
<span class="kw">impl</span> <span class="ident">Drawable</span> <span class="kw">for</span> <span class="ident">Rect</span> {
<span class="kw">fn</span> <span class="ident">get</span>(<span class="kw-2">&amp;</span><span class="self">self</span>) <span class="op">-</span><span class="op">&gt;</span> <span class="ident">VertexTypes</span> {
<span class="self">self</span>.<span class="ident">verts</span>.<span class="ident">clone</span>()
}
}
</pre></div>
</section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../../";window.currentCrate = "sfml_rust";</script><script src="../../../aliases.js"></script><script src="../../../main.js"></script><script src="../../../source-script.js"></script><script src="../../../source-files.js"></script><script defer src="../../../search-index.js"></script></body></html>

@ -1,4 +1,4 @@
<!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="Source to the Rust file `src/sprite.rs`."><meta name="keywords" content="rust, rustlang, rust-lang"><title>sprite.rs.html -- source</title><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="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc source"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../sfml_rust/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><pre class="line-numbers"><span id="1"> 1</span>
<!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="Source to the Rust file `src/drawables/sprite.rs`."><meta name="keywords" content="rust, rustlang, rust-lang"><title>sprite.rs.html -- source</title><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="../../../dark.css"><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script src="../../../storage.js"></script><noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="shortcut icon" href="../../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../../down-arrow.svg");}</style></head><body class="rustdoc source"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../../sfml_rust/index.html'><div class='logo-container'><img src='../../../rust-logo.png' alt='logo'></div></a></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../../settings.html"><img src="../../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><pre class="line-numbers"><span id="1"> 1</span>
<span id="2"> 2</span>
<span id="3"> 3</span>
<span id="4"> 4</span>
@ -128,4 +128,4 @@
</pre></div>
</section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "sfml_rust";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script src="../../source-script.js"></script><script src="../../source-files.js"></script><script defer src="../../search-index.js"></script></body></html>
</section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../../";window.currentCrate = "sfml_rust";</script><script src="../../../aliases.js"></script><script src="../../../main.js"></script><script src="../../../source-script.js"></script><script src="../../../source-files.js"></script><script defer src="../../../search-index.js"></script></body></html>

@ -228,28 +228,6 @@
<span id="228">228</span>
<span id="229">229</span>
<span id="230">230</span>
<span id="231">231</span>
<span id="232">232</span>
<span id="233">233</span>
<span id="234">234</span>
<span id="235">235</span>
<span id="236">236</span>
<span id="237">237</span>
<span id="238">238</span>
<span id="239">239</span>
<span id="240">240</span>
<span id="241">241</span>
<span id="242">242</span>
<span id="243">243</span>
<span id="244">244</span>
<span id="245">245</span>
<span id="246">246</span>
<span id="247">247</span>
<span id="248">248</span>
<span id="249">249</span>
<span id="250">250</span>
<span id="251">251</span>
<span id="252">252</span>
</pre><div class="example-wrap"><pre class="rust ">
<span class="attribute">#![<span class="ident">allow</span>(<span class="ident">dead_code</span>)]</span>
<span class="attribute">#![<span class="ident">allow</span>(<span class="ident">unused_variables</span>)]</span>
@ -271,46 +249,26 @@
<span class="kw">use</span> <span class="ident">winit</span>::{<span class="ident">EventsLoop</span>, <span class="ident">WindowBuilder</span>, <span class="ident">WindowEvent</span>, <span class="ident">Event</span>, <span class="ident">DeviceEvent</span>, <span class="ident">VirtualKeyCode</span>, <span class="ident">ElementState</span>};
<span class="kw">use</span> <span class="ident">winit</span>::<span class="ident">dpi</span>::<span class="ident">LogicalSize</span>;
<span class="kw">use</span> <span class="ident">vulkano_win</span>::<span class="ident">VkSurfaceBuild</span>;
<span class="kw">use</span> <span class="ident">sprite</span>::<span class="ident">Sprite</span>;
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">util</span>::<span class="ident">load_raw</span>;
<span class="kw">use</span> <span class="ident">vulkano</span>::<span class="ident">instance</span>::<span class="ident">debug</span>::<span class="ident">DebugCallback</span>;
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">compute</span>::<span class="ident">compu_frame</span>::<span class="ident">CompuFrame</span>;
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">canvas</span>::<span class="ident">canvas_frame</span>::{<span class="ident">CanvasFrame</span>, <span class="ident">Drawable</span>};
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">compute</span>::<span class="ident">managed</span>::<span class="ident">compu_sprite</span>::<span class="ident">CompuSprite</span>;
<span class="kw">use</span> <span class="ident">std</span>::<span class="ident">sync</span>::<span class="ident">Arc</span>;
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">canvas</span>::<span class="ident">managed</span>::<span class="ident">handles</span>::{<span class="ident">CanvasTextureHandle</span>, <span class="ident">Handle</span>, <span class="ident">CanvasFontHandle</span>};
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">util</span>::<span class="ident">vertex</span>::{<span class="ident">VertexTypes</span>, <span class="ident">TextureVertex3D</span>};
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">compute</span>::<span class="ident">managed</span>::<span class="ident">handles</span>::{<span class="ident">CompuBufferHandle</span>, <span class="ident">CompuKernelHandle</span>};
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">drawables</span>::<span class="ident">sprite</span>::<span class="ident">Sprite</span>;
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">drawables</span>::<span class="ident">rect</span>::<span class="ident">Rect</span>;
<span class="kw">use</span> <span class="kw">crate</span>::<span class="ident">drawables</span>::<span class="ident">compu_sprite</span>::<span class="ident">CompuSprite</span>;
<span class="kw">pub</span> <span class="kw">mod</span> <span class="ident">util</span>;
<span class="kw">pub</span> <span class="kw">mod</span> <span class="ident">vkprocessor</span>;
<span class="kw">pub</span> <span class="kw">mod</span> <span class="ident">sprite</span>;
<span class="kw">pub</span> <span class="kw">mod</span> <span class="ident">drawables</span>;
<span class="kw">pub</span> <span class="kw">mod</span> <span class="ident">canvas</span>;
<span class="kw">pub</span> <span class="kw">mod</span> <span class="ident">compute</span>;
<span class="comment">/*
Trac3r : A program to convert images to 2D toolpaths
TODO:
+ Text rendering is half implemented.
+ Need generalized interface for render (image, texture, text)
+ Currently using local copies of a few libraries:
shade_runner
vulkano/vulkano-win
vulkano/vulkano-shaders
vulkano/vulkano
+ Need to generate runtime vertex definitions if I want to have on the fly shaders
*/</span>
<span class="kw">pub</span> <span class="kw">fn</span> <span class="ident">main</span>() {
<span class="ident">hprof</span>::<span class="ident">start_frame</span>();
@ -378,8 +336,12 @@
<span class="kw">let</span> <span class="ident">font_handle</span> : <span class="ident">Arc</span><span class="op">&lt;</span><span class="ident">CanvasFontHandle</span><span class="op">&gt;</span> <span class="op">=</span>
<span class="ident">processor</span>.<span class="ident">get_font_handle</span>(<span class="ident">String</span>::<span class="ident">from</span>(<span class="string">&quot;sansation.ttf&quot;</span>)).<span class="ident">unwrap</span>();
<span class="kw">let</span> <span class="ident">funky_sprite</span> <span class="op">=</span> <span class="ident">Sprite</span>::<span class="ident">new</span>((<span class="number">0.0</span>, <span class="op">-</span><span class="number">0.5</span>), (<span class="number">0.5</span>, <span class="number">0.5</span>), <span class="number">0</span>, <span class="ident">funky_handle</span>.<span class="ident">clone</span>());
<span class="kw">let</span> <span class="ident">funky_sprite</span> <span class="op">=</span> <span class="ident">Sprite</span>::<span class="ident">new</span>((<span class="number">0.0</span>, <span class="number">0.5</span>), (<span class="number">0.5</span>, <span class="number">0.5</span>), <span class="number">0</span>, <span class="ident">funky_handle</span>.<span class="ident">clone</span>());
<span class="kw">let</span> <span class="ident">sfml_sprite</span> <span class="op">=</span> <span class="ident">Sprite</span>::<span class="ident">new</span>((<span class="number">0.0</span>, <span class="op">-</span><span class="number">0.5</span>), (<span class="number">0.5</span>, <span class="number">0.5</span>), <span class="number">1</span>, <span class="ident">sfml_handle</span>.<span class="ident">clone</span>());
<span class="kw">let</span> <span class="ident">rect</span> <span class="op">=</span> <span class="ident">Rect</span>::<span class="ident">new</span>((<span class="op">-</span><span class="number">0.5</span>, <span class="op">-</span><span class="number">0.5</span>), (<span class="number">0.5</span>, <span class="number">0.5</span>), <span class="number">1</span>);
<span class="comment">//let sfml_sprite = Sprite::new((0.0, -0.5), (0.5, 0.5), 1, sfml_handle.clone());</span>
<span class="comment">//let text_sprite = Text::new((-0.1,-0.1), (10.0, 10.0), font_handle.clone());</span>
<span class="comment">//let test_polygon = Poly::new_with_color((-0.5, -0.5), (0.5, 0.5), 1, (1.0,0.0,0.0,0.0));</span>
@ -440,20 +402,15 @@
<span class="kw">break</span>;
}
<span class="kw">let</span> <span class="ident">funky_sprite</span> <span class="op">=</span> <span class="ident">Sprite</span>::<span class="ident">new</span>((<span class="number">0.0</span>, <span class="op">-</span><span class="number">0.5</span>), (<span class="number">0.5</span>, <span class="number">0.5</span>), <span class="number">0</span>, <span class="ident">funky_handle</span>.<span class="ident">clone</span>());
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">canvas_frame</span> <span class="op">=</span> <span class="ident">CanvasFrame</span>::<span class="ident">default</span>();
<span class="ident">canvas_frame</span>.<span class="ident">draw</span>(<span class="kw-2">&amp;</span><span class="ident">funky_sprite</span>);
<span class="ident">canvas_frame</span>.<span class="ident">draw</span>(<span class="kw-2">&amp;</span><span class="ident">sfml_sprite</span>);
<span class="ident">canvas_frame</span>.<span class="ident">draw</span>(<span class="kw-2">&amp;</span><span class="ident">compu_sprite1</span>);
<span class="comment">// canvas_frame.draw(&amp;rect);</span>
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">compu_frame</span> <span class="op">=</span> <span class="ident">CompuFrame</span>::<span class="ident">new</span>();
<span class="comment">// compu_frame.add(compute_buffer.clone(), compute_kernel.clone());</span>
<span class="comment">// compu_frame.add_with_image_swap(compute_buffer.clone(), compute_kernel.clone(), &amp;compu_sprite1);</span>
<span class="comment">//</span>
<span class="comment">// let mut canvas = CanvasFrame::new();</span>
<span class="comment">// canvas.draw(&amp;funky_sprite);</span>
<span class="comment">// canvas.draw(&amp;test_polygon);</span>
<span class="comment">//compu_frame.add(compute_buffer.clone(), compute_kernel.clone());</span>
<span class="ident">compu_frame</span>.<span class="ident">add_with_image_swap</span>(<span class="ident">compute_buffer</span>.<span class="ident">clone</span>(), <span class="ident">compute_kernel</span>.<span class="ident">clone</span>(), <span class="kw-2">&amp;</span><span class="ident">compu_sprite1</span>);
{
<span class="kw">let</span> <span class="ident">g</span> <span class="op">=</span> <span class="ident">hprof</span>::<span class="ident">enter</span>(<span class="string">&quot;Run&quot;</span>);
@ -466,7 +423,6 @@
<span class="ident">drop</span>(<span class="ident">l</span>);
<span class="kw">return</span>;
<span class="ident">hprof</span>::<span class="ident">end_frame</span>();
<span class="ident">hprof</span>::<span class="ident">profiler</span>().<span class="ident">print_timing</span>();
}

@ -69,7 +69,7 @@
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">image_buffer</span> <span class="op">=</span> <span class="ident">Vec</span>::<span class="ident">new</span>();
<span class="kw">if</span> <span class="ident">pixel_count</span> <span class="op">!</span><span class="op">=</span> <span class="ident">data_length</span> <span class="kw">as</span> <span class="ident">usize</span> {
<span class="macro">println</span><span class="macro">!</span>(<span class="string">&quot;Creating apha channel...&quot;</span>);
<span class="macro">println</span><span class="macro">!</span>(<span class="string">&quot;Creating alpha channel for {}&quot;</span>, <span class="ident">filename</span>);
<span class="kw">for</span> <span class="ident">i</span> <span class="kw">in</span> <span class="ident">img</span>.<span class="ident">raw_pixels</span>().<span class="ident">iter</span>() {
<span class="kw">if</span> (<span class="ident">image_buffer</span>.<span class="ident">len</span>() <span class="op">+</span> <span class="number">1</span>) <span class="op">%</span> <span class="number">4</span> <span class="op">=</span><span class="op">=</span> <span class="number">0</span> {
<span class="ident">image_buffer</span>.<span class="ident">push</span>(<span class="number">255</span>);

@ -337,7 +337,6 @@
<span id="337">337</span>
<span id="338">338</span>
<span id="339">339</span>
<span id="340">340</span>
</pre><div class="example-wrap"><pre class="rust ">
<span class="kw">use</span> <span class="ident">vulkano</span>::<span class="ident">command_buffer</span>::{<span class="ident">AutoCommandBufferBuilder</span>, <span class="ident">DynamicState</span>};
<span class="kw">use</span> <span class="ident">vulkano</span>::<span class="ident">device</span>::{<span class="ident">Device</span>, <span class="ident">DeviceExtensions</span>, <span class="ident">QueuesIter</span>, <span class="ident">Queue</span>};
@ -563,10 +562,9 @@
<span class="self">self</span>.<span class="ident">compute_state</span>.<span class="ident">write_compute_buffer</span>(<span class="ident">handle</span>, <span class="ident">data</span>)
}
<span class="doccomment">///</span>
<span class="doccomment">/// Run the VKprocessor for a single frame, consuming the Canvas/Compu Frames</span>
<span class="kw">pub</span> <span class="kw">fn</span> <span class="ident">run</span>(<span class="kw-2">&amp;</span><span class="kw-2">mut</span> <span class="self">self</span>,
<span class="ident">surface</span>: <span class="kw-2">&amp;</span><span class="lifetime">&#39;a</span> <span class="ident">Arc</span><span class="op">&lt;</span><span class="ident">Surface</span><span class="op">&lt;</span><span class="ident">Window</span><span class="op">&gt;</span><span class="op">&gt;</span>,
<span class="comment">//canvas_frame: CanvasFrame,</span>
<span class="ident">canvas_frame</span>: <span class="ident">CanvasFrame</span>,
<span class="ident">compute_frame</span>: <span class="ident">CompuFrame</span>,
) {

@ -0,0 +1,48 @@
Content-Type: text/x-zim-wiki
Wiki-Format: zim 0.4
Creation-Date: 2020-02-21T22:54:06-08:00
====== Drawables ======
[[/doc/sfml_rust/drawables/index.html|Documentation]]
=== Details ===
Drawables are all able to be passed to the canvas frame to be rendered
The implementation of the Drawable trait is tightly coupled to the data types defined in VertexType and ingested by the canvas frame
Right now I have a couple of types that I'm using:
TextureType(vec, handle)
ImageType(vec, handle)
ColorType(vec)
ThreeDType(vec)
This maps to the drawables I have implemented
compu_sprite : ImageType
polygon : ColorType
rect : ColorType
sprite : TextureType
It doesn't matter, how these objects get the VertexType that it needs to return. Generating them on the fly should be generally OK. It won't scale to very large amounts of sprites. But it's fine for now.

@ -2,67 +2,43 @@ Content-Type: text/x-zim-wiki
Wiki-Format: zim 0.4
Creation-Date: 2020-02-03T22:11:42-08:00
====== Home ======
[[~/source/Trac3r-rust/doc/sfml_rust/index.html|Documentation Root]]
Main Systems:
[[~/source/Trac3r-rust/doc/sfml_rust/sprite/index.html|Spri]][[~/source/Trac3r-rust/doc/sfml_rust/sprite/index.html|te]]
[[VKProcessor:CanvasContainerClasses]]
Docs
[[VkProcessor]] [[~/source/Trac3r-rust/doc/sfml_rust/vkprocessor/struct.VkProcessor.html|===========]]
[[VKProcessor:CanvasState|CanvasState]] [[~/source/Trac3r-rust/doc/sfml_rust/canvas/canvas_state/index.html|===========]]
[[VKProcessor:DynamicVertex|DynamicVertex]] ===========
[[VKProcessor:CompuState|CompuState]] [[~/source/Trac3r-rust/doc/sfml_rust/compute/compu_state/struct.CompuState.html|===========]]
--------------------
=== Trac3r : A program to convert images to 2D toolpaths ===
TODO:
+ Text rendering is half implemented.
+ Need generalized interface for render (image, texture, text)
+ Currently using local copies of a few libraries:
[ ] Text rendering is half implemented.
[ ] Currently using local copies of a few libraries:
shade_runner
vulkano/vulkano-win
vulkano/vulkano-shaders
vulkano/vulkano
[ ] Get a new GPU
--------------------
====== Warming Up ======
Currently I'm getting my bearings again on this project.
=== canvas ===
I made a maybe(?) good change to the heirarchy of the canvas. Hiding the construction of handles from anything outside.
Currently, canvas is separated out to
* A state container: CanvasState
* An Interface class CanvasFrame
* `Managed` objects. Aka, everything that CanvasState holds
CanvasText is just laying around until I use it...
Shader pipeline objects exists in one level of managed
Handle and Buffer objects exists in the base managed level
== Do I commit to the all handles in handles.rs? ==
--------------------
FYI The shader API is actually pretty badass
[[~/source/Trac3r-rust/doc/sfml_rust/index.html|Documentation Root]]
Docs
[[VkProcessor]] [[~/source/Trac3r-rust/doc/sfml_rust/vkprocessor/struct.VkProcessor.html|===========]]
[[VKProcessor:CanvasState|CanvasState]] [[~/source/Trac3r-rust/doc/sfml_rust/canvas/canvas_state/index.html|===========]]
[[VKProcessor::CanvasFrame|CanvasFrame]] ===========
[[VKProcessor:CompiledShader|CompiledShader]] ===========
[[VKProcessor:CompuState|CompuState]] [[~/source/Trac3r-rust/doc/sfml_rust/compute/compu_state/struct.CompuState.html|===========]]
[[VKProcessor:DynamicVertex|DynamicVertex]] (dead) ===========
[[Drawables]] ===========
load_shader::<GenericShader, ColorVertex2D>("shadername", a, b);
--------------------
So right now it looks like I am having some trouble in the drawing of the CanvasFrame I've crafted.
It is seriously just a Vector of VertexTypes. Which should be fine
==== Context switching ====
So lets finish this text rendering!
I remember using a triangle fan to render the fonts using the stencil buffer swapping
--------------------

@ -16,12 +16,6 @@ Vk Processors is a do_all class for interaction with the render window, vulkan s
[[./vkprocessor.drawio]]
--------------------
===== Data =====

@ -12,14 +12,6 @@ The Canvas needs to package certain buffers along with their metadata. These tak
All buffers will have a coupled handle type stored in [[/src/canvas/managed/handles.rs|handles.rs]] and a reference to that handle
===== CanvasImage =====
===== CanvasTexture =====
===== CanvasFont =====

@ -25,6 +25,26 @@ Creation-Date: 2020-02-03T23:30:41-08:00
An object which accumulate frame draws. The State will then parse this list of calls and display them on the screen
--------------------
=== canvas ===
I made a maybe(?) good change to the heirarchy of the canvas. Hiding the construction of handles from anything outside.
Currently, canvas is separated out to
* A state container: CanvasState
* An Interface class CanvasFrame
* `Managed` objects. Aka, everything that CanvasState holds
CanvasText is just laying around until I use it...
Shader pipeline objects exists in one level of managed
Handle and Buffer objects exists in the base managed level
== Do I commit to the all handles in handles.rs? ==
FYI The shader API is actually pretty badass
load_shader::<GenericShader, ColorVertex2D>("shadername", a, b);
--------------------
===== Data =====
@ -38,7 +58,7 @@ Creation-Date: 2020-02-03T23:30:41-08:00
[[CanvasImage]]
[[VKProcessor:CanvasTexture|CanvasTexture]]
[[CanvasFont]]
[[CompiledGraphicsPipeline]]
[[CompiledShader]]
--------------------

@ -1,11 +0,0 @@
Content-Type: text/x-zim-wiki
Wiki-Format: zim 0.4
Creation-Date: 2020-02-12T23:22:51-08:00
====== CompiledGraphicsPipeline ======
Unfortunately we have to explicitly provide the type to the graphics pipeline if we don't want to fall out into the

@ -0,0 +1,44 @@
Content-Type: text/x-zim-wiki
Wiki-Format: zim 0.4
Creation-Date: 2020-02-12T23:22:51-08:00
====== CompiledShader ======
[[/doc/sfml_rust/canvas/managed/shader/shader_common/trait.CompiledShader.html|Documentation]]
==== Details ====
This trait returns:
* It's pipeline
* It's own assigned handle
* The renderpass it copied from the constructor
==== Implementors ====
**GenericShader**
For basic 2D drawing we just these shaders
* Vertex
* Fragment
We also use a **SingleBufferDefinition**
For vertices, we use a **Triangle List**
We also use the **generic** depth stencil
**TextShader**
Very similar to the GenericShader, but specialized with the depth stencil to draw text.
Still using the shaders :
* Vertex
* Fragment
**SingleBufferDefinition**
**TriangleList**
**DepthStencil** with our own specialized depth stencil values

@ -10,7 +10,7 @@ Creation-Date: 2020-02-04T23:22:14-08:00
===== Details =====
So, the **pipeline** we create over in the **shader** needs to know about the vertex data it will be using. This lines up pretty well because the Shader is precisely the mechanism which would know about this data.
So, the **pipeline** we create over in the **shader** needs to know about the vertex data it will be using.
--------------------

@ -61,10 +61,10 @@ void main() {
//p.w = 125;
}
//write_buffer.buf[0] = write_buffer.buf[0];
write_buffer.buf[idx] = (write_buffer.buf[idx] & (~0x000000FF) ) | (p.x);
write_buffer.buf[idx] = (write_buffer.buf[idx] & (~0x0000FF00) ) | (p.y << 8);
write_buffer.buf[idx] = (write_buffer.buf[idx] & (~0x00FF0000) ) | (p.z << 16);
write_buffer.buf[idx] = (write_buffer.buf[idx] & (~0xFF000000) ) | (p.w << 24);
// write_buffer.buf[idx] = (write_buffer.buf[idx] & (~0x000000FF) ) | (p.x);
// write_buffer.buf[idx] = (write_buffer.buf[idx] & (~0x0000FF00) ) | (p.y << 8);
// write_buffer.buf[idx] = (write_buffer.buf[idx] & (~0x00FF0000) ) | (p.z << 16);
// write_buffer.buf[idx] = (write_buffer.buf[idx] & (~0xFF000000) ) | (p.w << 24);
}

@ -2,20 +2,11 @@
// SIMPLE TEXTURE : FRAGMENT SHADER
// These come in from the previous shader (vertex)
layout(location = 0) in vec2 texture_position;
layout(location = 0) in vec4 out_color;
// This goes out to the bound image in window_size_dependent setup
layout(location = 0) out vec4 f_color;
// This is bound by the descriptor set
// Currently handled by the individual buffer and are 1:1
layout(set = 0, binding = 0) uniform sampler2D tex;
void main() {
ivec2 pixel_pos = ivec2(gl_FragCoord.x, gl_FragCoord.y);
f_color = texture(tex, texture_position);
float gamma = 0.5;
f_color.rgb = pow(f_color.rgb, vec3(1.0/gamma));
}
f_color = out_color;
}

@ -5,20 +5,14 @@
// TODO : Need to add texture coordinate attribute so I can single VBO all these sumbitches
layout(location = 0) in vec3 v_position;
layout(location = 1) in vec4 color;
layout(location = 2) in vec2 ti_position;
layout(location = 3) in vec2 screen_position;
layout(location = 4) in vec2 atlas_position;
layout(location = 5) in vec2 atlas_size;
layout(location = 6) in float scale;
// These are made up in the shader themselves
layout(location = 0) out vec2 tex_coords;
layout(location = 0) out vec4 out_color;
void main() {
out_color = color;
gl_Position = vec4(v_position, 1.0);
tex_coords = ti_position;
}

@ -18,7 +18,7 @@ use vulkano::swapchain::Capabilities;
use winit::Window;
use vulkano::pipeline::viewport::Viewport;
use vulkano::descriptor::descriptor::DescriptorDescTy::TexelBuffer;
use crate::canvas::canvas_frame::{CanvasFrame};
use crate::canvas::canvas_frame::CanvasFrame;
use std::hash::Hash;
use vulkano::pipeline::depth_stencil::{StencilFaceFlags, DynamicStencilValue};
use vulkano::memory::pool::PotentialDedicatedAllocation::Generic;
@ -236,7 +236,6 @@ impl CanvasState {
/// Load a texture using it's filename from a file. Returns the handle of the loaded texture
pub fn load_texture(&mut self, filename: String) -> Option<Arc<CanvasTextureHandle>> {
let handle = Arc::new(CanvasTextureHandle {
handle: self.texture_buffers.len() as u32
});
@ -256,11 +255,10 @@ impl CanvasState {
/// Load and Compile a shader with the filename at resources/shaders
/// Takes physical and capabilities as we don't store that in Canvas
pub fn load_shader<T: 'static, V>(&mut self,
filename: String,
physical: PhysicalDevice,
capabilities: Capabilities) -> Option<Arc<CompiledShaderHandle>>
filename: String,
physical: PhysicalDevice,
capabilities: Capabilities) -> Option<Arc<CompiledShaderHandle>>
where T: CompiledShader, V: Vertex {
let handle = Arc::new(CompiledShaderHandle {
handle: self.shader_buffers.len() as u32
});
@ -277,13 +275,14 @@ impl CanvasState {
Some(handle)
}
/// Using the dimensions and suggested usage, load a CanvasImage and return it's handle
///
pub fn load_font(&mut self, name: String) -> Arc<CanvasFontHandle> {
let handle = Arc::new(CanvasFontHandle { handle: self.font_buffers.len() as u32 });
self.font_buffers.push(Arc::new({
let font = Font::from_bytes({
let mut f = File::open("resources/fonts/sansation.ttf").expect("Font file not found");
let mut f = File::open("resources/fonts/sansation.ttf")
.expect("Font file not found");
let mut font_data = Vec::new();
f.read_to_end(&mut font_data).expect("Dont know");
font_data
@ -388,12 +387,13 @@ impl CanvasState {
/// Consume and allocate the canvas frame data to the GPU
pub fn allocate(&mut self, canvas_frame: CanvasFrame) -> CanvasFrameAllocation {
let mut colored_vertex_buffer: Vec<ColorVertex3D> = Vec::default();
let mut textured_vertex_buffer: HashMap<Arc<CanvasTextureHandle>, Vec<TextureVertex3D>> = HashMap::new();
let mut image_vertex_buffer: HashMap<Arc<CanvasImageHandle>, Vec<ImageVertex3D>> = HashMap::new();
let mut text_instances: HashMap<Arc<CanvasFontHandle>, Vec<TextVertex3D>> = HashMap::new();
let mut text_vertex_buffer: Vec<TextVertex3D> = Vec::new();
for value in canvas_frame.map {
match value {
VertexTypes::TextureType(vertices, handle) => {
@ -405,7 +405,12 @@ impl CanvasState {
VertexTypes::ColorType(vertices) => {
colored_vertex_buffer.extend(vertices);
}
VertexTypes::ThreeDType(vertices) => {}
VertexTypes::ThreeDType(vertices) => {
}
VertexTypes::TextType(vertices) => {
text_vertex_buffer.extend(vertices);
}
};
};
@ -418,25 +423,35 @@ impl CanvasState {
).unwrap().0);
}
let mut allocated_text_buffer: Vec<Arc<(dyn BufferAccess + Send + Sync)>> = Vec::new();
if !text_vertex_buffer.is_empty() {
allocated_text_buffer.push(ImmutableBuffer::from_iter(
text_vertex_buffer.iter().cloned(),
BufferUsage::vertex_buffer(),
self.queue.clone(),
).unwrap().0);
}
CanvasFrameAllocation {
colored_vertex_buffer: allocated_colored_buffer,
textured_vertex_buffer: textured_vertex_buffer.into_iter().map(|(k, v)| {
(k,
ImmutableBuffer::from_iter(
v.iter().cloned(),
BufferUsage::vertex_buffer(),
self.queue.clone(),
).unwrap().0 as Arc<(dyn BufferAccess + Send + Sync)>)
ImmutableBuffer::from_iter(
v.iter().cloned(),
BufferUsage::vertex_buffer(),
self.queue.clone(),
).unwrap().0 as Arc<(dyn BufferAccess + Send + Sync)>)
}).collect(),
image_vertex_buffer: image_vertex_buffer.into_iter().map(|(k, v)| {
(k,
ImmutableBuffer::from_iter(
v.iter().cloned(),
BufferUsage::vertex_buffer(),
self.queue.clone(),
).unwrap().0 as Arc<(dyn BufferAccess + Send + Sync)>)
ImmutableBuffer::from_iter(
v.iter().cloned(),
BufferUsage::vertex_buffer(),
self.queue.clone(),
).unwrap().0 as Arc<(dyn BufferAccess + Send + Sync)>)
}).collect(),
text_instances: Default::default(),
text_vertex_buffer: allocated_text_buffer,
}
}
@ -527,28 +542,38 @@ impl CanvasState {
}
}
self.dynamic_state = DynamicState {
line_width: None,
viewports: self.dynamic_state.viewports.clone(),
scissors: None,
compare_mask: Some(DynamicStencilValue {
face: StencilFaceFlags::StencilFrontAndBack,
value: 0xFF,
}),
write_mask: Some(DynamicStencilValue {
face: StencilFaceFlags::StencilFrontAndBack,
value: 0xFF,
}),
reference: Some(DynamicStencilValue {
face: StencilFaceFlags::StencilFrontAndBack,
value: 0xFF,
}),
};
// Text
// let mut shader = self.shader_buffers.get(
// self.get_shader_handle(String::from("simple_text"))
// .unwrap().clone().get_handle() as usize
// ).unwrap();
//
// if !self.text_instances.is_empty() {
// for (font_handle, instance_buffer) in self.text_instances.clone() {
// let handle = font_handle.clone().handle as usize;
// let font = self.font_buffers.get(handle).clone().unwrap().clone();
// let descriptor_set = CanvasFont::get_descriptor_set(shader.get_pipeline());
//
// command_buffer = command_buffer.draw(
// shader.get_pipeline().clone(),
// // Multiple vertex buffers must have their definition in the pipeline!
// &self.dynamic_state.clone(),
// vec![font.get_vertex_buffer().clone(), instance_buffer.clone()],
// (), (),
// ).unwrap();
// }
// }
let mut shader = self.shader_buffers.get(
self.get_shader_handle(String::from("simple_text"))
.unwrap().clone().get_handle() as usize
).unwrap();
if !allocated_buffers.text_vertex_buffer.is_empty() {
command_buffer = command_buffer.draw(
shader.get_pipeline().clone(),
&self.dynamic_state.clone(),
allocated_buffers.text_vertex_buffer.clone(),
(), (),
).unwrap();
}
command_buffer
.end_render_pass()

@ -1,4 +1,5 @@
pub mod polygon;
pub mod sprite;
pub mod rect;
pub mod compu_sprite;
pub mod compu_sprite;
pub mod text;

@ -0,0 +1,133 @@
use crate::canvas::canvas_frame::Drawable;
use crate::util::vertex::{VertexTypes, ColorVertex3D};
///
#[derive(Debug, Clone)]
pub struct Text {
pub verts: VertexTypes,
position: (f32, f32),
size: (f32, f32),
}
/// Container class which implements drawable.
impl Text {
///
pub fn new(position: (f32, f32),
size: (f32, f32),
depth: u32) -> Text {
let normalized_depth = (depth as f32 / 255.0);
let verts = {
vec![
ColorVertex3D {
v_position: [-0.5, -0.5, normalized_depth],
color: [1.0, 1.0, 1.0, 1.0],
},
ColorVertex3D {
v_position: [-1.0, 1.0, normalized_depth],
color: [1.0, 1.0, 1.0, 1.0],
},
ColorVertex3D {
v_position: [-0.25, 0.0, normalized_depth],
color: [1.0, 1.0, 1.0, 1.0],
},
ColorVertex3D {
v_position: [-0.25, 0.0, normalized_depth],
color: [1.0, 1.0, 1.0, 1.0],
},
ColorVertex3D {
v_position: [-1.0, 1.0, normalized_depth],
color: [1.0, 1.0, 1.0, 1.0],
},
ColorVertex3D {
v_position: [0.0, 0.5, normalized_depth],
color: [1.0, 1.0, 1.0, 1.0],
},
ColorVertex3D {
v_position: [0.25, 0.0, normalized_depth],
color: [1.0, 1.0, 1.0, 1.0],
},
ColorVertex3D {
v_position: [-1.0, 1.0, normalized_depth],
color: [1.0, 1.0, 1.0, 1.0],
},
ColorVertex3D {
v_position: [0.0, 0.5, normalized_depth],
color: [1.0, 1.0, 1.0, 1.0],
},
ColorVertex3D {
v_position: [0.5, -0.5, normalized_depth],
color: [1.0, 1.0, 1.0, 1.0],
},
ColorVertex3D {
v_position: [-1.0, 1.0, normalized_depth],
color: [1.0, 1.0, 1.0, 1.0],
},
ColorVertex3D {
v_position: [0.25, 0.0, normalized_depth],
color: [1.0, 1.0, 1.0, 1.0],
},
ColorVertex3D {
v_position: [0.25, -0.5, normalized_depth],
color: [1.0, 1.0, 1.0, 1.0],
},
ColorVertex3D {
v_position: [-1.0, 1.0, normalized_depth],
color: [1.0, 1.0, 1.0, 1.0],
},
ColorVertex3D {
v_position: [0.5, -0.5, normalized_depth],
color: [1.0, 1.0, 1.0, 1.0],
},
ColorVertex3D {
v_position: [0.25, -0.5, normalized_depth],
color: [1.0, 1.0, 1.0, 1.0],
},
ColorVertex3D {
v_position: [-1.0, 1.0, normalized_depth],
color: [1.0, 1.0, 1.0, 1.0],
},
ColorVertex3D {
v_position: [0.0, -0.1, normalized_depth],
color: [1.0, 1.0, 1.0, 1.0],
},
ColorVertex3D {
v_position: [-0.25, -0.5, normalized_depth],
color: [1.0, 1.0, 1.0, 1.0],
},
ColorVertex3D {
v_position: [-1.0, 1.0, normalized_depth],
color: [1.0, 1.0, 1.0, 1.0],
},
ColorVertex3D {
v_position: [0.0, -0.1, normalized_depth],
color: [1.0, 1.0, 1.0, 1.0],
},
ColorVertex3D {
v_position: [-0.5, -0.5, normalized_depth],
color: [1.0, 1.0, 1.0, 1.0],
},
ColorVertex3D {
v_position: [-1.0, 1.0, normalized_depth],
color: [1.0, 1.0, 1.0, 1.0],
},
ColorVertex3D {
v_position: [-0.25, -0.5, normalized_depth],
color: [1.0, 1.0, 1.0, 1.0],
}]
};
Text {
verts: VertexTypes::ColorType(verts),
position: position,
size: size,
}
}
}
impl Drawable for Text {
fn get(&self) -> VertexTypes {
self.verts.clone()
}
}

@ -31,6 +31,7 @@ use crate::compute::managed::handles::{CompuBufferHandle, CompuKernelHandle};
use crate::drawables::sprite::Sprite;
use crate::drawables::rect::Rect;
use crate::drawables::compu_sprite::CompuSprite;
use crate::drawables::text::Text;
pub mod util;
pub mod vkprocessor;
@ -111,7 +112,7 @@ pub fn main() {
//let sfml_sprite = Sprite::new((0.0, -0.5), (0.5, 0.5), 1, sfml_handle.clone());
//let text_sprite = Text::new((-0.1,-0.1), (10.0, 10.0), font_handle.clone());
let text_sprite = Text::new((-0.1,-0.1), (10.0, 10.0), 1);
//let test_polygon = Poly::new_with_color((-0.5, -0.5), (0.5, 0.5), 1, (1.0,0.0,0.0,0.0));
drop(q2);
@ -173,7 +174,7 @@ pub fn main() {
let mut canvas_frame = CanvasFrame::default();
canvas_frame.draw(&funky_sprite);
canvas_frame.draw(&compu_sprite1);
canvas_frame.draw(&text_sprite);
// canvas_frame.draw(&rect);
let mut compu_frame = CompuFrame::new();

@ -56,6 +56,7 @@ pub enum VertexTypes {
ImageType(Vec<ImageVertex3D>, Arc<CanvasImageHandle>),
ColorType(Vec<ColorVertex3D>),
ThreeDType(Vec<Vertex3D>),
TextType(Vec<TextVertex3D>),
}
@ -65,6 +66,8 @@ pub struct CanvasFrameAllocation {
pub textured_vertex_buffer: HashMap<Arc<CanvasTextureHandle>, Arc<(dyn BufferAccess + Send + Sync)>>,
pub image_vertex_buffer: HashMap<Arc<CanvasImageHandle>, Arc<(dyn BufferAccess + Send + Sync)>>,
pub text_instances: HashMap<Arc<CanvasFontHandle>, Arc<(dyn BufferAccess + Send + Sync)>>,
pub text_vertex_buffer: Vec<Arc<(dyn BufferAccess + Send + Sync)>>,
}

@ -171,7 +171,7 @@ impl<'a> VkProcessor<'a> {
self.canvas_state.load_shader::<GenericShader, ColorVertex3D>(String::from("color-passthrough"), self.physical.clone(), self.capabilities.clone());
self.canvas_state.load_shader::<GenericShader, TextureVertex3D>(String::from("simple_texture"), self.physical.clone(), self.capabilities.clone());
self.canvas_state.load_shader::<GenericShader, ImageVertex3D>(String::from("simple_image"), self.physical.clone(), self.capabilities.clone());
// self.canvas_state.load_shader::<TextShader, TextVertex3D>(String::from("simple_text"), self.physical.clone(), self.capabilities.clone());
self.canvas_state.load_shader::<TextShader, ColorVertex3D>(String::from("simple_text"), self.physical.clone(), self.capabilities.clone());
}
/// A hardcoded list of shaders which can be proloaded from this function

Loading…
Cancel
Save