Tile Region Render? or Render only selected tiles?

We do a lot of jobs where there might be render frame that is massively bigger than we need, so we region render a small section of this. If we want to use tile rendering we can’t specify our region to render with the region renderer but we can choose to only render selected tiles. Which means we can divide it up into plenty of tiles and region render it , but then it won’t stitch back together as it doesn’t have all the other tiles.

I wrote a quick script which fixes this by analysing a tile name and creates a load of empty tiles… which then allows the stitching pass to work but this requires manual inputting…

Would be nice if there was an option to do tiled-region rendering like this automatically please.

It’s already on the wish list, but not on the road map yet. I’m glad to hear you at least have a workaround for now.

Cheers,

  • Ryan

Thought I’d be nice and share this one… Doesn’t work 100% of the time… but does the job even if the final output is slightly cropped or too big…

Written in 3dsmax 9…

[code]–Deadline Create Blank Tiles
–Written by Dave Wortley - created 24/02/2011
–this tool will build the empty tiles if you need to region render and tile render.
–Deadline rendering specific tiles with an assembly job, if you try to assemble it will fail
–run this script to make a bunch of empty tiles for your render and the assembly pass will work correctly.

try(Destroydialog Rollout_Deadline_Tile_builder)catch()
global thefile

rollout Rollout_Deadline_Tile_builder “Deadline Empty Tile Builder” width:313 height:76
(
button btn_pickTile “Pick Tile” pos:[4,5] width:304 height:23
edittext edt_TileFile “” pos:[0,34] width:307 height:17 enabled:false
button btn_build “Build Empty Tiles” pos:[169,55] width:139 height:17

button btn_assemble "Assemble Locally" pos:[3,55] width:147 height:16

on btn_pickTile pressed do
(
	
	p = getOpenFileName caption:"Select a Tile from the Render..." --filename:thepath types:"All(*.*)|*.*" 
	
	if p != undefined then
	(
		thefile = p
		edt_tileFile.text = getfilenamefile p
	)

)


on btn_assemble pressed do
(
	if thefile != undefined then
	(
	
		doscommand("C:\\Progra~1\\Primef~1\\Deadline\\bin\\TileAssembler64.exe --verbose 5 --cleanup-tiles \"" + thefile + "\"")
	
	)

)


on btn_build pressed do
(
	if thefile != undefined then
	(
		--get tile count
		thetokens = filterstring thefile "_" splitEmptyTokens:true
		tilecount = thetokens[thetokens.count - 1]
		tilecountX = (filterstring tilecount "x")[1]
		tilecountY = (filterstring tilecount "x")[2]
		
		if tilecountX != undefined then
		(
			if tilecountX as integer != undefined then
			(
				--check for missing files
				tileFile = ""
				for i = 1 to (thetokens.count - 4) do
				(
					append tileFile (thetokens[i] + "_")
				)
				tileFile
				thebmp = openbitmap thefile
				for i = 1 to tilecountX as integer do
				(
					for j = 1 to tilecountY as integer do
					(
						--print (tilefile + "tile_" + i as string + "x" + j as string + "_" + tilecountX + "x" + tilecountY + "_" + thetokens[thetokens.count])
						if not doesfileexist (tilefile + "tile_" + i as string + "x" + j as string + "_" + tilecountX + "x" + tilecountY + "_" + thetokens[thetokens.count]) then 
						(
							blankbmp = bitmap thebmp.width thebmp.height color:black
							blankbmp.filename = (tilefile + "tile_" + i as string + "x" + j as string + "_" + tilecountX + "x" + tilecountY + "_" + thetokens[thetokens.count])
							save blankbmp
							close blankbmp
						)
					)
					
				)
				close thebmp
			)
			else Messagebox "The selected Tile doesn't appear to be in the correct Format"

		)
		else Messagebox "The selected Tile doesn't appear to be in the correct Format"
	)
)

)CreateDialog Rollout_Deadline_Tile_builder[/code]