\r\n\r\nAs example\n\n### Alternative\n\nFeel free to suggest other alternatives\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.",[2883],{"name":2884,"color":2885},"good first issue","7057ff",209,"Global audio component","2023-10-05T21:05:09Z","https://github.com/Tresjs/cientos/issues/209",0.6983638,{"description":2892,"labels":2893,"number":2900,"owner":2853,"repository":2854,"state":2868,"title":2901,"updated_at":2902,"url":2903,"score":2904},"### Description\n\nAs a developer trying to respond to issues filed against the TresJS core, I would like to have a more significant portion of /src/core/nodeOps.ts covered by unit tests.\r\n\r\nThis will allow us to respond more quickly to issues filed against the core, and to modify the core with more confidence and fewer regressions.\r\n\r\nHere's where `pnpm coverage` puts us currently.\r\n\r\n```\r\nFile | % Stmts | % Branch | % Funcs | % Lines |\r\n nodeOps.ts | 48.49 | 37.14 | 26.66 | 48.49 |\r\n```\n\n### Suggested solution\n\nImprove test coverage of core functionality.\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.",[2894,2897],{"name":2895,"color":2896},"test","2A6996",{"name":2898,"color":2899},"p3-significant","2C78E3",631,"Better test coverage for core","2024-04-26T21:14:14Z","https://github.com/Tresjs/tres/issues/631",0.71343577,{"description":2906,"labels":2907,"number":2914,"owner":2853,"repository":2854,"state":2868,"title":2915,"updated_at":2916,"url":2917,"score":2918},"### Describe the bug\n\nI tried writing this code into `Tresjs v 4.0.2` I think this issue and issue #727 have a common cause\r\n```vue\r\n \u003CTresGroup>\r\n \u003CTresMesh\r\n :position=\"[0, 0, 0]\"\r\n @click=\"onClick\"\r\n @double-click=\"onDoubleClick\"\r\n @pointer-enter=\"onPointerEnter\"\r\n @pointer-leave=\"onPointerLeave\"\r\n @pointer-move=\"onPointerMove\"\r\n @context-menu=\"onContextMenu\"\r\n @pointer-missed=\"onPointerMissed\"\r\n >\r\n \u003CTresBoxGeometry :args=\"[1, 1, 1]\" />\r\n \u003CTresMeshToonMaterial color=\"#efefef\" />\r\n \u003C/TresMesh>\r\n \u003C/TresGroup>\r\n```\r\nOnly `@pointer-missed` has been triggered during this process\r\n\r\nhttps://github.com/Tresjs/tres/assets/59913119/8ca05964-6e9d-4443-a1d8-7e543aebb5fe\r\n\r\n\n\n### Reproduction\n\nhttps://stackblitz.com/~/github.com/hexianWeb/starter\n\n### Steps to reproduce\n\nswitch the branch to the `bug` branch, or just copy this code into `TheExperience.vue`\r\n```vue \r\n \u003CTresGroup>\r\n \u003CTresMesh\r\n :position=\"[0, 0, 0]\"\r\n @click=\"onClick\"\r\n @double-click=\"onDoubleClick\"\r\n @pointer-enter=\"onPointerEnter\"\r\n @pointer-leave=\"onPointerLeave\"\r\n @pointer-move=\"onPointerMove\"\r\n @context-menu=\"onContextMenu\"\r\n @pointer-missed=\"onPointerMissed\"\r\n >\r\n \u003CTresBoxGeometry :args=\"[1, 1, 1]\" />\r\n \u003CTresMeshToonMaterial color=\"#efefef\" />\r\n \u003C/TresMesh>\r\n \u003C/TresGroup>\r\n```\r\nand remove the `TresGroup` near camera\r\n```vue\r\n \u003CTresGroup>\r\n \u003CTresPerspectiveCamera :position=\"[5, 5, 5]\" />\r\n \u003C/TresGroup>\r\n```\n\n### System Info\n\n_No response_\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/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.",[2908,2911],{"name":2909,"color":2910},"bug","d73a4a",{"name":2912,"color":2913},"p5-urgent-bug","B60205",728,"`Event` is not triggered in `TresGroup`","2024-07-16T18:52:11Z","https://github.com/Tresjs/tres/issues/728",0.71517503,{"description":2920,"labels":2921,"number":2925,"owner":2853,"repository":2854,"state":2868,"title":2926,"updated_at":2927,"url":2928,"score":2929},"## Problem\r\n\r\nThe StackBlitz template for bug reproductions contains several redundant or extraneous elements. \r\n\r\n* This costs conscientious developers time, as they have to remove many unneeded elements from their bug reports.\r\n* This costs Tres devs time, reading through non-minimal reproductions. \r\n\r\nAs a Tres developer, in order to encourage and facilitate minimal bug reproductions, I would like to remove extra elements from the StackBlitz Bug reproduction starter template. \r\n\r\n## Suggested Solution\r\n\r\n* Remove the `src/components` folder.\r\n* Replace the code in `./src/App.vue` with the following:\r\n\r\n```html\r\n\u003Cscript setup lang=\"ts\">\r\nimport { TresCanvas } from '@tresjs/core';\r\n\u003C/script>\r\n\r\n\u003Ctemplate>\r\n \u003CTresCanvas>\r\n \u003CTresMesh>\r\n \u003CTresBoxGeometry />\r\n \u003CTresMeshNormalMaterial />\r\n \u003C/TresMesh>\r\n \u003C/TresCanvas>\r\n\u003C/template>\r\n```\r\n\r\nThat makes this the starter template:\r\n\r\n\u003Cimg width=\"1334\" alt=\"Screenshot 2024-04-28 at 01 55 13\" src=\"https://github.com/Tresjs/tres/assets/20469369/237c9649-7794-4fe4-9c8f-0f749787168a\">\r\n\r\n### Alternative\r\n\r\nKeep as is.\r\n\r\n### Additional context\r\n\r\nFor comparison, here's the current `src/components/TheExperience.vue`. \r\n\r\nIt contains:\r\n\r\n* unused imports – `extend`, `reactive`\r\n* unnecessary configuration – `const gl = { ... }`\r\n* components that have no visual effect – `\u003CContactShadows />`, `\u003CTresDirectionalLight />`\r\n* redundant args – `\u003CTresBoxGeometry :args=\"[1, 1, 1]\" />`\r\n\r\n```html\r\n\u003Cscript setup lang=\"ts\">\r\nimport { extend } from '@tresjs/core';\r\n\r\nimport { reactive } from 'vue';\r\nimport { BasicShadowMap, SRGBColorSpace, NoToneMapping } from 'three';\r\nimport { TresCanvas } from '@tresjs/core';\r\nimport { OrbitControls, ContactShadows } from '@tresjs/cientos';\r\n\r\nconst gl = {\r\n clearColor: '#82DBC5',\r\n shadows: true,\r\n alpha: false,\r\n shadowMapType: BasicShadowMap,\r\n outputColorSpace: SRGBColorSpace,\r\n toneMapping: NoToneMapping,\r\n};\r\n\u003C/script>\r\n\r\n\u003Ctemplate>\r\n \u003CTresCanvas v-bind=\"gl\">\r\n \u003CTresPerspectiveCamera :position=\"[9, 9, 9]\" />\r\n \u003COrbitControls />\r\n \u003CTresMesh>\r\n \u003CTresBoxGeometry :args=\"[1, 1, 1]\" />\r\n \u003CTresMeshNormalMaterial />\r\n \u003C/TresMesh>\r\n \u003CContactShadows />\r\n \u003CTresDirectionalLight :position=\"[0, 2, 4]\" :intensity=\"1.2\" cast-shadow />\r\n \u003C/TresCanvas>\r\n\u003C/template>\r\n\r\n```\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.",[2922],{"name":2923,"color":2924},"p1-chore","BFD4F2",669,"Remove extraneous elements from StackBlitz Bug reproduction starter template","2024-04-30T15:03:58Z","https://github.com/Tresjs/tres/issues/669",0.7197041,{"description":2931,"labels":2932,"number":2934,"owner":2853,"repository":2867,"state":2868,"title":2935,"updated_at":2936,"url":2937,"score":2938},"### Description\r\n\r\nVue 3.3.4 added an experimental feature called propsDeconstruct allowing us to dispense `withDefaults` in favor of a more natural deconstruction that keeps the reactivity.\r\n\r\n```\r\nconst { args = [1, 1, 1], color = '0xffffff' } = defineProps\u003C{\r\n args?: ConstructorParameters\u003Ctypeof BoxGeometry>\r\n color?: TresColor\r\n}>()\r\n```\r\n\r\n### Suggested solution\r\n\r\nAs of now, the following components has been updated, we need to update the rest\r\n\r\n- [x] All shapes\r\n- [ ] Smoke\r\n- [ ] Stars\r\n- [ ] Levioso\r\n- [ ] Contact Shadows\r\n- [x] Transform Controls\r\n- [x] Orbit Controls\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.",[2933],{"name":2884,"color":2885},83,"Update all components to use prop deconstruction","2023-07-07T15:21:52Z","https://github.com/Tresjs/cientos/issues/83",0.7214477,{"description":2940,"labels":2941,"number":2934,"owner":2853,"repository":2943,"state":2868,"title":2944,"updated_at":2945,"url":2946,"score":2938},"### Describe the bug\r\n\r\nSSR version of TresCanvas is broken when the project is using `npm` as the package manager.\r\n\r\n\r\n\r\n\r\n### Reproduction\r\n\r\nhttps://stackblitz.com/edit/nuxt-starter-hzbvpr?file=nuxt.config.ts\r\n\r\n### Steps to reproduce\r\n\r\n1. Run `npm install` and `npm run dev`\r\n2. Click on `/page1` link\r\n3. Check console warning. \r\n\r\n\r\n### System Info\r\n\r\n```shell\r\nSystem:\r\n OS: macOS 14.2.1\r\n CPU: (8) arm64 Apple M1 Pro\r\n Memory: 89.14 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: 120.1.61.116\r\n Chrome: 121.0.6167.85\r\n Firefox: 121.0.1\r\n Safari: 17.2.1\r\n npmPackages:\r\n @tresjs/cientos: ^3.7.0 => 3.7.0 \r\n @tresjs/nuxt: ^2.1.0 => 2.1.0 \r\n nuxt: ^3.10.0 => 3.10.0 \r\n vite-plugin-glsl: ^1.2.1 => 1.2.1 \r\n vue: ^3.4.15 => 3.4.15 \r\n vue-router: ^4.2.5 => 4.2.5\r\n```\r\n\r\n### Used Package Manager\r\n\r\nnpm, pnpm\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.",[2942],{"name":2909,"color":2910},"nuxt","TresCanvas component is missing template or render function after 3.10.0","2024-02-07T17:58:20Z","https://github.com/Tresjs/nuxt/issues/83",{"description":2948,"labels":2949,"number":2950,"owner":2853,"repository":2867,"state":2868,"title":2951,"updated_at":2952,"url":2953,"score":2954},"### Description\r\n\r\nI wanted to make falling leaves using Cientos Precipitation but unfortunately it doesn't look very good :/ Snow or rain looks nice, but with leaves it doesn't look realistic. \r\n\r\n### Suggested solution\r\n\r\nMaybe add random rotation? Random descent speed? Random scale?\r\nhttps://www.youtube.com/watch?v=OLEWP7VZVzQ\r\nThis example is amazing\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.",[],318,"Precipitation as leaves","2024-02-28T12:51:28Z","https://github.com/Tresjs/cientos/issues/318",0.72342825,["Reactive",2956],{},["Set"],["ShallowReactive",2959],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$fCRNb0KE_VTyypIz4ZZZVIvUea7WzaSpBlNhcNKIPSo4":-1},"/Tresjs/cientos/264"]