{"name":"camSetDir","title":"camSetDir","type":"command","url":"https://community.bistudio.com/wiki/camSetDir","revid":377244,"updated":"2026-01-02T04:23:26Z","groups":["Camera Control"],"status":"ok","games":{"ofp":"1.00","ofpe":"1.00","arma1":"1.00","arma2":"1.00","arma2oa":"1.50","tkoh":"1.00","arma3":"0.50"},"since":"ofp 1.00","arma3_since":"0.50","locality":{"argument":"local","effect":"local"},"description":"Sets the orientation of the given camera in the direction of the given vector. Needs camCommit. Since Arma 3 v0.50, only the second syntax with a Vector3D is available.","syntaxes":[{"syntax":"camera camSetDir azimuth","params":[{"name":"camera","type":"Object","description":"object of type \"camera\"","type_expr":"Object"},{"name":"azimuth","type":"Number","description":"camera azimuth","type_expr":"Number"}],"returns":{"type":"Nothing","type_expr":"Nothing"},"form":"binary","left":{"text":"camera"},"right":{"text":"azimuth"}},{"syntax":"camera camSetDir direction","since":"arma3 0.50","params":[{"name":"camera","type":"Object","description":"object of type \"camera\"","type_expr":"Object"},{"name":"direction","type":"Vector3D","description":"direction of camera. Must be a valid vector.","type_expr":"Vector3D"}],"returns":{"type":"Nothing","type_expr":"Nothing"},"form":"binary","left":{"text":"camera"},"right":{"text":"direction"}}],"examples":[{"text":"Since Arma 3:\n\n```sqf\nprivate _pos1 = player modelToWorld [0, 5, 5];\nprivate _pos2 = player modelToWorld [0, 50, 50];\n\nprivate _cam = \"camera\" camCreate _pos1;\n_cam cameraEffect [\"INTERNAL\", \"BACK\"];\n\n_cam camSetPos _pos2;\n_cam camSetDir (_pos2 vectorFromTo _pos1);\n_cam camCommit 5;\nwaitUntil { camCommitted _cam };\n\n_cam camSetPos _pos1;\n_cam camCommit 5;\n```","code":["private _pos1 = player modelToWorld [0, 5, 5];\nprivate _pos2 = player modelToWorld [0, 50, 50];\n\nprivate _cam = \"camera\" camCreate _pos1;\n_cam cameraEffect [\"INTERNAL\", \"BACK\"];\n\n_cam camSetPos _pos2;\n_cam camSetDir (_pos2 vectorFromTo _pos1);\n_cam camCommit 5;\nwaitUntil { camCommitted _cam };\n\n_cam camSetPos _pos1;\n_cam camCommit 5;"]},{"text":"Before Arma 3:\n\n```sqf\nprivate _pos1 = player modelToWorld [0, 5, 5];\nprivate _pos2 = player modelToWorld [0, 50, 50];\n\nprivate _cam = \"camera\" camCreate _pos1;\n_cam cameraEffect [\"INTERNAL\", \"BACK\"];\n\n_cam camSetPos _pos2;\n_cam camSetDir 180;\n_cam camCommit 5;\nwaitUntil { camCommitted _cam };\n\n_cam camSetPos _pos1;\n_cam camCommit 5;\n```","code":["private _pos1 = player modelToWorld [0, 5, 5];\nprivate _pos2 = player modelToWorld [0, 50, 50];\n\nprivate _cam = \"camera\" camCreate _pos1;\n_cam cameraEffect [\"INTERNAL\", \"BACK\"];\n\n_cam camSetPos _pos2;\n_cam camSetDir 180;\n_cam camCommit 5;\nwaitUntil { camCommitted _cam };\n\n_cam camSetPos _pos1;\n_cam camCommit 5;"]}],"see_also":["direction","setDir","camSetTarget","getCameraViewDirection"],"notes":[{"user":"Killzone_Kid","date":"2016-05-09T19:47:00Z","text":"cameraEffect \"INTERNAL\" works better than \"EXTERNAL\" with this command."}]}