158 lines
5.5 KiB
Dart
158 lines
5.5 KiB
Dart
// // ignore_for_file: unused_local_variable
|
|
|
|
// import 'dart:async';
|
|
|
|
// import 'package:test/test.dart';
|
|
// import 'package:thermion_dart/thermion_dart.dart';
|
|
// import 'package:vector_math/vector_math_64.dart';
|
|
// import 'helpers.dart';
|
|
|
|
// void main() async {
|
|
// final testHelper = TestHelper("view");
|
|
|
|
// group('view tests', () {
|
|
// test('get camera from view', () async {
|
|
// await testHelper.withViewer((viewer) async {
|
|
// var view = await viewer.getViewAt(0);
|
|
// expect(await view.getCamera(), isNotNull);
|
|
// });
|
|
// });
|
|
|
|
// test('one swapchain, render view to render target', () async {
|
|
// await testHelper.withViewer((viewer) async {
|
|
// final texture = await testHelper.createTexture(500, 500);
|
|
// final renderTarget = await viewer.createRenderTarget(
|
|
// 500, 500, texture.metalTextureAddress);
|
|
// final view = await viewer.getViewAt(0);
|
|
// await view.setRenderTarget(renderTarget);
|
|
|
|
// await viewer.setBackgroundColor(1.0, 0, 0, 1);
|
|
// final cube = await viewer
|
|
// .createGeometry(GeometryHelper.cube(normals: false, uvs: false));
|
|
|
|
// var mainCamera = await viewer.getMainCamera();
|
|
// mainCamera.setTransform(Matrix4.translation(Vector3(0, 0, 5)));
|
|
// await testHelper.capture(
|
|
// viewer,
|
|
// renderTarget: renderTarget,
|
|
// "default_swapchain_default_view_render_target");
|
|
// });
|
|
// });
|
|
|
|
// test('create secondary view, default swapchain', () async {
|
|
// await testHelper.withViewer((viewer) async {
|
|
// final cube = await viewer
|
|
// .createGeometry(GeometryHelper.cube(normals: false, uvs: false));
|
|
|
|
// var mainCamera = await viewer.getMainCamera();
|
|
// mainCamera.setTransform(Matrix4.translation(Vector3(0, 0, 5)));
|
|
// await testHelper.capture(viewer, "default_swapchain_default_view");
|
|
|
|
// final view = await viewer.createView();
|
|
// view.setViewport(500, 500);
|
|
// view.setCamera(mainCamera);
|
|
// await testHelper.capture(
|
|
// viewer,
|
|
// "default_swapchain_new_view_with_main_camera",
|
|
// view: view,
|
|
// );
|
|
|
|
// var newCamera = await viewer.createCamera();
|
|
// newCamera.setTransform(Matrix4.translation(Vector3(0.0, 0.0, 10.0)));
|
|
// newCamera.setLensProjection();
|
|
// view.setCamera(newCamera);
|
|
|
|
// await testHelper.capture(
|
|
// viewer,
|
|
// "default_swapchain_new_view_new_camera",
|
|
// view: view,
|
|
// );
|
|
|
|
// await testHelper.capture(
|
|
// viewer,
|
|
// "default_swapchain_default_view_main_camera_no_change",
|
|
// );
|
|
// });
|
|
// });
|
|
|
|
// test('create secondary view, different swapchain', () async {
|
|
// await testHelper.withViewer((viewer) async {
|
|
// final cube = await viewer.createGeometry(GeometryHelper.cube());
|
|
|
|
// var mainCamera = await viewer.getMainCamera();
|
|
// mainCamera.setTransform(Matrix4.translation(Vector3(0, 0, 5)));
|
|
// final swapChain = await viewer.createHeadlessSwapChain(1, 1);
|
|
// await testHelper.capture(
|
|
// viewer, "create_swapchain_default_view_default_swapchain");
|
|
|
|
// final view = await viewer.createView();
|
|
|
|
// final texture = await testHelper.createTexture(200, 400);
|
|
// final renderTarget = await viewer.createRenderTarget(
|
|
// 200, 400, texture.metalTextureAddress);
|
|
// await view.setRenderTarget(renderTarget);
|
|
|
|
// await view.setViewport(200, 400);
|
|
// view.setCamera(mainCamera);
|
|
// mainCamera.setLensProjection(aspect: 0.5);
|
|
|
|
// await testHelper.capture(
|
|
// viewer,
|
|
// view: view,
|
|
// swapChain: swapChain,
|
|
// renderTarget: renderTarget,
|
|
// "create_swapchain_secondary_view_new_swapchain",
|
|
// );
|
|
// });
|
|
// });
|
|
|
|
// test('pick', () async {
|
|
// await testHelper.withViewer((viewer) async {
|
|
// final view = await viewer.getViewAt(0);
|
|
|
|
// await view.setRenderable(true, testHelper.swapChain);
|
|
|
|
// final cube = await viewer
|
|
// .createGeometry(GeometryHelper.cube(normals: false, uvs: false));
|
|
|
|
// await testHelper.capture(viewer, "view_pick");
|
|
|
|
// final completer = Completer();
|
|
|
|
// await viewer.pick(250, 250, (result) {
|
|
// completer.complete(result.entity);
|
|
// print(
|
|
// "Pick result : ${result.fragX} ${result.fragY} ${result.fragZ}");
|
|
// });
|
|
|
|
// for (int i = 0; i < 10; i++) {
|
|
// await testHelper.capture(viewer, "view_pick");
|
|
// if (completer.isCompleted) {
|
|
// break;
|
|
// }
|
|
// }
|
|
|
|
// expect(completer.isCompleted, true);
|
|
// expect(await completer.future, cube.entity);
|
|
// }, cameraPosition: Vector3(0, 0, 3));
|
|
// });
|
|
|
|
// test('dithering', () async {
|
|
// await testHelper.withViewer((viewer) async {
|
|
// final view = await viewer.getViewAt(0);
|
|
|
|
// expect(await view.isDitheringEnabled(), true);
|
|
|
|
// final cube = await viewer
|
|
// .createGeometry(GeometryHelper.cube(normals: false, uvs: false));
|
|
|
|
// await testHelper.capture(viewer, "dithering_enabled");
|
|
|
|
// await view.setDithering(false);
|
|
// expect(await view.isDitheringEnabled(), false);
|
|
// await testHelper.capture(viewer, "dithering_disabled");
|
|
// }, cameraPosition: Vector3(0, 0, 3));
|
|
// });
|
|
// });
|
|
// }
|