mirror of
https://github.com/exogen/t2-model-skinner.git
synced 2026-01-19 19:24:44 +00:00
2 lines
1.3 KiB
JavaScript
2 lines
1.3 KiB
JavaScript
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[990],{85:function(e,t,n){n.r(t),n.d(t,{default:function(){return i}});var l=n(5893),r=n(7294);n(258);var a=n(8496);function u(e){var t;let{modelUrl:n,environmentImageUrl:u,animationName:i,animationPaused:o=!1,cameraOrbit:s,cameraTarget:d,fieldOfView:f,children:c}=e,[m,v]=(0,r.useState)(null),[h,E]=(0,r.useState)(!1),p=(0,r.useMemo)(()=>m&&h&&m.model?{modelViewer:m,model:m.model,isLoaded:h}:null,[m,h]);return t=m,(0,r.useEffect)(()=>{t&&(t.timeScale=.5)},[t]),(0,r.useEffect)(()=>{if(!m)return;let e=!1,t=()=>{e||E(!0)};return m.addEventListener("load",t),()=>{e=!0,m.removeEventListener("load",t)}},[m,n]),(0,r.useEffect)(()=>{m&&m.loaded&&E(!0)},[m,n]),(0,r.useEffect)(()=>{m&&h&&(o?m.pause():m.play())},[m,h,o]),(0,r.useEffect)(()=>{m&&h&&f&&m.setAttribute("field-of-view",f)},[m,h,f]),(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)("model-viewer",{ref:v,alt:"Tribes 2 Model",src:n,"shadow-intensity":0,"camera-controls":!0,"camera-orbit":s,"camera-target":d,"min-field-of-view":"10deg","animation-name":null!=i?i:void 0,autoplay:i?"true":"false","touch-action":"pan-y","environment-image":null!=u?u:void 0,style:{width:"100%",height:"100%"}}),h?(0,l.jsx)(a.K.Provider,{value:p,children:c}):null]})}function i(e){return(0,l.jsx)(u,{...e},e.modelUrl)}}}]);
|
|
//# sourceMappingURL=990.ccb4bc1efe5cd94f.js.map
|