Announcement

Collapse
No announcement yet.

Unreal Engine 4 is available for Win10 UWP app dev now

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Originally posted by jsyarrow View Post
    To run from VS you need to get content files into a location where the temporary deployment can read them. This can't be the standard UE directories since the UWP sandbox prevents access. Typically this means running an editor build to do cook-on-the-fly, and then pointing the UWP app at it to stream the content. To do so, you need to set some 'command line' parameters, which for UWP means dropping a UE4CommandLine.txt in your Binaries/UWPxx folder (this should automatically get copied into Binaries/UWPxx/AppX during deployment).
    Thanks for this, it was very helpful.

    You can also borrow the instance of the cook server that the editor spins up in order to provide the content.
    I can't find any option in the editor to keep the cook server running all the time - the only reference I can find in the UI is that it starts up the cook-on-the-fly server when launching on device. Do you know a better way to get the cook server running?

    Alternatively you can pre-cook everything offline and then manually copy your cooked content into the Binaries/UWPxx/AppX location.
    Is it practical to get this content deployed automatically, or perhaps hard-link it in, as part of the regular build process?

    All this is a good reminder that we still need a FAQ posted to GitHub.
    Indeed! It's tempting to start something, at least with key information from this thread, for later refinement.

    Comment


      Hi Adasi and jsyarrow

      I have just ordered a Hololense and am very interested in what you guys are working on. I am a big UE4 user for both Oculus Rift and HTC Vive and was disappointed to hear that UE4 does not officially support Hololense. Your work here gives me hope. Will you be making a plugin that will expose all the relevant functionality to blueprints? If so get ready to take my money
      Stygian Abyss Demo VR Remake

      http://mrob76u.wordpress.com/

      Comment


        Originally posted by gfoot View Post
        I can't find any option in the editor to keep the cook server running all the time - the only reference I can find in the UI is that it starts up the cook-on-the-fly server when launching on device. Do you know a better way to get the cook server running?
        I'm not aware of editor UI that just starts the cook server and does nothing else. But there's a great deal I don't know about the editor . I typically just kick it off from a command line (ue4editor <project> -run=cook -cookonthefly).

        Is it practical to get this content deployed automatically, or perhaps hard-link it in, as part of the regular build process?
        I'm not very happy with this either. The trouble is that the content may be very large indeed, and it would need copying (UWP won't follow any kind of link to a location outside its package).  I think the best would be to expose it as an option to the user, but then there isn't a very good home for it - the project launcher UI doesn't seem to support platform-specific customizations, so it would probably end up in the project settings.

        Indeed! It's tempting to start something, at least with key information from this thread, for later refinement.
        Please do!  We'd love to see more community involvement in the project.

        Comment


          Hello everyone !

          Since several hours I'm trying to build an empty UWP app on Xbox One but now I have an error when I tried to deploy it on the xbox by the Xbox Device Manager.

          The error : Failure reason: Failed to start deployment. Failure text: Package could not be registered. (0x80073cf6)

          Do you know how to fix it ?

          Thank you in advance !

          Comment


            Originally posted by manoelneto View Post
            I'm a bit busy with a project at work, so I haven't been able to work on the ARM build for the past weeks, but I'd like to give an update on how it's going.

            I got past all the problems involving 3rd party libraries and the engine now initializes to the point where it's writing logs and config files on the devices (and proper crash dumps, which is a godsend).

            As expected, it crashes when trying to initialize the D3D11 device, since most (all?) UWP ARM devices only support feature level 9.3 and UE4 requires 10.0 minimum. I cleared up a bunch of incompatibilities (thanks to the D3D debug device and looking at what is/isn't enabled in the GL ES 2.0 renderer), but there are a bunch of shaders that still fail to compile under FL_9_3 even when targeting PCD3D_ES2.

            However, I'm trying to run the editor under FL9_3 so I suspect some shaders that would never be in a mobile build are being compiled and they don't respect the instruction limits of ES2, even under mobile preview (since mobile preview uses either D3D10+ or OpenGL3+).
            Could you tell me what I must do to add ARM support (theoretically) or give link to your working copy. I want try work with ARM in my free time. But I don't understand what I must add to unreal building tool to start building for ARM.

            Comment


              Does anybody have any pointers for integrating the Xbox Live libraries here? It feels like the regular way (using nuget packages, or project references in the solution) is not going to work with Unreal's build system, so we'll need to explicitly link in the static libraries and reference the headers.

              It looks like the project code is built with C++/CX enabled when targeting UWP, but obviously this doesn't work in the editor, so it feels like some ifdefs will be needed too. Alternatively I'm considering separating the C++/CX code into a separate library, and keeping it quite separate from the Unreal interfacing code. I'd be interested to hear how others have got on with this.

              Comment


                Originally posted by gfoot View Post
                Does anybody have any pointers for integrating the Xbox Live libraries here? It feels like the regular way (using nuget packages, or project references in the solution) is not going to work with Unreal's build system, so we'll need to explicitly link in the static libraries and reference the headers.

                It looks like the project code is built with C++/CX enabled when targeting UWP, but obviously this doesn't work in the editor, so it feels like some ifdefs will be needed too. Alternatively I'm considering separating the C++/CX code into a separate library, and keeping it quite separate from the Unreal interfacing code. I'd be interested to hear how others have got on with this.
                For Xbox Live support see the note at the bottom of the GitHub readme.  You'll need to be in the ID@XBOX program to access Live.

                As for C++/CX in the editor you ought to be able to hide this in pre-built binaries easily enough. Another approach, requiring some additional modifications to UBT, would be to just allow its use in Win32/Win64 builds. The work to do this in UWP builds should port across fairly easily.

                Comment


                  Originally posted by Igor.Pakhomov View Post
                  Could you tell me what I must do to add ARM support (theoretically) or give link to your working copy. I want try work with ARM in my free time. But I don't understand what I must add to unreal building tool to start building for ARM.
                  Sure, this is my fork with ARM support: https://github.com/M3d10n/UnrealEngine/tree/release_uwp

                  You can see all changes I did so far by looking at the commits.

                  Comment


                    do you think that I might be able to run a uwp project on my lumia 950 xl based of your fork [MENTION=38281]manoelneto[/MENTION]?

                    Comment


                      Originally posted by Sentinel View Post
                      do you think that I might be able to run a uwp project on my lumia 950 xl based of your fork [MENTION=38281]manoelneto[/MENTION]?
                      I only have a 640, which only supports D3D11 feature level 9.3. If the 950 supports feature level 10.0 or higher (never tested one myself, so I don't know) it should run, in theory, with all bells and whistles.

                      Of course, since I never got past shader compilation I still don't know if there are any outstanding bugs.

                      Comment


                        how do I find out what d3d11 my phone supports?

                        Comment


                          Originally posted by Sentinel View Post
                          how do I find out what d3d11 my phone supports?
                          There's an app called DirectX Extensions Viewer in the store (https://www.microsoft.com/store/apps/9wzdncrfk07l). Its UI isn't really designed for phones, but it seems to be able to show the d3d11 feature level.

                          Comment


                            [MENTION=38281]manoelneto[/MENTION] I tried to build an arm-32 bit project with your fork, but I get this message:

                            UATHelper: Packaging (UWP (ARM-32bit)): UnrealBuildTool: xapobase.lib(oapmatrixmix.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1700' doesn't match value '1900' in Engine.h.obj
                            UATHelper: Packaging (UWP (ARM-32bit)): UnrealBuildTool: E:\Engines\UnrealEngine-release_uwp_old\Engine\Binaries\UWPARM\UE4Game.exe : fatal error LNK1319: 1 mismatches detected
                            UATHelper: Packaging (UWP (ARM-32bit)): UnrealBuildTool: ERROR: UBT ERROR: Failed to produce item: E:\Engines\UnrealEngine-release_uwp_old\Engine\Binaries\UWPARM\UE4Game.exe
                            UATHelper: Packaging (UWP (ARM-32bit)): UnrealBuildTool: Total build time: 1017.31 seconds
                            UATHelper: Packaging (UWP (ARM-32bit)): CommandUtils.Run: Run: Took 1017.3526735s to run UnrealBuildTool.exe, ExitCode=5
                            UATHelper: Packaging (UWP (ARM-32bit)): Program.Main: ERROR: AutomationTool terminated with exception: AutomationTool.CommandUtils+CommandFailedException: Command failed (Result:5): E:\Engines\UnrealEngine-release_uwp_old\Engine\Binaries\DotNET\UnrealBuildTool.exe UE4Game UWPARM Development -r
                            UATHelper: Packaging (UWP (ARM-32bit)): emoteini="E:\Unreal Projects\UWP_3" -noxge -NoHotReload -ignorejunk. See logfile for details: 'UnrealBuildTool-2016.12.16-16.43.25.txt'
                            UATHelper: Packaging (UWP (ARM-32bit)): at AutomationTool.CommandUtils.RunAndLog(String App, String CommandLine, String Logfile, Int32 MaxSuccessCode, String Input, ERunOptions Options, Dictionary`2 EnvVars, SpewFilterCallbackType SpewFilterCallback) in E:\Engines\UnrealEngine-release_uwp_old\Engine\Source\Programs\AutomationTool\AutomationUtils\ProcessUt
                            ils.cs:line 883
                            UATHelper: Packaging (UWP (ARM-32bit)): at AutomationTool.CommandUtils.RunAndLog(CommandEnvironment Env, String App, String CommandLine, String LogName, Int32 MaxSuccessCode, String Input, ERunOptions Options, Dictionary`2 EnvVars, SpewFilterCallbackType SpewFilterCallback) in E:\Engines\UnrealEngine-release_uwp_old\Engine\Source\Programs\AutomationTool\A
                            utomationUtils\ProcessUtils.cs:line 836
                            UATHelper: Packaging (UWP (ARM-32bit)): at AutomationTool.CommandUtils.RunUBT(CommandEnvironment Env, String UBTExecutable, String CommandLine, String LogName, Dictionary`2 EnvVars) in E:\Engines\UnrealEngine-release_uwp_old\Engine\Source\Programs\AutomationTool\AutomationUtils\UBTUtils.cs:line 51
                            UATHelper: Packaging (UWP (ARM-32bit)): at AutomationTool.CommandUtils.RunUBT(CommandEnvironment Env, String UBTExecutable, FileReference Project, String Target, String Platform, String Config, String AdditionalArgs, String LogName, Dictionary`2 EnvVars) in E:\Engines\UnrealEngine-release_uwp_old\Engine\Source\Programs\AutomationTool\AutomationUtils\UBTUt
                            ils.cs:line 89
                            UATHelper: Packaging (UWP (ARM-32bit)): at AutomationTool.UE4Build.BuildWithUBT(String TargetName, UnrealTargetPlatform TargetPlatform, String Config, FileReference UprojectPath, Boolean ForceMonolithic, Boolean ForceNonUnity, Boolean ForceDebugInfo, Boolean ForceFlushMac, Boolean DisableXGE, String InAddArgs, Boolean ForceUnity, Dictionary`2 EnvVars) in
                            E:\Engines\UnrealEngine-release_uwp_old\Engine\Source\Programs\AutomationTool\AutomationUtils\UE4Build.cs:line 362
                            UATHelper: Packaging (UWP (ARM-32bit)): at AutomationTool.UE4Build.Build(BuildAgenda Agenda, Nullable`1 InDeleteBuildProducts, Boolean InUpdateVersionFiles, Boolean InForceNoXGE, Boolean InUseParallelExecutor, Boolean InForceNonUnity, Boolean InForceUnity, Boolean InShowProgress, Dictionary`2 PlatformEnvVars, Nullable`1 InChangelistNumberOverride, Diction
                            ary`2 InTargetToManifest) in E:\Engines\UnrealEngine-release_uwp_old\Engine\Source\Programs\AutomationTool\AutomationUtils\UE4Build.cs:line 1460
                            UATHelper: Packaging (UWP (ARM-32bit)): at Project.Build(BuildCommand Command, ProjectParams Params, Int32 WorkingCL, ProjectBuildTargets TargetMask) in E:\Engines\UnrealEngine-release_uwp_old\Engine\Source\Programs\AutomationTool\Scripts\BuildProjectCommand.Automation.cs:line 170
                            UATHelper: Packaging (UWP (ARM-32bit)): at BuildCookRun.DoBuildCookRun(ProjectParams Params) in E:\Engines\UnrealEngine-release_uwp_old\Engine\Source\Programs\AutomationTool\Scripts\BuildCookRun.Automation.cs:line 210
                            UATHelper: Packaging (UWP (ARM-32bit)): at BuildCookRun.ExecuteBuild() in E:\Engines\UnrealEngine-release_uwp_old\Engine\Source\Programs\AutomationTool\Scripts\BuildCookRun.Automation.cs:line 43
                            UATHelper: Packaging (UWP (ARM-32bit)): at AutomationTool.BuildCommand.Execute() in E:\Engines\UnrealEngine-release_uwp_old\Engine\Source\Programs\AutomationTool\AutomationUtils\BuildCommand.cs:line 27
                            UATHelper: Packaging (UWP (ARM-32bit)): at AutomationTool.Automation.Execute(List`1 CommandsToExecute, CaselessDictionary`1 Commands) in E:\Engines\UnrealEngine-release_uwp_old\Engine\Source\Programs\AutomationTool\AutomationUtils\Automation.cs:line 547
                            UATHelper: Packaging (UWP (ARM-32bit)): at AutomationTool.Automation.Process(String[] Arguments) in E:\Engines\UnrealEngine-release_uwp_old\Engine\Source\Programs\AutomationTool\AutomationUtils\Automation.cs:line 517
                            UATHelper: Packaging (UWP (ARM-32bit)): at AutomationTool.Program.MainProc(Object Param) in E:\Engines\UnrealEngine-release_uwp_old\Engine\Source\Programs\AutomationTool\Program.cs:line 135
                            UATHelper: Packaging (UWP (ARM-32bit)): at AutomationTool.InternalUtils.RunSingleInstance(Func`2 Main, Object Param) in E:\Engines\UnrealEngine-release_uwp_old\Engine\Source\Programs\AutomationTool\AutomationUtils\Utils.cs:line 704
                            UATHelper: Packaging (UWP (ARM-32bit)): at AutomationTool.Program.Main() in E:\Engines\UnrealEngine-release_uwp_old\Engine\Source\Programs\AutomationTool\Program.cs:line 59
                            UATHelper: Packaging (UWP (ARM-32bit)): Program.Main: AutomationTool exiting with ExitCode=5 (5)
                            UATHelper: Packaging (UWP (ARM-32bit)): BUILD FAILED
                            PackagingResults:Error: Error Unknown Error
                            any suggestions on how to solve it?

                            Edit: I checked for the d3d11: it has feature 11.1
                            Last edited by IamSentanaru; 12-16-2016, 12:05 PM. Reason: adding additional info

                            Comment


                              What Visual Studio version you're using?

                              Comment


                                visual studio 2015 enterprise, if I try to use my visual studio 2013 it says that the engine s incompatible with the visual studio version :/

                                Comment

                                Working...
                                X