浏览代码
Vertex Animation Textures Workflow (#29)
Vertex Animation Textures Workflow (#29)
* Base Commit * Moved Misplaced Asset + Added Documentation * Updated VAT ROP with inverse winding option + Check Normals * More precisions in the documentation Co-authored-by: Thomas Iché <thomasi@unity3d.com>/main
GitHub
3 年前
当前提交
602ffe60
共有 89 个文件被更改,包括 14594 次插入 和 1 次删除
-
11DCC-Tools~/Houdini/README.txt
-
41Documentation~/DCCTools.md
-
9package.json
-
1001DCC-Tools~/Houdini/Examples/VAT-Skinmesh.hip
-
1001DCC-Tools~/Houdini/Examples/VAT-SourceMeshes.hip
-
1001DCC-Tools~/Houdini/Examples/VAT.hip
-
527DCC-Tools~/Houdini/VAT-ROP.hda
-
8Samples~/VertexAnimationTextures/Mesh.meta
-
166Samples~/VertexAnimationTextures/Mesh/VATMesh-1024.mesh
-
8Samples~/VertexAnimationTextures/Mesh/VATMesh-1024.mesh.meta
-
166Samples~/VertexAnimationTextures/Mesh/VATMesh-16384.mesh
-
8Samples~/VertexAnimationTextures/Mesh/VATMesh-16384.mesh.meta
-
166Samples~/VertexAnimationTextures/Mesh/VATMesh-2048.mesh
-
8Samples~/VertexAnimationTextures/Mesh/VATMesh-2048.mesh.meta
-
166Samples~/VertexAnimationTextures/Mesh/VATMesh-256.mesh
-
8Samples~/VertexAnimationTextures/Mesh/VATMesh-256.mesh.meta
-
166Samples~/VertexAnimationTextures/Mesh/VATMesh-4096.mesh
-
8Samples~/VertexAnimationTextures/Mesh/VATMesh-4096.mesh.meta
-
166Samples~/VertexAnimationTextures/Mesh/VATMesh-512.mesh
-
8Samples~/VertexAnimationTextures/Mesh/VATMesh-512.mesh.meta
-
166Samples~/VertexAnimationTextures/Mesh/VATMesh-8192.mesh
-
8Samples~/VertexAnimationTextures/Mesh/VATMesh-8192.mesh.meta
-
8Samples~/VertexAnimationTextures/SampleTextures.meta
-
122Samples~/VertexAnimationTextures/SampleTextures/Blobby-VATNRM.exr.meta
-
122Samples~/VertexAnimationTextures/SampleTextures/Blobby-VATPOS.exr.meta
-
98Samples~/VertexAnimationTextures/SampleTextures/Blobby2-VATNRM.tga.meta
-
98Samples~/VertexAnimationTextures/SampleTextures/Blobby2-VATPOS.exr.meta
-
122Samples~/VertexAnimationTextures/SampleTextures/Blobby2b-VATNRM.exr.meta
-
122Samples~/VertexAnimationTextures/SampleTextures/Blobby2b-VATPOS.exr.meta
-
122Samples~/VertexAnimationTextures/SampleTextures/Blobby3-VATNRM.exr.meta
-
122Samples~/VertexAnimationTextures/SampleTextures/Blobby3-VATPOS.exr.meta
-
1001Samples~/VertexAnimationTextures/SampleTextures/Blobby4-VATNRM.tga
-
98Samples~/VertexAnimationTextures/SampleTextures/Blobby4-VATNRM.tga.meta
-
98Samples~/VertexAnimationTextures/SampleTextures/Blobby4-VATPOS.exr.meta
-
8Samples~/VertexAnimationTextures/SampleTextures/PosedCharacter.meta
-
1001Samples~/VertexAnimationTextures/SampleTextures/PosedCharacter/PosedAnim-VATNRM.tga
-
98Samples~/VertexAnimationTextures/SampleTextures/PosedCharacter/PosedAnim-VATNRM.tga.meta
-
98Samples~/VertexAnimationTextures/SampleTextures/PosedCharacter/PosedAnim-VATPOS.exr.meta
-
1001Samples~/VertexAnimationTextures/SampleTextures/PosedCharacter/PosedCharacter.obj
-
105Samples~/VertexAnimationTextures/SampleTextures/PosedCharacter/PosedCharacter.obj.meta
-
110Samples~/VertexAnimationTextures/SampleTextures/Splash01-VATNRM.exr.meta
-
110Samples~/VertexAnimationTextures/SampleTextures/Splash01-VATPOS.exr.meta
-
98Samples~/VertexAnimationTextures/SampleTextures/TeapotMorph-VATNRM.tga.meta
-
98Samples~/VertexAnimationTextures/SampleTextures/TeapotMorph-VATPOS.exr.meta
-
8Samples~/VertexAnimationTextures/Scenes.meta
-
8Samples~/VertexAnimationTextures/Script.meta
-
8Samples~/VertexAnimationTextures/Script/Editor.meta
-
26Samples~/VertexAnimationTextures/Script/Editor/VATTexturePostProcessor.cs
-
11Samples~/VertexAnimationTextures/Script/Editor/VATTexturePostProcessor.cs.meta
-
9Samples~/VertexAnimationTextures/Script/VertexAnimationTextureMesh.cs
-
11Samples~/VertexAnimationTextures/Script/VertexAnimationTextureMesh.cs.meta
-
8Samples~/VertexAnimationTextures/Shaders.meta
-
8Samples~/VertexAnimationTextures/VFX.meta
-
1001Samples~/VertexAnimationTextures/VFX/VAT-Characters.vfx
-
7Samples~/VertexAnimationTextures/VFX/VAT-Characters.vfx.meta
-
1001Samples~/VertexAnimationTextures/VFX/VAT-SingleParticle.vfx
-
7Samples~/VertexAnimationTextures/VFX/VAT-SingleParticle.vfx.meta
-
1001Samples~/VertexAnimationTextures/Scenes/VAT-Scene.unity
-
7Samples~/VertexAnimationTextures/Scenes/VAT-Scene.unity.meta
-
64Samples~/VertexAnimationTextures/Scenes/New Lighting Settings.lighting
-
8Samples~/VertexAnimationTextures/Scenes/New Lighting Settings.lighting.meta
-
704Samples~/VertexAnimationTextures/Shaders/Sample VertexAnimationTexture.shadersubgraph
-
10Samples~/VertexAnimationTextures/Shaders/Sample VertexAnimationTexture.shadersubgraph.meta
-
1001Samples~/VertexAnimationTextures/Shaders/VAT-Simple.shadergraph
-
10Samples~/VertexAnimationTextures/Shaders/VAT-Simple.shadergraph.meta
1001
DCC-Tools~/Houdini/Examples/VAT-Skinmesh.hip
文件差异内容过多而无法显示
查看文件
文件差异内容过多而无法显示
查看文件
1001
DCC-Tools~/Houdini/Examples/VAT-SourceMeshes.hip
文件差异内容过多而无法显示
查看文件
文件差异内容过多而无法显示
查看文件
1001
DCC-Tools~/Houdini/Examples/VAT.hip
文件差异内容过多而无法显示
查看文件
文件差异内容过多而无法显示
查看文件
|
|||
INDX
INDEX_SECTION �a�-� houdini.hdalibrary � a�-� Driver/vat_output � B3a�-� |
|||
vat_output Vertex Animation Texture *oplib:/Driver/vat_output?Driver/vat_output ROP_shell Driver a�-� INDX DialogScript �a�� CreateScript � -a�-� TypePropertiesOptions .a�� Help K a�� Tools.shelf K a�: InternalFileOptions L 0a�-� Contents.gz | �a�-� PythonModule ^ #J #J ExtraFileOptions ?� ua��# Dialog script for vat_output automatically generated |
|||
|
|||
{ |
|||
name vat_output |
|||
script vat_output |
|||
label "Vertex Animation Texture" |
|||
|
|||
help { |
|||
"" |
|||
} |
|||
|
|||
parm { |
|||
name "execute" |
|||
baseparm |
|||
label "Render" |
|||
joinnext |
|||
export none |
|||
} |
|||
parm { |
|||
name "renderdialog" |
|||
baseparm |
|||
label "Controls..." |
|||
nolabel |
|||
export none |
|||
} |
|||
parm { |
|||
name "trange" |
|||
label "Valid Frame Range" |
|||
type ordinal |
|||
default { "off" } |
|||
menu { |
|||
"off" "Render Current Frame" |
|||
"normal" "Render Frame Range" |
|||
"on" "Render Frame Range Only (Strict)" |
|||
} |
|||
parmtag { "autoscope" "0000000000000000" } |
|||
parmtag { "script_callback_language" "python" } |
|||
} |
|||
parm { |
|||
name "f" |
|||
label "Start/End/Inc" |
|||
type float |
|||
size 3 |
|||
default { [ "$FSTART" hscript-expr ] [ "$FEND" hscript-expr ] "1" } |
|||
disablewhen "{ trange == off }" |
|||
range { 0 10 } |
|||
parmtag { "autoscope" "0000000000000000" } |
|||
parmtag { "script_callback_language" "python" } |
|||
} |
|||
parm { |
|||
name "take" |
|||
label "Render with Take" |
|||
type string |
|||
default { "_current_" } |
|||
menu { |
|||
[ "opmenu -l -a shell1 take" ] |
|||
} |
|||
parmtag { "autoscope" "0000000000000000" } |
|||
parmtag { "script_callback_language" "python" } |
|||
} |
|||
parm { |
|||
name "parm_reverseFrames" |
|||
label "Reverse Frames" |
|||
type toggle |
|||
default { "0" } |
|||
parmtag { "script_callback_language" "python" } |
|||
} |
|||
groupsimple { |
|||
name "folder" |
|||
label "Baking Options" |
|||
|
|||
parm { |
|||
name "parm_mode" |
|||
label "Label" |
|||
type integer |
|||
default { "0" } |
|||
menu { |
|||
"0" "Non-Uniform Topology (Fluids)" |
|||
"1" "Uniform Topology (Skin/RB Animation)" |
|||
} |
|||
range { 0 10 } |
|||
parmtag { "script_callback_language" "python" } |
|||
} |
|||
parm { |
|||
name "pointCount" |
|||
label "Point Count" |
|||
type integer |
|||
default { "16384" } |
|||
hidewhen "{ parm_mode != 0 }" |
|||
range { 256 16384 } |
|||
parmtag { "script_callback_language" "python" } |
|||
} |
|||
parm { |
|||
name "parm_tpose" |
|||
label "T-Pose reference SOP" |
|||
type oppath |
|||
default { "" } |
|||
hidewhen "{ parm_mode != 1 }" |
|||
parmtag { "opfilter" "!!SOP!!" } |
|||
parmtag { "oprelative" "." } |
|||
parmtag { "script_callback_language" "python" } |
|||
} |
|||
parm { |
|||
name "sop_output" |
|||
label "Target Animated SOP" |
|||
type oppath |
|||
default { "" } |
|||
parmtag { "opfilter" "!!SOP!!" } |
|||
parmtag { "oprelative" "." } |
|||
parmtag { "script_callback_language" "python" } |
|||
} |
|||
parm { |
|||
name "pram_reverseWinding" |
|||
label "Reverse Triangle Winding" |
|||
type toggle |
|||
default { "0" } |
|||
parmtag { "script_callback_language" "python" } |
|||
} |
|||
} |
|||
|
|||
groupsimple { |
|||
name "folder0" |
|||
label "Output" |
|||
|
|||
parm { |
|||
name "folder_customOutputFolder" |
|||
label " " |
|||
type toggle |
|||
joinnext |
|||
default { "0" } |
|||
parmtag { "script_callback_language" "python" } |
|||
} |
|||
parm { |
|||
name "parm_manualPath" |
|||
label "Output Directory" |
|||
type directory |
|||
default { "$HIP/" } |
|||
disablewhen "{ folder_customOutputFolder == 0 }" |
|||
parmtag { "script_callback_language" "python" } |
|||
} |
|||
parm { |
|||
name "parm_outFileName" |
|||
label "Base File Name" |
|||
type string |
|||
default { "VAT" } |
|||
parmtag { "script_callback_language" "python" } |
|||
} |
|||
parm { |
|||
name "parm_posPrecision" |
|||
label "Position File Type" |
|||
type integer |
|||
default { "1" } |
|||
menu { |
|||
"0" "TGA (Low-precision)" |
|||
"1" "EXR (High Precision)" |
|||
} |
|||
range { 0 10 } |
|||
parmtag { "script_callback_language" "python" } |
|||
} |
|||
parm { |
|||
name "parm_nrmPrecision" |
|||
label "Normals File Type" |
|||
type integer |
|||
default { "0" } |
|||
menu { |
|||
"0" "TGA (Low-precision)" |
|||
"1" "EXR (High Precision)" |
|||
} |
|||
range { 0 10 } |
|||
parmtag { "script_callback_language" "python" } |
|||
} |
|||
} |
|||
|
|||
} |
|||
# Automatically generated script |
|||
\set noalias = 1 |
|||
# |
|||
# Creation script for vat_output operator |
|||
# |
|||
|
|||
if ( "$arg1" == "" ) then |
|||
echo This script is intended as a creation script |
|||
exit |
|||
endif |
|||
|
|||
# Node $arg1 (Driver/vat_output) |
|||
opexprlanguage -s hscript $arg1 |
|||
opuserdata -n '___Version___' -v '' $arg1 |
|||
CheckExternal := 1; |
|||
ContentsCompressionType := 1; |
|||
ForbidOutsideParms := 1; |
|||
GzipContents := 1; |
|||
LockContents := 1; |
|||
MakeDefault := 1; |
|||
ParmsFromVfl := 0; |
|||
PrefixDroppedParmLabel := 0; |
|||
PrefixDroppedParmName := 0; |
|||
SaveCachedCode := 0; |
|||
SaveIcon := 1; |
|||
SaveSpareParms := 0; |
|||
UnlockOnCreate := 0; |
|||
UseDSParms := 1; |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<shelfDocument> |
|||
<!-- This file contains definitions of shelves, toolbars, and tools. |
|||
It should not be hand-edited when it is being used by the application. |
|||
Note, that two definitions of the same element are not allowed in |
|||
a single file. --> |
|||
|
|||
<tool name="$HDA_DEFAULT_TOOL" label="$HDA_LABEL" icon="$HDA_ICON"> |
|||
<toolMenuContext name="viewer"> |
|||
<contextNetType>ROP</contextNetType> |
|||
</toolMenuContext> |
|||
<toolMenuContext name="network"> |
|||
<contextOpType>$HDA_TABLE_AND_NAME</contextOpType> |
|||
</toolMenuContext> |
|||
<toolSubmenu>Unity VFX</toolSubmenu> |
|||
<script scriptType="python"><![CDATA[import drivertoolutils |
|||
|
|||
drivertoolutils.genericTool(kwargs, '$HDA_NAME')]]></script> |
|||
</tool> |
|||
</shelfDocument> |
|||
|