A method of video coding, the method comprising: constructing a motion vector merge list for a coding unit (CU), comprising a plurality of triangular shape prediction units (PUs); and constructing a uni-directional motion vector merge list for the plurality of triangular shape PUs based on the motion vector merge list constructed for the CU; wherein the constructing the uni-directional motion vector merge list comprises: first selecting all of the "prediction list 0" uni-directional motion vectors of uni-directional motion vector candidate and all of the "prediction list 0" motion vector components of bi-directional motion vector candidate from the motion vector merge list constructed for the CU, while preserving orders thereof; and then selecting all of the "prediction list 1" uni-directional motion vectors of uni-directional motion vector candidate and all of the "prediction list 1" motion vector components of bi-directional motion vector candidate from the motion vector merge list constructed for the CU, while preserving orders thereof; and constructing the uni-directional motion vector merge list including first the selected "prediction list 0" uni-directional motion vectors and the "prediction list 0" motion vector components, followed by the selected "prediction list 1" uni-directional motion vectors and the "prediction list 1" motion vector components. constructing a motion vector merge list for a coding unit (CU), comprising a plurality of triangular shape prediction units (PUs); and constructing a uni-directional motion vector merge list for the plurality of triangular shape PUs based on the motion vector merge list constructed for the CU; wherein the constructing the uni-directional motion vector merge list comprises: first selecting all of the "prediction list 0" uni-directional motion vectors of uni-directional motion vector candidate and all of the "prediction list 0" motion vector components of bi-directional motion vector candidate from the motion vector merge list constructed for the CU, while preserving orders thereof; and then selecting all of the "prediction list 1" uni-directional motion vectors of uni-directional motion vector candidate and all of the "prediction list 1" motion vector components of bi-directional motion vector candidate from the motion vector merge list constructed for the CU, while preserving orders thereof; and constructing the uni-directional motion vector merge list including first the selected "prediction list 0" uni-directional motion vectors and the "prediction list 0" motion vector components, followed by the selected "prediction list 1" uni-directional motion vectors and the "prediction list 1" motion vector components. first selecting all of the "prediction list 0" uni-directional motion vectors of uni-directional motion vector candidate and all of the "prediction list 0" motion vector components of bi-directional motion vector candidate from the motion vector merge list constructed for the CU, while preserving orders thereof; and then selecting all of the "prediction list 1" uni-directional motion vectors of uni-directional motion vector candidate and all of the "prediction list 1" motion vector components of bi-directional motion vector candidate from the motion vector merge list constructed for the CU, while preserving orders thereof; and constructing the uni-directional motion vector merge list including first the selected "prediction list 0" uni-directional motion vectors and the "prediction list 0" motion vector components, followed by the selected "prediction list 1" uni-directional motion vectors and the "prediction list 1" motion vector components. <EOS>