I am porting my Windows directX application from X86 device to ARM in VS2017. But I could not find some DirectX library files(d3dx9.lib) for ARM in VS built-in Windows 10 SDK. The offical DirectX SDK (https://www.microsoft.com/en-us/download/details.aspx?id=6812) does not support ARM. Where can i find ARM version of these library files?
So d3dx is deprecated, thanks to Simon and Jake.
Related
I read this topic but somehow it still doesn't get through my thick skull.
The topic said:
Starting with Windows 8, the DirectX SDK is included as part of the
Windows SDK.
So I try to find in this page a way to setup a directX project. I read:
Using DirectX SDK projects with Visual Studio
...
Ensure that the June 2010 release of the DirectX SDK is installed on your development computer.
I don't understand what's this topic talking about. The first part it said in Windows 8, I don't have to install DirectX SDK (because it is included in Windows SDK), the part about HowTo setup directX project, it said I have to install DirectX SDK.
Anyway, I just ignore and keep going - I don't install DirectX SDK assuming it is already included in Windows SDK as the first quote states.
I do one thing as the topic said:
Include Directories: $(IncludePath);$(DXSDK_DIR)Include
Include Library Directories: $(LibraryPath);$(DXSDK_DIR)Lib\x86
In VS2015 VC++ Directories doesn't have Include Library Directories: so I understand it as Library Directories, the project is for win32 so I don't setup directX SDK for 64. Then I run the project and get the error:
TRK0005 Failed to locate: "CL.exe". The system cannot find the file specified.
So the question is: Do I need to install DirectX SDK if using windows 8 and above or I have to download and install DirectX SDK
Thanks for reading :)
This is covered on MSDN and in more detail in this series of blog posts: Where is the DirectX SDK (2015 Edition)?, The Zombie DirectX SDK, DirectX SDKs of a certain age, and A Brief History of Windows SDKs.
If you are coding a DirectX 11 application, you can use the Windows 8.1 SDK that comes with VS 2015 and don't need the DirectX SDK at all. This application can be written to run on Windows Vista SP2 or later. You don't need the DirectSetup REDIST either as deployment is part of the OS. Do not make use of D3DX11 and use one of the many open source replacements instead. If you are writing a Universal Windows Platform (UWP) app, you can't use the legacy DirectX SDK as those components won't pass WACK.
If you are new to DirectX 11, a good place to start is the Direct3D VS Game Templates and the DirectX Tool Kit for DirectX 11 tutorials.
The one case where you might need the legacy DirectX SDK for your DirectX 11 app is if you want to use XAudio2 on Windows 7. This is covered here. If you require Windows 8 or Windows 10 to run, you can just use XAudio2 that's built into the OS and the Windows SDK.
This requires 'mixing' the Windows 8.1 SDK with the legacy DirectX SDK include paths which is where all the guideance about switching the include/lib path order comes from. For a Windows desktop app, you can still use legacy D3DX if you want with VS 2015--such as when using outdated tutorials or books to learn from--but note that the DXERR library is not compatible with the Visual C++ 2015 REDIST. You can work around this issue per this post.
If you are coding a legacy DirectX 9 application, then you likely want to support Windows XP as well. See here for details on how this works with VS 2015, and this does require the legacy DirectX SDK.
There's nothing in the legacy DirectX SDK for DirectX 12.
For information on other aspects of the moving beyond the legacy DirectX SDK see Living without D3DX, DirectX SDK Tools Catalog, DirectX SDK Samples Catalog, Living without D3DX, Direct3D SDK Debug Layer Tricks, and Not So Direct Setup
If you are looking to use DirectX with C# instead of C++, be sure to read this post.
I have downloaded the prebuilt windows dll-s from here: https://www.libsdl.org/download-2.0.php, but I am not able to get hardware accelerated renderer working.
Does they include directx or opengl support?
Or shall I compile my own if I want hardware accelerated video?
I do cross-compile my app with linux/cmake/mingw at the moment and linking with prebuild SDL2 dll-s.
They have directx support built in.
Mingw can link to those libraries.
(Did not work for me with Virtualbox, but did work with native windows.)
So Delphi now supports programming for Windows, MacOS, Android & iOS. Is there any way to use Delphi (XE5) to write programs for Windows Mobile?
You may look at Oxygene compiler from RemObjects, they have support for many platforms, including WinRT, iOS and Android, Here's a quote from their website:
Oxygene 6 is out now, supporting 3 major target platforms: .NET, WinRT
and Mono, Java and Android and NEW! native Cocoa development for Mac
and iOS. the same language lets you targets all three platforms, and
produces 100% native output for the respective platform
Oxygene isn't a Delphi product, but it was bundled with Rad Studio as Delphi Prism
Delphi XE5 targets Windows desktop, 32 and 64 bit, 32 bit MacOS, iOS (ARM) and Android (ARM). It does not target any flavour of Windows mobile.
You can use Lazarus. http://www.lazarus.freepascal.org
It has support for WinCE.
Google for lazarus wince and you'll see a sizeable list of references.
Don't have experience with WinCE myself.
Delphi XE5 targets Windows 32bit, Windows 64bit, MacOS 32bit, iOS, Android and Web. It does not target any Windows Mobile.
You can download lazarus from http://www.lazarus.freepascal.org
It has support for WinCE.
You can upgrade to Delphi 10.1 Berlin or even wait for Delphi 10.2 Godzilla. Delphi 10.1 Berlin Update 2 includes Windows 10 development and thus the ability to convert your Win32 or Win64 app to an AppX file. An AppX file is used to run apps on Windows 10. This includes Desktop, Xbox One, HoloLense, Mobile, Tablet, IoT, etc. Although I believe Delphi 10.1 Berlin Update 2 conversion to AppX uses the Desktop Bridge from Microsoft and thus your converted app might probably only run on Windows 10 desktop and Windows 10 tablet.
My Windows7 has DirectX 11 as default.
But I have trouble with DirectX 11 when I use SDL2.0
The solution is downgrading DirectX 11 to 9.0c (googling result)
Is there any method for downgrading?
I couldn't find DirectX 11 in 'program add/remove'
So I can't remove DirectX 11 in 'program add/remove'
If you use SDL 2.0 library to develop your application, you have three steps to config it.
Include SDL.h at the beginning of you program
Link sdl2.lib and SDL2main.lib in your project settings
Put SDL2.dll in your project directory(or put it in you System32 directory, so every project can
use it)
please take a look at the tutorial on this page for details. although it is for SDL 1.2, you can easily apply it for SDL 2.0.
If you want to build SDL 2.0 source code, you should install the DirectX SDK, since SDL 2.0 has a renderer based on DirectX 9.0
My Windows7 has DirectX 11 as default.
Your Windows7 also have DirectX 9.0 runtime library d3d9.dll, the DirectXruntime libraries was shipped with Windows7 in System32 folder.
I couldn't find DirectX 11 in 'program add/remove'
You can only find it after you install the DirectX SDK
In Windows 7, DirectX is a core component of the operating system and cannot be manually removed. If you are having trouble with specific DirectX 11 hardware, you can try updating the hardware drivers via the vendor's website, or disabling the hardware in Device Manager.
I have a problem while compiling boost asio on windows phone 8. Compiler can't search mswsock.h. How can I fix this problem?
I suspect it can't be found because it's not there for Windows Phone.
To get it to compile you will have to remove any references to the APIs that aren't available for Windows Phone in the source code.
Only the Win32 APIs that are listed on MSDN here are supported on WP8.