-
Notifications
You must be signed in to change notification settings - Fork 18
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
macOS Support #272
Comments
Awesome! Thanks |
Will update BUILD.md tomorrow, it's getting late here. Requirements are simple: apple clang 14+, cmake, ninja, pkgconfig, Qt 5.15, QScintilla and FFmpeg (will build on <7, but does not work properly on anything over 4.2.x). Currently there is a small build "issue", as we bundle the |
For a platform to be supported I need to be able to develop, use and test on that platform. |
Hi,
I don't know how to continue, I'll wait for your your instructions ;-) Thanks |
|
It worked, thanks. Anyway, it failed again:
|
https://github.com/friction2d/friction/blob/macos/BUILD.md#requirements-on-macos
I know this is a bit weird, but skia uses If you don't want to make a global |
Sure. I was able to fix the zoom issue in the canvas (latest commit in macos), at least here (MBA touchpad). Will look into gestures support. |
Nice! |
Major issues seems to have been resolved, there are some minor paper cuts left. Will try to use my Macbook when I use Friction at work this month, usually the best way to find issues. |
On macports QScintilla is located in the same folder as Qt.
Note that ffmpeg newer than 4.2.x will misbehave during render. This is a general issue on all platforms, I believe it's a throw/catch issue somewhere. |
I compiled using this code:
|
No need, they are for Linux.
This is the default value, not needed. |
Building supported ffmpegDownload and extract https://www.ffmpeg.org/releases/ffmpeg-4.2.10.tar.xz
Will build and install to Example release build
I will add scripts etc this week, and maybe a CI builder. |
The
|
I will definitely play around with Friction on Mac OS soon when I have some extra time. I was thinking about implementing some basic IK system similar to DUIK from After Effects. |
Talking about the cache problems, let me say something probably stupid, but that I'm saying anyway in case it drops some help in the subject: Olive Video Editor also used a cache system, I recall they had some troubles with the cache but got it working pretty good. I see both projects use C++, Olive cache system might help you figure out the problems you are facing, maybe just the ones under macOS or maybe not helping at all, but, well, I'm just referring you to them just in case: https://github.com/olive-editor/olive Cheers |
Sorry, but Olive and Friction has completely different code base. The cache system works just fine on Linux and Windows. This is a specific issue in Friction on macOS (and possible other systems, like the BSDs, but they are unsupported anyway). I will however take a peek at Olive when I start work on the new color management system (v2+). |
As you commented here, we are posting all macos related things in this issue: I tried installing SVGO in macOS without any trouble just using: Now I use I tried adding it into PATH but I had no luck making it work in Friction, even if you wrote that there is a fallback option to search in your PATH. I had a look at your code and I have the feeling that the code you wrote for loading SVGO specifies windows or linux but not other SO... am I right? is there anything else I'm missing? maybe it's not possible... |
The SVGO stuff was added before macOS support, so it's only for Windows and Linux. Should be easy to add support for macOS. Will look at it later today. |
Actually, it works fine on macOS here. I put I added support for |
Umm, I may be doing something wrong:
I have the feeling that the problem is because the file I have at Thanks |
yes! yours works like a charm so I guess there is something wrong with both how I installed SVGO and what file I'm supposed to have as a binary... did you do anything special after installing SVGO at |
I used the file linked above, tested it as /usr/local/bin/svgo and as friction.app/Contents/MacOS/svgo-macos svgo-macos is a self contained bundle/app. I don't use npm, so didn't test that. It should "just work", try running the npm version of svgo from a terminal, does that work? |
Tomorrow I'll try to explore it, just to learn as what you provide me solved the problem, that is, your svgo-macos binary works perfectly. Thanks |
I'm trying #311, great! it works like a charm. Thanks! |
Ok, will fix. |
Add WindowStaysOnTopHint on macOS. Ref: #272
Fixed in d5fa74b |
Uhh, I just tried and now the popup stays always on top but no matter in what positon the time line is placed that when adding a new marker with the "+" button, it adds it on frame 0... it would be useful that it adds it in current position of time line, right? ![]() |
Yeah, my bad. For some reason I didn't use current frame when adding a new marker through the editor, don't know what I was thinking (was probably not) 😄 Fixed in b271e07 |
There is still a remaining "glitch": if you have a marker in frame 0 and add a new one at any other frame with the "+" button of the Marker Editor, it deletes any marker created at frame 0... |
Yeah, the editor has limited testing (I don't use it) and was added because I knew people would ask for it. I don't have time to look into the issue until later tonight. Probably something in https://github.com/friction2d/friction/blob/main/src/ui/widgets/markereditor.cpp#L103 |
Got initial (wip) gesture support in the timeline (e423168)
|
🥁 .... We finally got working CI for macOS 🥳
Changes are part of the |
Noticed a major issue on macOS. I'm currently working on a project on my workstation, not to advanced, but uses 'colorize' effect. When opening this project on my macbook things start to get weird, the project gets unusable (show/hide on most stuff don't work, raster stuff don't work etc etc). Very odd issue and took some time to figure out the root of the issue. It seems loading any of the included raster effects except for (m)blur/shadow ends up corrupting the state of the project/Friction. Reproduce:
|
Found the issue. We replace |
Shader fixes: |
Arrived late to this... Is it now fixed or needs further testing? |
I only tested on macOS (Intel GPU), should work fine on other platforms and gfx cards. macOS is more strict regarding OpenGL, so anything deprecated in OpenGL 3.3 must be fixed. I will test #410 on Linux and Windows with NVIDIA/Intel GPUs before merging. Any card/driver not working with this fix should be considered unsupported anyway. |
Issue tracking macOS support.
When done we can offer an unsigned macOS 12.7 x86-64 compatible build.
Support for macOS beyond 12.7, Apple Silicon, notarized will require funding.
The text was updated successfully, but these errors were encountered: