feat: add Dart methods for getRenderableBoundingBox, setParameterInt and setParameterFloat4

This commit is contained in:
Nick Fisher
2024-11-02 10:18:25 +08:00
parent 124938dbc2
commit 6ff04fb76a
5 changed files with 94 additions and 13 deletions

View File

@@ -20,10 +20,13 @@ void main() async {
await viewer
.setCameraRotation(Quaternion.axisAngle(Vector3(1, 0, 0), -pi / 8));
await viewer.setBackgroundColor(1.0, 1.0, 1.0, 1.0);
await viewer
final cube = await viewer
.createGeometry(GeometryHelper.cube(normals: false, uvs: false));
await testHelper.capture(viewer, "geometry_cube_no_uv_no_normal");
await viewer.removeEntity(cube);
await testHelper.capture(viewer, "geometry_cube_removed");
await viewer.dispose();
});
test('create cube (no normals)', () async {
@@ -179,5 +182,16 @@ void main() async {
.createGeometry(GeometryHelper.sphere(normals: false, uvs: false));
await testHelper.capture(viewer, "geometry_sphere_no_normals");
});
test('create geometry instance', () async {
var viewer = await testHelper.createViewer(
cameraPosition: Vector3(0, 0, 6), bg: kRed);
final cube = await viewer
.createGeometry(GeometryHelper.sphere(normals: false, uvs: false));
await viewer.setTransform(cube, Matrix4.translation(Vector3(2, 1, 1)));
final cube2 = await viewer.createInstance(cube);
await viewer.setTransform(cube2, Matrix4.translation(Vector3(-2, 1, 1)));
await testHelper.capture(viewer, "geometry_instance");
});
});
}

View File

@@ -23,8 +23,10 @@ void main() async {
var cube = await viewer.createGeometry(GeometryHelper.cube(),
materialInstance: materialInstance);
await viewer.setMaterialPropertyFloat4(
cube, "baseColorFactor", 0, 0.0, 1.0, 0.0, 1.0);
await materialInstance.setParameterFloat4(
"baseColorFactor", 0.0, 1.0, 0.0, 1.0);
await materialInstance.setParameterInt(
"baseColorIndex", -1);
await testHelper.capture(viewer, "unlit_material_base_color");