\r\n\u003C/Text3D>\r\n```",[2893],{"name":2880,"color":2881},"closed","Text3D cientos","2022-12-08T10:14:11Z","https://github.com/Tresjs/tres/issues/15",0.7216599,{"description":2900,"labels":2901,"number":1446,"owner":2869,"repository":2902,"state":2894,"title":2903,"updated_at":2904,"url":2905,"score":2906},"**Is your feature request related to a problem? Please describe.**\r\n\r\n\r\n**Describe the solution you'd like**\r\nIn order to update the textGeometry and have the v-model \"reactive text\" effect I propose adding a new needsUpdate prop\r\nExample:\r\n\r\n\r\n**Suggested solution**\r\nTo achieve this effect we need to listen to changes in the text prop and when it changes, trigger a dispose() method in the current geometry. I have done this with \"watch\", but for perfomance reasons it could be better to try with computed()\r\n\r\nAlso if needsUpdate prop is set to false (default value), we just skip the listen and render the plain text\r\n\r\n**Additional context**\r\n",[],"cientos","new needsUpdate props in Text3D abstraction","2023-05-02T15:31:10Z","https://github.com/Tresjs/cientos/issues/17",0.7533199,{"description":2908,"labels":2909,"number":2911,"owner":2869,"repository":2870,"state":2894,"title":2912,"updated_at":2913,"url":2914,"score":2915},"**Is your feature request related to a problem? Please describe.**\r\nAt the moment there is no working way of implementing particles using `\u003CTresBufferGeometry />`, especially attributes.\r\n\r\n**Describe the solution you'd like**\r\nA way of replicate this\r\n\r\n```\r\nconst firefliesGeometry = new THREE.BufferGeometry()\r\nconst firefliesCount = 30\r\nconst positionArray = new Float32Array(firefliesCount * 3)\r\n\r\nfor(let i = 0; i \u003C firefliesCount; i++)\r\n{\r\n positionArray[i * 3 + 0] = Math.random() * 4\r\n positionArray[i * 3 + 1] = Math.random() * 4\r\n positionArray[i * 3 + 2] = Math.random() * 4\r\n}\r\n\r\nfirefliesGeometry.setAttribute('position', new THREE.BufferAttribute(positionArray, 3))\r\n\r\n// Material\r\nconst firefliesMaterial = new THREE.PointsMaterial({ size: 0.1, sizeAttenuation: true })\r\n\r\nconst fireflies = new THREE.Points(firefliesGeometry, firefliesMaterial)\r\nscene.add(fireflies)\r\n``` \r\n\r\n\r\n**Suggested solution**\r\nSimilar to R3F \r\n\r\n```\r\n \u003Cpoints ref={geom} position={[0, 10, 0]} rotation={[-Math.PI / 4, 0, Math.PI / 6]}>\r\n \u003CbufferGeometry>\r\n \u003CbufferAttribute attachObject={[\"attributes\", \"position\"]} count={coords.length / 3} array={coords} itemSize={3} />\r\n \u003CbufferAttribute attachObject={[\"attributes\", \"size\"]} count={sizes.length} array={sizes} itemSize={1} />\r\n \u003C/bufferGeometry>\r\n \u003CdotMaterial />\r\n \u003C/points>\r\n```\r\n\r\n**Additional context**\r\nAdd any other context or screenshots about the feature request here.\r\n",[2910],{"name":2880,"color":2881},56,"BufferGeometry and BufferAttribute support","2022-12-22T10:31:58Z","https://github.com/Tresjs/tres/issues/56",0.7788837,{"description":2917,"labels":2918,"number":2919,"owner":2869,"repository":2870,"state":2894,"title":2920,"updated_at":2921,"url":2922,"score":2923},"### Description\r\n\r\nRight now there is no way to access the TresCanvas context without hacking the script setup using TresCanvas:\r\n\r\n\u003Cdetails>\r\n\u003Csummary>\u003Cstrong>Hack\u003C/strong>\u003C/summary>\r\n\r\n```html\r\n\u003Cscript setup lang=\"ts\">\r\nimport { TresCanvas } from '@tresjs/core';\r\nimport { computed, ref, onMounted } from 'vue';\r\n\r\nimport { extend, useTresContext } from '@tresjs/core';\r\nimport { OrbitControls } from 'three/addons/controls/OrbitControls';\r\nimport { TextGeometry } from 'three/addons/geometries/TextGeometry';\r\n\r\nconst trescanvas = ref();\r\nconst state = ref();\r\n\r\nonMounted(() => {\r\n setTimeout(() => {\r\n state.value = trescanvas.value?.context;\r\n }, 0);\r\n});\r\n\r\n// Add the element to the catalogue\r\nextend({ TextGeometry, OrbitControls });\r\n\u003C/script>\r\n\r\n\u003Ctemplate>\r\n \u003CTresCanvas ref=\"trescanvas\" shadows alpha>\r\n \u003CTresPerspectiveCamera :position=\"[5, 5, 5]\" />\r\n \u003CTresOrbitControls\r\n v-if=\"state?.renderer\"\r\n :args=\"[state?.camera, state?.renderer?.domElement]\"\r\n />\r\n \u003CTresMesh>\r\n \u003CTresTextGeometry :args=\"['TresJS', { font, ...fontOptions }]\" center />\r\n \u003CTresMeshMatcapMaterial :matcap=\"matcapTexture\" />\r\n \u003C/TresMesh>\r\n \u003C/TresCanvas>\r\n\u003C/template>\r\n```\r\n\u003C/details>\r\n\r\n### Suggested solution\r\n\r\nAdd default slot props, we¡ve the default slot there without any binding:\r\n```ts\r\n\u003Ccanvas\r\n ref=\"canvas\"\r\n :data-scene=\"scene.uuid\"\r\n :class=\"$attrs.class\"\r\n :data-tres=\"`tresjs ${pkg.version}`\"\r\n :style=\"{\r\n display: 'block',\r\n width: '100%',\r\n height: '100%',\r\n position: windowSize ? 'fixed' : 'relative',\r\n top: 0,\r\n left: 0,\r\n pointerEvents: 'auto',\r\n touchAction: 'none',\r\n ...$attrs.style as Object,\r\n }\"\r\n >\r\n \u003Cslot v-bind=\"context\" />\r\n\u003C/canvas>\r\n```\r\n\r\nthen in the sfc template:\r\n\r\n```html\r\n\u003CTresCanvas shadows alpha v-slot=\"{ camera, renderer }\">\r\n \u003CTresPerspectiveCamera :position=\"[5, 5, 5]\" />\r\n \u003CTresOrbitControls\r\n v-if=\"renderer\"\r\n :args=\"[camera, renderer.domElement]\"\r\n />\r\n\u003C/TresCanvas>\r\n```\r\n\r\n### Alternative\r\n\r\ncheck the hack in the description\r\n\r\n### Additional context\r\n\r\nrelated #565\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.",[],573,"provide default slot props in TresCanvas","2024-03-05T19:47:12Z","https://github.com/Tresjs/tres/issues/573",0.78457755,{"description":2925,"labels":2926,"number":2934,"owner":2869,"repository":2935,"state":2894,"title":2936,"updated_at":2937,"url":2938,"score":2939},"### Description\n\nThere are tons of props that we should be able to set in our RigidBody/collider\r\n\r\n- gravityScale\r\n- restitution\r\n- friction\r\n- mass (colliders)\n\n### Suggested solution\n\nAdding as a props and proper documentation\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.",[2927,2930,2931],{"name":2928,"color":2929},"enhancement","a2eeef",{"name":2866,"color":2867},{"name":2932,"color":2933},"v1","5B6B67",119,"rapier","Props to the RigidBody/Colliders","2024-09-26T12:31:38Z","https://github.com/Tresjs/rapier/issues/119",0.7939381,{"description":2941,"labels":2942,"number":2949,"owner":2869,"repository":2870,"state":2894,"title":2950,"updated_at":2951,"url":2952,"score":2953},"**Describe the bug**\r\nWith the new updates of TresJs/Core you can assign the setAttributes('position', BufferGeo)...\r\nLike this...\r\n``` \r\n \u003CTresPoints>\r\n \u003CTresBufferGeometry :position=\"[positionArray, 3]\" :a-scale=\"[scaleArray, 1]\" />\r\n \u003CTresShaderMaterial v-bind=\"shader\" />\r\n \u003C/TresPoints>\r\n\r\n```\r\nBefore this work, this broke the \"Stars\" abstraction in cientos, and also other examples (with the TresPoints)\r\n\r\nI am doing ... What I expect is ... What actually happening is\r\n\r\n**Reproduction**\r\nPlease provide a link using this template on [Stackblitz](https://stackblitz.com/edit/tresjs-basic?file=README.md) \r\n\r\n**Steps**\r\nSteps to reproduce the behavior:\r\n1. Install the last version of cientos and tres\r\n2. Try to use \u003CStars /> component\r\n\r\n**Expected behavior**\r\nCorrect assign of the attributes in TresBufferGeometry \r\n\r\n**Screenshots**\r\nThis is the current error (screenshots take for playground portal-journey experiment) last version Tresjs\r\n\r\n\r\n",[2943,2946],{"name":2944,"color":2945},"bug","d73a4a",{"name":2947,"color":2948},"needs reproduction","511ECF",229,"TresBufferGeometry get broken with the last Tresjs update (Attributes assign)","2023-04-25T07:11:58Z","https://github.com/Tresjs/tres/issues/229",0.80369365,{"description":2955,"labels":2956,"number":1227,"owner":2869,"repository":2902,"state":2894,"title":2958,"updated_at":2959,"url":2960,"score":2961},"**Describe the bug**\r\nSetting `position` on GLTFModel doesn't seem to work. Must probably forgot to pass down the props to the mesh\r\n\r\n**Reproduction**\r\nPlease provide a link using this template on [Stackblitz](https://stackblitz.com/edit/tresjs-basic?file=README.md) \r\n\r\n[Repro](https://stackblitz.com/edit/tresjs-gltf-model?file=src%2Fcomponents%2FTheExperience.vue)\r\n\r\n**Steps**\r\nSteps to reproduce the behavior:\r\n1. Go to 'Experience.vue'\r\n2. Add `position` to the \u003CGTLFModel />\r\n\r\n**Expected behavior**\r\nThe model should translate to the provided position\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: (8) 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/cientos: ^1.0.0 => 1.0.0 \r\n @tresjs/core: ^1.0.0 => 1.0.0 \r\n vite: ^3.2.4 => 3.2.4 \r\n```\r\n**Additional context**\r\nAdd any other context about the problem here.\r\n",[2957],{"name":2944,"color":2945},"GLTFModel component doesn't inherit props ","2023-05-04T07:12:27Z","https://github.com/Tresjs/cientos/issues/6",0.80486566,{"description":2963,"labels":2964,"number":1227,"owner":2869,"repository":2965,"state":2894,"title":2966,"updated_at":2967,"url":2968,"score":2961},"### Describe the bug\r\n\r\nWhen used on a clean nuxt app, this error is prompted\r\n\r\n```bash\r\nImporting directly from module entry points is not allowed. \r\n[importing @tresjs/nuxt from virtual:nuxt:/Users/alvarosabu/Projects/tres/playground/.nuxt/plugins/client.mjs]\r\n```\r\n\r\n### Reproduction\r\n\r\nhttps://stackblitz.com/edit/nuxt-starter-bnznqb?file=nuxt.config.ts,app.vue\r\n\r\n### Steps to reproduce\r\n\r\nRun `npm i` and then `npm run dev`\r\n\r\n### System Info\r\n\r\n```shell\r\nSystem:\r\n OS: Linux 5.0 undefined\r\n CPU: (8) 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: 9.4.2 - /usr/local/bin/npm\r\n npmPackages:\r\n @tresjs/cientos: ^2.1.3 => 2.1.3 \r\n @tresjs/nuxt: ^1.0.0-alpha.0 => 1.0.0-alpha.0 \r\n nuxt: ^3.5.2 => 3.5.3 \r\n three: ^0.153.0 => 0.153.0 \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.",[],"nuxt","Importing directly from module entry points is not allowed. ","2023-06-16T12:11:07Z","https://github.com/Tresjs/nuxt/issues/6",["Reactive",2970],{},["Set"],["ShallowReactive",2973],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$f2WXxiFcdORdsd71fFBrX-2ii3DRuEGlTtWm87CXRmNM":-1},"/Tresjs/tres/31"]