From 9bb6a8e5d64c719c5f30a43704e85640cd70c7a1 Mon Sep 17 00:00:00 2001 From: "Deployment Bot (from Travis CI)" Date: Sun, 15 Aug 2021 17:04:20 +0000 Subject: [PATCH] Deploy sotrh/learn-wgpu to github.com/sotrh/learn-wgpu.git:gh-pages --- assets/js/{app.af9fe4a5.js => app.7f3b47c3.js} | 2 +- beginner/tutorial1-window/index.html | 4 ++-- beginner/tutorial2-swapchain/index.html | 4 ++-- beginner/tutorial3-pipeline/index.html | 4 ++-- beginner/tutorial4-buffer/index.html | 4 ++-- beginner/tutorial5-textures/index.html | 4 ++-- beginner/tutorial6-uniforms/index.html | 4 ++-- beginner/tutorial7-instancing/index.html | 4 ++-- beginner/tutorial8-depth/index.html | 4 ++-- beginner/tutorial9-models/index.html | 4 ++-- index.html | 4 ++-- intermediate/tutorial10-lighting/index.html | 4 ++-- intermediate/tutorial11-normals/index.html | 4 ++-- intermediate/tutorial12-camera/index.html | 4 ++-- intermediate/tutorial13-threading/index.html | 4 ++-- news/index.html | 4 ++-- showcase/alignment/index.html | 8 ++++---- showcase/compute/index.html | 4 ++-- showcase/gifs/index.html | 4 ++-- showcase/imgui-demo/index.html | 4 ++-- showcase/index.html | 8 ++++---- showcase/pong/index.html | 4 ++-- showcase/windowless/index.html | 4 ++-- todo.html | 8 ++++---- 24 files changed, 53 insertions(+), 53 deletions(-) rename assets/js/{app.af9fe4a5.js => app.7f3b47c3.js} (91%) diff --git a/assets/js/app.af9fe4a5.js b/assets/js/app.7f3b47c3.js similarity index 91% rename from assets/js/app.af9fe4a5.js rename to assets/js/app.7f3b47c3.js index 36f779f9..985cdc2d 100644 --- a/assets/js/app.af9fe4a5.js +++ b/assets/js/app.7f3b47c3.js @@ -10,4 +10,4 @@ * vue-router v3.1.6 * (c) 2020 Evan You * @license MIT - */function Io(t){return Object.prototype.toString.call(t).indexOf("Error")>-1}function Mo(t,e){return e instanceof t||e&&(e.name===t.name||e._name===t._name)}function Do(t,e){for(var n in e)t[n]=e[n];return t}var No={name:"RouterView",functional:!0,props:{name:{type:String,default:"default"}},render:function(t,e){var n=e.props,r=e.children,o=e.parent,i=e.data;i.routerView=!0;for(var a=o.$createElement,s=n.name,c=o.$route,u=o._routerViewCache||(o._routerViewCache={}),l=0,f=!1;o&&o._routerRoot!==o;){var p=o.$vnode?o.$vnode.data:{};p.routerView&&l++,p.keepAlive&&o._directInactive&&o._inactive&&(f=!0),o=o.$parent}if(i.routerViewDepth=l,f){var d=u[s],h=d&&d.component;return h?(d.configProps&&Uo(h,i,d.route,d.configProps),a(h,i,r)):a()}var v=c.matched[l],m=v&&v.components[s];if(!v||!m)return u[s]=null,a();u[s]={component:m},i.registerRouteInstance=function(t,e){var n=v.instances[s];(e&&n!==t||!e&&n===t)&&(v.instances[s]=e)},(i.hook||(i.hook={})).prepatch=function(t,e){v.instances[s]=e.componentInstance},i.hook.init=function(t){t.data.keepAlive&&t.componentInstance&&t.componentInstance!==v.instances[s]&&(v.instances[s]=t.componentInstance)};var g=v.props&&v.props[s];return g&&(Do(u[s],{route:c,configProps:g}),Uo(m,i,c,g)),a(m,i,r)}};function Uo(t,e,n,r){var o=e.props=function(t,e){switch(typeof e){case"undefined":return;case"object":return e;case"function":return e(t);case"boolean":return e?t.params:void 0;default:0}}(n,r);if(o){o=e.props=Do({},o);var i=e.attrs=e.attrs||{};for(var a in o)t.props&&a in t.props||(i[a]=o[a],delete o[a])}}var Bo=/[!'()*]/g,Fo=function(t){return"%"+t.charCodeAt(0).toString(16)},Wo=/%2C/g,Ho=function(t){return encodeURIComponent(t).replace(Bo,Fo).replace(Wo,",")},Vo=decodeURIComponent;function zo(t){var e={};return(t=t.trim().replace(/^(\?|#|&)/,""))?(t.split("&").forEach((function(t){var n=t.replace(/\+/g," ").split("="),r=Vo(n.shift()),o=n.length>0?Vo(n.join("=")):null;void 0===e[r]?e[r]=o:Array.isArray(e[r])?e[r].push(o):e[r]=[e[r],o]})),e):e}function Go(t){var e=t?Object.keys(t).map((function(e){var n=t[e];if(void 0===n)return"";if(null===n)return Ho(e);if(Array.isArray(n)){var r=[];return n.forEach((function(t){void 0!==t&&(null===t?r.push(Ho(e)):r.push(Ho(e)+"="+Ho(t)))})),r.join("&")}return Ho(e)+"="+Ho(n)})).filter((function(t){return t.length>0})).join("&"):null;return e?"?"+e:""}var qo=/\/?$/;function Zo(t,e,n,r){var o=r&&r.options.stringifyQuery,i=e.query||{};try{i=Ko(i)}catch(t){}var a={name:e.name||t&&t.name,meta:t&&t.meta||{},path:e.path||"/",hash:e.hash||"",query:i,params:e.params||{},fullPath:Jo(e,o),matched:t?Yo(t):[]};return n&&(a.redirectedFrom=Jo(n,o)),Object.freeze(a)}function Ko(t){if(Array.isArray(t))return t.map(Ko);if(t&&"object"==typeof t){var e={};for(var n in t)e[n]=Ko(t[n]);return e}return t}var Xo=Zo(null,{path:"/"});function Yo(t){for(var e=[];t;)e.unshift(t),t=t.parent;return e}function Jo(t,e){var n=t.path,r=t.query;void 0===r&&(r={});var o=t.hash;return void 0===o&&(o=""),(n||"/")+(e||Go)(r)+o}function Qo(t,e){return e===Xo?t===e:!!e&&(t.path&&e.path?t.path.replace(qo,"")===e.path.replace(qo,"")&&t.hash===e.hash&&ti(t.query,e.query):!(!t.name||!e.name)&&(t.name===e.name&&t.hash===e.hash&&ti(t.query,e.query)&&ti(t.params,e.params)))}function ti(t,e){if(void 0===t&&(t={}),void 0===e&&(e={}),!t||!e)return t===e;var n=Object.keys(t),r=Object.keys(e);return n.length===r.length&&n.every((function(n){var r=t[n],o=e[n];return"object"==typeof r&&"object"==typeof o?ti(r,o):String(r)===String(o)}))}function ei(t,e,n){var r=t.charAt(0);if("/"===r)return t;if("?"===r||"#"===r)return e+t;var o=e.split("/");n&&o[o.length-1]||o.pop();for(var i=t.replace(/^\//,"").split("/"),a=0;a=0&&(e=t.slice(r),t=t.slice(0,r));var o=t.indexOf("?");return o>=0&&(n=t.slice(o+1),t=t.slice(0,o)),{path:t,query:n,hash:e}}(o.path||""),u=e&&e.path||"/",l=c.path?ei(c.path,u,n||o.append):u,f=function(t,e,n){void 0===e&&(e={});var r,o=n||zo;try{r=o(t||"")}catch(t){r={}}for(var i in e)r[i]=e[i];return r}(c.query,o.query,r&&r.options.parseQuery),p=o.hash||c.hash;return p&&"#"!==p.charAt(0)&&(p="#"+p),{_normalized:!0,path:l,query:f,hash:p}}var xi,Si=function(){},Ei={name:"RouterLink",props:{to:{type:[String,Object],required:!0},tag:{type:String,default:"a"},exact:Boolean,append:Boolean,replace:Boolean,activeClass:String,exactActiveClass:String,event:{type:[String,Array],default:"click"}},render:function(t){var e=this,n=this.$router,r=this.$route,o=n.resolve(this.to,r,this.append),i=o.location,a=o.route,s=o.href,c={},u=n.options.linkActiveClass,l=n.options.linkExactActiveClass,f=null==u?"router-link-active":u,p=null==l?"router-link-exact-active":l,d=null==this.activeClass?f:this.activeClass,h=null==this.exactActiveClass?p:this.exactActiveClass,v=a.redirectedFrom?Zo(null,_i(a.redirectedFrom),null,n):a;c[h]=Qo(r,v),c[d]=this.exact?c[h]:function(t,e){return 0===t.path.replace(qo,"/").indexOf(e.path.replace(qo,"/"))&&(!e.hash||t.hash===e.hash)&&function(t,e){for(var n in e)if(!(n in t))return!1;return!0}(t.query,e.query)}(r,v);var m=function(t){Oi(t)&&(e.replace?n.replace(i,Si):n.push(i,Si))},g={click:Oi};Array.isArray(this.event)?this.event.forEach((function(t){g[t]=m})):g[this.event]=m;var y={class:c},b=!this.$scopedSlots.$hasNormal&&this.$scopedSlots.default&&this.$scopedSlots.default({href:s,route:a,navigate:m,isActive:c[d],isExactActive:c[h]});if(b){if(1===b.length)return b[0];if(b.length>1||!b.length)return 0===b.length?t():t("span",{},b)}if("a"===this.tag)y.on=g,y.attrs={href:s};else{var w=function t(e){var n;if(e)for(var r=0;r-1&&(s.params[p]=n.params[p]);return s.path=wi(l.path,s.params),c(l,s,a)}if(s.path){s.params={};for(var d=0;d=t.length?n():t[o]?e(t[o],(function(){r(o+1)})):r(o+1)};r(0)}function Xi(t){return function(e,n,r){var o=!1,i=0,a=null;Yi(t,(function(t,e,n,s){if("function"==typeof t&&void 0===t.cid){o=!0,i++;var c,u=ta((function(e){var o;((o=e).__esModule||Qi&&"Module"===o[Symbol.toStringTag])&&(e=e.default),t.resolved="function"==typeof e?e:xi.extend(e),n.components[s]=e,--i<=0&&r()})),l=ta((function(t){var e="Failed to resolve async component "+s+": "+t;a||(a=Io(t)?t:new Error(e),r(a))}));try{c=t(u,l)}catch(t){l(t)}if(c)if("function"==typeof c.then)c.then(u,l);else{var f=c.component;f&&"function"==typeof f.then&&f.then(u,l)}}})),o||r()}}function Yi(t,e){return Ji(t.map((function(t){return Object.keys(t.components).map((function(n){return e(t.components[n],t.instances[n],t,n)}))})))}function Ji(t){return Array.prototype.concat.apply([],t)}var Qi="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag;function ta(t){var e=!1;return function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];if(!e)return e=!0,t.apply(this,n)}}var ea=function(t){function e(e){t.call(this),this.name=this._name="NavigationDuplicated",this.message='Navigating to current location ("'+e.fullPath+'") is not allowed',Object.defineProperty(this,"stack",{value:(new t).stack,writable:!0,configurable:!0})}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Error);ea._name="NavigationDuplicated";var na=function(t,e){this.router=t,this.base=function(t){if(!t)if(ki){var e=document.querySelector("base");t=(t=e&&e.getAttribute("href")||"/").replace(/^https?:\/\/[^\/]+/,"")}else t="/";"/"!==t.charAt(0)&&(t="/"+t);return t.replace(/\/$/,"")}(e),this.current=Xo,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[]};function ra(t,e,n,r){var o=Yi(t,(function(t,r,o,i){var a=function(t,e){"function"!=typeof t&&(t=xi.extend(t));return t.options[e]}(t,e);if(a)return Array.isArray(a)?a.map((function(t){return n(t,r,o,i)})):n(a,r,o,i)}));return Ji(r?o.reverse():o)}function oa(t,e){if(e)return function(){return t.apply(e,arguments)}}na.prototype.listen=function(t){this.cb=t},na.prototype.onReady=function(t,e){this.ready?t():(this.readyCbs.push(t),e&&this.readyErrorCbs.push(e))},na.prototype.onError=function(t){this.errorCbs.push(t)},na.prototype.transitionTo=function(t,e,n){var r=this,o=this.router.match(t,this.current);this.confirmTransition(o,(function(){r.updateRoute(o),e&&e(o),r.ensureURL(),r.ready||(r.ready=!0,r.readyCbs.forEach((function(t){t(o)})))}),(function(t){n&&n(t),t&&!r.ready&&(r.ready=!0,r.readyErrorCbs.forEach((function(e){e(t)})))}))},na.prototype.confirmTransition=function(t,e,n){var r=this,o=this.current,i=function(t){!Mo(ea,t)&&Io(t)&&(r.errorCbs.length?r.errorCbs.forEach((function(e){e(t)})):console.error(t)),n&&n(t)};if(Qo(t,o)&&t.matched.length===o.matched.length)return this.ensureURL(),i(new ea(t));var a=function(t,e){var n,r=Math.max(t.length,e.length);for(n=0;n-1?decodeURI(t.slice(0,r))+t.slice(r):decodeURI(t)}else t=decodeURI(t.slice(0,n))+t.slice(n);return t}function la(t){var e=window.location.href,n=e.indexOf("#");return(n>=0?e.slice(0,n):e)+"#"+t}function fa(t){Gi?qi(la(t)):window.location.hash=t}function pa(t){Gi?Zi(la(t)):window.location.replace(la(t))}var da=function(t){function e(e,n){t.call(this,e,n),this.stack=[],this.index=-1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.push=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index+1).concat(t),r.index++,e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index).concat(t),e&&e(t)}),n)},e.prototype.go=function(t){var e=this,n=this.index+t;if(!(n<0||n>=this.stack.length)){var r=this.stack[n];this.confirmTransition(r,(function(){e.index=n,e.updateRoute(r)}),(function(t){Mo(ea,t)&&(e.index=n)}))}},e.prototype.getCurrentLocation=function(){var t=this.stack[this.stack.length-1];return t?t.fullPath:"/"},e.prototype.ensureURL=function(){},e}(na),ha=function(t){void 0===t&&(t={}),this.app=null,this.apps=[],this.options=t,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=Ti(t.routes||[],this);var e=t.mode||"hash";switch(this.fallback="history"===e&&!Gi&&!1!==t.fallback,this.fallback&&(e="hash"),ki||(e="abstract"),this.mode=e,e){case"history":this.history=new ia(this,t.base);break;case"hash":this.history=new sa(this,t.base,this.fallback);break;case"abstract":this.history=new da(this,t.base);break;default:0}},va={currentRoute:{configurable:!0}};function ma(t,e){return t.push(e),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}ha.prototype.match=function(t,e,n){return this.matcher.match(t,e,n)},va.currentRoute.get=function(){return this.history&&this.history.current},ha.prototype.init=function(t){var e=this;if(this.apps.push(t),t.$once("hook:destroyed",(function(){var n=e.apps.indexOf(t);n>-1&&e.apps.splice(n,1),e.app===t&&(e.app=e.apps[0]||null)})),!this.app){this.app=t;var n=this.history;if(n instanceof ia)n.transitionTo(n.getCurrentLocation());else if(n instanceof sa){var r=function(){n.setupListeners()};n.transitionTo(n.getCurrentLocation(),r,r)}n.listen((function(t){e.apps.forEach((function(e){e._route=t}))}))}},ha.prototype.beforeEach=function(t){return ma(this.beforeHooks,t)},ha.prototype.beforeResolve=function(t){return ma(this.resolveHooks,t)},ha.prototype.afterEach=function(t){return ma(this.afterHooks,t)},ha.prototype.onReady=function(t,e){this.history.onReady(t,e)},ha.prototype.onError=function(t){this.history.onError(t)},ha.prototype.push=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){r.history.push(t,e,n)}));this.history.push(t,e,n)},ha.prototype.replace=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){r.history.replace(t,e,n)}));this.history.replace(t,e,n)},ha.prototype.go=function(t){this.history.go(t)},ha.prototype.back=function(){this.go(-1)},ha.prototype.forward=function(){this.go(1)},ha.prototype.getMatchedComponents=function(t){var e=t?t.matched?t:this.resolve(t).route:this.currentRoute;return e?[].concat.apply([],e.matched.map((function(t){return Object.keys(t.components).map((function(e){return t.components[e]}))}))):[]},ha.prototype.resolve=function(t,e,n){var r=_i(t,e=e||this.history.current,n,this),o=this.match(r,e),i=o.redirectedFrom||o.fullPath;return{location:r,route:o,href:function(t,e,n){var r="hash"===n?"#"+e:e;return t?ni(t+"/"+r):r}(this.history.base,i,this.mode),normalizedTo:r,resolved:o}},ha.prototype.addRoutes=function(t){this.matcher.addRoutes(t),this.history.current!==Xo&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(ha.prototype,va),ha.install=function t(e){if(!t.installed||xi!==e){t.installed=!0,xi=e;var n=function(t){return void 0!==t},r=function(t,e){var r=t.$options._parentVnode;n(r)&&n(r=r.data)&&n(r=r.registerRouteInstance)&&r(t,e)};e.mixin({beforeCreate:function(){n(this.$options.router)?(this._routerRoot=this,this._router=this.$options.router,this._router.init(this),e.util.defineReactive(this,"_route",this._router.history.current)):this._routerRoot=this.$parent&&this.$parent._routerRoot||this,r(this,this)},destroyed:function(){r(this)}}),Object.defineProperty(e.prototype,"$router",{get:function(){return this._routerRoot._router}}),Object.defineProperty(e.prototype,"$route",{get:function(){return this._routerRoot._route}}),e.component("RouterView",No),e.component("RouterLink",Ei);var o=e.config.optionMergeStrategies;o.beforeRouteEnter=o.beforeRouteLeave=o.beforeRouteUpdate=o.created}},ha.version="3.1.6",ki&&window.Vue&&window.Vue.use(ha);var ga=ha;n(50),n(127),n(129),n(130),n(131),n(69),n(132),n(51);function ya(t){t.locales&&Object.keys(t.locales).forEach((function(e){t.locales[e].path=e})),Object.freeze(t)}n(108),n(133),n(22),n(110),n(47);function ba(t){return(ba="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}var wa=n(43),_a={NotFound:function(){return n.e(23).then(n.bind(null,250))},Layout:function(){return Promise.all([n.e(0),n.e(2)]).then(n.bind(null,249))}},xa={"v-64a170d8":function(){return n.e(24).then(n.bind(null,253))},"v-078c5be8":function(){return n.e(25).then(n.bind(null,254))},"v-5655e588":function(){return n.e(11).then(n.bind(null,255))},"v-4ef07d88":function(){return n.e(12).then(n.bind(null,256))},"v-64577bce":function(){return n.e(6).then(n.bind(null,257))},"v-3f6f84e0":function(){return n.e(5).then(n.bind(null,258))},"v-2524cb94":function(){return n.e(15).then(n.bind(null,259))},"v-56b3c5a0":function(){return n.e(16).then(n.bind(null,260))},"v-68f30830":function(){return n.e(13).then(n.bind(null,261))},"v-b07002f8":function(){return n.e(8).then(n.bind(null,262))},"v-a06af470":function(){return n.e(3).then(n.bind(null,263))},"v-27757210":function(){return n.e(4).then(n.bind(null,264))},"v-20dff7a8":function(){return n.e(14).then(n.bind(null,265))},"v-1633bbb4":function(){return n.e(26).then(n.bind(null,266))},"v-70e651e8":function(){return n.e(17).then(n.bind(null,267))},"v-45ee3628":function(){return n.e(27).then(n.bind(null,268))},"v-a42e43b0":function(){return n.e(28).then(n.bind(null,269))},"v-22582db0":function(){return n.e(7).then(n.bind(null,270))},"v-39635cd4":function(){return n.e(18).then(n.bind(null,271))},"v-7ded8e00":function(){return n.e(19).then(n.bind(null,272))},"v-06f2dc82":function(){return n.e(20).then(n.bind(null,273))},"v-9fe692c0":function(){return n.e(21).then(n.bind(null,274))},"v-b2ccea3a":function(){return n.e(29).then(n.bind(null,275))}};function Sa(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}var Ea=/-(\w)/g,Oa=Sa((function(t){return t.replace(Ea,(function(t,e){return e?e.toUpperCase():""}))})),ka=/\B([A-Z])/g,Ca=Sa((function(t){return t.replace(ka,"-$1").toLowerCase()})),Aa=Sa((function(t){return t.charAt(0).toUpperCase()+t.slice(1)}));function Ta(t,e){if(e)return t(e)?t(e):e.includes("-")?t(Aa(Oa(e))):t(Aa(e))||t(Ca(e))}var $a=Object.assign({},_a,xa),ja=function(t){return $a[t]},Pa=function(t){return xa[t]},La=function(t){return _a[t]},Ra=function(t){return Ro.component(t)};function Ia(t){return Ta(Pa,t)}function Ma(t){return Ta(La,t)}function Da(t){return Ta(ja,t)}function Na(t){return Ta(Ra,t)}function Ua(){for(var t=arguments.length,e=new Array(t),n=0;n=s.parentElement.offsetTop+10&&(!c||rthis.threshold}},mounted:function(){var t=this;this.scrollTop=this.getScrollTop(),window.addEventListener("scroll",Va()((function(){t.scrollTop=t.getScrollTop()}),100))},methods:{getScrollTop:function(){return window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0},scrollToTop:function(){window.scrollTo({top:0,behavior:"smooth"}),this.scrollTop=0}}},as=(n(150),Object(Ja.a)(is,(function(){var t=this.$createElement,e=this._self._c||t;return e("transition",{attrs:{name:"fade"}},[this.show?e("svg",{staticClass:"go-to-top",attrs:{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 49.484 28.284"},on:{click:this.scrollToTop}},[e("g",{attrs:{transform:"translate(-229 -126.358)"}},[e("rect",{attrs:{fill:"currentColor",width:"35",height:"5",rx:"2",transform:"translate(229 151.107) rotate(-45)"}}),this._v(" "),e("rect",{attrs:{fill:"currentColor",width:"35",height:"5",rx:"2",transform:"translate(274.949 154.642) rotate(-135)"}})])]):this._e()])}),[],!1,null,"5fd4ef0c",null).exports),ss=[{},function(t){t.Vue.mixin({computed:{$dataBlock:function(){return this.$options.__data__block__}}})},{},{},function(t){t.Vue.component("CodeCopy",Qa)},function(t){t.Vue.component("BackToTop",as)}],cs=["BackToTop"];n(114);function us(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function ls(t,e){for(var n=0;n0}var ws={props:{pageKey:String,slotKey:{type:String,default:"default"}},render:function(t){var e=this.pageKey||this.$parent.$page.key;return Ba("pageKey",e),Ro.component(e)||Ro.component(e,Ia(e)),Ro.component(e)?t(e):t("")}},_s={functional:!0,props:{slotKey:String,required:!0},render:function(t,e){var n=e.props,r=e.slots;return t("div",{class:["content__".concat(n.slotKey)]},r()[n.slotKey])}},xs=(n(151),Object(Ja.a)({},(function(t,e){var n=e._c;return n("svg",{staticClass:"icon outbound",attrs:{xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",x:"0px",y:"0px",viewBox:"0 0 100 100",width:"15",height:"15"}},[n("path",{attrs:{fill:"currentColor",d:"M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"}}),e._v(" "),n("polygon",{attrs:{fill:"currentColor",points:"45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"}})])}),[],!0,null,null,null).exports);function Ss(){return(Ss=o(regeneratorRuntime.mark((function t(e){var n,r,o,i;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n="undefined"!=typeof window&&window.__VUEPRESS_ROUTER_BASE__?window.__VUEPRESS_ROUTER_BASE__:os.routerBase||os.base,ys(r=new ga({base:n,mode:"history",fallback:!1,routes:rs,scrollBehavior:function(t,e,n){return n||(t.hash?!Ro.$vuepress.$get("disableScrollBehavior")&&{selector:t.hash}:{x:0,y:0})}})),o={},t.prev=4,t.next=7,Promise.all(ss.filter((function(t){return"function"==typeof t})).map((function(t){return t({Vue:Ro,options:o,router:r,siteData:os,isServer:e})})));case 7:t.next=12;break;case 9:t.prev=9,t.t0=t.catch(4),console.error(t.t0);case 12:return i=new Ro(Object.assign(o,{router:r,render:function(t){return t("div",{attrs:{id:"app"}},[t("RouterView",{ref:"layout"}),t("div",{class:"global-ui"},cs.map((function(e){return t(e)})))])}})),t.abrupt("return",{app:i,router:r});case 14:case"end":return t.stop()}}),t,null,[[4,9]])})))).apply(this,arguments)}Ro.config.productionTip=!1,Ro.use(ga),Ro.use(gs),Ro.mixin(function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Ro;ya(e),n.$vuepress.$set("siteData",e);var r=t(n.$vuepress.$get("siteData")),o=new r,i=Object.getOwnPropertyDescriptors(Object.getPrototypeOf(o)),a={};return Object.keys(i).reduce((function(t,e){return e.startsWith("$")&&(t[e]=i[e].get),t}),a),{computed:a}}((function(t){return function(){function e(){us(this,e)}return fs(e,[{key:"setPage",value:function(t){this.__page=t}},{key:"$site",get:function(){return t}},{key:"$themeConfig",get:function(){return this.$site.themeConfig}},{key:"$frontmatter",get:function(){return this.$page.frontmatter}},{key:"$localeConfig",get:function(){var t,e,n=this.$site.locales,r=void 0===n?{}:n;for(var o in r)"/"===o?e=r[o]:0===this.$page.path.indexOf(o)&&(t=r[o]);return t||e||{}}},{key:"$siteTitle",get:function(){return this.$localeConfig.title||this.$site.title||""}},{key:"$title",get:function(){var t=this.$page,e=this.$page.frontmatter.metaTitle;if("string"==typeof e)return e;var n=this.$siteTitle,r=t.frontmatter.home?null:t.frontmatter.title||t.title;return n?r?r+" | "+n:n:r||"VuePress"}},{key:"$description",get:function(){var t=function(t){if(t){var e=t.filter((function(t){return"description"===t.name}))[0];if(e)return e.content}}(this.$page.frontmatter.meta);return t||(this.$page.frontmatter.description||this.$localeConfig.description||this.$site.description||"")}},{key:"$lang",get:function(){return this.$page.frontmatter.lang||this.$localeConfig.lang||"en-US"}},{key:"$localePath",get:function(){return this.$localeConfig.path||"/"}},{key:"$themeLocaleConfig",get:function(){return(this.$site.themeConfig.locales||{})[this.$localePath]||{}}},{key:"$page",get:function(){return this.__page?this.__page:function(t,e){for(var n=0;n-1}function Mo(t,e){return e instanceof t||e&&(e.name===t.name||e._name===t._name)}function Do(t,e){for(var n in e)t[n]=e[n];return t}var No={name:"RouterView",functional:!0,props:{name:{type:String,default:"default"}},render:function(t,e){var n=e.props,r=e.children,o=e.parent,i=e.data;i.routerView=!0;for(var a=o.$createElement,s=n.name,c=o.$route,u=o._routerViewCache||(o._routerViewCache={}),l=0,f=!1;o&&o._routerRoot!==o;){var p=o.$vnode?o.$vnode.data:{};p.routerView&&l++,p.keepAlive&&o._directInactive&&o._inactive&&(f=!0),o=o.$parent}if(i.routerViewDepth=l,f){var d=u[s],h=d&&d.component;return h?(d.configProps&&Uo(h,i,d.route,d.configProps),a(h,i,r)):a()}var v=c.matched[l],m=v&&v.components[s];if(!v||!m)return u[s]=null,a();u[s]={component:m},i.registerRouteInstance=function(t,e){var n=v.instances[s];(e&&n!==t||!e&&n===t)&&(v.instances[s]=e)},(i.hook||(i.hook={})).prepatch=function(t,e){v.instances[s]=e.componentInstance},i.hook.init=function(t){t.data.keepAlive&&t.componentInstance&&t.componentInstance!==v.instances[s]&&(v.instances[s]=t.componentInstance)};var g=v.props&&v.props[s];return g&&(Do(u[s],{route:c,configProps:g}),Uo(m,i,c,g)),a(m,i,r)}};function Uo(t,e,n,r){var o=e.props=function(t,e){switch(typeof e){case"undefined":return;case"object":return e;case"function":return e(t);case"boolean":return e?t.params:void 0;default:0}}(n,r);if(o){o=e.props=Do({},o);var i=e.attrs=e.attrs||{};for(var a in o)t.props&&a in t.props||(i[a]=o[a],delete o[a])}}var Bo=/[!'()*]/g,Fo=function(t){return"%"+t.charCodeAt(0).toString(16)},Wo=/%2C/g,Ho=function(t){return encodeURIComponent(t).replace(Bo,Fo).replace(Wo,",")},Vo=decodeURIComponent;function zo(t){var e={};return(t=t.trim().replace(/^(\?|#|&)/,""))?(t.split("&").forEach((function(t){var n=t.replace(/\+/g," ").split("="),r=Vo(n.shift()),o=n.length>0?Vo(n.join("=")):null;void 0===e[r]?e[r]=o:Array.isArray(e[r])?e[r].push(o):e[r]=[e[r],o]})),e):e}function Go(t){var e=t?Object.keys(t).map((function(e){var n=t[e];if(void 0===n)return"";if(null===n)return Ho(e);if(Array.isArray(n)){var r=[];return n.forEach((function(t){void 0!==t&&(null===t?r.push(Ho(e)):r.push(Ho(e)+"="+Ho(t)))})),r.join("&")}return Ho(e)+"="+Ho(n)})).filter((function(t){return t.length>0})).join("&"):null;return e?"?"+e:""}var qo=/\/?$/;function Zo(t,e,n,r){var o=r&&r.options.stringifyQuery,i=e.query||{};try{i=Ko(i)}catch(t){}var a={name:e.name||t&&t.name,meta:t&&t.meta||{},path:e.path||"/",hash:e.hash||"",query:i,params:e.params||{},fullPath:Jo(e,o),matched:t?Yo(t):[]};return n&&(a.redirectedFrom=Jo(n,o)),Object.freeze(a)}function Ko(t){if(Array.isArray(t))return t.map(Ko);if(t&&"object"==typeof t){var e={};for(var n in t)e[n]=Ko(t[n]);return e}return t}var Xo=Zo(null,{path:"/"});function Yo(t){for(var e=[];t;)e.unshift(t),t=t.parent;return e}function Jo(t,e){var n=t.path,r=t.query;void 0===r&&(r={});var o=t.hash;return void 0===o&&(o=""),(n||"/")+(e||Go)(r)+o}function Qo(t,e){return e===Xo?t===e:!!e&&(t.path&&e.path?t.path.replace(qo,"")===e.path.replace(qo,"")&&t.hash===e.hash&&ti(t.query,e.query):!(!t.name||!e.name)&&(t.name===e.name&&t.hash===e.hash&&ti(t.query,e.query)&&ti(t.params,e.params)))}function ti(t,e){if(void 0===t&&(t={}),void 0===e&&(e={}),!t||!e)return t===e;var n=Object.keys(t),r=Object.keys(e);return n.length===r.length&&n.every((function(n){var r=t[n],o=e[n];return"object"==typeof r&&"object"==typeof o?ti(r,o):String(r)===String(o)}))}function ei(t,e,n){var r=t.charAt(0);if("/"===r)return t;if("?"===r||"#"===r)return e+t;var o=e.split("/");n&&o[o.length-1]||o.pop();for(var i=t.replace(/^\//,"").split("/"),a=0;a=0&&(e=t.slice(r),t=t.slice(0,r));var o=t.indexOf("?");return o>=0&&(n=t.slice(o+1),t=t.slice(0,o)),{path:t,query:n,hash:e}}(o.path||""),u=e&&e.path||"/",l=c.path?ei(c.path,u,n||o.append):u,f=function(t,e,n){void 0===e&&(e={});var r,o=n||zo;try{r=o(t||"")}catch(t){r={}}for(var i in e)r[i]=e[i];return r}(c.query,o.query,r&&r.options.parseQuery),p=o.hash||c.hash;return p&&"#"!==p.charAt(0)&&(p="#"+p),{_normalized:!0,path:l,query:f,hash:p}}var xi,Si=function(){},Ei={name:"RouterLink",props:{to:{type:[String,Object],required:!0},tag:{type:String,default:"a"},exact:Boolean,append:Boolean,replace:Boolean,activeClass:String,exactActiveClass:String,event:{type:[String,Array],default:"click"}},render:function(t){var e=this,n=this.$router,r=this.$route,o=n.resolve(this.to,r,this.append),i=o.location,a=o.route,s=o.href,c={},u=n.options.linkActiveClass,l=n.options.linkExactActiveClass,f=null==u?"router-link-active":u,p=null==l?"router-link-exact-active":l,d=null==this.activeClass?f:this.activeClass,h=null==this.exactActiveClass?p:this.exactActiveClass,v=a.redirectedFrom?Zo(null,_i(a.redirectedFrom),null,n):a;c[h]=Qo(r,v),c[d]=this.exact?c[h]:function(t,e){return 0===t.path.replace(qo,"/").indexOf(e.path.replace(qo,"/"))&&(!e.hash||t.hash===e.hash)&&function(t,e){for(var n in e)if(!(n in t))return!1;return!0}(t.query,e.query)}(r,v);var m=function(t){Oi(t)&&(e.replace?n.replace(i,Si):n.push(i,Si))},g={click:Oi};Array.isArray(this.event)?this.event.forEach((function(t){g[t]=m})):g[this.event]=m;var y={class:c},b=!this.$scopedSlots.$hasNormal&&this.$scopedSlots.default&&this.$scopedSlots.default({href:s,route:a,navigate:m,isActive:c[d],isExactActive:c[h]});if(b){if(1===b.length)return b[0];if(b.length>1||!b.length)return 0===b.length?t():t("span",{},b)}if("a"===this.tag)y.on=g,y.attrs={href:s};else{var w=function t(e){var n;if(e)for(var r=0;r-1&&(s.params[p]=n.params[p]);return s.path=wi(l.path,s.params),c(l,s,a)}if(s.path){s.params={};for(var d=0;d=t.length?n():t[o]?e(t[o],(function(){r(o+1)})):r(o+1)};r(0)}function Xi(t){return function(e,n,r){var o=!1,i=0,a=null;Yi(t,(function(t,e,n,s){if("function"==typeof t&&void 0===t.cid){o=!0,i++;var c,u=ta((function(e){var o;((o=e).__esModule||Qi&&"Module"===o[Symbol.toStringTag])&&(e=e.default),t.resolved="function"==typeof e?e:xi.extend(e),n.components[s]=e,--i<=0&&r()})),l=ta((function(t){var e="Failed to resolve async component "+s+": "+t;a||(a=Io(t)?t:new Error(e),r(a))}));try{c=t(u,l)}catch(t){l(t)}if(c)if("function"==typeof c.then)c.then(u,l);else{var f=c.component;f&&"function"==typeof f.then&&f.then(u,l)}}})),o||r()}}function Yi(t,e){return Ji(t.map((function(t){return Object.keys(t.components).map((function(n){return e(t.components[n],t.instances[n],t,n)}))})))}function Ji(t){return Array.prototype.concat.apply([],t)}var Qi="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag;function ta(t){var e=!1;return function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];if(!e)return e=!0,t.apply(this,n)}}var ea=function(t){function e(e){t.call(this),this.name=this._name="NavigationDuplicated",this.message='Navigating to current location ("'+e.fullPath+'") is not allowed',Object.defineProperty(this,"stack",{value:(new t).stack,writable:!0,configurable:!0})}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Error);ea._name="NavigationDuplicated";var na=function(t,e){this.router=t,this.base=function(t){if(!t)if(ki){var e=document.querySelector("base");t=(t=e&&e.getAttribute("href")||"/").replace(/^https?:\/\/[^\/]+/,"")}else t="/";"/"!==t.charAt(0)&&(t="/"+t);return t.replace(/\/$/,"")}(e),this.current=Xo,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[]};function ra(t,e,n,r){var o=Yi(t,(function(t,r,o,i){var a=function(t,e){"function"!=typeof t&&(t=xi.extend(t));return t.options[e]}(t,e);if(a)return Array.isArray(a)?a.map((function(t){return n(t,r,o,i)})):n(a,r,o,i)}));return Ji(r?o.reverse():o)}function oa(t,e){if(e)return function(){return t.apply(e,arguments)}}na.prototype.listen=function(t){this.cb=t},na.prototype.onReady=function(t,e){this.ready?t():(this.readyCbs.push(t),e&&this.readyErrorCbs.push(e))},na.prototype.onError=function(t){this.errorCbs.push(t)},na.prototype.transitionTo=function(t,e,n){var r=this,o=this.router.match(t,this.current);this.confirmTransition(o,(function(){r.updateRoute(o),e&&e(o),r.ensureURL(),r.ready||(r.ready=!0,r.readyCbs.forEach((function(t){t(o)})))}),(function(t){n&&n(t),t&&!r.ready&&(r.ready=!0,r.readyErrorCbs.forEach((function(e){e(t)})))}))},na.prototype.confirmTransition=function(t,e,n){var r=this,o=this.current,i=function(t){!Mo(ea,t)&&Io(t)&&(r.errorCbs.length?r.errorCbs.forEach((function(e){e(t)})):console.error(t)),n&&n(t)};if(Qo(t,o)&&t.matched.length===o.matched.length)return this.ensureURL(),i(new ea(t));var a=function(t,e){var n,r=Math.max(t.length,e.length);for(n=0;n-1?decodeURI(t.slice(0,r))+t.slice(r):decodeURI(t)}else t=decodeURI(t.slice(0,n))+t.slice(n);return t}function la(t){var e=window.location.href,n=e.indexOf("#");return(n>=0?e.slice(0,n):e)+"#"+t}function fa(t){Gi?qi(la(t)):window.location.hash=t}function pa(t){Gi?Zi(la(t)):window.location.replace(la(t))}var da=function(t){function e(e,n){t.call(this,e,n),this.stack=[],this.index=-1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.push=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index+1).concat(t),r.index++,e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index).concat(t),e&&e(t)}),n)},e.prototype.go=function(t){var e=this,n=this.index+t;if(!(n<0||n>=this.stack.length)){var r=this.stack[n];this.confirmTransition(r,(function(){e.index=n,e.updateRoute(r)}),(function(t){Mo(ea,t)&&(e.index=n)}))}},e.prototype.getCurrentLocation=function(){var t=this.stack[this.stack.length-1];return t?t.fullPath:"/"},e.prototype.ensureURL=function(){},e}(na),ha=function(t){void 0===t&&(t={}),this.app=null,this.apps=[],this.options=t,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=Ti(t.routes||[],this);var e=t.mode||"hash";switch(this.fallback="history"===e&&!Gi&&!1!==t.fallback,this.fallback&&(e="hash"),ki||(e="abstract"),this.mode=e,e){case"history":this.history=new ia(this,t.base);break;case"hash":this.history=new sa(this,t.base,this.fallback);break;case"abstract":this.history=new da(this,t.base);break;default:0}},va={currentRoute:{configurable:!0}};function ma(t,e){return t.push(e),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}ha.prototype.match=function(t,e,n){return this.matcher.match(t,e,n)},va.currentRoute.get=function(){return this.history&&this.history.current},ha.prototype.init=function(t){var e=this;if(this.apps.push(t),t.$once("hook:destroyed",(function(){var n=e.apps.indexOf(t);n>-1&&e.apps.splice(n,1),e.app===t&&(e.app=e.apps[0]||null)})),!this.app){this.app=t;var n=this.history;if(n instanceof ia)n.transitionTo(n.getCurrentLocation());else if(n instanceof sa){var r=function(){n.setupListeners()};n.transitionTo(n.getCurrentLocation(),r,r)}n.listen((function(t){e.apps.forEach((function(e){e._route=t}))}))}},ha.prototype.beforeEach=function(t){return ma(this.beforeHooks,t)},ha.prototype.beforeResolve=function(t){return ma(this.resolveHooks,t)},ha.prototype.afterEach=function(t){return ma(this.afterHooks,t)},ha.prototype.onReady=function(t,e){this.history.onReady(t,e)},ha.prototype.onError=function(t){this.history.onError(t)},ha.prototype.push=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){r.history.push(t,e,n)}));this.history.push(t,e,n)},ha.prototype.replace=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){r.history.replace(t,e,n)}));this.history.replace(t,e,n)},ha.prototype.go=function(t){this.history.go(t)},ha.prototype.back=function(){this.go(-1)},ha.prototype.forward=function(){this.go(1)},ha.prototype.getMatchedComponents=function(t){var e=t?t.matched?t:this.resolve(t).route:this.currentRoute;return e?[].concat.apply([],e.matched.map((function(t){return Object.keys(t.components).map((function(e){return t.components[e]}))}))):[]},ha.prototype.resolve=function(t,e,n){var r=_i(t,e=e||this.history.current,n,this),o=this.match(r,e),i=o.redirectedFrom||o.fullPath;return{location:r,route:o,href:function(t,e,n){var r="hash"===n?"#"+e:e;return t?ni(t+"/"+r):r}(this.history.base,i,this.mode),normalizedTo:r,resolved:o}},ha.prototype.addRoutes=function(t){this.matcher.addRoutes(t),this.history.current!==Xo&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(ha.prototype,va),ha.install=function t(e){if(!t.installed||xi!==e){t.installed=!0,xi=e;var n=function(t){return void 0!==t},r=function(t,e){var r=t.$options._parentVnode;n(r)&&n(r=r.data)&&n(r=r.registerRouteInstance)&&r(t,e)};e.mixin({beforeCreate:function(){n(this.$options.router)?(this._routerRoot=this,this._router=this.$options.router,this._router.init(this),e.util.defineReactive(this,"_route",this._router.history.current)):this._routerRoot=this.$parent&&this.$parent._routerRoot||this,r(this,this)},destroyed:function(){r(this)}}),Object.defineProperty(e.prototype,"$router",{get:function(){return this._routerRoot._router}}),Object.defineProperty(e.prototype,"$route",{get:function(){return this._routerRoot._route}}),e.component("RouterView",No),e.component("RouterLink",Ei);var o=e.config.optionMergeStrategies;o.beforeRouteEnter=o.beforeRouteLeave=o.beforeRouteUpdate=o.created}},ha.version="3.1.6",ki&&window.Vue&&window.Vue.use(ha);var ga=ha;n(50),n(127),n(129),n(130),n(131),n(69),n(132),n(51);function ya(t){t.locales&&Object.keys(t.locales).forEach((function(e){t.locales[e].path=e})),Object.freeze(t)}n(108),n(133),n(22),n(110),n(47);function ba(t){return(ba="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}var wa=n(43),_a={NotFound:function(){return n.e(23).then(n.bind(null,250))},Layout:function(){return Promise.all([n.e(0),n.e(2)]).then(n.bind(null,249))}},xa={"v-64a170d8":function(){return n.e(24).then(n.bind(null,253))},"v-078c5be8":function(){return n.e(25).then(n.bind(null,254))},"v-5655e588":function(){return n.e(11).then(n.bind(null,255))},"v-4ef07d88":function(){return n.e(12).then(n.bind(null,256))},"v-64577bce":function(){return n.e(6).then(n.bind(null,257))},"v-3f6f84e0":function(){return n.e(5).then(n.bind(null,258))},"v-2524cb94":function(){return n.e(15).then(n.bind(null,259))},"v-56b3c5a0":function(){return n.e(16).then(n.bind(null,260))},"v-68f30830":function(){return n.e(13).then(n.bind(null,261))},"v-b07002f8":function(){return n.e(8).then(n.bind(null,262))},"v-a06af470":function(){return n.e(3).then(n.bind(null,263))},"v-27757210":function(){return n.e(4).then(n.bind(null,264))},"v-20dff7a8":function(){return n.e(14).then(n.bind(null,265))},"v-1633bbb4":function(){return n.e(26).then(n.bind(null,266))},"v-70e651e8":function(){return n.e(17).then(n.bind(null,267))},"v-45ee3628":function(){return n.e(27).then(n.bind(null,268))},"v-a42e43b0":function(){return n.e(28).then(n.bind(null,269))},"v-22582db0":function(){return n.e(7).then(n.bind(null,270))},"v-39635cd4":function(){return n.e(18).then(n.bind(null,271))},"v-7ded8e00":function(){return n.e(19).then(n.bind(null,272))},"v-06f2dc82":function(){return n.e(20).then(n.bind(null,273))},"v-9fe692c0":function(){return n.e(21).then(n.bind(null,274))},"v-b2ccea3a":function(){return n.e(29).then(n.bind(null,275))}};function Sa(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}var Ea=/-(\w)/g,Oa=Sa((function(t){return t.replace(Ea,(function(t,e){return e?e.toUpperCase():""}))})),ka=/\B([A-Z])/g,Ca=Sa((function(t){return t.replace(ka,"-$1").toLowerCase()})),Aa=Sa((function(t){return t.charAt(0).toUpperCase()+t.slice(1)}));function Ta(t,e){if(e)return t(e)?t(e):e.includes("-")?t(Aa(Oa(e))):t(Aa(e))||t(Ca(e))}var $a=Object.assign({},_a,xa),ja=function(t){return $a[t]},Pa=function(t){return xa[t]},La=function(t){return _a[t]},Ra=function(t){return Ro.component(t)};function Ia(t){return Ta(Pa,t)}function Ma(t){return Ta(La,t)}function Da(t){return Ta(ja,t)}function Na(t){return Ta(Ra,t)}function Ua(){for(var t=arguments.length,e=new Array(t),n=0;n=s.parentElement.offsetTop+10&&(!c||rthis.threshold}},mounted:function(){var t=this;this.scrollTop=this.getScrollTop(),window.addEventListener("scroll",Va()((function(){t.scrollTop=t.getScrollTop()}),100))},methods:{getScrollTop:function(){return window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0},scrollToTop:function(){window.scrollTo({top:0,behavior:"smooth"}),this.scrollTop=0}}},as=(n(150),Object(Ja.a)(is,(function(){var t=this.$createElement,e=this._self._c||t;return e("transition",{attrs:{name:"fade"}},[this.show?e("svg",{staticClass:"go-to-top",attrs:{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 49.484 28.284"},on:{click:this.scrollToTop}},[e("g",{attrs:{transform:"translate(-229 -126.358)"}},[e("rect",{attrs:{fill:"currentColor",width:"35",height:"5",rx:"2",transform:"translate(229 151.107) rotate(-45)"}}),this._v(" "),e("rect",{attrs:{fill:"currentColor",width:"35",height:"5",rx:"2",transform:"translate(274.949 154.642) rotate(-135)"}})])]):this._e()])}),[],!1,null,"5fd4ef0c",null).exports),ss=[{},function(t){t.Vue.mixin({computed:{$dataBlock:function(){return this.$options.__data__block__}}})},{},{},function(t){t.Vue.component("CodeCopy",Qa)},function(t){t.Vue.component("BackToTop",as)}],cs=["BackToTop"];n(114);function us(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function ls(t,e){for(var n=0;n0}var ws={props:{pageKey:String,slotKey:{type:String,default:"default"}},render:function(t){var e=this.pageKey||this.$parent.$page.key;return Ba("pageKey",e),Ro.component(e)||Ro.component(e,Ia(e)),Ro.component(e)?t(e):t("")}},_s={functional:!0,props:{slotKey:String,required:!0},render:function(t,e){var n=e.props,r=e.slots;return t("div",{class:["content__".concat(n.slotKey)]},r()[n.slotKey])}},xs=(n(151),Object(Ja.a)({},(function(t,e){var n=e._c;return n("svg",{staticClass:"icon outbound",attrs:{xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",x:"0px",y:"0px",viewBox:"0 0 100 100",width:"15",height:"15"}},[n("path",{attrs:{fill:"currentColor",d:"M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"}}),e._v(" "),n("polygon",{attrs:{fill:"currentColor",points:"45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"}})])}),[],!0,null,null,null).exports);function Ss(){return(Ss=o(regeneratorRuntime.mark((function t(e){var n,r,o,i;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n="undefined"!=typeof window&&window.__VUEPRESS_ROUTER_BASE__?window.__VUEPRESS_ROUTER_BASE__:os.routerBase||os.base,ys(r=new ga({base:n,mode:"history",fallback:!1,routes:rs,scrollBehavior:function(t,e,n){return n||(t.hash?!Ro.$vuepress.$get("disableScrollBehavior")&&{selector:t.hash}:{x:0,y:0})}})),o={},t.prev=4,t.next=7,Promise.all(ss.filter((function(t){return"function"==typeof t})).map((function(t){return t({Vue:Ro,options:o,router:r,siteData:os,isServer:e})})));case 7:t.next=12;break;case 9:t.prev=9,t.t0=t.catch(4),console.error(t.t0);case 12:return i=new Ro(Object.assign(o,{router:r,render:function(t){return t("div",{attrs:{id:"app"}},[t("RouterView",{ref:"layout"}),t("div",{class:"global-ui"},cs.map((function(e){return t(e)})))])}})),t.abrupt("return",{app:i,router:r});case 14:case"end":return t.stop()}}),t,null,[[4,9]])})))).apply(this,arguments)}Ro.config.productionTip=!1,Ro.use(ga),Ro.use(gs),Ro.mixin(function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Ro;ya(e),n.$vuepress.$set("siteData",e);var r=t(n.$vuepress.$get("siteData")),o=new r,i=Object.getOwnPropertyDescriptors(Object.getPrototypeOf(o)),a={};return Object.keys(i).reduce((function(t,e){return e.startsWith("$")&&(t[e]=i[e].get),t}),a),{computed:a}}((function(t){return function(){function e(){us(this,e)}return fs(e,[{key:"setPage",value:function(t){this.__page=t}},{key:"$site",get:function(){return t}},{key:"$themeConfig",get:function(){return this.$site.themeConfig}},{key:"$frontmatter",get:function(){return this.$page.frontmatter}},{key:"$localeConfig",get:function(){var t,e,n=this.$site.locales,r=void 0===n?{}:n;for(var o in r)"/"===o?e=r[o]:0===this.$page.path.indexOf(o)&&(t=r[o]);return t||e||{}}},{key:"$siteTitle",get:function(){return this.$localeConfig.title||this.$site.title||""}},{key:"$title",get:function(){var t=this.$page,e=this.$page.frontmatter.metaTitle;if("string"==typeof e)return e;var n=this.$siteTitle,r=t.frontmatter.home?null:t.frontmatter.title||t.title;return n?r?r+" | "+n:n:r||"VuePress"}},{key:"$description",get:function(){var t=function(t){if(t){var e=t.filter((function(t){return"description"===t.name}))[0];if(e)return e.content}}(this.$page.frontmatter.meta);return t||(this.$page.frontmatter.description||this.$localeConfig.description||this.$site.description||"")}},{key:"$lang",get:function(){return this.$page.frontmatter.lang||this.$localeConfig.lang||"en-US"}},{key:"$localePath",get:function(){return this.$localeConfig.path||"/"}},{key:"$themeLocaleConfig",get:function(){return(this.$site.themeConfig.locales||{})[this.$localePath]||{}}},{key:"$page",get:function(){return this.__page?this.__page:function(t,e){for(var n=0;n - + @@ -61,6 +61,6 @@ →

- + diff --git a/beginner/tutorial2-swapchain/index.html b/beginner/tutorial2-swapchain/index.html index 0f388070..960b54b5 100644 --- a/beginner/tutorial2-swapchain/index.html +++ b/beginner/tutorial2-swapchain/index.html @@ -8,7 +8,7 @@ - + @@ -250,6 +250,6 @@ event_loop.r →

- + diff --git a/beginner/tutorial3-pipeline/index.html b/beginner/tutorial3-pipeline/index.html index 62402c17..4e730fe2 100644 --- a/beginner/tutorial3-pipeline/index.html +++ b/beginner/tutorial3-pipeline/index.html @@ -8,7 +8,7 @@ - + @@ -153,6 +153,6 @@ fn main(in: VertexOutput) -> [[location(0)]] vec4<f32> { →

- + diff --git a/beginner/tutorial4-buffer/index.html b/beginner/tutorial4-buffer/index.html index 523c69dd..8bf255a0 100644 --- a/beginner/tutorial4-buffer/index.html +++ b/beginner/tutorial4-buffer/index.html @@ -8,7 +8,7 @@ - + @@ -260,6 +260,6 @@ render_pass.

- + diff --git a/beginner/tutorial5-textures/index.html b/beginner/tutorial5-textures/index.html index 9a3876c3..bf09254b 100644 --- a/beginner/tutorial5-textures/index.html +++ b/beginner/tutorial5-textures/index.html @@ -8,7 +8,7 @@ - + @@ -406,6 +406,6 @@ fn main( →

- + diff --git a/beginner/tutorial6-uniforms/index.html b/beginner/tutorial6-uniforms/index.html index 51663cc1..80ea5933 100644 --- a/beginner/tutorial6-uniforms/index.html +++ b/beginner/tutorial6-uniforms/index.html @@ -8,7 +8,7 @@ - + @@ -328,6 +328,6 @@ fn main( →

- + diff --git a/beginner/tutorial7-instancing/index.html b/beginner/tutorial7-instancing/index.html index 3cef083c..9aae4b2b 100644 --- a/beginner/tutorial7-instancing/index.html +++ b/beginner/tutorial7-instancing/index.html @@ -8,7 +8,7 @@ - + @@ -181,6 +181,6 @@ fn main( →

- + diff --git a/beginner/tutorial8-depth/index.html b/beginner/tutorial8-depth/index.html index c7b06bdd..60414958 100644 --- a/beginner/tutorial8-depth/index.html +++ b/beginner/tutorial8-depth/index.html @@ -8,7 +8,7 @@ - + @@ -109,6 +109,6 @@ →

- + diff --git a/beginner/tutorial9-models/index.html b/beginner/tutorial9-models/index.html index 9aff6b25..2bc24825 100644 --- a/beginner/tutorial9-models/index.html +++ b/beginner/tutorial9-models/index.html @@ -8,7 +8,7 @@ - + @@ -361,6 +361,6 @@ render_pass.

- + diff --git a/index.html b/index.html index 799698c5..a71d2eaf 100644 --- a/index.html +++ b/index.html @@ -8,7 +8,7 @@ - + @@ -17,6 +17,6 @@ →

- + diff --git a/intermediate/tutorial10-lighting/index.html b/intermediate/tutorial10-lighting/index.html index 87a25fc2..a43e060c 100644 --- a/intermediate/tutorial10-lighting/index.html +++ b/intermediate/tutorial10-lighting/index.html @@ -8,7 +8,7 @@ - + @@ -628,6 +628,6 @@ let specular_strength = pow(max(dot(in.world_normal, half_dir), 0.0), 32.0); →

- + diff --git a/intermediate/tutorial11-normals/index.html b/intermediate/tutorial11-normals/index.html index 8414ed1d..9b6b6e40 100644 --- a/intermediate/tutorial11-normals/index.html +++ b/intermediate/tutorial11-normals/index.html @@ -8,7 +8,7 @@ - + @@ -480,6 +480,6 @@ render_pass.

- + diff --git a/intermediate/tutorial12-camera/index.html b/intermediate/tutorial12-camera/index.html index 7445c344..2d23918b 100644 --- a/intermediate/tutorial12-camera/index.html +++ b/intermediate/tutorial12-camera/index.html @@ -8,7 +8,7 @@ - + @@ -375,6 +375,6 @@ →

- + diff --git a/intermediate/tutorial13-threading/index.html b/intermediate/tutorial13-threading/index.html index 47d9f812..53f012f5 100644 --- a/intermediate/tutorial13-threading/index.html +++ b/intermediate/tutorial13-threading/index.html @@ -8,7 +8,7 @@ - + @@ -108,6 +108,6 @@ Elapsed (Threaded): 199.645027ms →

- + diff --git a/news/index.html b/news/index.html index ce247f0f..332a62ee 100644 --- a/news/index.html +++ b/news/index.html @@ -8,7 +8,7 @@ - + @@ -24,6 +24,6 @@

- + diff --git a/showcase/alignment/index.html b/showcase/alignment/index.html index 243d6a28..8eee1e75 100644 --- a/showcase/alignment/index.html +++ b/showcase/alignment/index.html @@ -7,14 +7,14 @@ - - + +

# Memory Layout in GLSL

# Alignments

The address of the position of an instance in memory has to a multiple of its alignment.

Normally alignment is the same as size. Exceptions are vec3, structs and arrays.

A vec3 is padded to be a vec4 which means it behaves as if it was a vec4 just that the last entry is not used.

{i,u,b}vec is shorthand for ivec, uvec, bvec so a vector of int or uint or bool. A vec is a vec of float.

type Alignment in bytes size in bytes
int, uint, float, bool 4 4
double 8 8
{i,u,b}vec2 8 8
dvec2 16 16
{i,u,b}vec3 16 12
{i,u,b}vec4 16 16
dvec3 32 24
dvec4 32 32
mat3 (like array of 3 vec3) 16 3*16
mat4 (like array of 4 vec4) 16 4*16

Reference section 7.6.2.2

# In WGPU

To make uniform buffers portable they have to be std140 and not std430. Uniform structs have to be std140. -Storage structs have to be std430.

Storage buffers for compute shaders can be std140 or std430.

# std140 (since GLSL 1.4, OpenGL 3.1)

Array:

  • determine the alignment of the member type and lets name it align_member
  • the alignment of the array is maximum(align_member, 16)

Struct:

  • determine the member with the largest alignment and lets name it max_member_align
  • the alignment of the array is maximum(max_member_align, 16)

# crates to make your struct compatible with std140

glsl_layout crevice

# std430 (since GLSL 4.3, OpenGL 4.3)

more space efficient for structs and arrays

Array

  • alignment is the alignment of the element type

Struct

  • alignment is the alignment of the member with the largest alignment

# crates to make yuor struct compatible with std430

glsl_layout issue crevice issue


Last Updated: 11/24/2020, 6:30:37 AM
Last Updated: 11/21/2020, 8:16:07 PM
- + diff --git a/showcase/compute/index.html b/showcase/compute/index.html index 747b9732..b214cf47 100644 --- a/showcase/compute/index.html +++ b/showcase/compute/index.html @@ -8,7 +8,7 @@ - + @@ -122,6 +122,6 @@ →

- + diff --git a/showcase/gifs/index.html b/showcase/gifs/index.html index c1251acc..f96a4555 100644 --- a/showcase/gifs/index.html +++ b/showcase/gifs/index.html @@ -8,7 +8,7 @@ - + @@ -149,6 +149,6 @@ →

- + diff --git a/showcase/imgui-demo/index.html b/showcase/imgui-demo/index.html index 6beef110..be7f5ed7 100644 --- a/showcase/imgui-demo/index.html +++ b/showcase/imgui-demo/index.html @@ -8,7 +8,7 @@ - + @@ -115,6 +115,6 @@ display.queue - + diff --git a/showcase/index.html b/showcase/index.html index bbe99363..422a8022 100644 --- a/showcase/index.html +++ b/showcase/index.html @@ -7,12 +7,12 @@ - - + + -

# Foreward

The articles in this section are not meant to be tutorials. They are showcases of the various things you can do with wgpu. I won't go over specifics of creating wgpu resources, as those will be covered elsewhere. The code for these examples is still available however, and will be accessible on Github.

Last Updated: 11/24/2020, 6:30:37 AM
- + diff --git a/showcase/windowless/index.html b/showcase/windowless/index.html index 23249c5c..bb9e8180 100644 --- a/showcase/windowless/index.html +++ b/showcase/windowless/index.html @@ -8,7 +8,7 @@ - + @@ -228,6 +228,6 @@ output_buffer. - + diff --git a/todo.html b/todo.html index 95e3aa24..d563380b 100644 --- a/todo.html +++ b/todo.html @@ -7,12 +7,12 @@ - - + + - - + +