GeorgeZhang 25 Posted September 2, 2015 Share Posted September 2, 2015 Does anyone knows about game camera and is willing to share how to change position/rotation/zoom/reset? Link to post Share on other sites
MoMadenU 22 Posted September 2, 2015 Share Posted September 2, 2015 Does anyone knows about game camera and is willing to share how to change position/rotation/zoom/reset? Get the ScriptHookVDotNet source: https://github.com/crosire/scripthookvdotnet Look at Camera.cpp Then search the coding forum with specific natives like POINT_CAM_AT_COORD 1 Link to post Share on other sites
Neutrinobeam 15 Posted September 2, 2015 Share Posted September 2, 2015 Go look at the native database. Whatever you don't find there, go research. 1 Link to post Share on other sites
GeorgeZhang 25 Posted September 2, 2015 Author Share Posted September 2, 2015 Thanks guys, but most natives in CAM section are uncommented or has a lot of "Any", as for ScriptHookVDotNet, I tried using it to teleport the the camera to another location, but I failed because at the native GET_RENDERING_CAM, saying I cannot convert it to the type "Camera". Link to post Share on other sites
whorse 26 Posted September 3, 2015 Share Posted September 3, 2015 (edited) have you read through this thread about script cams? It seems that there is little you can actually do with the regular gameplay-cam, but you can create a script cam that emulates the gameplay cam in whatever way you want to modify it. Also, there are a lot of "Any" type variables in there, but most of them look like they refer to other cameras or animations and whatnot; stuff that you get by calling a function (with an obvious name) that already returns type Any. You can just store the returned value to a newly declared "Any" var in your script, and then import that value to another native that is takes an Any argument. You can guess by the native's name if it deals with the same kinds of things as the function you got the first Any variable from; and p0 and p1 are generally where all the important variables go in every native - the rest might as well be all 0's. If it looks like it makes sense, try it. To me, it seems like Any* pointer arguments are for assigning Any variables inside the function, as output-arguments, since we apparently just use Any type parameters as placeholders when we do not yet know what actual arguments a native is really supposed to take Edited September 3, 2015 by whorse Link to post Share on other sites
GeorgeZhang 25 Posted September 3, 2015 Author Share Posted September 3, 2015 have you read through this thread about script cams? It seems that there is little you can actually do with the regular gameplay-cam, but you can create a script cam that emulates the gameplay cam in whatever way you want to modify it. Also, there are a lot of "Any" type variables in there, but most of them look like they refer to other cameras or animations and whatnot; stuff that you get by calling a function (with an obvious name) that already returns type Any. You can just store the returned value to a newly declared "Any" var in your script, and then import that value to another native that is takes an Any argument. You can guess by the native's name if it deals with the same kinds of things as the function you got the first Any variable from; and p0 and p1 are generally where all the important variables go in every native - the rest might as well be all 0's. If it looks like it makes sense, try it. To me, it seems like Any* pointer arguments are for assigning Any variables inside the function, as output-arguments, since we apparently just use Any type parameters as placeholders when we do not yet know what actual arguments a native is really supposed to take Many thanks! that's what I'm looking for! But I failed to declare an Any variable, how can I use Any in C# with Function.Call<type> ? Link to post Share on other sites
whorse 26 Posted September 3, 2015 Share Posted September 3, 2015 have you read through this thread about script cams? It seems that there is little you can actually do with the regular gameplay-cam, but you can create a script cam that emulates the gameplay cam in whatever way you want to modify it. Also, there are a lot of "Any" type variables in there, but most of them look like they refer to other cameras or animations and whatnot; stuff that you get by calling a function (with an obvious name) that already returns type Any. You can just store the returned value to a newly declared "Any" var in your script, and then import that value to another native that is takes an Any argument. You can guess by the native's name if it deals with the same kinds of things as the function you got the first Any variable from; and p0 and p1 are generally where all the important variables go in every native - the rest might as well be all 0's. If it looks like it makes sense, try it. To me, it seems like Any* pointer arguments are for assigning Any variables inside the function, as output-arguments, since we apparently just use Any type parameters as placeholders when we do not yet know what actual arguments a native is really supposed to take Many thanks! that's what I'm looking for!But I failed to declare an Any variable, how can I use Any in C# with Function.Call<type> ? Not sure if you can control the Any values just as they are in C#, but you can control them via the Camera class in Community ScriptHookV Dot Net 1 Link to post Share on other sites
CamxxCore 156 Posted September 3, 2015 Share Posted September 3, 2015 (edited) have you read through this thread about script cams? It seems that there is little you can actually do with the regular gameplay-cam, but you can create a script cam that emulates the gameplay cam in whatever way you want to modify it. Also, there are a lot of "Any" type variables in there, but most of them look like they refer to other cameras or animations and whatnot; stuff that you get by calling a function (with an obvious name) that already returns type Any. You can just store the returned value to a newly declared "Any" var in your script, and then import that value to another native that is takes an Any argument. You can guess by the native's name if it deals with the same kinds of things as the function you got the first Any variable from; and p0 and p1 are generally where all the important variables go in every native - the rest might as well be all 0's. If it looks like it makes sense, try it. To me, it seems like Any* pointer arguments are for assigning Any variables inside the function, as output-arguments, since we apparently just use Any type parameters as placeholders when we do not yet know what actual arguments a native is really supposed to take Many thanks! that's what I'm looking for! But I failed to declare an Any variable, how can I use Any in C# with Function.Call<type> ?"Any" can represent any type, as it implies. So your best bet is to go through decompiled scripts to find out what those arguments are. I did quite a bit of research into camera natives when making this script https://www.gta5-mods.com/scripts/scripted-camera-tool-1-0 so shoot me a message if you get stuck with something. Edited September 3, 2015 by CamxxCore 1 Link to post Share on other sites
whorse 26 Posted September 13, 2015 Share Posted September 13, 2015 (edited) okay i finally tried creating a script cam myself just now, and every time I try this native: Any camOne = CAM::CREATE_CAM("DEFAULT_SCRIPT_CAM", true); it returns a handle of "-1" for camOne. When I check to see if the camera exists with CAM::DOES_CAM_EXIST(camOne), it says that it does not exist. It doesn't seem to matter if I cast camOne as an int, an Any, a Cam, or a Camera. CAM::CREATE_CAM_WITH_PARAMS() does the same thing, and so does CAM::CREATE_CAMERA() and CAM::CREATE_CAMERA_WITH_PARAMS() Of course nothing happens when I set camOne active or tell it to render script cams, because the cam does not exist. what am I doing wrong? Edited September 13, 2015 by whorse Link to post Share on other sites