\r\n\r\n \u003Cdiv class=\"wrapper\">\r\n \u003CHelloWorld msg=\"You did it!\" />\r\n\r\n \u003Cnav>\r\n \u003CRouterLink to=\"/\">Home\u003C/RouterLink>\r\n \u003CRouterLink to=\"/about\">About\u003C/RouterLink>\r\n \u003C/nav>\r\n \u003C/div>\r\n \u003C/header>\r\n\r\n \u003CRouterView />\r\n\u003C/template>\r\n\r\n\u003Cstyle scoped>\r\n\r\n\u003C/style>\r\n```\r\n\r\nAboutView\r\n```\r\n\u003Ctemplate>\r\n \u003Cdiv class=\"about\">\r\n \u003Ch1>This is an about page\u003C/h1>\r\n \u003Cdiv class=\"canvas\">\r\n \u003CTresCanvas>\r\n \u003C!-- Your scene here -->\r\n \u003C/TresCanvas>\r\n \u003C/div>\r\n \u003C/div>\r\n\u003C/template>\r\n\u003Cscript setup lang=\"ts\">\r\nimport { TresCanvas } from '@tresjs/core'\r\n\u003C/script>\r\n\u003Cstyle>\r\n@media (min-width: 1024px) {\r\n .about {\r\n min-height: 100vh;\r\n display: flex;\r\n align-items: center;\r\n }\r\n}\r\n.canvas {\r\n width: 100px;\r\n height: 100px;\r\n}\r\n\u003C/style>\r\n```\r\n\r\n### Reproduction\r\n\r\nhttps://stackblitz.com/edit/tresjs-minimal-reproduction\r\n\r\n### Steps to reproduce\r\n\r\n_No response_\r\n\r\n### System Info\r\n\r\n```shell\r\nSystem:\r\n OS: Linux 5.15 Ubuntu 22.04.4 LTS 22.04.4 LTS (Jammy Jellyfish)\r\n CPU: (8) x64 13th Gen Intel(R) Core(TM) i7-1355U\r\n Memory: 1.70 GB / 7.76 GB\r\n Container: Yes\r\n Shell: 5.1.16 - /bin/bash\r\n Binaries:\r\n Node: 20.18.0 - ~/.nvm/versions/node/v20.18.0/bin/node\r\n npm: 11.0.0 - ~/.nvm/versions/node/v20.18.0/bin/npm\r\n npmPackages:\r\n @tresjs/cientos: ^4.0.3 => 4.0.3 \r\n @tresjs/core: ^4.3.2 => 4.3.2 \r\n vite: ~6.0.6 => 6.0.6\r\n```\r\n\r\n\r\n### Used Package Manager\r\n\r\nnpm\r\n\r\n### Code of Conduct\r\n\r\n- [X] I agree to follow this project's [Code of Conduct](https://github.com/Tresjs/tres/blob/main/CODE_OF_CONDUCT.md)\r\n- [X] Read the [Contributing Guidelines](https://github.com/Tresjs/tres/blob/main/CONTRIBUTING.md).\r\n- [X] Read the [docs](https://tresjs.org/guide).\r\n- [X] Check that there isn't [already an issue](https://github.com/tresjs/tres/issues) that reports the same bug to avoid creating a duplicate.\r\n- [X] The provided reproduction is a [minimal reproducible example](https://stackoverflow.com/help/minimal-reproducible-example) of the bug.",[2887],{"name":2868,"color":2869},905,"tres","I get an error when using TresCanvas. Like this .. ( onUnmounted is called when there is no active component instance to be associated with. Lifecycle injection APIs can... )","2025-02-08T10:41:31Z","https://github.com/Tresjs/tres/issues/905",0.7393271,{"description":2895,"labels":2896,"number":217,"owner":2877,"repository":2906,"state":2879,"title":2907,"updated_at":2908,"url":2909,"score":2910},"### Description\n\nAfter the initial, what about creating abstraction/component like in cientos but that only works with physics\n\n### Suggested solution\n\nLike Attractor in r3f\n\n### Alternative\n\n_No response_\n\n### Additional context\n\n_No response_\n\n### Validations\n\n- [X] I agree to follow this project's [Code of Conduct](https://github.com/Tresjs/rapier/blob/main/CODE_OF_CONDUCT.md)\n- [X] Read the [Contributing Guidelines](https://github.com/Tresjs/rapier/blob/main/CONTRIBUTING.md).\n- [X] Read the [docs](https://rapier.tresjs.org/guide).\n- [X] Check that there isn't [already an issue](https://github.com/tresjs/rapier/issues) that reports the same bug to avoid creating a duplicate.",[2897,2900,2903],{"name":2898,"color":2899},"feature","c2e0c6",{"name":2901,"color":2902},"investigation","D03599",{"name":2904,"color":2905},"p2-nice-to-have","D4C5F9","rapier","Cloth simmulator","2024-10-04T10:54:33Z","https://github.com/Tresjs/rapier/issues/135",0.7430763,{"description":2912,"labels":2913,"number":2921,"owner":2877,"repository":2889,"state":2879,"title":2922,"updated_at":2923,"url":2924,"score":2925},"### Description\n\nWebGPU [Three.js r171](https://github.com/mrdoob/three.js/releases) has been released and it’s a major milestone for WebGPU integration with third-party libraries such as React Three Fiber and bundlers like Vite or Next.js. We can now do this with zero configuration:\r\n\r\nThree.js Vanilla Three.js\r\n\r\n```ts\r\nimport * as THREE from 'three'\r\nimport { WebGPURenderer } from 'three/webgpu'\r\n \r\nconst renderer = new WebGPURenderer()\r\n```\r\n\r\nR3F\r\n\r\n```ts\r\nimport { Canvas } from '@react-three/fiber'\r\nimport { WebGPURenderer } from 'three/webgpu'\r\n \r\n\u003CCanvas gl={canvas => new WebGPURenderer({ canvas })}>\r\n```\n\n### Suggested solution\n\nEnable a `renderer` prop to override the renderer, restricted to canvas-based WebGL/WebGPU renderers.\r\n\r\n```vue\r\n\u003Cscript setup>\r\nimport { WebGPURenderer } from 'three/webgpu'\r\n\u003C/script>\r\n\r\n\u003Ctemplate>\r\n \u003CTresCanvas :renderer=\"WebGPURenderer\" />\r\n\u003C/template>\r\n```\n\n### Alternative\n\n_No response_\n\n### Additional context\n\n_No response_\n\n### Validations\n\n- [X] I agree to follow this project's [Code of Conduct](https://github.com/Tresjs/tres/blob/main/CODE_OF_CONDUCT.md)\n- [X] Read the [Contributing Guidelines](https://github.com/Tresjs/tres/blob/main/CONTRIBUTING.md).\n- [X] Read the [docs](https://tresjs.org/guide).\n- [X] Check that there isn't [already an issue](https://github.com/tresjs/tres/issues) that reports the same bug to avoid creating a duplicate.",[2914,2915,2918],{"name":2898,"color":2899},{"name":2916,"color":2917},"p3-significant","2C78E3",{"name":2919,"color":2920},"v5","EFC959",883,"WebGPU support","2025-02-06T09:35:42Z","https://github.com/Tresjs/tres/issues/883",0.74707377,{"description":2927,"labels":2928,"number":2929,"owner":2877,"repository":2889,"state":2879,"title":2930,"updated_at":2931,"url":2932,"score":2933},"### Describe the bug\n\nRan into this issue when trying to integrate TresJS in my Astro project. To verify that it wasn't me doing something stupid, I switched to Alvaro's [tres-astro repository](https://github.com/alvarosabu/tres-astro) from the \"How to add 3D to Astro using TresJS\" video. I'm running into the same warning there. I also upgraded to the latest astro in the tres-astro repository, but still seeing the same error. As far as I can tell, the 3D model does show up. \r\n\r\nRemoving the TheExperience component and just trying to use TresCanvas also triggers the same warning. \r\n\r\n```\r\n(index):224 [Vue warn]: onUnmounted is called when there is no active component instance to be associated with. \r\nLifecycle injection APIs can only be used during execution of setup(). \r\nIf you are using async setup(), make sure to register lifecycle hooks before the first await statement.\r\n```\r\n\r\nCall Stack as shown in Edge \r\n| Method | | File|\r\n| --- | --- | --- |\r\n| warn$1 | @ | runtime-core.esm-bundler.js:51|\r\n| injectHook | @ | runtime-core.esm-bundler.js:2808|\r\n| (anonymous) | @ | runtime-core.esm-bundler.js:2815|\r\n| yr | @ | tres.js:831|\r\n| _r | @ | tres.js:889|\r\n| (anonymous) | @ | tres.js:1058|\r\n| (anonymous) | @ | index.mjs:71|\r\n| trigger | @ | index.mjs:71|\r\n| c | @ | tres.js:944|\r\n| setTimeout | | |\r\n| c | @ | tres.js:944|\r\n| wr | @ | tres.js:949|\r\n| yt | @ | tres.js:972|\r\n| br | @ | tres.js:1056|\r\n| (anonymous) | @ | tres.js:1638|\r\n| (anonymous) | @ | runtime-core.esm-bundler.js:2815|\r\n| callWithErrorHandling | @ | runtime-core.esm-bundler.js:199|\r\n| callWithAsyncErrorHandling | @ | runtime-core.esm-bundler.js:206|\r\n| hook.__weh.hook.__weh | @ | runtime-core.esm-bundler.js:2795|\r\n| flushPostFlushCbs | @ | runtime-core.esm-bundler.js:385|\r\n| hydrate2 | @ | runtime-core.esm-bundler.js:1675|\r\n| mount | @ | runtime-core.esm-bundler.js:3939|\r\n| app.mount | @ | runtime-dom.esm-bundler.js:1786|\r\n| (anonymous) | @ | client.js:45|\r\n| await in (anonymous) | | |\r\n| (anonymous) | @ | (index):224|\r\n| e | @ | (index):224|\r\n| await in e | | |\r\n| start | @ | (index):224|\r\n| childrenConnectedCallback | @ | (index):224|\r\n| await in childrenConnectedCallback | | |\r\n| e | @ | (index):224|\r\n| (anonymous) | @ | (index):224|\n\n### Reproduction\n\nhttps://github.com/alvarosabu/tres-astro\n\n### Steps to reproduce\n\nClone the repository \r\nrm the package-lock.json file \r\nnpm install\r\nnpm run dev\n\n### System Info\n\n```shell\nnpx envinfo --system --npmPackages '{vite,@tresjs/*,three,vue,@astrojs/*}' --binaries\r\n --browsers --npmGlobalPackages '{astro}'\r\n\r\n System:\r\n OS: Windows 11 10.0.22631\r\n CPU: (28) x64 Intel(R) Core(TM) i7-14700K\r\n Memory: 40.84 GB / 63.77 GB\r\n Binaries:\r\n Node: 20.11.1 - C:\\Program Files\\nodejs\\node.EXE\r\n Yarn: 1.22.19 - C:\\Program Files (x86)\\Yarn\\bin\\yarn.CMD\r\n npm: 10.4.0 - C:\\Program Files\\nodejs\\npm.CMD\r\n Browsers:\r\n Edge: Chromium (127.0.2651.74)\r\n Internet Explorer: 11.0.22621.3527\r\n npmPackages:\r\n @astrojs/mdx: ^3.1.4 => 3.1.9\r\n @astrojs/rss: ^4.0.7 => 4.0.10\r\n @astrojs/sitemap: ^3.1.6 => 3.2.1\r\n @astrojs/vue: ^4.5.0 => 4.5.3\r\n @tresjs/cientos: ^4.0.0 => 4.0.3\r\n @tresjs/core: ^4.2.7 => 4.3.1\r\n three: ^0.167.1 => 0.167.1\r\n vue: ^3.4.38 => 3.5.13\n```\n\n\n### Used Package Manager\n\nnpm\n\n### Code of Conduct\n\n- [X] I agree to follow this project's [Code of Conduct](https://github.com/Tresjs/tres/blob/main/CODE_OF_CONDUCT.md)\n- [X] Read the [Contributing Guidelines](https://github.com/Tresjs/tres/blob/main/CONTRIBUTING.md).\n- [X] Read the [docs](https://tresjs.org/guide).\n- [X] Check that there isn't [already an issue](https://github.com/tresjs/tres/issues) that reports the same bug to avoid creating a duplicate.\n- [X] The provided reproduction is a [minimal reproducible example](https://stackoverflow.com/help/minimal-reproducible-example) of the bug.",[],886,"Using TresJS with Astro : [Vue warn]: onUnmounted is called when there is no active component instance to be associated with...","2024-12-20T10:08:26Z","https://github.com/Tresjs/tres/issues/886",0.751667,{"description":2935,"labels":2936,"number":2937,"owner":2877,"repository":2878,"state":2879,"title":2938,"updated_at":2939,"url":2940,"score":2941},"### Describe the bug\r\n\r\n* When the `\u003CEnvironment />` component is unmounted, reflections/lighting are not updated.\r\n* Some props – e.g., `blur` – do not have an effect.\r\n\r\n### Reproduction\r\n\r\nhttps://stackblitz.com/edit/tresjs-basic-ucrrurnf?file=src%2Fcomponents%2FTheExperience.vue",[],569,"Environment: Lighting/reflections do not disappear when component is unmounted; props do not work","2024-12-19T16:37:20Z","https://github.com/Tresjs/cientos/issues/569",0.7587194,{"description":2943,"labels":2944,"number":2947,"owner":2877,"repository":2878,"state":2879,"title":2948,"updated_at":2949,"url":2950,"score":2951},"### Description\n\nAs a developer using TresJS, I would like an equivalent of Three.js's `instancedMesh` to improve performance.\r\n\r\n\n\n### Suggested solution\n\n[Drei's `\u003CInstances />`](https://github.com/pmndrs/drei/blob/514be0d1ff88b43c07cf246da9dca3517ea14d9a/src/core/Instances.tsx#L22)\n\n### Alternative\n\n_No response_\n\n### Additional context\n\n_No response_\n\n### Validations\n\n- [X] I agree to follow this project's [Code of Conduct](https://github.com/Tresjs/cientos/blob/main/CODE_OF_CONDUCT.md)\n- [X] Read the [Contributing Guidelines](https://github.com/Tresjs/cientos/blob/main/CONTRIBUTING.md).\n- [X] Read the [docs](https://cientos.tresjs.org/guide).\n- [X] Check that there isn't [already an issue](https://github.com/tresjs/cientos/issues) that reports the same bug to avoid creating a duplicate.",[2945,2946],{"name":2898,"color":2899},{"name":2904,"color":2905},342,"Equivalent of Three.js's `InstancedMesh`","2024-04-02T09:44:50Z","https://github.com/Tresjs/cientos/issues/342",0.7632855,{"description":2953,"labels":2954,"number":2962,"owner":2877,"repository":2878,"state":2879,"title":2963,"updated_at":2964,"url":2965,"score":2966},"### Description\r\n\r\nAs a dev using Cientos, I don't want to have to wrap components in `\u003CSuspense>` just because they use a texture internally. \r\n\r\n### Suggested solution\r\n\r\nI suggest we provide a [function like `useTexture`](https://tresjs.org/examples/load-textures.html#using-usetexture), but one that:\r\n\r\n* returns a `ref` (or `ref`s) whose initial value is a 1-pixel transparent DataTexture\r\n* updates the `ref` once the image is loaded\r\n\r\nThis will allow us to avoid `await`ing in setup code.\r\n\r\n### Alternative\r\n\r\nAlternatively, we could keep the current `useTexture` and provide a separate `useEmptyTexture` to be used like\r\n\r\n```ts\r\nconst t:Ref\u003CTexture> = useEmptyTexture()\r\nuseTexture({map:'example.org/texture.png'}).then((obj) => t.value = obj.map)\r\n\r\nwatch(t, () => { /* do something */ })\r\n```\r\n\r\n### Additional context\r\n\r\nI'm adding a texture prop to `\u003CSparkles />` and I don't want to force users to wrap the component in a `\u003CSuspense />`.\r\n\r\nI looked for established patterns and found that `\u003CSmoke />` loads textures, but requires `\u003CSuspense />`. I think we can improve the DX by removing that requirement for users *and* providing a standard-ish way for components to avoid `await`ing.\r\n\r\n### Validations\r\n\r\n- [X] I agree to follow this project's [Code of Conduct](https://github.com/Tresjs/cientos/blob/main/CODE_OF_CONDUCT.md)\r\n- [X] Read the [Contributing Guidelines](https://github.com/Tresjs/cientos/blob/main/CONTRIBUTING.md).\r\n- [X] Read the [docs](https://cientos.tresjs.org/guide).\r\n- [X] Check that there isn't [already an issue](https://github.com/tresjs/cientos/issues) that reports the same bug to avoid creating a duplicate.",[2955,2958,2961],{"name":2956,"color":2957},"good first issue","7057ff",{"name":2959,"color":2960},"help wanted","008672",{"name":2916,"color":2917},264,"Components with textures shouldn't require `\u003CSuspense>`","2024-11-25T09:29:04Z","https://github.com/Tresjs/cientos/issues/264",0.76405036,{"description":2968,"labels":2969,"number":2974,"owner":2877,"repository":2889,"state":2879,"title":2975,"updated_at":2976,"url":2977,"score":2978},"### Describe the bug\r\n\r\nDue to the debounced ref introduced in #512, the canvas only renders once the resize animation has finished.\r\n\r\nHow it's supposed to work\r\n\r\n\r\nIt can be fixed by moving renderer size update and the camera projection matrix update to before rendering or using useFps composable from vueuse to dynamically calculate debounceTime\r\n\r\n### Reproduction\r\n\r\nMonitor with refresh rate above 100 hz needed\r\n\r\nhttps://stackblitz.com/edit/stackblitz-starters-jtmew9?file=src%2FApp.vue\r\n### Steps to reproduce\r\n\r\nHave container of TresCanvas resize continuously. \r\n\r\n### System Info\r\n\r\n```shell\r\nSystem:\r\n OS: Linux 5.15 Ubuntu 22.04.4 LTS 22.04.4 LTS (Jammy Jellyfish)\r\n CPU: (12) x64 AMD Ryzen 5 5600X 6-Core Processor\r\n Memory: 12.28 GB / 15.58 GB\r\n Container: Yes\r\n Shell: 5.8.1 - /usr/bin/zsh\r\n Binaries:\r\n Node: 22.8.0 - ~/.asdf/installs/nodejs/22.8.0/bin/node\r\n npm: 10.8.2 - ~/.asdf/plugins/nodejs/shims/npm\r\n pnpm: 9.9.0 - ~/.local/share/pnpm/pnpm\r\n npmPackages:\r\n @tresjs/cientos: ^4.0.2 => 4.0.2 \r\n @tresjs/nuxt: ^3.0.7 => 3.0.7\r\n```\r\n\r\n\r\n### Used Package Manager\r\n\r\npnpm\r\n\r\n### Code of Conduct\r\n\r\n- [X] I agree to follow this project's [Code of Conduct](https://github.com/Tresjs/tres/blob/main/CODE_OF_CONDUCT.md)\r\n- [X] Read the [Contributing Guidelines](https://github.com/Tresjs/tres/blob/main/CONTRIBUTING.md).\r\n- [X] Read the [docs](https://tresjs.org/guide).\r\n- [X] Check that there isn't [already an issue](https://github.com/tresjs/tres/issues) that reports the same bug to avoid creating a duplicate.\r\n- [X] The provided reproduction is a [minimal reproducible example](https://stackoverflow.com/help/minimal-reproducible-example) of the bug.",[2970,2971],{"name":2868,"color":2869},{"name":2972,"color":2973},"p3-minor-bug","F28C37",848,"Render issue with continuous resize animation","2024-10-18T20:46:48Z","https://github.com/Tresjs/tres/issues/848",0.76475996,{"description":2980,"labels":2981,"number":2986,"owner":2877,"repository":2889,"state":2987,"title":2988,"updated_at":2989,"url":2990,"score":2991},"**Describe the bug**\r\nCould not resolve \"@vueuse/core\" on installation, since it's a peerDependency set as external, the user would need to add it separately\r\n\r\n**Reproduction**\r\n[Stackblitz](https://stackblitz.com/edit/tresjs-basic?file=README.md)\r\n\r\n\r\n**System Info**\r\nOutput of `npx envinfo --system --npmPackages '{vite,@tresjs/*, three, vue}' --binaries --browsers` \r\n\r\n```\r\n System:\r\n OS: Linux 5.0 undefined\r\n CPU: (3) x64 Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz\r\n Memory: 0 Bytes / 0 Bytes\r\n Shell: 1.0 - /bin/jsh\r\n Binaries:\r\n Node: 16.14.2 - /usr/local/bin/node\r\n Yarn: 1.22.19 - /usr/local/bin/yarn\r\n npm: 7.17.0 - /usr/local/bin/npm\r\n npmPackages:\r\n @tresjs/core: ^1.6.0 => 1.6.0 \r\n vite: ^4.1.0 => 4.1.1 \r\n```\r\n",[2982,2983],{"name":2868,"color":2869},{"name":2984,"color":2985},"pending-triage","97A4FE",96,"closed","Could not resolve \"@vueuse/core\" on Installation","2023-02-06T18:17:07Z","https://github.com/Tresjs/tres/issues/96",0.7342566,["Reactive",2993],{},["Set"],["ShallowReactive",2996],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$f4B07F7ZTxa4JChpFdFbGy1pwJyVuI8FRwx4tQ6vgDew":-1},"/Tresjs/cientos/296"]