\r\n\r\nWe should accept an array too\r\n\u003CTresMesh v-layer:enable=\"[1, 2, 3]\" />\r\n\r\nAnd of course other methods like: disable, test (maybe with a console.log), toggle\r\n\r\nFor more info, check:\r\nhttps://threejs.org/docs/index.html?q=layers#api/en/core/Layers\r\n\n\n### Alternative\n\nAny other alternative is considered\n\n### Additional context\n\nAs we discuss, you can achieve this by using template ref, but sometimes is just too much code, this Issue will could improve the UX\r\n\r\nFollowing the directives pattern (to make our user easier)\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.",[2867,2870],{"name":2868,"color":2869},"feature","c2e0c6",{"name":2871,"color":2872},"p2-nice-to-have","D4C5F9",543,"Tresjs","tres","open","v-layer directive","2024-03-30T15:32:13Z","https://github.com/Tresjs/tres/issues/543",0.6816712,{"description":2882,"labels":2883,"number":2887,"owner":2874,"repository":2875,"state":2876,"title":2888,"updated_at":2889,"url":2890,"score":2891},"Atm the docs don't have search functionality, as we grow on features, it's important to have it\n\nhttps://vitepress.dev/reference/default-theme-search",[2884],{"name":2885,"color":2886},"docs","0075ca",152,"Add Algolia Search to docs","2024-03-28T11:19:27Z","https://github.com/Tresjs/tres/issues/152",0.7082386,{"description":2893,"labels":2894,"number":2901,"owner":2874,"repository":2875,"state":2876,"title":2902,"updated_at":2903,"url":2904,"score":2905},"**Is your feature request related to a problem? Please describe.**\r\nCurrently, the [toNonIndexed](https://threejs.org/docs/index.html#api/en/core/BufferGeometry.toNonIndexed) method \r\ndoesn't work\r\n\r\n**Describe the solution you'd like**\r\nI would like to manipulate the vertex by nonIndexed geometries\r\n\r\n**Suggested solution**\r\nadd a new prop to all geometries\r\nEj:\r\n\u003CBoxGeometry :args=\"[1,1,1, 10,10,10]\" toNonIndexed />\r\n\r\n**Additional context**\r\nThis is useful is you want to manipulate the vertex individually, in the vertex shader\r\n",[2895,2898],{"name":2896,"color":2897},"question","d876e3",{"name":2899,"color":2900},"waiting for author","B145BC",230,"Support inline method in geometries ( EJ: toNonIndexed , setFromPoints)","2025-02-21T16:45:38Z","https://github.com/Tresjs/tres/issues/230",0.7115626,{"description":2907,"labels":2908,"number":2913,"owner":2874,"repository":2914,"state":2876,"title":2915,"updated_at":2916,"url":2917,"score":2918},"### Description\r\n\r\nAs a dev using TresJS, I would like to have an abstraction for [Drag Controls](https://threejs.org/docs/#examples/en/controls/DragControls)\r\n\r\n\r\n\r\n### Suggested solution\r\n\r\nSimilar to https://github.com/pmndrs/drei?tab=readme-ov-file#dragcontrols\r\nhttps://threejs.org/examples/?q=drag#misc_controls_drag\r\n\r\n\r\n### Alternative\r\n\r\n_No response_\r\n\r\n### Additional context\r\n\r\n_No response_\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.",[2909,2910],{"name":2868,"color":2869},{"name":2911,"color":2912},"p3-significant","2C78E3",455,"cientos","Drag Controls","2024-11-27T10:47:00Z","https://github.com/Tresjs/cientos/issues/455",0.715596,{"description":2920,"labels":2921,"number":2927,"owner":2874,"repository":2875,"state":2876,"title":2928,"updated_at":2929,"url":2930,"score":2931},"### 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.",[2922,2923,2924],{"name":2868,"color":2869},{"name":2911,"color":2912},{"name":2925,"color":2926},"v5","EFC959",883,"WebGPU support","2025-02-06T09:35:42Z","https://github.com/Tresjs/tres/issues/883",0.7317705,{"description":2933,"labels":2934,"number":2940,"owner":2874,"repository":2914,"state":2876,"title":2941,"updated_at":2942,"url":2943,"score":2944},"### Describe the bug\n\nWhen using the default FBXLoader from threejs the userData field has way more data.\r\nI would expect these fields to have the same amount of data ?\r\nI'm missing `originalName` and `unitScaleFactor`\r\n\r\nUsing the [Threejs Editor](https://threejs.org/editor/) you can import any fbxfile and see the extra userData \n\n### Reproduction\n\nhttps://threejs.org/editor/\n\n### Steps to reproduce\n\nFBXLoader from threejs\r\n```\r\nimport { FBXLoader } from 'three/addons/loaders/FBXLoader'\r\nconst fbxLoader = new FBXLoader()\r\nfbxLoader.load(fbx_path, (object) => {\r\n console.log(object.userData)\r\n }\r\n)\r\n//log\r\noriginalName: \"119565\"\r\ntransformData: {\r\n eulerOrder: \"ZYX\"\r\n inheritType: 1\r\n parentMatrix: _Matrix4 {elements: Array(16)}\r\n parentMatrixWorld: _Matrix4 {elements: Array(16)}\r\n rotation: (3) [0.0000025044780654876655, -0, 0]\r\n},\r\nunitScaleFactor: 0.1\r\n```\r\n\r\nUsage with cientos\r\n```\r\nimport { useFBX } from '@tresjs/cientos'\r\n\r\nconst model = await useFBX('fbx_path')\r\n\r\nconsole.log(model.userData)\r\n\r\n//or\r\n\r\nimport { FBXModel } from '@tresjs/cientos'\r\n\r\nconst modelRef = ref(null)\r\n\r\nwatch(modelRef, (model) => {\r\n console.log(model.value)\r\n})\r\n\u003Ctemplate>\r\n \u003CFBXModel\r\n ref=\"modelRef\"\r\n :path=\"fbx_path\"\r\n />\r\n\u003C/template>\r\n\r\n//both logs from cientos\r\ntransformData: {\r\n inheritType: 1, \r\n eulerOrder: 'ZYX', \r\n rotation: Array(3), \r\n parentMatrix: _Matrix4, \r\n parentMatrixWorld: _Matrix4\r\n}\r\ntres__name: \"Group\"\r\n```\r\n\n\n### System Info\n\n```shell\nSystem:\r\n OS: macOS 14.3.1\r\n CPU: (10) arm64 Apple M1 Pro\r\n Memory: 90.00 MB / 16.00 GB\r\n Shell: 5.9 - /bin/zsh\r\n Binaries:\r\n Node: 18.18.0 - ~/.nvm/versions/node/v18.18.0/bin/node\r\n Yarn: 1.22.21 - ~/.nvm/versions/node/v18.18.0/bin/yarn\r\n npm: 9.8.1 - ~/.nvm/versions/node/v18.18.0/bin/npm\r\n Browsers:\r\n Chrome: 125.0.6422.112\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/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.\n- [X] The provided reproduction is a [minimal reproducible example](https://stackoverflow.com/help/minimal-reproducible-example) of the bug.",[2935,2938],{"name":2936,"color":2937},"needs reproduction","16309A",{"name":2899,"color":2939},"DEEAB8",429,"FBXLoader: Missing data from userData field ","2024-09-12T20:08:31Z","https://github.com/Tresjs/cientos/issues/429",0.73718834,{"description":2946,"labels":2947,"number":2950,"owner":2874,"repository":2875,"state":2876,"title":2951,"updated_at":2952,"url":2953,"score":2954},"### Description\r\n\r\nAs a developer using TresJS, I want to have a `\u003CPortal>` component that can contain a separate `Scene` and `context`.\r\n\r\n### Suggested solution\r\n\r\nProvide a `\u003CPortal>` component similar to R3F.\r\n\r\n### Requirements\r\n\r\n- [ ] Add override-able pointer to `TresContext` (Also add as prop to TresCanvas: see #581 ); use vanilla `THREE.Vector2`, accept `Vector2` and `UsePointerOptions` as TresCanvas prop\r\n- [ ] Make these fields on `TresContext` swappable and (in some case injectable by the user): scene, camera, cameras, controls, raycaster, eventManager, sizes\r\n\r\n### Validations\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.",[2948,2949],{"name":2911,"color":2912},{"name":2925,"color":2926},789,"Portal","2025-02-06T09:59:01Z","https://github.com/Tresjs/tres/issues/789",0.74278986,{"description":2956,"labels":2957,"number":2958,"owner":2874,"repository":2875,"state":2959,"title":2960,"updated_at":2961,"url":2962,"score":2963},"### Describe the bug\n\nOn v-for loop to add dynamic objects to trescanvas I need to get parent object entity. But is dispatching click event on every loop.\r\n\n\n### Reproduction\n\nhttps://stackblitz.com/edit/tresjs-basic-nqq9sk?file=src%2Fcomponents%2FTheExperience.vue\n\n### Steps to reproduce\n\nOn top left screen is a counter of how many times is @click event launched.\r\n\r\n\r\n\r\nYou can add more elements in entities array and the click events are always de length of array.\r\n\r\nIf you replace @click=\"onClick(entity)\" with @click=\"onClick()\". You can now see clicked events are 0, and clicking on line is working.\r\n\r\n```\r\n\u003CTresCanvas>\r\n \u003CLine2\r\n :points=\"entities[0].points\"\r\n :line-width=\"2\"\r\n :color=\"entities[0].visible ? entities[0].color : '#ddd'\"\r\n @click=\"console.log('click', entities[0])\"\r\n />\r\n\u003C/TresCanvas>\r\n```\n\n### System Info\n\n```shell\nSystem:\r\n OS: Windows 11 10.0.22621\r\n CPU: (8) x64 AMD Ryzen 5 3400G with Radeon Vega Graphics \r\n Memory: 16.27 GB / 31.91 GB\r\n Binaries:\r\n Node: 20.9.0 - C:\\Program Files\\nodejs\\node.EXE\r\n npm: 10.1.0 - C:\\Program Files\\nodejs\\npm.CMD\r\n Browsers:\r\n Edge: Chromium (119.0.2151.44)\r\n Internet Explorer: 11.0.22621.1\r\n npmPackages:\r\n @tresjs/cientos: ^3.6.0 => 3.6.0 \r\n @tresjs/nuxt: ^1.2.2 => 1.2.2 \r\n @tresjs/post-processing: ^0.5.0 => 0.5.0\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.",[],460,"closed","v-for and @click event dispatch on every item","2023-12-13T08:40:11Z","https://github.com/Tresjs/tres/issues/460",0.6932814,{"description":2965,"labels":2966,"number":1499,"owner":2874,"repository":2914,"state":2959,"title":2970,"updated_at":2971,"url":2972,"score":2973},"### Describe the bug\n\nUsing ScrollControls on the Nuxt playground gets broken \r\n\r\n\r\nhttps://github.com/Tresjs/cientos/assets/4699008/1a739f12-df88-4235-9793-f9859520c2e7\r\n\r\n\n\n### Reproduction\n\nhttps://deploy-preview-52--tresjs-playground.netlify.app/experiments/scroll-controls\n\n### Steps to reproduce\n\n_No response_\n\n### System Info\n\n```shell\nSystem:\r\n OS: macOS 13.4.1\r\n CPU: (8) arm64 Apple M1 Pro\r\n Memory: 100.84 MB / 16.00 GB\r\n Shell: 5.9 - /bin/zsh\r\n Binaries:\r\n Node: 18.14.1 - ~/.nvm/versions/node/v18.14.1/bin/node\r\n Yarn: 1.22.19 - /usr/local/bin/yarn\r\n npm: 9.3.1 - ~/.nvm/versions/node/v18.14.1/bin/npm\r\n Browsers:\r\n Brave Browser: 114.1.52.130\r\n Chrome: 114.0.5735.198\r\n Firefox: 114.0.2\r\n Safari: 16.5.1\r\n npmPackages:\r\n @tresjs/cientos: 2.3.0 => 2.3.0 \r\n @tresjs/core: ^2.4.0 => 2.4.0 \r\n @tresjs/nuxt: 1.0.0 => 1.0.0 \r\n @tresjs/post-processing: ^0.3.0 => 0.3.0\n```\n\n\n### Used Package Manager\n\npnpm\n\n### Code of Conduct\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.\n- [X] The provided reproduction is a [minimal reproducible example](https://stackoverflow.com/help/minimal-reproducible-example) of the bug.",[2967],{"name":2968,"color":2969},"bug","d73a4a","ScrollControls not working correctly on Nuxt ","2023-07-12T06:05:12Z","https://github.com/Tresjs/cientos/issues/129",0.7113814,{"description":2975,"labels":2976,"number":2901,"owner":2874,"repository":2914,"state":2959,"title":2981,"updated_at":2982,"url":2983,"score":2905},"### Describe the bug\r\n\r\nThe guide page at:\r\n\r\nhttps://cientos.tresjs.org/guide/staging/contact-shadows.html\r\n\r\nthrows an error:\r\n\r\n```\r\nUncaught (in promise) TypeError: \"position\" is read-only\r\n```\r\n\r\nThis appears related to `ContactShadows` `helper` prop:\r\n\r\n* When `true`, the error is thrown. \r\n* When`false`, the error is not thrown.\r\n\r\n### Reproduction\r\n\r\nhttps://stackblitz.com/edit/tresjs-basic-pfyd2g?file=src%2Fcomponents%2FTheExperience.vue\r\n\r\n### Steps to reproduce\r\n\r\n* Open the [StackBlitz](https://stackblitz.com/edit/tresjs-basic-pfyd2g?file=src%2Fcomponents%2FTheExperience.vue) or open the [guide](https://cientos.tresjs.org/guide/staging/contact-shadows.html).\r\n* Check the browser console.\r\n\r\n### System Info\r\n\r\n```shell\r\nSystem:\r\n OS: macOS 13.1\r\n CPU: (8) arm64 Apple M1\r\n Memory: 102.31 MB / 8.00 GB\r\n Shell: 5.8.1 - /bin/zsh\r\n Binaries:\r\n Node: 20.5.1 - /opt/homebrew/bin/node\r\n npm: 9.8.0 - /opt/homebrew/bin/npm\r\n pnpm: 8.6.5 - /opt/homebrew/bin/pnpm\r\n Browsers:\r\n Chrome: 116.0.5845.187\r\n Safari: 16.2\r\n npmPackages:\r\n @tresjs/core: ^3.2.1 => 3.2.1 \r\n @tresjs/eslint-config-vue: ^0.1.1 => 0.1.1 \r\n vite: ^4.4.9 => 4.4.9\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/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.\r\n- [X] The provided reproduction is a [minimal reproducible example](https://stackoverflow.com/help/minimal-reproducible-example) of the bug.",[2977,2978],{"name":2968,"color":2969},{"name":2979,"color":2980},"p3-minor-bug","F28C37","ContactShadows demo throws error","2024-11-24T10:07:24Z","https://github.com/Tresjs/cientos/issues/230",["Reactive",2985],{},["Set"],["ShallowReactive",2988],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$fxS28MzZSztRmU29yxIs82lpUFJPaEJdduwko2AACPiU":-1},"/Tresjs/tres/561"]