Difference in buildtree and buildtree from preorder?

i don’t understand the concept of how the video of building a tree from preorder is different from the function we did in build tree?

You are given a preorder input with NULL nodes represented by -1.
Since you know that preorder follows root node, left node, right node ordering
So to build a tree using preorder input, you first have do some work for the root node (So you will create a node for the current value). Now you have to move to the left child of this node and attach a new node to its left. After that attach a new node to its right.
For more clarity, watch the video again.