When I send a render job using DeadlineCommand, the job is created, but when it comes to executing the render, Unreal Engine just opens and doesn’t render. The console doesn’t return any errors; it just opens the project in UE5.2 and doesn’t start rendering.
I’ve attached the information I use to send the render.
import os
import subprocess
def submit_unreal_render_job(deadline_command, project_path, sequence_name, output_path, frame_range):
job_info = {
'Plugin': 'UnrealEngine5',
'Name': f'Render {sequence_name}',
'Comment': 'Unreal Engine render job submission',
'Department': '',
'Pool': 'none',
'SecondaryPool': '',
'Group': 'none',
'Priority': '50',
'TaskTimeoutMinutes': '0',
'EnableAutoTimeout': 'False',
'ConcurrentTasks': '1',
'LimitConcurrentTasksToNumberOfCpus': 'True',
'MachineLimit': '0',
'Blacklist': '',
'Whitelist': '',
'LimitGroups': '',
'JobDependencies': '',
'OnJobComplete': 'Nothing',
'ChunkSize': '1',
'OutputFilename0': 'NX101_010_0230.####.png',
'PreJobScript': 'D:/projects/steamroller/deadline/deadline/nexus/pre_scripts/pre_script.py',
'PostJobScript': 'D:/projects/steamroller/deadline/deadline/nexus/post_scripts/post_script.py',
'ExtraInfo0': '2697', # Project ID
'ExtraInfo1': '25304', # Entity ID
'ExtraInfo2': '88118', # Task ID
'ExtraInfo3': 'render', # Task name
'ExtraInfo4': 'D:/render/NX/shots/101/010/0200/UNR/013/finish/png', # Output directory
'ExtraInfo5': '1001', # Shot offset start frame
'ExtraInfo6': '1042', # End frame of the render job
'ExtraInfoKeyValue0': "shot_info={'0': 'NX101_010_0200'}",
}
plugin_info = {
'LevelSequencePath': '/Game/shots/NX101/010/0230/NX101_010_0230.NX101_010_0230',
'LevelPath': '/Game/shots/NX101/010/NX101_010_ENV.NX101_010_ENV',
'Executable': r'C:\Program Files\Epic Games\UE_5.3\Engine\Binaries\Win64\UnrealEditor-Cmd.exe',
'ProjectFile': project_path,
'CommandLineArguments': '-MoviePipelineQueue=D:/projects/steamroller/nexus.unreal.plastic/unreal/nex01/ep01/nex01_ep01/Saved/MoviePipelineQueue.manifest -log -windowed -resx=1920 -resy=1080',
}
job_info_file = os.path.join(output_path, 'unreal_job_info.job')
plugin_info_file = os.path.join(output_path, 'unreal_plugin_info.job')
with open(job_info_file, 'w') as job_file:
for key, value in job_info.items():
job_file.write(f'{key}={value}\n')
with open(plugin_info_file, 'w') as plugin_file:
for key, value in plugin_info.items():
plugin_file.write(f'{key}={value}\n')
submit_command = [
deadline_command,
'SubmitJob',
job_info_file,
plugin_info_file
]
subprocess.run(submit_command, check=True)
deadline_command = r'C:\Program Files\Thinkbox\Deadline10\bin\deadlinecommand.exe'
project_path = r'D:\projects\steamroller\nexus.unreal.plastic\unreal\nex01\ep01\nex01_ep01\nex01_ep01.uproject'
sequence_name = 'NX101_010_0230'
output_path = r'C:\Users\jbovi\Documents\Steamroller_code\deadline\deadline'
frame_range = '1-42'
submit_unreal_render_job(deadline_command, project_path, sequence_name, output_path, frame_range)
unreal_plugin_info.py (521 Bytes)
unreal_job_info.py (818 Bytes)