Vector3 v = new Vector3(0.0f, 8.0f, offset);
でnewすると、また同じ名前のvのインスタンス化することになる。
違う内容のv(ローカル変数で宣言したVector3 v(0.0f, 0.0f, 0.0f)のインスタンスとvoid Awake()でnew した新しいvインスタンスの(0.0f, 8.0f, offset))ふたつになる。
FixedUpdateでは最初のローカル変数で宣言したVector3 vが使われてて(0.0f, 0.0f, 0.0f)が使われていたというわけか。