In diesem Tutorial erkläre ich euch wie ihr Überwachungskameras in arma 3 einbinden könnt welche man auf einer Texturoberfläche wie einem Laptop, Bildshirm, Benutzertextur, etc Live verfolgen könnt wie hier gezeigt.
Schritt 1 :
Ihr laded euch dieses Tool herunter
https://github.com/4n0nh4x0r/GitHub-Distro-CamTex
(Alternativer Download:
)
Schritt 2 :
Configuriert das Programm so wie ihr die Kamera nachher haben wollt.
Nach dem Einstellen, klickt man auf create.
Hierbei werden 2 Sachen erstellt. Einmal der Code der in die init.sqf eingetragen wird
cam_1 = 'camera' camCreate[0, 0, 0];
cam_1 cameraEffect['Internal', 'Back', 'sec_cam_tex_1'];
cam_1 attachTo[security_cam_1, [0,0,0], 'PiP0_pos'];
'sec_cam_tex_1' setPiPEffect[0];
addMissionEventHandler['Draw3D', {
_dir =
(security_cam_1 selectionPosition 'PiP0_pos')
vectorFromTo(security_cam_1 selectionPosition 'PiP0_dir');
cam_1 setVectorDirAndUp[
_dir,
_dir vectorCrossProduct[-(_dir select 1), _dir select 0, 0]
];
}];
Alles anzeigen
und einmal die Texture welche auf ein Textur Object angewendet wird
Schritt 3 :
Man öffnet die Attribute der zu nutzenden Kamera und setzt den Namen den man im tool unter "Cam Varname" gesetzt hat, als Objektname.
Schritt 4 :
Man setzt ein Object welches eine Benutzerdefinierte Textur wiedergeben kann (Laptop, Benutzertextur, Werbetafel, ...)
Hier geht man dann in den Attributen ganz nach unten und gibt den zweiten generierten Code ein
Herzlichen Glückwunsch. Du hast nun einen Live feed erstellt.
Um mehrere Kameras gleichzeitig zu nutzen wie im ersten bild gezeigt, musst du nur das gleiche tun und den gererierten code unter den bereits existierenden packen.s
cam_6 = "camera" camCreate[0, 0, 0];
cam_6 cameraEffect["Internal", "Back", "sec_cam_tex_6"];
cam_6 attachTo[security_cam_6, [0,0,0], "PiP0_pos"];
"sec_cam_tex_6" setPiPEffect[0];
addMissionEventHandler["Draw3D", {
_dir =
(security_cam_6 selectionPosition "PiP0_pos")
vectorFromTo
(security_cam_6 selectionPosition "PiP0_dir");
cam_6 setVectorDirAndUp[
_dir,
_dir vectorCrossProduct[-(_dir select 1), _dir select 0, 0]
];
}];
cam_7 = "camera" camCreate[0, 0, 0];
cam_7 cameraEffect["Internal", "Back", "sec_cam_tex_7"];
cam_7 attachTo[security_cam_7, [0,0,0], "PiP0_pos"];
"sec_cam_tex_7" setPiPEffect[0];
addMissionEventHandler["Draw3D", {
_dir =
(security_cam_7 selectionPosition "PiP0_pos")
vectorFromTo
(security_cam_7 selectionPosition "PiP0_dir");
cam_7 setVectorDirAndUp[
_dir,
_dir vectorCrossProduct[-(_dir select 1), _dir select 0, 0]
];
}];
cam_8 = "camera" camCreate[0, 0, 0];
cam_8 cameraEffect["Internal", "Back", "sec_cam_tex_8"];
cam_8 attachTo[security_cam_8, [0,0,0], "PiP0_pos"];
"sec_cam_tex_8" setPiPEffect[0];
addMissionEventHandler["Draw3D", {
_dir =
(security_cam_8 selectionPosition "PiP0_pos")
vectorFromTo
(security_cam_8 selectionPosition "PiP0_dir");
cam_8 setVectorDirAndUp[
_dir,
_dir vectorCrossProduct[-(_dir select 1), _dir select 0, 0]
];
}];
Alles anzeigen
Ich hoffe dieses Tutorial war Hilfreich und dass ihr einen Verwendungszweck dafür finden werdet. Wäre Interessant in einem TvT wo einer in der Hauptbasis sitzt und dort dann zum beispiel mehrere drohnen gleichzeitig im Auge behällt.
Mod : skyline security cam (https://www.youtube.com/watch?v=OYQg-JIFB5Y)
Disclaimer :
Sobald man in das Interface wechselt (Drohne, Zues, Optimalkamera, ...) werden alle Kameras nicht mehr angezeigt.
Hierfür müsste man alle Kameras neu laden. (über ein script)