Jump to content

  • Log In with Google      Sign In   
  • Create Account

We're offering banner ads on our site from just $5!

1. Details HERE. 2. GDNet+ Subscriptions HERE. 3. Ad upload HERE.


NVidia vendor hack "makefourcc NVCS"


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
4 replies to this topic

#1 dummynull   Members   -  Reputation: 98

Like
1Likes
Like

Posted 10 February 2012 - 04:46 PM

Hello
Can't find any information about NVCS texture format, but from Pix i see it's used in games and guess for getting depth buffer. How to use the same and how it works? Here is the log after most of scene rendering, but before drawing transparent objects which require depth texture (it's nvcs, but proper screen size, no textures or render targets were created of that format at startup):

<0x0A483ED8> IDirect3DDevice9::CreateTexture(16, 1, 1, 0x00000200, Unknown format, D3DPOOL_DEFAULT, 0x0012F768 --> 0x348FD540, NULL)
CreateObject(D3D9 Texture, 0x348FD540)
CreateObject(D3D9 Surface, 0x348A1818)
<0x0A483ED8> IDirect3DDevice9::GetRenderState(D3DRS_POINTSIZE, 0x0012F754)
<0x0A483ED8> IDirect3DDevice9::SetRenderState(D3DRS_POINTSIZE, 13108852736.000f)
<0x0A483ED8> IDirect3DDevice9::SetPixelShaderConstantI(0, 0x0012F6EC, 6)
<0x0A483ED8> IDirect3DDevice9::SetRenderState(D3DRS_POINTSIZE, 0.000f)
<0x348FD540> IDirect3DTexture9::Release()
DestroyObject(D3D9 Texture, 0x348FD540)
DestroyObject(D3D9 Surface, 0x348A1818)

Thanks!

Sponsor:

#2 MJP   Moderators   -  Reputation: 11590

Like
1Likes
Like

Posted 10 February 2012 - 05:35 PM

I have not heard of this NVCS format, but the various Nvidia driver hacks are documented here.

#3 dummynull   Members   -  Reputation: 98

Like
1Likes
Like

Posted 10 February 2012 - 05:48 PM

Guess it's some kind of new and unknown to public, as it used in TES Skyrim.

#4 Adam_42   Crossbones+   -  Reputation: 2579

Like
0Likes
Like

Posted 10 February 2012 - 07:13 PM

It's not that new - Google found a two year old mention of it at http://aras-p.info/blog/2009/11/20/direct3d-gpu-hacks/ but I couldn't find any documentation for it.

#5 HiAlgoBoost   Members   -  Reputation: 130

Like
4Likes
Like

Posted 24 September 2014 - 01:35 AM

I understand that this is an old topic, but while searching for "NVCS" I always ended up here, and other than one other thread (also by dummynull, in Russian) there is almost no information available. Eventually I figured things out, and it became clear that so did many others - but I just wanted to put some useful links here, for other wonderers who (like me) have trouble figuring it out...
 
So, "NVCS" is an internal NVida format, but it is not precisely a "vendor hack", on the contrary - it is a pretty civil API - and this is why there isn't really a lot of information about the "NVCS" format (btw, it can easily change to some other identifier in future versions of NVidia drivers). This API is available through nvapi.dll (obviously for NVidia GPUs only), and the culprit function is called NvAPI_D3D9_StretchRectEx().
 
You can get (almost) everything you need to know about this here: https://developer.nvidia.com/nvapi
 
In case you DO NOT want to "hard link" with nvapi.dll (i.e. if you DO NOT want your game to only work on NVidia-equipped systems), then here are some additional useful links:
 
 
_________________________________________________________________________________________
 
http://www.hialgo.com - HiAlgo optimizes your PC gaming experience, improves fps and smoothness of control, reduces lag and prevents system overheating.

Edited by HiAlgoBoost, 24 September 2014 - 01:37 AM.





Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS