GEOM
PROPERTY GS_INPUT_PRIMITIVE TRIANGLES
PROPERTY GS_OUTPUT_PRIMITIVE LINE_STRIP
PROPERTY GS_MAX_OUTPUT_VERTICES 8
DCL IN[][0], POSITION, CONSTANT
DCL IN[][1], COLOR, CONSTANT
DCL OUT[0], POSITION, CONSTANT
DCL OUT[1], COLOR, CONSTANT
DCL TEMP[0]

MOV TEMP[0], IN[0][0]
ADD TEMP[0].y, IN[0][0], IN[1][0]

MOV OUT[0], TEMP[0]
MOV OUT[1], IN[0][1]
EMIT
MOV OUT[0], IN[2][0]
MOV OUT[1], IN[0][1]
EMIT
MOV OUT[0], IN[0][0]
MOV OUT[1], IN[2][1]
EMIT
MOV OUT[0], TEMP[0]
MOV OUT[1], IN[0][1]
EMIT
ENDPRIM

MOV OUT[0], TEMP[0]
MOV OUT[1], IN[0][1]
EMIT
MOV OUT[0], IN[2][0]
MOV OUT[1], IN[0][1]
EMIT
MOV OUT[0], IN[1][0]
MOV OUT[1], IN[2][1]
EMIT
MOV OUT[0], TEMP[0]
MOV OUT[1], IN[0][1]
EMIT
ENDPRIM

END
