`","2024-08-21T10:29:21Z","https://github.com/Tresjs/tres/issues/418",0.8286506,{"description":2883,"labels":2884,"number":2888,"owner":2875,"repository":2889,"state":2877,"title":2890,"updated_at":2891,"url":2892,"score":2893},"### Description\n\nThis issue contains the discussion for the new major version v5.\n\n\n\n### Suggested solution\n\n- [ ] Refactor `useGLTF` and `useFBX` to adapt to core's `useLoader` refactor (related https://github.com/Tresjs/tres/issues/922 https://github.com/Tresjs/tres/pull/959)\n- [ ] Refactor abstractions dependent on core's `useTexture` refactor (related https://github.com/Tresjs/tres/issues/922 https://github.com/Tresjs/tres/pull/949)\n- [ ] Drop UMD Support #608 \n- [x] Accumulative shadows #558 \n- [x] Point material #545 \n- [x] ScreenQuad #530\n- [x] CubicBezierline #546 \n- [x] QuadraticNezierLine #548 \n- [x] Bounds #568 \n- [x] CircleShadow #549 \n- [x] Stage #572 \n- [x] LOD #524 \n- [x] useIntersect #550 \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/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.",[2885],{"name":2886,"color":2887},"breaking-change","5319E7",606,"cientos","V5","2025-04-08T11:22:09Z","https://github.com/Tresjs/cientos/issues/606",0.82910764,{"description":2895,"labels":2896,"number":2898,"owner":2875,"repository":2876,"state":2899,"title":2900,"updated_at":2901,"url":2902,"score":2903},"### Description\n\nAs a developer using TresJS, I would like to change reactively the constructor params via args prop, which is not possible at the moment.\r\n\r\n```ts\r\n\u003Cscript lang=\"ts\" setup>\r\n// renderer.domElement is undefined at the beginning. \r\n\u003C/script>\r\n\r\n\u003Ctemplate>\r\n \u003CTresOrbitControls :args=\"[activeCamera || camera, renderer?.domElement || domElement]\" />\r\n \u003C/template>\r\n ```\n\n### Suggested solution\n\nAdd logic to `nodeOps` to re-instance the THREE object when `args` change\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.",[2897],{"name":2866,"color":2867},366,"closed","Re-instance THREE instances via args prop reactivity","2023-08-17T13:53:39Z","https://github.com/Tresjs/tres/issues/366",0.7812731,{"description":2905,"labels":2906,"number":2910,"owner":2875,"repository":2876,"state":2899,"title":2911,"updated_at":2912,"url":2913,"score":2914},"**Is your feature request related to a problem? Please describe.**\r\nIn three is possible to group several mesh instances https://threejs.org/docs/#api/en/objects/Group \r\n\r\n**Describe the solution you'd like**\r\nAdd support for groups on InstanceCreator\r\n\r\n",[2907],{"name":2908,"color":2909},"feature","c2e0c6",72,"Support for Group on Instance Creator","2023-01-10T14:32:52Z","https://github.com/Tresjs/tres/issues/72",0.7926346,{"description":2916,"labels":2917,"number":2921,"owner":2875,"repository":2922,"state":2899,"title":2923,"updated_at":2924,"url":2925,"score":2926},"**Is your feature request related to a problem? Please describe.**\r\nThe package should adapt to the changes made in https://github.com/Tresjs/tres/issues/331\r\n\r\n**Describe the solution you'd like**\r\nWe should refactor `useCore` and any use of the state.\r\n",[2918],{"name":2919,"color":2920},"enhancement","a2eeef",43,"post-processing","Refactor useCore to new state context provider","2023-08-18T10:20:59Z","https://github.com/Tresjs/post-processing/issues/43",0.8039764,{"description":2928,"labels":2929,"number":2930,"owner":2875,"repository":2876,"state":2899,"title":2931,"updated_at":2932,"url":2933,"score":2934},"## Problem\r\n\r\nAs of PR ([80f8a2e](https://github.com/Tresjs/tres/commit/80f8a2e664e2100f9d0dabf507a213aae524f1de)), some playgrounds are broken. And user code is likely also broken.\r\n\r\nBroken playground example:\r\n\r\nhttp://localhost:5173/events/dynamic-objects\r\n\r\n### Error:\r\n\r\n```ts\r\nUncaught (in promise) TypeError: props is null\r\n createElement nodeOps.ts:34\r\n```\r\n\r\nHere's the problem line in `src/nodeOps.ts`:\r\n\r\n```ts\r\n function createElement(tag: string, _isSVG: undefined, _anchor: any, props: Partial\u003CWithMathProps\u003CTresObject>> = {}): TresObject | null {\r\n```\r\n\r\nThe signature was changed from the [signature in the Vue docs](https://vuejs.org/api/custom-renderer.html):\r\n\r\n```ts\r\n createElement(\r\n type: string,\r\n isSVG?: boolean,\r\n isCustomizedBuiltIn?: string,\r\n vnodeProps?: (VNodeProps & { [key: string]: any }) | null\r\n ): HostElement\r\n```\r\n\r\nThe new signature isn't equivalent. The docs' version says Vue can pass `null` for `props`. \r\n\r\nBut if `nodeOps.createElement` gets an explicit `null`, it throws on the next line when checking `if (!props.args)`.\r\n\r\n## Solution\r\n\r\nRevert the signature and readd the check for null `props`.\r\n\r\n### Reproduction\r\n\r\nN/A - see above\r\n\r\n### Steps to reproduce\r\n\r\n* Check out [80f8a2e](https://github.com/Tresjs/tres/commit/80f8a2e664e2100f9d0dabf507a213aae524f1de) – or, at the moment, check out the `main` Tres branch.\r\n* `pnpm dev`\r\n* Navigate to http://localhost:5173/events/dynamic-objects\r\n* See error in console:\r\n\r\n### System Info\r\n\r\n```shell\r\nN/A\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.",[],827,"`nodeOps.createElement` throws when `props === null`","2024-09-08T12:49:26Z","https://github.com/Tresjs/tres/issues/827",0.8094293,{"description":2936,"labels":2937,"number":2942,"owner":2875,"repository":2876,"state":2899,"title":2943,"updated_at":2944,"url":2945,"score":2946},"",[2938,2939],{"name":2866,"color":2867},{"name":2940,"color":2941},"v2","FEE22E",154,"[v2] - HMR with Custom Renderer","2023-03-22T09:48:13Z","https://github.com/Tresjs/tres/issues/154",0.8145837,{"description":2948,"labels":2949,"number":2956,"owner":2875,"repository":2876,"state":2899,"title":2957,"updated_at":2958,"url":2959,"score":2960},"### Description\n\nAs a TresJS developer, I would like to have better type support and IntelliSense. The idea would be to replace the current approach of generating the types on the build.\n\n### Suggested solution\n\nCody from Pmndrs gave me a hint on how R3F is tackling the typing. https://github.com/pmndrs/react-three-fiber/blob/v9/packages/fiber/src/three-types.ts\r\n\r\n```ts\r\ntype ThreeExports = typeof THREE\r\ntype ThreeElementsImpl = {\r\n [K in keyof ThreeExports as Uncapitalize\u003CK>]: ThreeExports[K] extends ConstructorRepresentation\r\n ? ThreeElement\u003CThreeExports[K]>\r\n : never\r\n}\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.",[2950,2953],{"name":2951,"color":2952},"dx","1576AD",{"name":2954,"color":2955},"types","5C076E",268,"Refactor typescript support from build to runtime","2023-05-21T09:05:02Z","https://github.com/Tresjs/tres/issues/268",0.82361025,{"description":2962,"labels":2963,"number":2964,"owner":2875,"repository":2876,"state":2899,"title":2965,"updated_at":2966,"url":2967,"score":2968},"### Describe the bug\r\n\r\nSeems like making `nodeOps` a function #579 broke primitive `obj` reactivity since we need to create a new element for `primitive` \r\n\r\n### Reproduction\r\n\r\nlocal\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: macOS 14.3.1\r\n CPU: (8) arm64 Apple M1 Pro\r\n Memory: 68.70 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: 123.0.6312.58\r\n Firefox: 121.0.1\r\n Safari: 17.3.1\r\n npmPackages:\r\n @tresjs/cientos: 3.6.0 => 3.6.0 \r\n @tresjs/core: workspace:^ => 4.0.0-next.1 \r\n @tresjs/leches: 0.15.0-next.3 => 0.15.0-next.3 \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.",[],600,"primitive `obj` reactivity broken after nodeOps being a function","2024-03-27T12:35:54Z","https://github.com/Tresjs/tres/issues/600",0.82363874,{"description":2970,"labels":2971,"number":2974,"owner":2875,"repository":2889,"state":2899,"title":2975,"updated_at":2976,"url":2977,"score":2978},"### Describe the bug\r\n\r\nIt appears the new linter is breaking some props:\r\n\r\n* `\u003CSky/>`: https://github.com/Tresjs/cientos/commit/4999bb1dea4c902ad5b19dd5982a2e9537d84bc8#diff-bcb1b58e8e953711ce44278df539b7606cdffdceb65be40747ab67c97e79672e\r\n* `\u003CHolographicMaterial />`: https://github.com/Tresjs/cientos/commit/4999bb1dea4c902ad5b19dd5982a2e9537d84bc8#diff-9ca529b6b05acda73f50d969d3f1cd689a49b87118f7126bf5ac523277ed42d9\r\n\r\n### Reproduction\r\n\r\nN/A\r\n\r\n### Steps to reproduce\r\n\r\nSee the links in the description. They show the `git blame` where the props changed.\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.",[2972],{"name":2872,"color":2973},"EEF2B0",411,"Linter is breaking some props","2024-08-28T19:22:29Z","https://github.com/Tresjs/cientos/issues/411",0.82758325,["Reactive",2980],{},["Set"],["ShallowReactive",2983],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$fchSXNtqk19ejR2p-lh_-VJLD30xbSUCL7lSZu4uZNQc":-1},"/Tresjs/tres/13"]