Added welding functionality to Inochi2D.
Welding is implemented using enhancement to preProcess / postProcess.
Following methods are added.
Some basic method definitions are moved from creator to inochi2d.(such as centralize, copyFrom, dup, etc.)
Node
Added interfaces for common manipulation for Node subclasses:
endUpdate()
Post processing are called from parent to client order.
void releaseChild(Node child)
Called when children are released from ancestors.
void setupSelf()
Called after setupChild is called.
void releaseSelf()
Called before releaseChild is called.
void clearCache()
Called to clear cache. generalization of MeshGroup method.
void normalizeUV(MeshData* data)
Called to define UV coordinates.
bool getEnabled()
void setEnabled(bool value)
Setter / getter for Node.enabled.
void centralize()
Implementation of "Recalculate origin." Subclasses will override to customize behaviour.
void copyFrom(Node src, bool inPlace = false, bool deepCopy = true)
Called to create copy from src object. This can be used to copy src, and convert type from src.
Node dup()
Called to create deep copy of self.
void build(bool force = false)
Called to prepare resources before draw is called.
Updated following methods:
preProcess / postProcess
Multiple filters can be added. Welding and MeshGroup shares same callback framework, now it can handle multiple
filter>
Drawable
Added following methods:
weldingProcessor
Callback filters for welding implementation.
Added welding functionality to Inochi2D. Welding is implemented using enhancement to preProcess / postProcess. Following methods are added.
Some basic method definitions are moved from creator to inochi2d.(such as centralize, copyFrom, dup, etc.)
Node
Added interfaces for common manipulation for Node subclasses:
endUpdate() Post processing are called from parent to client order.
void releaseChild(Node child) Called when children are released from ancestors.
void setupSelf() Called after setupChild is called.
void releaseSelf() Called before releaseChild is called.
void clearCache() Called to clear cache. generalization of MeshGroup method.
void normalizeUV(MeshData* data) Called to define UV coordinates.
bool getEnabled()
void setEnabled(bool value) Setter / getter for Node.enabled.
void centralize() Implementation of "Recalculate origin." Subclasses will override to customize behaviour.
void copyFrom(Node src, bool inPlace = false, bool deepCopy = true) Called to create copy from src object. This can be used to copy src, and convert type from src.
Node dup() Called to create deep copy of self.
void build(bool force = false) Called to prepare resources before
draw
is called.Updated following methods:
preProcess / postProcess Multiple filters can be added. Welding and MeshGroup shares same callback framework, now it can handle multiple filter>
Drawable
Added following methods:
weldingProcessor Callback filters for welding implementation.
addWeldedTarget(Drawable target, ptrdiff_t[] weldedVertexIndices, float weldingWeight)
removeWeldedTarget(Drawable target) Called to manipulate welded links between Parts.
isWeldedBy(Drawable target) Returns whether target is welded by this object.
MeshGroup
Changed filter implementation for multiple preProcess/postProcess filters.
Implemented releaseChild, centralize, copyFrom, build etc.
Part
Implemented copyFrom, normalizeUV etc.
SimplePhysics
Implemented copyFrom.