Overte C++ Documentation
CalculateBlendshapeTangentsTask.h
1 //
2 // CalculateBlendshapeTangentsTask.h
3 // model-baker/src/model-baker
4 //
5 // Created by Sabrina Shanman on 2019/01/07.
6 // Copyright 2019 High Fidelity, Inc.
7 //
8 // Distributed under the Apache License, Version 2.0.
9 // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
10 //
11 
12 #ifndef hifi_CalculateBlendshapeTangentsTask_h
13 #define hifi_CalculateBlendshapeTangentsTask_h
14 
15 #include "Engine.h"
16 #include "BakerTypes.h"
17 
18 // Calculate blendshape tangents if not already present in the blendshape
19 class CalculateBlendshapeTangentsTask {
20 public:
21  using Input = baker::VaryingSet3<std::vector<baker::NormalsPerBlendshape>, baker::BlendshapesPerMesh, std::vector<hfm::Mesh>>;
22  using Output = std::vector<baker::TangentsPerBlendshape>;
23  using JobModel = baker::Job::ModelIO<CalculateBlendshapeTangentsTask, Input, Output>;
24 
25  void run(const baker::BakeContextPointer& context, const Input& input, Output& output);
26 };
27 
28 #endif // hifi_CalculateBlendshapeTangentsTask_h