12 #ifndef hifi_BuildDracoMeshTask_h
13 #define hifi_BuildDracoMeshTask_h
16 #include <shared/HifiTypes.h>
19 #include "BakerTypes.h"
22 class BuildDracoMeshConfig :
public baker::JobConfig {
24 Q_PROPERTY(
int encodeSpeed MEMBER encodeSpeed)
25 Q_PROPERTY(
int decodeSpeed MEMBER decodeSpeed)
27 BuildDracoMeshConfig() : baker::JobConfig(false) {}
29 int encodeSpeed { 0 };
30 int decodeSpeed { 5 };
33 class BuildDracoMeshTask {
35 using Config = BuildDracoMeshConfig;
36 using Input = baker::VaryingSet3<std::vector<hfm::Mesh>, baker::NormalsPerMesh, baker::TangentsPerMesh>;
37 using Output = baker::VaryingSet3<std::vector<hifi::ByteArray>, std::vector<bool>, std::vector<std::vector<hifi::ByteArray>>>;
38 using JobModel = baker::Job::ModelIO<BuildDracoMeshTask, Input, Output, Config>;
40 void configure(
const Config& config);
41 void run(
const baker::BakeContextPointer& context,
const Input& input, Output& output);
44 int _encodeSpeed { 0 };
45 int _decodeSpeed { 5 };