Рет қаралды 4,128
Free script (non-commercial use) - HUGE SHOUT OUT TO @revoconner
github.com/rev...
Rename DHI namespace.py
Combined_MH.py to transform joints (to match custom mesh)
all his scripts must be placed in a folder and the script Combined_MH.py must be edited in the line #9. I used "C:\Maya\Journalist\Scripts"
Official DNA Calibration from Epic Games
github.com/Epi...
dna_viewer_run_in_maya.py
dna_viewer_grab_changes_from_scene_and_propagate_to_dna.py
Export Sculpted MH to UE
• How to sculpt a MetaHu...
In the video, I used the steps:
1. Set Maya Scene as "Y up", load the DNA viewer, fill in all fields and import DNA
2. Import your modified mesh(es), adjust and freeze transformations to match Maya scene Y up. Rename it to "New_Mesh".
3. Select one bone of the facial rig, go to attributes editor panel and rename rl4Embedded_Archetype to rigLogicNode
4. Open the file Rename_DHI_namespace.py from Revoconnor and edit the script, replace "rl4Embedded_Nasim_rl" by "rigLogicNode" in the lines #124 and #201. Make sure enter_wrapped_mesh_name = "New_Mesh" in line #6. All his scripts must be placed in a folder and the script Combined_MH.py must be edited in the line #9. I used "C:\Maya\Journalist\Scripts". After that, select spine_04 and run rename_DHI_namespace.py
5. Hide Original Head LOD0, show New_Mesh and run combined_MH.py to modify joint transforms.
6. Create blendshape for the head so you can toggle on /off later. Repeat for the other face objects.
7. Set Blendshape = 0 to get original shape and edit "SaveJointsInfo" to make sure the character name in the line #50 the same loaded in the scene, then run the script, which is explained below.
8. Set Blendshape = 1 to get the new shape and run "UpdateDNA" once, which is also explained below.
Now, explaining the modification of "dna_viewer_grab_changes_from_scene_and_propagate_to_dna.py", as this script was separated into two parts.
1. My "SaveJointsInfo" is from line #1 to "# Loaded data - end of 3rd step". Make sure the character name in the line #50 the same loaded in the scene.
Note: These lines below are just comments and it refers to the 4th step of the original script, meaning is done without code, therefore can be disregarded:
##################################
modify rig in maya, 4th step
##################################
##################################
2. My file UpdateDNA as is:
Propagate changes to dna, 5th step
reader = load_dna_reader(CHARACTER_DNA)
calibrated = DNACalibDNAReader(reader)
run_joints_command(reader, calibrated)
for name, item in current_vertices_positions.items():
new_vertices_positions = get_mesh_vertex_positions_from_scene(name)
if new_vertices_positions:
run_vertices_command(
calibrated, item["positions"], new_vertices_positions, item["mesh_index"]
)
save_dna(calibrated)
assemble_maya_scene()