Open source project: 3Dmigoto-Armor’s principle of breaking through the limit of the number of model vertices

We all know that 3Dmigoto is a very old project. The project was probably established in 2012, and the continuous development and follow-up gradually ended around 2018. In the previous article, we talked about how to migrate the 3Dmigoto version to VS2022, so this section The content mainly introduces the author's open source project 3Dmigoto-Armor.

The 3Dmigoto-Armor project itself has been successfully migrated to VS2022, so you can compile it directly after downloading it. However, as of now 2023-09-07, it has only been configured for x64 release mode compilation, and the others have not been configured. If you need to configure If so, you can set it manually.

Github: https://github.com/airdest/3Dmigoto-Armor

3Dmigoto-Armor is a slight modification based on 3Dmigoto, making it suitable for game modding.
This does not mean that the original 3Dmigoto cannot be modded, but the original 3Dmigoto does not modify the buffer size of the D3D11_BUFFER_DESC structure. As a result, if the number of vertex of the model we replace exceeds If the original vertex number of the model is exceeded, the excess part will be intercepted and cannot be fully displayed in the game.

To solve this problem, you need to modify D3D11_BUFFER_DESC. Here we have to mention the ID3D11Device interface. The ID3D11Device interface is the main interface for creating and configuring Direct3D 11 devices. It provides methods for creating buffers, textures, render targets and other resources. .

To break through the limit on the number of vertices, we need related functions of the ID3D11Device interface, such as the CreateBuffer() method, which is used to create buffer objects. By hooking these functions, you can intercept and modify the parameters used to create the buffer, thereby changing the vertex limit.

Guess you like

Origin blog.csdn.net/weixin_42072754/article/details/132729336