Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* add scripts/spine/playcanvas-spine.3.8.mjs * Add scripts/posteffects/posteffect-bloom.mjs * examples/iframe/ to ES6 add importmap.js * changes to examples/graphics * changes to examples/loaders * examples/physics changes * examples/misc changes * more examples changes * add examples/app/ stuff * add examples/animation/* * last three files * fix paths, remove TS mode * examples/src/iframe: SoC + clean up / refactoring * examples/src/iframe/index.mjs: refactor / simplify remove ScriptLoader stuff * Make hot-reload work with async functions * cleanup some animation examples * rework animation/layer-masks.mjs * bring animation examples into shape * prepare code for standalone html files for every example refactor classes into own files for reusing with less dependencies * refactor out DeviceSelector for standalone example component reusing * pass controlsObserver as prop into DeviceSelector * ControlLoader cleanup * refactor standalone example * fixes for remote server * make import map work for both local and remote * fix spineboy example * enable and simplify "normal" build process * fix thumbnail paths for web server like lighttpd * lint: ignore es6 version of playcanvas-spine.3.8.mjs * more build script simplification * turn /extras/ into playcanvas-extras package so rollup accepts it as proper link (npm link --save --dev playcanvas-extras ../extras) * fix some examples and paths for "npm run serve" * only import what's absolutely required * fix all physics examples * fix all animation/camera examples * convert user-interface examples * convert xr examples * convert input examples * convert sound examples * first batch of graphics examples conversion * 2nd batch of graphics examples... * use react-es6 in importmap and make paths easier to read * fix all LOADERS examples * UI: fix asset paths * fix animation examples * 3rd batch of GRAPHICS examples fixing (controls + paths) * fix more graphics examples * another batch of graphics fixes * 5th batch of GRAPHICS examples fixing * start fine-tuning of GRAPHICS examples * wheeew GRAPHICS examples are are done * make puppeteer work * move jsx.mjs into examples/src/app * don't add standalone .html's in this PR * general example fixing * align UI examples * fix mouse example * fix makeCamelCase * fix thumbnail generation * minify what's possible via example-data.mjs to circumvent terser() messing with functions * remove types.d.ts, add typedef instead * add basisPath/dracoPath * small cleanup/fix * fix read-dir.mjs * add getGlslangPath() and getTwgslPath() * fix bundle size issue in device-selector.mjs * Fix arkit.png path * simplify assetPath.mjs href + make it work in node * examples/scripts/example-data.mjs: Use ES6 module import as single source of truth for examples * thumbnail generation: modules are single source of truth for examples too * Lack of Chrome's WebGPU support on Linux * fix toKebabCase * Use of enablePolyfillFunctionCall() in two specific examples only * shorten some code * huge simplification of options handling, removing regex to parse function arguments etc. which is just brittle * fix some leftovers from last commit * replace handlebars template with type-safe ES6 template * bunch of cleanup * examples/src/importmap.js: add tweenjs * examples/src/assetPath.mjs: fix all pathes and simplify code * bunch of last issues i found with examples * ControlPanel: use jsx(...) * add generate-standalone-files.mjs to minimize bundle size towards absolute minimum for each example * fix asset paths * small layer mask refactor * actually use standalone .html's * fix controls/app.start in animation examples * code editor file test + type * better types for ControlPanel * simplify animation controls (cartesian / directional) * decrease example-data file size drastically, examples only load what is really required... * rename back to .tsx * rename back to .mjs * Guarantee that controls() has access to pc.app to render UI without being super defensive about it * add @tweenjs/tween.js via npm registry * immediate hot reload fixes * fix some examples * fix shader editing again and a bit of cleanup * Updates from #5563 * Add changes from #5562 * fix loaders.gl example + fix old React state for controls * make tween work in standalone version * fix pathes in thumbnail script * turn off debug * Remove posteffect-bloom.mjs and playcanvas-spine.3.8.mjs * remove <object> fallback for arkit.png * remove obsolete rollup targets * fix landscape / portrait mode, mostly working * rewrite functional CodeEditor into class-based component for easier state handling * always request files from example when displaying in different Monaco editors * make ministats button work * Fix orientationchange handler + make event handling nicer Fix generate-standalone-files.mjs to generate dist/iframe dir * oops fix issue introduced in last commit * remove obsolete file / comment * fix last issue from switching back to es5 version of spine lib * examples/misc/mini-stats.mjs: fix having two mini-stats instances in case of `static MINISTATS = true;` * cross-env for Windows compatibility * cleanup / type improvement * merge Martins PR * Make sure to resize iframe app when CodeEditor fetches new information and resizes itself * iframe example cleanup * Fix Null renderer MiniStats issue * npm install @playcanvas/pcui@latest * remove obsolete code, simplify example-directory generation * fix circular dependency of getOrientation * drop ministats-not-supported type of message/alert * Respect ENGINE_PATH and NODE_ENV again * simplify and reuse MiniStats showing logic to fix double rendering in MiniStats example * Refactor controls, remove reliance on `window` which confused rollup and caused crashes * `npm run build:thumbnails` starts its own serve process now * allow spaces in Examples search * Reflect Martins AreaPicker PR * Remove double material.depthWrite = false; * box -> cylinder * Update README.md * Set `NODE_ENV=development` for `npm run develop` * Load correct engine based on ENGINE_PATH.includes('.mjs') * Add polyfill to load ES5 scripts with ESM engine * Fix ready check for rendering Controls * loadScript: simplify code by preventing special case between UMD/ESM + fixing import bug * Fix cold start bug of: npm run build:thumbnails * Martins PR: MiniStats render on UI layer * rollup.config.js: check if ENGINE_PATH requires a dir or file copy watcher (mjs -> js) * Use ../src/index.js as default for NODE_ENV=development * rollup.config.js: implement `buildAndWatchStandaloneExamples` * Martins Reflection Planar fix * Fix scrollbar issue and bit of cleanup * Also build dist/iframe/playcanvas-extras.js (UMD) so `npm run develop` has live updates * Remove bunch of obsolete code (which was assigned to window for Controls, but we have a better way via params now) * Sticky device type selection * iframeUtils: cleanup + better typing + add hotReload event * index.mjs: remove window assignments * Move app destruction/hot-reload logic from UI into standalone examples * Add/use removeRedundantSpaces(...) on file contents to align all GLSL examples in Monaco * Fix active device display by making DeviceSelector a stateful component and simplify logic/exports of different parts * remove debug version of iframeEval * CodeEditor: fix undefined file during device change * Prevent WebGPU when example is known to crash (with console warning) * Fix cropped number input fields * Update mergeState functions to fix CodeEditor file-still-loading issue * Simplify / fix state in Example component * 'Picked WebGPU but example is not supported on WebGPU' + reuse WEBGPU_ENABLED property via `=== false` * Rewrite all todo JSDoc + few better types + remove two no-longer-used functions (jsxTry and appendReactToBody) * sidebar/example-data: remove some comments / clean-up * Change back to example file on example change * Prevent reload while still reloading * Fix resize of every example + simplify generated standalone files * remove @todo, using: miniStats?.destroy(); * npm install for package-lock.json sync * UI text TypeWriter example: add clearInterval for setInterval * position sound example: add resize code * detach "new Mouse" in two examples via app.on('destroy', ...) * Animation Locomotion: add document.removeEventListener("mousedown", ...) for event cleaning * UI Text Emojis: only one `WEBGPU_ENABLED = true` * six examples: static WEBGPU_ENABLED = false; // with reason * Make sure that React events into iframe can't trigger undefined-errors (destroy/show-ministats events) Remove two <div>'s (#app and #appInner which weren't even used) Stop exposing app into window * bring back outer divs (I mistakenly thought they were superfluous) * Monaco editor: show/hide minimap via Command Palette (F1) + save state in localStorage * Don't call app.destroy() twice * Simplify iframeEval into iframeReady, make it 100% fail-safe
- Loading branch information