-
-
Notifications
You must be signed in to change notification settings - Fork 2.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
iOS Compatibility #2102
iOS Compatibility #2102
Conversation
# Conflicts: # osu.Game/osu.Game.csproj
# Conflicts: # osu.Game/osu.Game.csproj
I have almost been able to compile this version for iOS. However, I've been running in issues with Sixlabors/Core (and Imagesharp) versions that are not available on NuGet. Specifically speaking these entries in
On my copy of the solution I have been able to make some progress by using this ImageSharp version instead. I have still been unsuccessful in getting the Sixlabors/Core properly linked because of this dependency issue I am having. For context, I've been using 62c4bc9 (master at the time of writing) of ppy/osu-framework for the build process. osu.Desktop builds and runs successfully so it's isolated to the iOS build. |
@MiraiSubject you need to add the myget feed to your nuget sources (https://www.myget.org/F/sixlabors/api/v3/index.json) |
Thanks! @naoey I didn't think about that. Got it running on the 2018 iPad Pro now. Going to be looking into contributing now that I got this build working. Update: Wasn't able to get everything from the PR working, am still investigating.
In osu!standard the game does not do anything after the spinner finishes on the loading screen for a beatmap. Sometimes the game thread locks up and other times you can still interact with the elements. Audio will always play depending on the length of the song. Unfortunately, the debugger isn't helping a lot either, providing no useful info. Pausing the execution only vaguely points to osuTK, but osuTK is a black box in context of the project. |
This is to do with hovering not being detected, and was fixed in ppy/osu-framework#2039
I noticed this recently, it's something context-related I think. The draw thread runs fine, but |
# Conflicts: # osu.Game/osu.Game.csproj
…samah-ios # Conflicts: # osu.Game/Beatmaps/BeatmapManager.cs
<Compile Include="AppDelegate.cs" /> | ||
</ItemGroup> | ||
<ItemGroup> | ||
<Compile Include="..\osu.Game.Tests\**\Beatmaps\**\*.cs"> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is this because of some incompatible tests?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For the unit tests to be discovered, they need to be in the executing assembly, it seems. This means I couldn't split the tests into common, desktop and iOS projects. Instead, I made an iOS project that directly links to the source and compiles with the same root namespace.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it's probably best to not do this, as it's 100% going to get forgotten when we add a new folder or namespace.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wasn't particularly happy with it either. Another option I thought of is to include *.cs
across the entire project, then exclude anything it puts in the build directory.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd definitely prefer this as a slightly better solution. Strongly against specifically listing directories/tests.
I've probably asked this already, but are |
They are currently required, because of the explicit exclusion of |
Solution/projects/changes to run osu!lazer on iOS devices.
Tasks:
Login
Chat
osu!direct search and downloads
osu!standard gameplay
osu!taiko gameplay
Non-ruleset visual tests
Depends on Fix remaining cases of not using host-created TextureLoaderStore #4147
Depends on Dont always focus textboxes #4153
Depends on Fix global idle state being entered when overlays are visible #3919
To be done post-merge:
Issues:
osu!standard spinners crash the app at the end of the spinner unless you don't spin it at allAnything usingBufferedContainer
s, due to issues outlined in the osu!framework PR