update wasm example
This commit is contained in:
@@ -1,35 +1,29 @@
|
|||||||
import 'package:dart_filament/dart_filament/compatibility/compatibility.dart';
|
import 'package:dart_filament/dart_filament/compatibility/compatibility.dart';
|
||||||
import 'package:dart_filament/dart_filament.dart';
|
import 'package:dart_filament/dart_filament.dart';
|
||||||
|
import 'package:animation_tools_dart/animation_tools_dart.dart';
|
||||||
|
|
||||||
void main(List<String> args) async {
|
void main(List<String> args) async {
|
||||||
print("MAIN");
|
|
||||||
|
|
||||||
// final resourceLoader = calloc<Char>(1);
|
|
||||||
|
|
||||||
// var loadToOut = NativeCallable<
|
|
||||||
// Void Function(Pointer<Char>,
|
|
||||||
// Pointer<ResourceBuffer>)>.listener(DartResourceLoader.loadResource);
|
|
||||||
// print("LOADED");
|
|
||||||
// resourceLoader.ref.loadToOut = loadToOut.nativeFunction;
|
|
||||||
// var freeResource = NativeCallable<Void Function(ResourceBuffer)>.listener(
|
|
||||||
// DartResourceLoader.freeResource);
|
|
||||||
// resourceLoader.ref.freeResource = freeResource.nativeFunction;
|
|
||||||
final resourceLoader = flutter_filament_web_get_resource_loader_wrapper();
|
final resourceLoader = flutter_filament_web_get_resource_loader_wrapper();
|
||||||
var viewer = FilamentViewer(resourceLoader: resourceLoader.cast<Void>());
|
var viewer = FilamentViewer(resourceLoader: resourceLoader.cast<Void>());
|
||||||
print("Created viewer, waiting for initialization");
|
|
||||||
viewer.initialized.then((_) async {
|
viewer.initialized.then((_) async {
|
||||||
print("Initialied");
|
|
||||||
var entity = await viewer.loadGlb(
|
var entity = await viewer.loadGlb(
|
||||||
"/Users/nickfisher/Documents/polyvox/apps/packages/flutter_filament/flutter_filament_federated/flutter_filament/example/assets/shapes/shapes.glb");
|
"/Users/nickfisher/Documents/polyvox/apps/packages/flutter_filament/flutter_filament_federated/flutter_filament/example/assets/shapes/shapes.glb");
|
||||||
print("Loaded glb");
|
|
||||||
var entities = await viewer.getChildEntities(entity, true);
|
var entities = await viewer.getChildEntities(entity, true);
|
||||||
print("Entities : $entities");
|
|
||||||
for (final childEntity in entities) {
|
for (final childEntity in entities) {
|
||||||
var entityName = await viewer.getNameForEntity(childEntity);
|
final childName = await viewer.getNameForEntity(childEntity);
|
||||||
print("entityName : $entityName");
|
|
||||||
var morphTargetNames =
|
var morphTargetNames =
|
||||||
await viewer.getMorphTargetNames(entity, entityName!);
|
await viewer.getMorphTargetNames(entity, childEntity!);
|
||||||
print("morph targets : $morphTargetNames");
|
if (morphTargetNames.isNotEmpty) {
|
||||||
|
await viewer.setMorphTargetWeights(
|
||||||
|
childEntity, List<double>.filled(morphTargetNames.length, 1.0));
|
||||||
|
}
|
||||||
|
var animationData = MorphAnimationData(
|
||||||
|
List.generate(
|
||||||
|
10, (_) => List<double>.filled(morphTargetNames.length, 1.0)),
|
||||||
|
morphTargetNames);
|
||||||
|
|
||||||
|
await viewer.setMorphAnimationData(entity, animationData,
|
||||||
|
targetMeshNames: [childName!]);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user