update example project
This commit is contained in:
@@ -26,7 +26,7 @@ PODS:
|
||||
- Filament/utils (1.12.4)
|
||||
- Flutter (1.0.0)
|
||||
- mimetic_filament (0.0.1):
|
||||
- Filament (~> 1.12.3)
|
||||
- Filament (~> 1.12.4)
|
||||
- Flutter
|
||||
|
||||
DEPENDENCIES:
|
||||
@@ -46,7 +46,7 @@ EXTERNAL SOURCES:
|
||||
SPEC CHECKSUMS:
|
||||
Filament: 701abb8200237da11b6f74c318f2a875ef309b91
|
||||
Flutter: 50d75fe2f02b26cc09d224853bb45737f8b3214a
|
||||
mimetic_filament: 089d6e6ef4a3061fa22b023a895e0a3e0e350254
|
||||
mimetic_filament: 786c54c8c204e2898f9ca33c45ea7500042df62a
|
||||
|
||||
PODFILE CHECKSUM: 7adbc9d59f05e1b01f554ea99b6c79e97f2214a2
|
||||
|
||||
|
||||
@@ -285,7 +285,7 @@
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_ANALYZER_NONNULL = YES;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "c++17";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
@@ -315,6 +315,7 @@
|
||||
ENABLE_NS_ASSERTIONS = NO;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||
GCC_INPUT_FILETYPE = automatic;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||
@@ -363,7 +364,7 @@
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_ANALYZER_NONNULL = YES;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "c++17";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
@@ -394,6 +395,7 @@
|
||||
ENABLE_TESTABILITY = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||
GCC_DYNAMIC_NO_PIC = NO;
|
||||
GCC_INPUT_FILETYPE = automatic;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
@@ -420,7 +422,7 @@
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_ANALYZER_NONNULL = YES;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "c++17";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
@@ -450,6 +452,7 @@
|
||||
ENABLE_NS_ASSERTIONS = NO;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||
GCC_INPUT_FILETYPE = automatic;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||
|
||||
@@ -23,7 +23,7 @@ class _MyAppState extends State<MyApp> {
|
||||
|
||||
bool _rotate = false;
|
||||
int _primitiveIndex = 0;
|
||||
double _weight = 0.0;
|
||||
final weights = List.filled(255, 0.0);
|
||||
List<String> _targets = [];
|
||||
|
||||
@override
|
||||
@@ -61,97 +61,100 @@ class _MyAppState extends State<MyApp> {
|
||||
},
|
||||
child: Stack(children: [
|
||||
FilamentWidget(controller: _filamentController),
|
||||
Column(
|
||||
mainAxisSize: MainAxisSize.min,
|
||||
children: [
|
||||
ElevatedButton(
|
||||
child: Text("initialize"),
|
||||
onPressed: () async {
|
||||
await _filamentController.loadSkybox(
|
||||
"assets/default_env/default_env_skybox.ktx",
|
||||
"assets/default_env/default_env_ibl.ktx");
|
||||
await _filamentController.loadGltf(
|
||||
"assets/guy.gltf", "assets");
|
||||
_targets = await _filamentController
|
||||
.getTargetNames("CC_Base_Body.002");
|
||||
setState(() {});
|
||||
Positioned.fill(
|
||||
top: 200,
|
||||
child: SingleChildScrollView(
|
||||
child: Column(
|
||||
mainAxisSize: MainAxisSize.min,
|
||||
children: [
|
||||
SizedBox(
|
||||
height: 100,
|
||||
child: Row(children: [
|
||||
ElevatedButton(
|
||||
child: Text("initialize"),
|
||||
onPressed: () async {
|
||||
await _filamentController.loadSkybox(
|
||||
"assets/default_env/default_env_skybox.ktx",
|
||||
"assets/default_env/default_env_ibl.ktx");
|
||||
await _filamentController.loadGltf(
|
||||
"assets/caleb_mouth_morph_target.gltf",
|
||||
"assets");
|
||||
_targets = await _filamentController
|
||||
.getTargetNames("CC_Base_Body");
|
||||
setState(() {});
|
||||
|
||||
// _filamentController.createMorpher(
|
||||
// "CC_Base_Body.003", "CC_Base_Body.003",
|
||||
// materialName: "Material");
|
||||
}),
|
||||
// ElevatedButton(
|
||||
// child: Text("load skybox"),
|
||||
// onPressed: () {
|
||||
// _filamentController.loadSkybox(
|
||||
// "assets/default_env/default_env_skybox.ktx",
|
||||
// "assets/default_env/default_env_ibl.ktx");
|
||||
// }),
|
||||
// ElevatedButton(
|
||||
// child: Text("load gltf"),
|
||||
// onPressed: () {
|
||||
// _filamentController.loadGltf(
|
||||
// "assets/guy.gltf", "assets", "Material");
|
||||
// }),
|
||||
// ElevatedButton(
|
||||
// child: Text("create morpher"),
|
||||
// onPressed: () {
|
||||
// _filamentController.createMorpher(
|
||||
// "CC_Base_Body.003", "CC_Base_Body.003",
|
||||
// materialName: "Material");
|
||||
// }),
|
||||
Row(children: [
|
||||
Container(
|
||||
padding: EdgeInsets.all(10),
|
||||
color: Colors.white,
|
||||
child: Text(_primitiveIndex.toString())),
|
||||
ElevatedButton(
|
||||
child: Text("+"),
|
||||
onPressed: () {
|
||||
setState(() {
|
||||
_primitiveIndex = min(_primitiveIndex + 1, 5);
|
||||
});
|
||||
}),
|
||||
ElevatedButton(
|
||||
child: Text("-"),
|
||||
onPressed: () {
|
||||
setState(() {
|
||||
_primitiveIndex = max(_primitiveIndex - 1, 0);
|
||||
});
|
||||
}),
|
||||
]),
|
||||
Slider(
|
||||
min: 0,
|
||||
max: 1,
|
||||
divisions: 10,
|
||||
value: _weight,
|
||||
onChanged: (v) {
|
||||
setState(() {
|
||||
_weight = v;
|
||||
_filamentController.applyWeights(
|
||||
List.filled(255, _weight),
|
||||
_primitiveIndex.toInt());
|
||||
});
|
||||
}),
|
||||
Row(children: [
|
||||
Checkbox(
|
||||
value: _rotate,
|
||||
onChanged: (v) {
|
||||
setState(() {
|
||||
_rotate = v == true;
|
||||
});
|
||||
}),
|
||||
ElevatedButton(
|
||||
onPressed: () => _filamentController.zoom(100.0),
|
||||
child: const Text("+")),
|
||||
ElevatedButton(
|
||||
onPressed: () => _filamentController.zoom(-100.0),
|
||||
child: const Text("-"))
|
||||
]),
|
||||
] +
|
||||
_targets.map((t) => Text(t)).toList()),
|
||||
_filamentController.createMorpher(
|
||||
"CC_Base_Body", [1, 7, 8]);
|
||||
}),
|
||||
Checkbox(
|
||||
value: _rotate,
|
||||
onChanged: (v) {
|
||||
setState(() {
|
||||
_rotate = v == true;
|
||||
});
|
||||
}),
|
||||
ElevatedButton(
|
||||
onPressed: () =>
|
||||
_filamentController.zoom(30.0),
|
||||
child: const Text("-")),
|
||||
ElevatedButton(
|
||||
onPressed: () =>
|
||||
_filamentController.zoom(-30.0),
|
||||
child: const Text("+")),
|
||||
ElevatedButton(
|
||||
onPressed: () =>
|
||||
_filamentController.playAnimation(0),
|
||||
child: const Text("Play"))
|
||||
])),
|
||||
Column(
|
||||
children: _targets
|
||||
.asMap()
|
||||
.map((i, t) => MapEntry(
|
||||
i,
|
||||
Row(children: [
|
||||
Text(t),
|
||||
Slider(
|
||||
min: 0,
|
||||
max: 1,
|
||||
divisions: 10,
|
||||
value: weights[i],
|
||||
onChanged: (v) {
|
||||
setState(() {
|
||||
weights[i] = v;
|
||||
_filamentController
|
||||
.applyWeights(weights);
|
||||
});
|
||||
})
|
||||
])))
|
||||
.values
|
||||
.toList(),
|
||||
)
|
||||
],
|
||||
),
|
||||
)),
|
||||
])),
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
// ElevatedButton(
|
||||
// child: Text("load skybox"),
|
||||
// onPressed: () {
|
||||
// _filamentController.loadSkybox(
|
||||
// "assets/default_env/default_env_skybox.ktx",
|
||||
// "assets/default_env/default_env_ibl.ktx");
|
||||
// }),
|
||||
// ElevatedButton(
|
||||
// child: Text("load gltf"),
|
||||
// onPressed: () {
|
||||
// _filamentController.loadGltf(
|
||||
// "assets/guy.gltf", "assets", "Material");
|
||||
// }),
|
||||
// ElevatedButton(
|
||||
// child: Text("create morpher"),
|
||||
// onPressed: () {
|
||||
// _filamentController.createMorpher(
|
||||
// "CC_Base_Body.003", "CC_Base_Body.003",
|
||||
// materialName: "Material");
|
||||
// }),
|
||||
|
||||
Reference in New Issue
Block a user