update example project with debug widgets for child entities & morph targets
This commit is contained in:
@@ -1,10 +1,13 @@
|
||||
import 'dart:async';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_filament/filament/widgets/debug/entity_list_widget.dart';
|
||||
import 'package:flutter_filament_example/camera_matrix_overlay.dart';
|
||||
import 'package:flutter_filament_example/menus/controller_menu.dart';
|
||||
import 'package:flutter_filament_example/example_viewport.dart';
|
||||
import 'package:dart_filament/dart_filament/entities/entity_transform_controller.dart';
|
||||
import 'package:flutter_filament_example/menus/scene_menu.dart';
|
||||
import 'package:flutter_filament/flutter_filament.dart';
|
||||
import 'package:flutter_filament_example/picker_result_widget.dart';
|
||||
|
||||
|
||||
const loadDefaultScene = bool.hasEnvironment('--load-default-scene');
|
||||
@@ -178,18 +181,18 @@ class ExampleWidgetState extends State<ExampleWidget> {
|
||||
Expanded(child: Container()),
|
||||
]))),
|
||||
if (isInitialized) ...[
|
||||
// EntityListWidget(controller: _plugin.viewer),
|
||||
// Padding(
|
||||
// padding: const EdgeInsets.only(top: 10, left: 20, right: 20),
|
||||
// child: ValueListenableBuilder(
|
||||
// valueListenable: showProjectionMatrices,
|
||||
// builder: (ctx, value, child) => CameraMatrixOverlay(
|
||||
// controller: _plugin, showProjectionMatrices: value)),
|
||||
// ),
|
||||
// Align(
|
||||
// alignment: Alignment.topRight,
|
||||
// child: PickerResultWidget(controller: _plugin.viewer),
|
||||
// )
|
||||
EntityListWidget(controller: _plugin.viewer),
|
||||
Padding(
|
||||
padding: const EdgeInsets.only(top: 10, left: 20, right: 20),
|
||||
child: ValueListenableBuilder(
|
||||
valueListenable: showProjectionMatrices,
|
||||
builder: (ctx, value, child) => CameraMatrixOverlay(
|
||||
controller: _plugin.viewer, showProjectionMatrices: value)),
|
||||
),
|
||||
Align(
|
||||
alignment: Alignment.topRight,
|
||||
child: PickerResultWidget(controller: _plugin.viewer),
|
||||
)
|
||||
]
|
||||
]);
|
||||
});
|
||||
|
||||
@@ -77,39 +77,8 @@ class _AssetSubmenuState extends State<AssetSubmenu> {
|
||||
1000.0 / 60.0));
|
||||
},
|
||||
child: const Text('Set bone transform animation for Cylinder')),
|
||||
MenuItemButton(
|
||||
closeOnActivate: false,
|
||||
onPressed: () async {
|
||||
var names = await widget.controller.viewer.getMorphTargetNames(
|
||||
widget.controller.viewer.scene.listEntities().last, "Cylinder");
|
||||
print("NAMES : $names");
|
||||
await showDialog(
|
||||
context: context,
|
||||
builder: (ctx) {
|
||||
return Container(
|
||||
height: 100,
|
||||
width: 100,
|
||||
color: Colors.white,
|
||||
child: Text(names.join(",")));
|
||||
});
|
||||
},
|
||||
child: const Text("Show morph target names for Cylinder")),
|
||||
MenuItemButton(
|
||||
onPressed: () async {
|
||||
var cylinder = await widget.controller.viewer.getChildEntity(
|
||||
widget.controller.viewer.scene.listEntities().last, "Cylinder");
|
||||
widget.controller.viewer
|
||||
.setMorphTargetWeights(cylinder, List.filled(4, 1.0));
|
||||
},
|
||||
child: const Text("set Cylinder morph weights to 1")),
|
||||
MenuItemButton(
|
||||
onPressed: () async {
|
||||
var cylinder = await widget.controller.viewer.getChildEntity(
|
||||
widget.controller.viewer.scene.listEntities().last, "Cylinder");
|
||||
widget.controller.viewer
|
||||
.setMorphTargetWeights(cylinder, List.filled(4, 0.0));
|
||||
},
|
||||
child: const Text("Set Cylinder morph weights to 0")),
|
||||
|
||||
|
||||
MenuItemButton(
|
||||
onPressed: () async {
|
||||
var morphTargets = await widget.controller.viewer.getMorphTargetNames(
|
||||
|
||||
Reference in New Issue
Block a user