DirectX for the game Crysis 3. We work on a "tight" scheme
The problem is removal of localization lies in the following: in Crysis 2. There is only one archive gameCrysis2 \\ Localized \\ russian.pak, in Crysis 3. them already two - Localization \\ russian.pak and Localization \\ russian_xml.pakWe work on a "tight" scheme
Swing the program PAK MANAGER (Pak Manager Tool), it is needed for unpacking encrypted * .Pak. Files game, from the official site Crytek.supplied with Crysis 2 MOD SDK
Crysis 3 DX9 Project
Updated 22.03.2013
!
After the grueling digging in Cryengine 2. and Cryengine 3. It was found that in the last (from the game), there are important settings.
Among them should be noted - r_Driver(CE3) Takes values: DX11, AUTO and NULL.
Quote from crysis3.exe. "Sets The Renderer DRIVER (DX11 / AUTO / NULL)". And the line was very helped: Specify in System.cfg Like This: R_Driver \u003d "DX11". Specifies Index of the Preferred Video Adapter to Be Used for Rendering (-1 \u003d OFF, Loops Until First Suitable Adapter Is Found).
The setting R_Driver \u003d "DX9" led to the disappearance of a part of the objects on the maps and the test of drawing characters (only the head and weapon was visible).
Check r_ShadersExport (0 OFF, 1 ALLOW SHADER EXPORT DURING SHADER CACHE GENERATION - CURRENTLY 360 ONLY.), that is, we export the processed effects into files (CRYSIS3 \\ User \\ Shaders \\ Cache).
And again, the failure, as was revealed by scientific research, most of the teams that were available in C2 are either fixed here, or the engine does not respond to their change, although the code is often viewed for PS3 and Xbox 360, in particular: r_shadersps3 and r_Shadersxenon. Generally speaking, the file itself crysis3.exe. contains a lot of garbage and unnecessary information, for example, you can find calls and parameters of the compiler, but what needs to be found never succeeded, on this note Cryengine 3. It was stopped. It is worth noting that in code C3, accesses the expression D3D9.So it is possible, initially, the CE3 was created under the DX9 also, apparently developers faced some kind of inexplicable problem and decided not to strain, grinding on the quick "new" engine.
What managed to achieve
The experimental way was revealed that C3, responds to a command in system.cfg., sys_spec. (0-6), and value 5 for Xbox 360, and the value 6 for PS3! (sys_spec \u003d 5). I must notice that in this case, the game begins to use the entire N-nuclear processor without stopping, loading it by 99%! The video below demonstrates the main problem, in the CE3 engine there is no low-resolution textures, at least for characters. In addition, they found the ability to recompile the textures. See screenshots below and watch the video.
At the moment, the team of enthusiasts Hardware Masters. Working on this, as you finish and test - laid out!
Crysis 2 MOD SDK
To install a German developer package, C2 version 1.9 is required if you have a pirate and SDK Not installed falling out with an error: "Requires a Full Installation Of the Game. Crysis 2, Updated to Patch 1.9 ", then you need to do the following:
- Check the registry key (for 32-bit systems) HKEY_LOCAL_MACHINE \\ SOFTWARE \\ Crytek \\ Crysis 2
String key key Install Dir.If there is no such record in the registry or the path is not correct, then create and register the desired!
- for x64 systems, the registry key lies at: HKEY_LOCAL_MACHINE \\ SOFTWARE \\ WOW6432NODE \\ Crytek \\ Crysis 2
, actions are similar to the previous item.
useful links
DirectX 11 Hook / Hack / Patch
After the mass of the time spent in learning the engine from the game Crysis 2, the idea of \u200b\u200bemulation / bypass calls DirectX 11 came to mind, the idea is not new, if you remember the old utility from the German author, called 3D Analyzewhich allowed emulate the version of shaders and configure each application almost under any video card, then this solution method is faster and reliable. We sent Thomas."The message, but also themselves began to work in this direction. Patch / hack / utility will be either a direct patch (.dll) or universal (modify the process memory).
As a result of research, the EXE file was decided to make "their" library d3d11.dll so that functions in the library returned the desired parameters without the participation of drivers. Also in the process of research technology DirectX A very interesting series of details was found, for example, that any model with DX11 effects, you can delay almost any video card. Actually, suspicion was suspicion that all the "buns" DX10 / 11, etc., these are add-ons over DX9, and support for the API acc. After all, what's the difference what to send to the chip? In the end, the machine code is still going to the chip, for example, tessellation - in fact, adds a few more frames to the already existing model. As a result, we see the currency of all modern marketing, that is, for the sale of new chips, new chips came up with, which are on earlier models (8600GT / RADEON 4000 series ...) can also be recreated. For example, if in DX9, the convexity can be built with 9 commands, then in DX11 only 3, it is simply for example, the output still the graphic chip will be littered the same). Another point, even if you make a model only for the 11 version of the shaders, you still have to install "bulges and lighting" with your hands. It is for this that in Crysis 3 shaders for models are already lying in the game itself). In fact, all blocks are in drivers and in libraries (thanks MS, NV and AMD - all monopolists). Below the video, demonstrates in which direction you need to dig, and also clearly shows the loyalty of my statement.
What do we want to do? Replace the DX11 libraries, analogues, that is, each Hall of Punce API 11.0 / 11.1 will always be successful;).
I remember a little bit ... For example, how long the people sat on XP, and all arranged everything, as well as the failure of Vista (the main pseudo dx10 chip), and then a slow transition to Seven (sealing vista and pseudo-new DX11), proves loyalty once again approval.
Preparation for hack
Alternative Library DirectX 11 - Concept
After the surface study of the game for calling the DIRECTX functions, before loading the menu, two were found: D3D11CreateDevice. and. Having discovered the knowledge base of the microsoft (MSDN), it was found that discrepancies are not so much, with the exception of the number of arguments.
Defense ad D3D11CreateDevice. HRESULT D3D11CreateDevice (_In_ IDXGIAdapter * pAdapter, _In_ D3D_DRIVER_TYPE DriverType, _In_ HMODULE Software, _In_ UINT Flags, _In_ const D3D_FEATURE_LEVEL * pFeatureLevels, _In_ UINT FeatureLevels, _In_ UINT SDKVersion, _Out_ ID3D11Device ** ppDevice, _Out_ D3D_FEATURE_LEVEL * pFeatureLevel, _Out_ ID3D11DeviceContext ** ppImmediateContext ); | Defense ad D3D10CreateDevice. Hresult d3d10createdevice (_in_ idxgiadapter * padapter, _in_ d3d10_driver_type drivertype, _in_ hmodule software, _in_ uint flags, _in_ uint sdkversion, _out_ id3d10device ** ppdevice); |
Defense ad D3D11CreateDeviceAndSwapchain. HRESULT D3D11CreateDeviceAndSwapChain (_In_ IDXGIAdapter * pAdapter, _In_ D3D_DRIVER_TYPE DriverType, _In_ HMODULE Software, _In_ UINT Flags, _In_ const D3D_FEATURE_LEVEL * pFeatureLevels, _In_ UINT FeatureLevels, _In_ UINT SDKVersion, _In_ const DXGI_SWAP_CHAIN_DESC * pSwapChainDesc, _Out_ IDXGISwapChain ** ppSwapChain, _Out_ ID3D11Device ** ppdevice, _out_ d3d_feature_level * pfeaturelevel, _out_ id3d11devicectext ** ppimmediatectext); | Defense ad D3D10CreateDeviceAndSwapchain. HRESULT D3D10CreateDeviceAndSwapChain (_In_ IDXGIAdapter * pAdapter, _In_ D3D10_DRIVER_TYPE DriverType, _In_ HMODULE Software, _In_ UINT Flags, _In_ UINT SDKVersion, _In_ DXGI_SWAP_CHAIN_DESC * pSwapChainDesc, _Out_ IDXGISwapChain ** ppSwapChain, _Out_ ID3D10Device ** ppDevice); |
This code lies on the site MSDN.So anyone can check. In particular, the function D3D11CreateDeviceAndSwapchain. It is called only twice in the game before downloading the main menu, in fact, most likely test for checking chips of the 11th version of DirectX on this and was based, it was decided to change the D3D11.DLL library (placed in the folder with Crysis3.exe) by writing it "clone" Which first will intercept all calls from the game and write to the log file, secondly, you can always return the values \u200b\u200bwe need!
The screenshot below does not show the differences between DX9 and DX11 ( Dragon Age. 2), DX is just a software API for a video driver, the driver in turn creates a set of commands (instructions) for the graphics processor. DIRECTX 11 chips are just additional effects for DX9, DX10 / DX11 - simply marketing To sell Windows Vista and other Microsoft Operations, and to change the video card more often because of the "new" chips, which are essentially nothing more than just a program. If you had a video adapter video documentation (we tried to get it, but we were refused), for example, GeForce 6600, you could easily make the desired driver for any API, which would be able to create a command of a command for overlaying the same DX11 effects on a simple 6600 or on any other chip and adapter!
Files
Important: To unpack the archive, you need to use an archiver with 7Z format support, for example, 7-zip. (7-zip.org) or WinRar (rarlab.com).
Crysis 3 on Windows XP. Does the game on DirectX 9 10
On the Internet it is often possible to meet the themes on the forum and questions with the table of contents Does Crysis 3 work on Windows XP C DireTCX 9 and 10?
In this article, we will finally put a point in discussions about whether Crysis 3 can work on Windows XP, and explain all the Newans.
So, Crysis 3 is simply physically able to start and work on Windows XP. Not because Windows XP is too old an operating system for CRYSIS 3, but because the maximum supported version of DirectX in XP is 9, while the minimum level of DirectX required for starting and work Crysis 3 is 11.
Indeed on Windows 7, 8 and Windows Vista Crysis 3 feels great, because These operating systems can work with DirectX 11, which is created by the game.
There is still a nuance, there are users who are surprised why crysis 3 does not work on Windows 7, 8, Vista After all, they support DirectX 11. This is actually a very good question that is the answer. It is not enough for one operating system to support DirectX 11, it is also necessary for DirectX 11 to be supported by the video card itself. Using the GPU-Z program, you can define whether your DirectX 11 video card is supported or not.
Well, about Windows XP, Crysis 3 work on this OR will not be as not cool. That is why we recommend that you do not bother your head questions "how to run Crysis 3 on Windows XP" and others because you start it on this operating system You can't.