Tôi đang sử dụng Windows 8/Visual Studio 2012, C++ 11 và Direct3D 11 để phát triển.d3dx11.lib không tìm thấy?
tôi bao gồm các thư viện Direct3D như thế này
#pragma comment(lib, "dxgi.lib")
#pragma comment(lib, "d3d11.lib")
#pragma comment(lib, "d3dx11.lib") // <-- error LNK1104: cannot open file 'd3dx11.lib'
#pragma comment(lib, "d3dx10.lib")
Tuy nhiên, các mối liên kết dường như không thể tìm ra d3dx11.lib. Sau khi thêm đường dẫn nơi thư viện được đặt vào thư mục 'Thư viện' của dự án, trình liên kết vẫn không thể tìm thấy các tệp đó. Ngay cả sau khi tôi đã sao chép các tệp lib vào thư mục dự án, nó cũng không hoạt động.
Tôi đã cài đặt Windows 8 SDK cũng như SDK DirectX từ tháng 6 năm 2010. Tôi có thiếu gì không?
Bạn có chắc chắn tệp "D3DX11" lib được đưa vào những tệp bạn đang sao chép không? Tôi cho rằng bạn có thể liên kết nó, nhưng thư viện tiện ích D3DX không còn được hỗ trợ - thực ra bạn không cần tải xuống SDK 2010 chút nào. D3DX đã được thay thế bằng thư viện DirectXMath (XMMath). Việc chuyển đổi là một chút đau đớn, nhưng không quá tệ. –
Ok. Không biết điều đó. Tôi khá mới với D3D11. Tôi sẽ xem làm thế nào để làm điều đó mà không có lib này. – bytecode77
Đôi khi D3DX là con đường để đi (tôi không sử dụng DirectXMath vì nó phức tạp interop với CUDA). Ngoài ra, một số giao diện cho DirectXMath kém để chuyển đổi (ví dụ: khởi tạo). Bạn đã tìm thấy một sửa chữa? (Một cách gắn bó với Windows SDK và truy cập gọn gàng D3DX?) – axon