\n \u003CVisuTrackBallControls />\n \u003C/TresPerspectiveCamera>\n \u003C/TresCanvas>\n`\n\n[VisuTrackBallControls.vue.txt](https://github.com/user-attachments/files/18799562/VisuTrackBallControls.vue.txt)\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.",[],595,"Tresjs","cientos","open","Add TrackballControls to Cientos","2025-02-14T13:18:40Z","https://github.com/Tresjs/cientos/issues/595",0.71674156,{"description":2861,"labels":2862,"number":2863,"owner":2853,"repository":2864,"state":2855,"title":2865,"updated_at":2866,"url":2867,"score":2868},"### Description\n\nThis allows to prevent bubbling the events to the dom by using `event.sourceEvent.preventDefault();`\n\n### Suggested solution\n\nAdd event capture true by default, or allow us to add parameters to the listeners: `@click.stop`, `@click.passive`, `@click.capture`, ...\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.",[],939,"tres","Add event capture true by default","2025-02-22T10:19:27Z","https://github.com/Tresjs/tres/issues/939",0.7198435,{"description":2870,"labels":2871,"number":2878,"owner":2853,"repository":2854,"state":2855,"title":2879,"updated_at":2880,"url":2881,"score":2882},"### Describe the bug\n\nThe examples under https://cientos.tresjs.org/guide/misc/html-component.html#html are currently broken\n\n### Reproduction\n\nhttps://cientos.tresjs.org/guide/misc/html-component.html#html\n\n### Steps to reproduce\n\n_No response_\n\n### System Info\n\n_No response_\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.",[2872,2875],{"name":2873,"color":2874},"bug","d73a4a",{"name":2876,"color":2877},"docs","0075ca",368,"[Docs] - HTML examples are broken ","2024-07-18T08:07:36Z","https://github.com/Tresjs/cientos/issues/368",0.7241499,{"description":2884,"labels":2885,"number":2896,"owner":2853,"repository":2864,"state":2855,"title":2897,"updated_at":2898,"url":2899,"score":2900},"### Description\n\nHow to use vue-cli\n\n### Suggested solution\n\nHow to use vue-cli\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.",[2886,2887,2890,2893],{"name":2873,"color":2874},{"name":2888,"color":2889},"help wanted","008672",{"name":2891,"color":2892},"PR welcome","2D76B0",{"name":2894,"color":2895},"p2-edge-case","ABCC40",754,"How to use vue-cli","2024-08-21T09:51:50Z","https://github.com/Tresjs/tres/issues/754",0.72542936,{"description":2902,"labels":2903,"number":2904,"owner":2853,"repository":2864,"state":2855,"title":2905,"updated_at":2906,"url":2907,"score":2908},"### Describe the bug\n\nI would like to render the CatmullRomCurve3 component. On the linked Playground reproduction case (which uses TresJS 3.9.0 and Cientos 3.9.0), I get the following error:\r\n```\r\nInvalid watch source: A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.\r\n at \u003CLine2points=[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]vertex-colors=undefinedcolor=\"#fbb03b\" ...>\r\n at \u003CCatmullRomCurve3points=-1.5,0,0,-0.5,1,0,0.5,0,0,1.5,1,0segments=40line-width=10 ...>\r\n at \u003CApp>\r\n```\r\nwhich is strange because I didn't declare any watcher.\r\n\r\nStranger: [this Stackblitz](https://stackblitz.com/edit/tresjs-basic-jednrn?file=src%2Fcomponents%2FTheExperience.vue) that includes the same SFC displays the curve properly.\n\n### Reproduction\n\nhttps://play.tresjs.org/#eNqVVE2P2jAQ/StWethDyQeCUgmlFS1a9ePQrbZ7IxxCMoBZf8l2gArx3zt2SAjb3RULOcRv3jw/z4xzCB40mC9KRdsKgnGQmkJTZYkBWynCcrH6lAXWZMHnTFCupLbkQFzKNBfb3JAjWWrJyc3EIrYxcSE13HSo09zyirF7yaeV3sKgR+70gtqpFFZL9kw+BWGlQYk0rq3gxriwwBXLLeCKkLRjoGCQ67CQTGp0+m64dH9vl+Avfbp/DRMyVpIKazBlNgv70YceSfCZ98gsTNyqf1r5RRPyPB+ZZ0GrZGDF0bTTGiYdnFEB4Y6Wdo2RfifSml0uFslg0QTixrM73TdNy+/AFOgzflm5Gk7jcy0QSOO2UEEvqLsQ8lxFGyMFtvfgcrJTALs6Jh5xWLeDLpAFa2uVGcdxUQrML4HRrY4E2FgoHnfpk0E0ivpxSY2NHYzsLOj9J1y39i3adQbKf4ySs/wJvtzF7iB/VLm4xnvLnQyjpDXegBGnLqervdZwla7jTVBxlKDf92B4twx4wSoDV9e3Q5/0cQxRkYoS9hG/rO6JZ9a5hvINwnXCa9JIDEvg9ArRhuoOP4xGMaOLrqRTPGbiiDNpTSHFkq6eTGQhuaIM9J2yVIrLycwZk7ufHrO6gtZfsYbi8Rl8Y/a15d84LIC3vtvKXK/A1uHbP79gj+9tkMuyYqfmvBC8ByNZ5TzWtK+VKNF2h+fd/vAXjIrVg7ndWxCmOdSFUftXgUdnzaehnbUamPvCeb5vx/SVKp1PNoj8Z84X/PgPoizpCg==\n\n### Steps to reproduce\n\n_No response_\n\n### System Info\n\n```shell\nTresJS 3.9.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.",[],694,"Invalid watch source error when declaring a CatmullRomCurve3","2024-05-31T23:36:28Z","https://github.com/Tresjs/tres/issues/694",0.72733814,{"description":2910,"labels":2911,"number":2918,"owner":2853,"repository":2864,"state":2855,"title":2919,"updated_at":2920,"url":2921,"score":2922},"### Description\r\n\r\nCurrently, Tres core does not accept kebab-case for compound property names in \"pierced\" paths like `shadow.mapSize.height`.\r\n\r\nUsers must write `:shadow-mapSize-height`. `:shadow-map-size-height` is not accepted.\r\n\r\n`attach=\"kebab-string\"` accepts kebab-case for compound property names.\r\n\r\n### Suggested solution\r\n\r\nUse the same logic as `attach`.\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/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.",[2912,2915],{"name":2913,"color":2914},"feature","c2e0c6",{"name":2916,"color":2917},"p3-significant","2C78E3",873,"Allow compound property names to be kebab-cased","2024-11-27T10:10:40Z","https://github.com/Tresjs/tres/issues/873",0.7287303,{"description":2924,"labels":2925,"number":2926,"owner":2853,"repository":2864,"state":2927,"title":2928,"updated_at":2929,"url":2930,"score":2931},"### Description\r\n\r\nBased on https://github.com/orgs/Tresjs/discussions/321\r\n\r\nAs a plugin author, I will like to have a reactive state with the following characteristics:\r\n\r\n- Performant, (use of `shallowRef` where needed)\r\n- read-only\r\n- Strictly Typed\r\n- Reduce side effects on watchers\r\n- Needs to work on cientos and the rest of ecosystem via `provide/inject` \r\n\r\n### Suggested solution\r\n\r\n| Name | Type | Requirement | Details |\r\n| ---------------------------------- | -------------------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\r\n| scene | readonly, shallowRef | essential | |\r\n| cameras | readonly, shallowRef | essential | userData.TRES_IS_ACTIVE_CAMERA = true\u003Cbr>const cameras = shallowRef([]) return { cameras: readonly(cameras)} |\r\n| camera | computed, readonly | essential | |\r\n| pushCamera(newCamera: Camera, setActive: boolean) | function | essential | cameras should be watched and removed from the cameras array if they got removed from the scene |\r\n| removeCamera(camera: Camera) | function | essential ||\r\n| setCamera(cameraId string) | function | essential ||\r\n| renderer | readonly, shallowRef | essential | setRenderer(renderer: Renderer)\u003Cbr>maybe only callable once? |\r\n| setRenderer(renderer: Renderer) | function | essential ||\r\n| sizes (height, width, aspectRatio) | readonly | handy | sizes: {\u003Cbr> height: Ref\u003Cnumber>\u003Cbr> width: Ref\u003Cnumber>\u003Cbr> aspectRatio: Computed\u003Cnumber>\u003Cbr>} |\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/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.",[],331,"closed","New and better state context provider","2023-07-29T08:58:56Z","https://github.com/Tresjs/tres/issues/331",0.6887843,{"description":2933,"labels":2934,"number":2941,"owner":2853,"repository":2864,"state":2927,"title":2942,"updated_at":2943,"url":2944,"score":2945},"### Describe the bug\n\nIt seems like Tres.js is no longer working in Firefox. Even on your official documentation all examles render just a black canvas.\r\nI would really like to use Tres.js in projects of my company, but I am unable to do this if Firefox is not supported or working :(\n\n### Reproduction\n\nhttps://tresjs.org/guide/\n\n### Steps to reproduce\n\nThe first and all other examples of this page.\n\n### System Info\n\n```shell\nWindows 10\r\nFirerfiox version 114.0.1 (64-Bit)\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.",[2935,2938],{"name":2936,"color":2937},"question","d876e3",{"name":2939,"color":2940},"waiting for author","B145BC",310,"Black Canvas in Firefox","2023-06-20T07:13:04Z","https://github.com/Tresjs/tres/issues/310",0.7066429,{"description":2947,"labels":2948,"number":2949,"owner":2853,"repository":2854,"state":2927,"title":2950,"updated_at":2951,"url":2952,"score":2953},"### Description\n\nAs a developer using cientos, I would like to have the minimal bundle possible.\r\n\r\nAtm, the bundle size of cientos is around 600 Kb which is huge, at least 300kb (31%) are coming from [TweakPane](https://cocopon.github.io/tweakpane/)\r\n\r\n\u003Cimg width=\"1479\" alt=\"Screenshot 2023-08-13 at 12 37 22\" src=\"https://github.com/Tresjs/cientos/assets/4699008/9062618d-f7ac-4aad-9b20-9631e4bd2623\">\r\n\r\n\u003Cimg width=\"631\" alt=\"Screenshot 2023-08-13 at 12 38 50\" src=\"https://github.com/Tresjs/cientos/assets/4699008/e4dc5dd6-c344-41b7-bee5-392fc075bbf3\">\r\n\n\n### Suggested solution\n\nTake out tweakpane from the final bundle by making it a peer dep\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.",[],168,"Tweakpane as peer dep","2023-09-29T06:32:30Z","https://github.com/Tresjs/cientos/issues/168",0.70976347,{"description":2955,"labels":2956,"number":2964,"owner":2853,"repository":2864,"state":2927,"title":2965,"updated_at":2966,"url":2967,"score":2968},"**Is your feature request related to a problem? Please describe.**\r\nThere is no type definition for primitive\r\n\r\n",[2957,2960,2961],{"name":2958,"color":2959},"good first issue","7057ff",{"name":2888,"color":2889},{"name":2962,"color":2963},"dx","1576AD",255,"Primitive type definition","2023-05-21T09:05:02Z","https://github.com/Tresjs/tres/issues/255",0.7161932,["Reactive",2970],{},["Set"],["ShallowReactive",2973],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$fjmj10ApMGocxd1LZnfqyXLpIdG7jjAJspy6JlMoiIh0":-1},"/Tresjs/tres/727"]