NVIDIA Please, How do I set convergence/depth from custom .NET application? PLEASE help me.
2 / 2
I don't think you can do what you want with the NVAPI.
As I read it, control panel settings are only read when the display driver is started (probably on device created, which is why alt-tab works).
The API to explicityly set convergence requires a StereoHandle which in turn requires an D3D Device pointer, you have no way to get that from the application.
It could be done, but it certiainly wouldn't be easy. You'd have to find someway to intercept the D3DDevice creation, and your app would have to be running in the same address space as the app itself.
Edit--
Looks like it might be easier than I thought, you can hook the device creation in your own app to get the Device pointer
http://www.gamedev.net/community/forums/topic.asp?topic%5Fid=359794
You can probably use PInvoke on the NVAPI interfaces.
I don't think you can do what you want with the NVAPI.
As I read it, control panel settings are only read when the display driver is started (probably on device created, which is why alt-tab works).
The API to explicityly set convergence requires a StereoHandle which in turn requires an D3D Device pointer, you have no way to get that from the application.
It could be done, but it certiainly wouldn't be easy. You'd have to find someway to intercept the D3DDevice creation, and your app would have to be running in the same address space as the app itself.
Edit--
Looks like it might be easier than I thought, you can hook the device creation in your own app to get the Device pointer
[quote name='ERP' date='23 November 2010 - 06:59 PM' timestamp='1290538750' post='1150570']
I don't think you can do what you want with the NVAPI.
As I read it, control panel settings are only read when the display driver is started (probably on device created, which is why alt-tab works).
The API to explicityly set convergence requires a StereoHandle which in turn requires an D3D Device pointer, you have no way to get that from the application.
It could be done, but it certiainly wouldn't be easy. You'd have to find someway to intercept the D3DDevice creation, and your app would have to be running in the same address space as the app itself.
Edit--
Looks like it might be easier than I thought, you can hook the device creation in your own app to get the Device pointer
http://www.gamedev.net/community/forums/topic.asp?topic%5Fid=359794
You can probably use PInvoke on the NVAPI interfaces.
[/quote]
I was looking into doing it this way but I'd rather not hook or inject.
If I had my hands on an NVAPI COM DLL then I could test it to see what could be done. When I have some time I'll try to look into compiling nvapi.h into a compatible dll for use in vb.net or c# but i've never done that before, may be out of my league.
You may be right, it may not be possible. But I haven't had a chance to really step through the code and mess with it yet.
[quote name='ERP' date='23 November 2010 - 06:59 PM' timestamp='1290538750' post='1150570']
I don't think you can do what you want with the NVAPI.
As I read it, control panel settings are only read when the display driver is started (probably on device created, which is why alt-tab works).
The API to explicityly set convergence requires a StereoHandle which in turn requires an D3D Device pointer, you have no way to get that from the application.
It could be done, but it certiainly wouldn't be easy. You'd have to find someway to intercept the D3DDevice creation, and your app would have to be running in the same address space as the app itself.
Edit--
Looks like it might be easier than I thought, you can hook the device creation in your own app to get the Device pointer
You can probably use PInvoke on the NVAPI interfaces.
I was looking into doing it this way but I'd rather not hook or inject.
If I had my hands on an NVAPI COM DLL then I could test it to see what could be done. When I have some time I'll try to look into compiling nvapi.h into a compatible dll for use in vb.net or c# but i've never done that before, may be out of my league.
You may be right, it may not be possible. But I haven't had a chance to really step through the code and mess with it yet.
[quote name='ERP' date='23 November 2010 - 06:59 PM' timestamp='1290538750' post='1150570']
I don't think you can do what you want with the NVAPI.
As I read it, control panel settings are only read when the display driver is started (probably on device created, which is why alt-tab works).
The API to explicityly set convergence requires a StereoHandle which in turn requires an D3D Device pointer, you have no way to get that from the application.
It could be done, but it certiainly wouldn't be easy. You'd have to find someway to intercept the D3DDevice creation, and your app would have to be running in the same address space as the app itself.
Edit--
Looks like it might be easier than I thought, you can hook the device creation in your own app to get the Device pointer
http://www.gamedev.net/community/forums/topic.asp?topic%5Fid=359794
You can probably use PInvoke on the NVAPI interfaces.
[/quote]
I was looking into doing it this way but I'd rather not hook or inject.
If I had my hands on an NVAPI COM DLL then I could test it to see what could be done. When I have some time I'll try to look into compiling nvapi.h into a compatible dll for use in vb.net or c# but i've never done that before, may be out of my league.
You may be right, it may not be possible. But I haven't had a chance to really step through the code and mess with it yet.
[quote name='ERP' date='23 November 2010 - 06:59 PM' timestamp='1290538750' post='1150570']
I don't think you can do what you want with the NVAPI.
As I read it, control panel settings are only read when the display driver is started (probably on device created, which is why alt-tab works).
The API to explicityly set convergence requires a StereoHandle which in turn requires an D3D Device pointer, you have no way to get that from the application.
It could be done, but it certiainly wouldn't be easy. You'd have to find someway to intercept the D3DDevice creation, and your app would have to be running in the same address space as the app itself.
Edit--
Looks like it might be easier than I thought, you can hook the device creation in your own app to get the Device pointer
You can probably use PInvoke on the NVAPI interfaces.
I was looking into doing it this way but I'd rather not hook or inject.
If I had my hands on an NVAPI COM DLL then I could test it to see what could be done. When I have some time I'll try to look into compiling nvapi.h into a compatible dll for use in vb.net or c# but i've never done that before, may be out of my league.
You may be right, it may not be possible. But I haven't had a chance to really step through the code and mess with it yet.
[quote name='jenson' date='23 November 2010 - 05:29 PM' timestamp='1290554962' post='1150702']
I was looking into doing it this way but I'd rather not hook or inject.
If I had my hands on an NVAPI COM DLL then I could test it to see what could be done. When I have some time I'll try to look into compiling nvapi.h into a compatible dll for use in vb.net or c# but i've never done that before, may be out of my league.
You may be right, it may not be possible. But I haven't had a chance to really step through the code and mess with it yet.
[/quote]
[quote name='jenson' date='23 November 2010 - 05:29 PM' timestamp='1290554962' post='1150702']
I was looking into doing it this way but I'd rather not hook or inject.
If I had my hands on an NVAPI COM DLL then I could test it to see what could be done. When I have some time I'll try to look into compiling nvapi.h into a compatible dll for use in vb.net or c# but i've never done that before, may be out of my league.
You may be right, it may not be possible. But I haven't had a chance to really step through the code and mess with it yet.
[quote name='jenson' date='23 November 2010 - 05:29 PM' timestamp='1290554962' post='1150702']
I was looking into doing it this way but I'd rather not hook or inject.
If I had my hands on an NVAPI COM DLL then I could test it to see what could be done. When I have some time I'll try to look into compiling nvapi.h into a compatible dll for use in vb.net or c# but i've never done that before, may be out of my league.
You may be right, it may not be possible. But I haven't had a chance to really step through the code and mess with it yet.
[/quote]
[quote name='jenson' date='23 November 2010 - 05:29 PM' timestamp='1290554962' post='1150702']
I was looking into doing it this way but I'd rather not hook or inject.
If I had my hands on an NVAPI COM DLL then I could test it to see what could be done. When I have some time I'll try to look into compiling nvapi.h into a compatible dll for use in vb.net or c# but i've never done that before, may be out of my league.
You may be right, it may not be possible. But I haven't had a chance to really step through the code and mess with it yet.
As I read it, control panel settings are only read when the display driver is started (probably on device created, which is why alt-tab works).
The API to explicityly set convergence requires a StereoHandle which in turn requires an D3D Device pointer, you have no way to get that from the application.
It could be done, but it certiainly wouldn't be easy. You'd have to find someway to intercept the D3DDevice creation, and your app would have to be running in the same address space as the app itself.
Edit--
Looks like it might be easier than I thought, you can hook the device creation in your own app to get the Device pointer
http://www.gamedev.net/community/forums/topic.asp?topic%5Fid=359794
You can probably use PInvoke on the NVAPI interfaces.
As I read it, control panel settings are only read when the display driver is started (probably on device created, which is why alt-tab works).
The API to explicityly set convergence requires a StereoHandle which in turn requires an D3D Device pointer, you have no way to get that from the application.
It could be done, but it certiainly wouldn't be easy. You'd have to find someway to intercept the D3DDevice creation, and your app would have to be running in the same address space as the app itself.
Edit--
Looks like it might be easier than I thought, you can hook the device creation in your own app to get the Device pointer
http://www.gamedev.net/community/forums/topic.asp?topic%5Fid=359794
You can probably use PInvoke on the NVAPI interfaces.
My Blog
I don't think you can do what you want with the NVAPI.
As I read it, control panel settings are only read when the display driver is started (probably on device created, which is why alt-tab works).
The API to explicityly set convergence requires a StereoHandle which in turn requires an D3D Device pointer, you have no way to get that from the application.
It could be done, but it certiainly wouldn't be easy. You'd have to find someway to intercept the D3DDevice creation, and your app would have to be running in the same address space as the app itself.
Edit--
Looks like it might be easier than I thought, you can hook the device creation in your own app to get the Device pointer
http://www.gamedev.net/community/forums/topic.asp?topic%5Fid=359794
You can probably use PInvoke on the NVAPI interfaces.
[/quote]
I was looking into doing it this way but I'd rather not hook or inject.
If I had my hands on an NVAPI COM DLL then I could test it to see what could be done. When I have some time I'll try to look into compiling nvapi.h into a compatible dll for use in vb.net or c# but i've never done that before, may be out of my league.
You may be right, it may not be possible. But I haven't had a chance to really step through the code and mess with it yet.
I don't think you can do what you want with the NVAPI.
As I read it, control panel settings are only read when the display driver is started (probably on device created, which is why alt-tab works).
The API to explicityly set convergence requires a StereoHandle which in turn requires an D3D Device pointer, you have no way to get that from the application.
It could be done, but it certiainly wouldn't be easy. You'd have to find someway to intercept the D3DDevice creation, and your app would have to be running in the same address space as the app itself.
Edit--
Looks like it might be easier than I thought, you can hook the device creation in your own app to get the Device pointer
http://www.gamedev.net/community/forums/topic.asp?topic%5Fid=359794
You can probably use PInvoke on the NVAPI interfaces.
I was looking into doing it this way but I'd rather not hook or inject.
If I had my hands on an NVAPI COM DLL then I could test it to see what could be done. When I have some time I'll try to look into compiling nvapi.h into a compatible dll for use in vb.net or c# but i've never done that before, may be out of my league.
You may be right, it may not be possible. But I haven't had a chance to really step through the code and mess with it yet.
I don't think you can do what you want with the NVAPI.
As I read it, control panel settings are only read when the display driver is started (probably on device created, which is why alt-tab works).
The API to explicityly set convergence requires a StereoHandle which in turn requires an D3D Device pointer, you have no way to get that from the application.
It could be done, but it certiainly wouldn't be easy. You'd have to find someway to intercept the D3DDevice creation, and your app would have to be running in the same address space as the app itself.
Edit--
Looks like it might be easier than I thought, you can hook the device creation in your own app to get the Device pointer
http://www.gamedev.net/community/forums/topic.asp?topic%5Fid=359794
You can probably use PInvoke on the NVAPI interfaces.
[/quote]
I was looking into doing it this way but I'd rather not hook or inject.
If I had my hands on an NVAPI COM DLL then I could test it to see what could be done. When I have some time I'll try to look into compiling nvapi.h into a compatible dll for use in vb.net or c# but i've never done that before, may be out of my league.
You may be right, it may not be possible. But I haven't had a chance to really step through the code and mess with it yet.
I don't think you can do what you want with the NVAPI.
As I read it, control panel settings are only read when the display driver is started (probably on device created, which is why alt-tab works).
The API to explicityly set convergence requires a StereoHandle which in turn requires an D3D Device pointer, you have no way to get that from the application.
It could be done, but it certiainly wouldn't be easy. You'd have to find someway to intercept the D3DDevice creation, and your app would have to be running in the same address space as the app itself.
Edit--
Looks like it might be easier than I thought, you can hook the device creation in your own app to get the Device pointer
http://www.gamedev.net/community/forums/topic.asp?topic%5Fid=359794
You can probably use PInvoke on the NVAPI interfaces.
I was looking into doing it this way but I'd rather not hook or inject.
If I had my hands on an NVAPI COM DLL then I could test it to see what could be done. When I have some time I'll try to look into compiling nvapi.h into a compatible dll for use in vb.net or c# but i've never done that before, may be out of my league.
You may be right, it may not be possible. But I haven't had a chance to really step through the code and mess with it yet.
I was looking into doing it this way but I'd rather not hook or inject.
If I had my hands on an NVAPI COM DLL then I could test it to see what could be done. When I have some time I'll try to look into compiling nvapi.h into a compatible dll for use in vb.net or c# but i've never done that before, may be out of my league.
You may be right, it may not be possible. But I haven't had a chance to really step through the code and mess with it yet.
[/quote]
Please send me a private message.
I was looking into doing it this way but I'd rather not hook or inject.
If I had my hands on an NVAPI COM DLL then I could test it to see what could be done. When I have some time I'll try to look into compiling nvapi.h into a compatible dll for use in vb.net or c# but i've never done that before, may be out of my league.
You may be right, it may not be possible. But I haven't had a chance to really step through the code and mess with it yet.
Please send me a private message.
I was looking into doing it this way but I'd rather not hook or inject.
If I had my hands on an NVAPI COM DLL then I could test it to see what could be done. When I have some time I'll try to look into compiling nvapi.h into a compatible dll for use in vb.net or c# but i've never done that before, may be out of my league.
You may be right, it may not be possible. But I haven't had a chance to really step through the code and mess with it yet.
[/quote]
Please send me a private message.
I was looking into doing it this way but I'd rather not hook or inject.
If I had my hands on an NVAPI COM DLL then I could test it to see what could be done. When I have some time I'll try to look into compiling nvapi.h into a compatible dll for use in vb.net or c# but i've never done that before, may be out of my league.
You may be right, it may not be possible. But I haven't had a chance to really step through the code and mess with it yet.
Please send me a private message.