Kaynağa Gözat

feat: (devtools) add userData to inspectable properties (#740)

* devtools: add userData to inspectable properties

* feat: use all properties of the instance

---------

Co-authored-by: Alvaro Saburido <alvaro.saburido@gmail.com>
Dennis Smuda 1 yıl önce
ebeveyn
işleme
00bef337f1
1 değiştirilmiş dosya ile 7 ekleme ve 85 silme
  1. 7 85
      src/devtools/plugin.ts

+ 7 - 85
src/devtools/plugin.ts

@@ -171,91 +171,13 @@ export function registerTresDevtools(app: DevtoolsApp, tres: TresContext) {
           }
 
           payload.state = {
-            object: [
-              {
-                key: 'uuid',
-                editable: true,
-                value: instance.uuid,
-              },
-              {
-                key: 'name',
-                editable: true,
-                value: instance.name,
-              },
-              {
-                key: 'type',
-                editable: true,
-                value: instance.type,
-              },
-              {
-                key: 'position',
-                editable: true,
-                value: instance.position,
-              },
-              {
-                key: 'rotation',
-                editable: true,
-                value: instance.rotation,
-              },
-              {
-                key: 'scale',
-                editable: true,
-                value: instance.scale,
-              },
-              {
-                key: 'geometry',
-                value: instance.geometry,
-              },
-              {
-                key: 'material',
-                value: instance.material,
-              },
-              {
-                key: 'color',
-                editable: true,
-                value: instance.color,
-              },
-              {
-                key: 'intensity',
-                editable: true,
-                value: instance.intensity,
-              },
-              {
-                key: 'castShadow',
-                editable: true,
-                value: instance.castShadow,
-              },
-              {
-                key: 'receiveShadow',
-                editable: true,
-                value: instance.receiveShadow,
-              },
-              {
-                key: 'frustumCulled',
-                editable: true,
-                value: instance.frustumCulled,
-              },
-              {
-                key: 'matrixAutoUpdate',
-                editable: true,
-                value: instance.matrixAutoUpdate,
-              },
-              {
-                key: 'matrixWorldNeedsUpdate',
-                editable: true,
-                value: instance.matrixWorldNeedsUpdate,
-              },
-              {
-                key: 'matrixWorld',
-                value: instance.matrixWorld,
-              },
-
-              {
-                key: 'visible',
-                editable: true,
-                value: instance.visible,
-              },
-            ],
+            object: Object.entries(instance)
+              .map(([key, value]) => {
+                return { key, value, editable: true }
+              })
+              .filter(({ key }) => {
+                return key !== 'parent'
+              }),
           }
 
           if (instance.isScene) {