add getCameraFrustum() and getCameraProjectionMatrix()

This commit is contained in:
Nick Fisher
2023-11-08 20:30:14 +08:00
parent 962d53442f
commit 2db353cc3b
12 changed files with 521 additions and 78 deletions

View File

@@ -1,6 +1,7 @@
#pragma once
#include <filament/Camera.h>
#include <filament/Frustum.h>
#include <filament/ColorGrading.h>
#include <filament/Engine.h>
#include <filament/IndexBuffer.h>
@@ -99,6 +100,8 @@ namespace polyvox
void setCameraRotation(float rads, float x, float y, float z);
const math::mat4 getCameraModelMatrix();
const math::mat4 getCameraViewMatrix();
const math::mat4 getCameraProjectionMatrix();
const filament::Frustum getCameraFrustum();
void setCameraModelMatrix(const float *const matrix);
void setCameraFocalLength(float fl);
void setCameraFocusDistance(float focusDistance);

View File

@@ -152,6 +152,7 @@ FLUTTER_PLUGIN_EXPORT void set_camera_model_matrix(const void* const viewer, con
FLUTTER_PLUGIN_EXPORT const double* const get_camera_model_matrix(const void* const viewer);
FLUTTER_PLUGIN_EXPORT const double* const get_camera_view_matrix(const void* const viewer);
FLUTTER_PLUGIN_EXPORT const double* const get_camera_projection_matrix(const void* const viewer);
FLUTTER_PLUGIN_EXPORT const double* const get_camera_frustum(const void* const viewer);
FLUTTER_PLUGIN_EXPORT void set_camera_focal_length(const void* const viewer, float focalLength);
FLUTTER_PLUGIN_EXPORT void set_camera_focus_distance(const void* const viewer, float focusDistance);
FLUTTER_PLUGIN_EXPORT void set_camera_manipulator_options(const void* const viewer, _ManipulatorMode mode, double orbitSpeedX, double orbitSpeedY, double zoomSpeed);