HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GU_AgentLinearSkinDeformer.h
Go to the documentation of this file.
1 /*
2  * PROPRIETARY INFORMATION. This software is proprietary to
3  * Side Effects Software Inc., and is not to be reproduced,
4  * transmitted, or disclosed in any way without written permission.
5  *
6  * NAME: GU_AgentLinearSkinDeformer.h (GU Library, C++)
7  *
8  */
9 
10 #ifndef __GU_AgentLinearSkinDeformer__
11 #define __GU_AgentLinearSkinDeformer__
12 
13 #include "GU_API.h"
14 #include "GU_AgentShapeDeformer.h"
15 
16 /// The default deformer for agents, which uses GU_LinearSkinDeformer.
18 {
19 public:
20  enum class Method
21  {
22  Linear,
23  DualQuat
24  };
25 
26  GU_AgentLinearSkinDeformer(Method method = Method::Linear);
27 
28  virtual void deform(GU_Detail &gdp, const GA_Range &pt_range,
29  const GU_AgentShapeLib::Shape &src_shape,
30  const GU_Agent &src_agent) const override;
31 
32 private:
33  Method myMethod;
34 };
35 
36 #endif
The default deformer for agents, which uses GU_LinearSkinDeformer.
A range of elements in an index-map.
Definition: GA_Range.h:42
int method
Definition: png.h:1924
Shape(GA_Offset offset)
#define GU_API
Definition: GU_API.h:12
virtual void deform(GU_Detail &gdp, const GA_Range &pt_range, const GU_AgentShapeLib::Shape &src_shape, const GU_Agent &src_agent) const =0
Deform pt_range in gdp, which was unpacked from the given shape.
Defines a deformer for an agent shape.