`","2024-08-21T10:29:21Z","https://github.com/Tresjs/tres/issues/418",0.76785445,{"description":2894,"labels":2895,"number":2904,"owner":2868,"repository":2869,"state":2870,"title":2905,"updated_at":2906,"url":2907,"score":2908},"### Description\n\nAs a developer using Cientos, it would be useful to have a function available that allows to capture a screenshot of the scene canvas.\n\n### Suggested solution\n\nProvide a function that allows capturing screenshots.\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.",[2896,2898,2901],{"name":2882,"color":2897},"DEEAB8",{"name":2899,"color":2900},"has-workaround","aea9c4",{"name":2902,"color":2903},"p2-nice-to-have","D4C5F9",229,"Taking screenshots of the canvas","2024-04-05T14:54:01Z","https://github.com/Tresjs/cientos/issues/229",0.77643543,{"description":2910,"labels":2911,"number":285,"owner":2868,"repository":2918,"state":2870,"title":2919,"updated_at":2920,"url":2921,"score":2922},"Dependant on the following issues being completed: #13 #14 \r\n\r\nMotion controls and hand gestures are the 2 primary ways that users interact with XR headsets.\r\n\r\nSupport for these control input varies across different headset manufacturers, with some supporting only hand controls (Apple vision pro), only motion controls (Valve index), or in the case of modern headsets such as Meta quest 3, both. For headsets that support both hand tracking and motion controls there is also the possibility of using both control inputs simultaneously.\r\n\r\nFor developers it is likely they will want to utilise both methods for maximum compatibility of their XR software application across different headsets.\r\n\r\nTo simplify the Tres XR developer workflow of utilising either/both regardless of which are supported on the target device, and be confident the available relevant controls will be utilised I suggest implementing a MixedControllers component.\r\n\r\nThe MixedControllers component would contain an a single instance of both the HandsController component and the MotionControllers component. These contained components by default will automatically be enabled/disabled based on the presence of device support. With the addition of advanced props to further tweak the constraints of controls based on environment this will also allow the same component to be used for more device specific application where explicitly enable specific controls is desirable.",[2912,2915],{"name":2913,"color":2914},"enhancement","a2eeef",{"name":2916,"color":2917},"help wanted","008672","XR","Mixed controller/s components","2024-05-12T16:09:17Z","https://github.com/Tresjs/XR/issues/15",0.7876617,{"description":2924,"labels":2925,"number":93,"owner":2868,"repository":2869,"state":2926,"title":2927,"updated_at":2928,"url":2929,"score":2930},"**Is your feature request related to a problem? Please describe.**\r\nWe should have a [CameraControls](https://github.com/yomotsu/camera-controls) component as it is a very handy tool.\r\n\r\n**Describe the solution you'd like**\r\nAbstraction in cientos.\r\n\r\n**Suggested solution**\r\nSee [drei](https://github.com/pmndrs/drei).\r\n",[],"closed","CameraControls in cientos","2023-07-26T13:40:26Z","https://github.com/Tresjs/cientos/issues/1",0.46739057,{"description":2932,"labels":2933,"number":104,"owner":2868,"repository":2869,"state":2926,"title":2938,"updated_at":2939,"url":2940,"score":2941},"**Is your feature request related to a problem? Please describe.**\r\n`packages/cientos/core/OrbitControls.vue` offers limited props\r\n\r\n```ts\r\nexport interface OrbitControlsProps {\r\n /**\r\n * Whether to make this the default controls.\r\n *\r\n * @default false\r\n * @type {boolean}\r\n * @memberof OrbitControlsProps\r\n * @see https://threejs.org/docs/#examples/en/controls/OrbitControls\r\n */\r\n makeDefault?: boolean\r\n /**\r\n * The camera to control.\r\n *\r\n * @type {Camera}\r\n * @memberof OrbitControlsProps\r\n * @see https://threejs.org/docs/#examples/en/controls/OrbitControls\r\n */\r\n camera?: Camera\r\n /**\r\n * The dom element to listen to.\r\n *\r\n * @type {HTMLElement}\r\n * @memberof OrbitControlsProps\r\n * @see https://threejs.org/docs/#examples/en/controls/OrbitControls\r\n */\r\n domElement?: HTMLElement\r\n /**\r\n * The target to orbit around.\r\n *\r\n * @type {Ref\u003CVector3>}\r\n * @memberof OrbitControlsProps\r\n * @see https://threejs.org/docs/#examples/en/controls/OrbitControls\r\n */\r\n target?: Ref\u003CVector3>\r\n /**\r\n * Whether to enable damping.\r\n *\r\n * @default false\r\n * @type {boolean}\r\n * @memberof OrbitControlsProps\r\n * @see https://threejs.org/docs/#examples/en/controls/OrbitControls\r\n */\r\n enableDamping?: boolean\r\n}\r\n```\r\n\r\n\r\n**Describe the solution you'd like**\r\nThe ThreeJS [OrbitControls](https://threejs.org/docs/#examples/en/controls/OrbitControls) has way more features and properties we could support\r\n\r\n**Suggested solution**\r\nAdd rest of the properties to abstraction\r\n\r\n**Additional context**\r\nAdd any other context or screenshots about the feature request here.\r\n",[2934,2937],{"name":2935,"color":2936},"good first issue","7057ff",{"name":2916,"color":2917},"Enhance OrbitControls cientos abstraction","2023-05-18T13:44:09Z","https://github.com/Tresjs/cientos/issues/3",0.714481,{"description":2943,"labels":2944,"number":104,"owner":2868,"repository":2945,"state":2926,"title":2946,"updated_at":2947,"url":2948,"score":2941},"```Vue\r\n\u003CTresCanvas clear-color=\"#000000\">\r\n \u003CTresPerspectiveCamera\r\n :position=\"[0, 0, 5000]\"\r\n :fov=\"50\"\r\n :aspect=\"1\"\r\n :near=\"1\"\r\n :far=\"10000\"\r\n />\r\n \u003CTresScene>\r\n \u003CTresPoints>\r\n \u003CTresBufferGeometry :position=\"[vertices, 3]\" />\r\n \u003CTresPointsMaterial :color=\"0x888888\" />\r\n \u003C/TresPoints>\r\n \u003C/TresScene>\r\n\u003C/TresCanvas>\r\n```\r\nNo matter how i change `aspect`, for exampe **0.5** or **2**, there is no change in view.\r\n\r\naspect = 0.5\r\n\u003Cimg width=\"656\" alt=\"image\" src=\"https://user-images.githubusercontent.com/11868294/219375921-50474cdc-39bf-4248-bca7-1dd2ee6fe873.png\">\r\n\r\n\r\naspect = 1\r\n\u003Cimg width=\"582\" alt=\"image\" src=\"https://user-images.githubusercontent.com/11868294/219375756-00dc3849-7ec3-4428-bd6c-5ebdb00d8381.png\">\r\n\r\n\r\n\r\n\r\n\r\naspect = 2\r\n\u003Cimg width=\"634\" alt=\"image\" src=\"https://user-images.githubusercontent.com/11868294/219375639-72380307-a3f5-455f-8d7a-ef44a0e880cd.png\">\r\n\r\nMaybe i miss something?\r\n\r\n\r\n",[],"lab","TresPerspectiveCamera: aspect not work?","2023-08-26T15:28:15Z","https://github.com/Tresjs/lab/issues/3",{"description":2950,"labels":2951,"number":2952,"owner":2868,"repository":2869,"state":2926,"title":2953,"updated_at":2954,"url":2955,"score":2956},"### Describe the bug\n\n[`CameraControls`](https://cientos.tresjs.org/guide/controls/camera-controls.html) component ignores `mouseButtons` and `touches` properties.\n\n### Reproduction\n\nhttps://play.tresjs.org/#eNqdVttu2zgQ/RVCwSIPa1NynGS72nTh2r0gi80FtZ8a9YGWGIsJRRIk5dgI/O8dkr5IbpA6TQTDnDkzc3jIGfk5mmhqPiiF5zWN0ujC5Jopiwy1tUKciNn7LLImi/7NBKuU1BY9oyExLB+XpJBPV0R10Pjrl+FIcqnHiuS0g67lRAoKLsXEDK3QvZYVOralpvT4n0YeV3pExJyYLWhgwfZg4lzqNnZEKqrJSAqrJX8Bz6iw0jRCRqM1JPeR3Xwd6iCZgJWxaMbRe/ScCYRyTon2e0jR8dG7k4/D0dlxx3mM36dJkdU19RbCVUlSdE+4CYYAgf1Oloqm+/I4hKytqu1Oo3RfMweyO9HStobgXgHtizicDpwFLCytFCeWwgqhi4aW8+6UiQLObcb9uSH48/5bqo2iuWVzGuREqZKGWSYFoO/+7iD3fM8iFG/C9mRPK1kb2p3WFsgaCHpGnN7bFNTGH0aTy5tr/O3m5gqtmjlc6Stqyna17kkHwZO4cqmWlmwcSQddEVvi28vgXafZ7BFU+UJlRa1eopTomWNx1+ugHj7roH6TfKP0REoBSalmhKPcyQ5R62NuUo03Aa9zB4ruccVyYmw3XIB22aFcvMDTkdx8vInr6Wf3/xtcQWMn9c9KjlVJ9U7Lg5l8Hg6T/vCXTD4y7a6aFIT/z2al/UlBIHXqD58JSwW4luDo4ZO2qOsqoUa44GC4iBu3H5bGLrn7WtqKQ7NMZbEMfV2B8kykKIH2QUiRovDdFZYldcRS1EuSP7zhiRW23K5XmTiC/guJfoFFaEryx5mWtShg1Pg5cpQkrg6kgcb1BKNOFKZTtyIKPxgpYOT69NnaAZM2DQWdrTkNnSOLSmuVSeM4LwTEF5SzucaC2lioKm7CB318jntxwYyNnRnQWeTHTCtxGJtvyR0iIP1fONmlX5vbVewTJY+KiEO4b7GDU5xsiW+MuGIuppnbvU0OyetwA8h4ngDfP6mpmjLASw/m2cH6NuCDXoLPICNMWrrAVVvdNQ5usKbFGxKHgNdSA7Bb0IodkHQDdZs/xecxZ9MXU+69Hw/IvBcxOMHvcD+c2J4LV7Ko+e74XE3ohxU0gjUAumezvTbIZaUYp/pGuVHRbgfCuXz6z9u2L2MfU9L88QX7g1mE3dzCDaV6Dme8uz8wGKgN7k/ja7qA71tnYP2q8ys1kteOY4ANofGBdgPn2V76roaZMzGfFn7MrTfVImrhd4O33m1m8PaCB8N3L5zH+zswekWl3c76uL8VfPUDB9Q/3Q==\n\n### Steps to reproduce\n\n1. Add `PerspectiveCamera` to a scene\r\n2. Add `CameraControls` from `@tresjs/cientos`\r\n3. Pass `mouseButtons` prop using `camera-controls`' `ACTION` enum:\r\n ```\r\n import CC from 'camera-controls';\r\n ...\r\n \u003CCameraControls :mouse-buttons=\"{ left: CC.ACTION.ZOOM }\" />\r\n ```\r\n4. The camera should zoom on drag when left mouse button is pressed, but instead the camera rotates (default behavior)\r\n\r\n_Note:_ The same applies to `touches` as both of the props are discarded when turning props into refs, and aren't passed down to the extended component: https://github.com/Tresjs/cientos/blob/main/src/core/controls/CameraControls.vue#L331C1-L357C18\r\n\r\nI prepared a fix for that, will submit a PR shortly 😉 \r\n\n\n### System Info\n\n```shell\nSystem:\r\n OS: macOS 14.4.1\r\n CPU: (8) arm64 Apple M1 Pro\r\n Memory: 4.18 GB / 32.00 GB\r\n Shell: 5.9 - /bin/zsh\r\n Binaries:\r\n Node: 20.11.1 - ~/.nvm/versions/node/v20.11.1/bin/node\r\n npm: 10.2.4 - ~/.nvm/versions/node/v20.11.1/bin/npm\r\n pnpm: 8.15.4 - ~/Library/pnpm/pnpm\r\n bun: 1.0.27 - ~/.bun/bin/bun\r\n Browsers:\r\n Chrome: 124.0.6367.61\r\n Safari: 17.4.1\r\n npmPackages:\r\n @tresjs/cientos: ^3.8.0 => 3.8.0 \r\n @tresjs/core: ^3.8.1 => 3.8.1 \r\n @tresjs/leches: ^0.14.0 => 0.14.0 \r\n @tresjs/post-processing: ^0.7.1 => 0.7.1 \r\n vite: ^5.1.5 => 5.1.6\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.",[],384,"CameraControls component doesn't support mouseButtons and touches props","2024-04-22T19:21:04Z","https://github.com/Tresjs/cientos/issues/384",0.7238064,{"description":2958,"labels":2959,"number":2963,"owner":2868,"repository":2888,"state":2926,"title":2964,"updated_at":2965,"url":2966,"score":2967},"The current implementation allows extending the catalog inside the core but not in the build of `cientos` or any other external pkg\r\n\r\nThe idea would be to refactor the OrbitControls on `cientos` to be able to extend the catalog. \r\n\r\nThis opens the door so anyone can create TresJS Plugin (this could be interesting to you @CarelessCourage )",[2960],{"name":2961,"color":2962},"feature","c2e0c6",25,"Extend catalog in `cientos` ","2022-12-08T10:10:57Z","https://github.com/Tresjs/tres/issues/25",0.7632574,{"description":2969,"labels":2970,"number":2971,"owner":2868,"repository":2972,"state":2926,"title":2973,"updated_at":2974,"url":2975,"score":2976},"### Describe the bug\n\nI added OrbitControls, and when scrolling I get the following error\r\n\r\n```\r\nWARNING: OrbitControls.js encountered an unknown camera type - dolly/zoom disabled.\r\n```\r\n\r\nMake it impossible to scroll to zoom in/out. \r\n\r\n\r\n\n\n### Reproduction\n\nhttps://stackblitz.com/edit/nuxt-starter-3nnslu?file=package.json\n\n### Steps to reproduce\n\n_No response_\n\n### System Info\n\n```shell\nSee https://stackblitz.com/edit/nuxt-starter-3nnslu?file=package.json\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.",[],49,"nuxt","Nuxtjs: OrbitControls.js encountered an unknown camera type","2023-11-08T09:28:32Z","https://github.com/Tresjs/nuxt/issues/49",0.7686311,["Reactive",2978],{},["Set"],["ShallowReactive",2981],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$fp6aqt21BC5FQSDZ39KuBWEBul9HvnD7-vf_XqzR7Qts":-1},"/Tresjs/lab/1"]