Personally this boils down to the situation at hands. As shown above, both looks very similar when use properly (click here for the 720p MOV sample).
While both method employs 2D motion blurring (which can leads to artifact or error when dealing with object that moves in 3D space), personally I prefer Vector Blur for a bit more control than the built-in Motion Blur function in Nuke Transform node.
Also take care of the bounding box when using Vector Blur. Ensure there is enough padding to prevent streaking.
Remember to pipe in a MotionBlur2D node before you use the VectorBlur node!
Below is sample Nuke script (copy and paste it into the node graph) that I use for the above GIF demo since a large 2MB GIF is not practical for regular browsing:
set cut_paste_input [stack 0] version 8.0 v5 Text2 { inputs 0 font_size_toolbar 100 font_width_toolbar 100 font_height_toolbar 100 message VectorBlur box {257 887.5 791 988.5} hidden_bbox {257 887.5 791 988.5} transforms {{0 2} } cursor_position 7 font {{ SF Old Republic : Regular : SF Old Republic.ttf : 0 }} scale {1 1} cursor_initialised true initial_cursor_position {{257 988.5} } group_animations {{0} imported: 0 selected: items: "root transform/"} animation_layers {{1 11 1024 778 0 0 1 1 0 0 0 0} } name Text1 selected true xpos -203 ypos -123 } Transform { translate {{curve x7 0 x12 -48.88401586 x18 -72 x25 -94.30142629 x30 -102 x40 40 x53 74 x60 0} {curve x7 0 x12 -51.77813959 x18 -62 x25 -18.57849438 x30 19.99999809 x40 38 x53 -52 x60 0}} rotate {{curve x7 0 x12 -5.1149616 x18 0 x25 35.15418296 x30 180 x40 0 x53 145.1915029 x60 0}} center {516 934} name Transform1 selected true xpos -203 ypos -80 } set N13261940 [stack 0] push $N13261940 MotionBlur2D { inputs 2 name MotionBlur2D1 selected true xpos -203 ypos -15 } VectorBlur { channels rgba uv motion grow_bbox 34.5 name VectorBlur1 selected true xpos -203 ypos 19 } set N3b7f31b0 [stack 0] push $N3b7f31b0 push $cut_paste_input Text2 { font_size_toolbar 100 font_width_toolbar 100 font_height_toolbar 100 message MotionBlur box {1165 887.5 1717 988.5} hidden_bbox {1165 887.5 1717 988.5} transforms {{0 2} } cursor_position 2 font {{ SF Old Republic : Regular : SF Old Republic.ttf : 0 }} scale {1 1} cursor_initialised true initial_cursor_position {{1165 988.5} } group_animations {{0} imported: 0 selected: items: "root transform/"} animation_layers {{1 11 1024 778 0 0 1 1 0 0 0 0} } name Text2 selected true xpos 33 ypos -120 } Transform { translate {{curve x7 0 x12 -48.88401586 x18 -72 x25 -94.30142629 x30 -102 x40 40 x53 74 x60 0} {curve x7 0 x12 -51.77813959 x18 -62 x25 -18.57849438 x30 19.99999809 x40 38 x53 -52 x60 0}} rotate {{curve x7 0 x12 -5.1149616 x18 0 x25 35.15418296 x30 180 x40 0 x53 145.1915029 x60 0}} center {1486 940} motionblur 1 name Transform2 selected true xpos 33 ypos -65 } Transform { translate {-328 0} center {1024 778} name Transform3 selected true xpos 33 ypos -41 } Merge2 { inputs 2 name Merge1 selected true xpos 33 ypos 19 } Transform { translate {79 -58} scale 0.4 center {1024 778} name Transform4 selected true xpos 33 ypos 43 } Reformat { format "640 280 0 0 640 280 1 Test" resize none name Reformat1 selected true xpos 33 ypos 86 } Viewer { inputs 2 frame 52 input_process false name Viewer1 selected true xpos 33 ypos 181 }