sdf-2d/docs/globals.html
2020-09-28 17:39:07 +02:00

382 lines
No EOL
22 KiB
HTML

<!doctype html>
<html class="default no-js">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>SDF-2D - v0.3.2</title>
<meta name="description" content="Documentation for SDF-2D - v0.3.2">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="assets/css/main.css">
<link rel="icon" href="favicon.ico" />
</head>
<body>
<header>
<div class="tsd-page-toolbar">
<div class="container">
<div class="table-wrap">
<div class="table-cell" id="tsd-search" data-index="assets/js/search.json" data-base=".">
<div class="field">
<label for="tsd-search-field" class="tsd-widget search no-caption">Search</label>
<input id="tsd-search-field" type="text" />
</div>
<ul class="results">
<li class="state loading">Preparing search index...</li>
<li class="state failure">The search index is not available</li>
</ul>
<a href="index.html" class="title">SDF-2D - v0.3.2</a>
</div>
<div class="table-cell" id="tsd-widgets">
<div id="tsd-filter">
<a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a>
<div class="tsd-filter-group">
<div class="tsd-select" id="tsd-filter-visibility">
<span class="tsd-select-label">All</span>
<ul class="tsd-select-list">
<li data-value="public">Public</li>
<li data-value="protected">Public/Protected</li>
<li data-value="private" class="selected">All</li>
</ul>
</div>
<input type="checkbox" id="tsd-filter-inherited" checked />
<label class="tsd-widget" for="tsd-filter-inherited">Inherited</label>
</div>
</div>
<a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a>
</div>
</div>
</div>
</div>
<div class="tsd-page-title">
<div class="container">
<ul class="tsd-breadcrumb">
<li>
<a href="globals.html">Globals</a>
</li>
</ul>
<h1>SDF-2D - v0.3.2</h1>
</div>
</div>
</header>
<div class="container container-main">
<div class="row">
<div class="col-8 col-content">
<section class="tsd-panel-group tsd-index-group">
<h2>Index</h2>
<section class="tsd-panel tsd-index-panel">
<div class="tsd-index-content">
<section class="tsd-index-section ">
<h3>Drawable Classes</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-class"><a href="classes/circle.html" class="tsd-kind-icon">Circle</a></li>
<li class="tsd-kind-class"><a href="classes/circlelight.html" class="tsd-kind-icon">Circle<wbr>Light</a></li>
<li class="tsd-kind-class"><a href="classes/flashlight.html" class="tsd-kind-icon">Flashlight</a></li>
<li class="tsd-kind-class"><a href="classes/invertedtunnel.html" class="tsd-kind-icon">Inverted<wbr>Tunnel</a></li>
<li class="tsd-kind-class"><a href="classes/tunnel.html" class="tsd-kind-icon">Tunnel</a></li>
</ul>
<h3>Other Classes</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-class"><a href="classes/drawable.html" class="tsd-kind-icon">Drawable</a></li>
</ul>
</section>
<section class="tsd-index-section ">
<h3>Interfaces</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-interface"><a href="interfaces/drawabledescriptor.html" class="tsd-kind-icon">Drawable<wbr>Descriptor</a></li>
<li class="tsd-kind-interface"><a href="interfaces/renderer.html" class="tsd-kind-icon">Renderer</a></li>
<li class="tsd-kind-interface"><a href="interfaces/runtimesettings.html" class="tsd-kind-icon">Runtime<wbr>Settings</a></li>
<li class="tsd-kind-interface"><a href="interfaces/startupsettings.html" class="tsd-kind-icon">Startup<wbr>Settings</a></li>
</ul>
</section>
<section class="tsd-index-section ">
<h3>Functions</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-function"><a href="globals.html#compile" class="tsd-kind-icon">compile</a></li>
</ul>
</section>
<section class="tsd-index-section ">
<h3>Object literals</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-object-literal"><a href="globals.html#defaultruntimesettings" class="tsd-kind-icon">default<wbr>Runtime<wbr>Settings</a></li>
<li class="tsd-kind-object-literal"><a href="globals.html#defaultstartupsettings" class="tsd-kind-icon">default<wbr>Startup<wbr>Settings</a></li>
</ul>
</section>
</div>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Functions</h2>
<section class="tsd-panel tsd-member tsd-kind-function">
<a name="compile" class="tsd-anchor"></a>
<h3>compile</h3>
<ul class="tsd-signatures tsd-kind-function">
<li class="tsd-signature tsd-kind-icon">compile<span class="tsd-signature-symbol">(</span>canvas<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">HTMLCanvasElement</span>, descriptors<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Array</span><span class="tsd-signature-symbol">&lt;</span><a href="interfaces/drawabledescriptor.html" class="tsd-signature-type">DrawableDescriptor</a><span class="tsd-signature-symbol">&gt;</span>, settingsOverrides<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">Partial</span><span class="tsd-signature-symbol">&lt;</span><a href="interfaces/startupsettings.html" class="tsd-signature-type">StartupSettings</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><a href="interfaces/renderer.html" class="tsd-signature-type">Renderer</a><span class="tsd-signature-symbol">&gt;</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/schmelczerandras/sdf-2d/blob/31fcfd3/src/main.ts#L54">main.ts:54</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Compiles a new renderer instance. There can multiple renderers on a single page.</p>
<blockquote>
<p>Asynchronous behaviour is required for parallel shader compiling.
Trying to draw before the returned promise resolves, results in no action taken.
Settings can be set before promise resolution and they will be applied later.</p>
</blockquote>
</div>
<p>The descriptors of every to-be-drawn objects are required before creating the renderer,
allowing the compiler to only create the shaders that will actually be used.</p>
<p>Example usage:</p>
<pre><code class="language-js"> <span class="hljs-keyword">import</span> { compile, Circle, CircleLight } <span class="hljs-keyword">from</span> <span class="hljs-string">&#x27;sdf-2d&#x27;</span>;
<span class="hljs-keyword">const</span> canvas = <span class="hljs-built_in">document</span>.querySelector(<span class="hljs-string">&#x27;canvas&#x27;</span>);
<span class="hljs-keyword">const</span> renderer = <span class="hljs-keyword">await</span> compile(canvas, [Circle.descriptor, CircleLight.descriptor]);</code></pre>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>canvas: <span class="tsd-signature-type">HTMLCanvasElement</span></h5>
<div class="tsd-comment tsd-typography">
<p>The returned renderer will only be able to draw to this canvas.</p>
</div>
</li>
<li>
<h5>descriptors: <span class="tsd-signature-type">Array</span><span class="tsd-signature-symbol">&lt;</span><a href="interfaces/drawabledescriptor.html" class="tsd-signature-type">DrawableDescriptor</a><span class="tsd-signature-symbol">&gt;</span></h5>
<div class="tsd-comment tsd-typography">
<p>The descriptor of every single object (and light) that
ever needs to be drawn by this renderer has to be given before compiling.</p>
</div>
</li>
<li>
<h5><span class="tsd-flag ts-flagDefault value">Default value</span> settingsOverrides: <span class="tsd-signature-type">Partial</span><span class="tsd-signature-symbol">&lt;</span><a href="interfaces/startupsettings.html" class="tsd-signature-type">StartupSettings</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol"> = {}</span></h5>
<div class="tsd-comment tsd-typography">
<p>Sensible defaults are provided, but these can be overridden.</p>
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol">&lt;</span><a href="interfaces/renderer.html" class="tsd-signature-type">Renderer</a><span class="tsd-signature-symbol">&gt;</span></h4>
</li>
</ul>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Object literals</h2>
<section class="tsd-panel tsd-member tsd-kind-object-literal">
<a name="defaultruntimesettings" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagConst">Const</span> default<wbr>Runtime<wbr>Settings</h3>
<div class="tsd-signature tsd-kind-icon">default<wbr>Runtime<wbr>Settings<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">object</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/schmelczerandras/sdf-2d/blob/31fcfd3/src/graphics/rendering/settings/default-runtime-settings.ts#L7">graphics/rendering/settings/default-runtime-settings.ts:7</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Contains the default values used for <a href="interfaces/runtimesettings.html">RuntimeSettings</a>.</p>
</div>
</div>
<section class="tsd-panel tsd-member tsd-kind-variable tsd-parent-kind-object-literal">
<a name="defaultruntimesettings.ambientlight" class="tsd-anchor"></a>
<h3>ambient<wbr>Light</h3>
<div class="tsd-signature tsd-kind-icon">ambient<wbr>Light<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">vec3</span><span class="tsd-signature-symbol"> = vec3.fromValues(0.25, 0.15, 0.25)</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/schmelczerandras/sdf-2d/blob/31fcfd3/src/graphics/rendering/settings/default-runtime-settings.ts#L14">graphics/rendering/settings/default-runtime-settings.ts:14</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-variable tsd-parent-kind-object-literal">
<a name="defaultruntimesettings.backgroundcolor" class="tsd-anchor"></a>
<h3>background<wbr>Color</h3>
<div class="tsd-signature tsd-kind-icon">background<wbr>Color<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">vec4</span><span class="tsd-signature-symbol"> = vec4.fromValues(1, 1, 1, 1)</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/schmelczerandras/sdf-2d/blob/31fcfd3/src/graphics/rendering/settings/default-runtime-settings.ts#L12">graphics/rendering/settings/default-runtime-settings.ts:12</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-variable tsd-parent-kind-object-literal">
<a name="defaultruntimesettings.colorpalette" class="tsd-anchor"></a>
<h3>color<wbr>Palette</h3>
<div class="tsd-signature tsd-kind-icon">color<wbr>Palette<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">never</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> = []</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/schmelczerandras/sdf-2d/blob/31fcfd3/src/graphics/rendering/settings/default-runtime-settings.ts#L13">graphics/rendering/settings/default-runtime-settings.ts:13</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-variable tsd-parent-kind-object-literal">
<a name="defaultruntimesettings.enablehighdpirendering" class="tsd-anchor"></a>
<h3>enable<wbr>High<wbr>Dpi<wbr>Rendering</h3>
<div class="tsd-signature tsd-kind-icon">enable<wbr>High<wbr>Dpi<wbr>Rendering<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">true</span><span class="tsd-signature-symbol"> = true</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/schmelczerandras/sdf-2d/blob/31fcfd3/src/graphics/rendering/settings/default-runtime-settings.ts#L8">graphics/rendering/settings/default-runtime-settings.ts:8</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-variable tsd-parent-kind-object-literal">
<a name="defaultruntimesettings.isworldinverted" class="tsd-anchor"></a>
<h3>is<wbr>World<wbr>Inverted</h3>
<div class="tsd-signature tsd-kind-icon">is<wbr>World<wbr>Inverted<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">false</span><span class="tsd-signature-symbol"> = false</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/schmelczerandras/sdf-2d/blob/31fcfd3/src/graphics/rendering/settings/default-runtime-settings.ts#L10">graphics/rendering/settings/default-runtime-settings.ts:10</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-variable tsd-parent-kind-object-literal">
<a name="defaultruntimesettings.lightcutoffdistance" class="tsd-anchor"></a>
<h3>light<wbr>Cutoff<wbr>Distance</h3>
<div class="tsd-signature tsd-kind-icon">light<wbr>Cutoff<wbr>Distance<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 400</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/schmelczerandras/sdf-2d/blob/31fcfd3/src/graphics/rendering/settings/default-runtime-settings.ts#L11">graphics/rendering/settings/default-runtime-settings.ts:11</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-variable tsd-parent-kind-object-literal">
<a name="defaultruntimesettings.tilemultiplier" class="tsd-anchor"></a>
<h3>tile<wbr>Multiplier</h3>
<div class="tsd-signature tsd-kind-icon">tile<wbr>Multiplier<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 8</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/schmelczerandras/sdf-2d/blob/31fcfd3/src/graphics/rendering/settings/default-runtime-settings.ts#L9">graphics/rendering/settings/default-runtime-settings.ts:9</a></li>
</ul>
</aside>
</section>
</section>
<section class="tsd-panel tsd-member tsd-kind-object-literal">
<a name="defaultstartupsettings" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagConst">Const</span> default<wbr>Startup<wbr>Settings</h3>
<div class="tsd-signature tsd-kind-icon">default<wbr>Startup<wbr>Settings<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">object</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/schmelczerandras/sdf-2d/blob/31fcfd3/src/graphics/rendering/settings/default-startup-settings.ts#L6">graphics/rendering/settings/default-startup-settings.ts:6</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Contains the default values used for <a href="interfaces/startupsettings.html">StartupSettings</a>.</p>
</div>
</div>
<section class="tsd-panel tsd-member tsd-kind-variable tsd-parent-kind-object-literal">
<a name="defaultstartupsettings.ignorewebgl2" class="tsd-anchor"></a>
<h3>ignore<wbr>WebGL2</h3>
<div class="tsd-signature tsd-kind-icon">ignore<wbr>WebGL2<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">false</span><span class="tsd-signature-symbol"> = false</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/schmelczerandras/sdf-2d/blob/31fcfd3/src/graphics/rendering/settings/default-startup-settings.ts#L9">graphics/rendering/settings/default-startup-settings.ts:9</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-variable tsd-parent-kind-object-literal">
<a name="defaultstartupsettings.palettesize" class="tsd-anchor"></a>
<h3>palette<wbr>Size</h3>
<div class="tsd-signature tsd-kind-icon">palette<wbr>Size<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 256</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/schmelczerandras/sdf-2d/blob/31fcfd3/src/graphics/rendering/settings/default-startup-settings.ts#L8">graphics/rendering/settings/default-startup-settings.ts:8</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-variable tsd-parent-kind-object-literal">
<a name="defaultstartupsettings.shadowtracecount" class="tsd-anchor"></a>
<h3>shadow<wbr>Trace<wbr>Count</h3>
<div class="tsd-signature tsd-kind-icon">shadow<wbr>Trace<wbr>Count<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 16</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/schmelczerandras/sdf-2d/blob/31fcfd3/src/graphics/rendering/settings/default-startup-settings.ts#L7">graphics/rendering/settings/default-startup-settings.ts:7</a></li>
</ul>
</aside>
</section>
</section>
</section>
</div>
<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
<nav class="tsd-navigation primary">
<ul>
<li class="globals current ">
<a href="globals.html"><em>Globals</em></a>
</li>
</ul>
</nav>
<nav class="tsd-navigation secondary menu-sticky">
<ul class="before-current">
<li class=" tsd-kind-class">
<a href="classes/circle.html" class="tsd-kind-icon">Circle</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/circlelight.html" class="tsd-kind-icon">Circle<wbr>Light</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/drawable.html" class="tsd-kind-icon">Drawable</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/flashlight.html" class="tsd-kind-icon">Flashlight</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/invertedtunnel.html" class="tsd-kind-icon">Inverted<wbr>Tunnel</a>
</li>
<li class=" tsd-kind-class">
<a href="classes/tunnel.html" class="tsd-kind-icon">Tunnel</a>
</li>
<li class=" tsd-kind-interface">
<a href="interfaces/drawabledescriptor.html" class="tsd-kind-icon">Drawable<wbr>Descriptor</a>
</li>
<li class=" tsd-kind-interface">
<a href="interfaces/renderer.html" class="tsd-kind-icon">Renderer</a>
</li>
<li class=" tsd-kind-interface">
<a href="interfaces/runtimesettings.html" class="tsd-kind-icon">Runtime<wbr>Settings</a>
</li>
<li class=" tsd-kind-interface">
<a href="interfaces/startupsettings.html" class="tsd-kind-icon">Startup<wbr>Settings</a>
</li>
<li class=" tsd-kind-function">
<a href="globals.html#compile" class="tsd-kind-icon">compile</a>
</li>
<li class=" tsd-kind-object-literal">
<a href="globals.html#defaultruntimesettings" class="tsd-kind-icon">default<wbr>Runtime<wbr>Settings</a>
</li>
<li class=" tsd-kind-object-literal">
<a href="globals.html#defaultstartupsettings" class="tsd-kind-icon">default<wbr>Startup<wbr>Settings</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
<footer>
<div class="container">
<h2>Legend</h2>
<div class="tsd-legend-group">
<ul class="tsd-legend">
<li class="tsd-kind-constructor tsd-parent-kind-class"><span class="tsd-kind-icon">Constructor</span></li>
<li class="tsd-kind-property tsd-parent-kind-class"><span class="tsd-kind-icon">Property</span></li>
<li class="tsd-kind-method tsd-parent-kind-class"><span class="tsd-kind-icon">Method</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-property tsd-parent-kind-interface"><span class="tsd-kind-icon">Property</span></li>
<li class="tsd-kind-method tsd-parent-kind-interface"><span class="tsd-kind-icon">Method</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited property</span></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited method</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected method</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-static"><span class="tsd-kind-icon">Static property</span></li>
</ul>
</div>
</div>
</footer>
<div class="overlay"></div>
<script src="assets/js/main.js"></script>
</body>
</html>