Deprecated OpenGL


#10

I found a document that might be useful to you:
https://developer.apple.com/metal/Metal-Shading-Language-Specification.pdf


(marc hoffman) #11

yeah. that’s the only link i found myself, and it does t have a list :frowning:


(Friedrich Westermann) #12

Not easy to find something,
But found something for Notepad++.
After a short Test it looks good.
It is a xml so I think you will find all insideNotepadPP_Shaders.xml (9.2 KB)


(marc hoffman) #13

thanx!


(marc hoffman) #14

Done.


(Friedrich Westermann) #15

Wow, thanks
It is realy amazing to work with you and your team


(marc hoffman) #16

Working on EBuild integration now, but oddly:

            -> Task ProcessMetalShaders started for MetalExample.
D:             /usr/bin/xcrun metal -arch air64 -emit-llvm -c -gline-tables-only -isysroot /Users/mh/Applications/Xcode-10Beta1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -ffast-math -o "/Users/mh/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-0E221F0806BEFE729039A5A4E31CC16584B12C06/Debug/Toffee-macOS/MetalShaders/AAPLShaders/AAPLShaders.air" -mmacosx-version-min=10.14 -MMD -MT dependencies -MF /Users/mh/Downloads/MetalExample/Shader/AAPLShaders.metal
E:             metal: no input files

Works if I drop -MF:

            -> Task ProcessMetalShaders started for MetalExample.
D:             /usr/bin/xcrun metal /Users/mh/Downloads/MetalExample/Shader/AAPLShaders.metal -arch air64 -emit-llvm -c -gline-tables-only -isysroot /Users/mh/Applications/Xcode-10Beta1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -ffast-math -o "/Users/mh/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-0E221F0806BEFE729039A5A4E31CC16584B12C06/Debug/Toffee-macOS/MetalShaders/AAPLShaders/AAPLShaders.air" -mmacosx-version-min=10.14 -MMD -MT dependencies
D:             /usr/bin/xcrun metallib -o "/Users/mh/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-0E221F0806BEFE729039A5A4E31CC16584B12C06/Debug/Toffee-macOS/MetalShaders/AAPLShaders/AAPLShaders.metallib" "/Users/mh/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-0E221F0806BEFE729039A5A4E31CC16584B12C06/Debug/Toffee-macOS/MetalShaders/AAPLShaders/AAPLShaders.air"
D:             Adding AppResource '/Users/mh/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-0E221F0806BEFE729039A5A4E31CC16584B12C06/Debug/Toffee-macOS/MetalShaders/AAPLShaders/AAPLShaders.air'
D:             Adding AppResource '/Users/mh/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-0E221F0806BEFE729039A5A4E31CC16584B12C06/Debug/Toffee-macOS/MetalShaders/AAPLShaders/AAPLShaders.d'
D:             Adding AppResource '/Users/mh/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-0E221F0806BEFE729039A5A4E31CC16584B12C06/Debug/Toffee-macOS/MetalShaders/AAPLShaders/AAPLShaders.metallib'
            <- Task ProcessMetalShaders finished for MetalExample, took 19.9115s (19.9165s).

Next strip is to to out what to do with each of those files, I assume not all three shoukld just get packaged as app resource…


(marc hoffman) #17

I can send you a new build (just compiler, not Fire) in 30 or so, to test. Adjust your project manually so the build action for the .metal file is <MetalShader Include="..."> instead of <AppResource Include="..."> (ofc next Fire will let you pick that in the UI, too)


(Friedrich Westermann) #18

Wow, thanks. Will check it. Tomorrow (my time) in the morning. Out of office now on my ipad
Thanks a lot


(marc hoffman) #19

up now.


(Friedrich Westermann) #20

Thanks,
i see only a “RemObjects Elements - 10.0.0.2294.exe” in my personal Downloads?


(marc hoffman) #21

ah damn. was kate, and i forgot you need the mac version… wil, upload now.


(Friedrich Westermann) #22

Sorry for the delay,
found now the time to test it. Works great. I really like it.


(Friedrich Westermann) #23

The example in the pullrequest on Remobjects/Examples is changed to use the new options.


(marc hoffman) #24

Cool.

fwiw, I just see a flashing rectangle that changes colors, and these warnings in console:

2018-06-14 13:58:40.626540-0400 MetalExample[81119:4514840] Failed to created pipeline state, error Error Domain=CompilerError Code=1 "Function fragmentColorShader is using language version 2.1 which is incompatible with this OS." UserInfo={NSLocalizedDescription=Function fragmentColorShader is using language version 2.1 which is incompatible with this OS.}
2018-06-14 13:58:40.627136-0400 MetalExample[81119:4514840] Fallback to default

(Friedrich Westermann) #25

Which os version is these?


(marc hoffman) #26

10.13.

That said, I just realized I still have a version of ebuild installed that doesn’t compile the metal files, maybe thats part of it. Will retest with a newer version later.


(Friedrich Westermann) #27

Here is the log from my Mcbook Pro on 10.13.5 for the Metal part,
works correct

-> Task ProcessMetalShaders started for MetalExample.
D:             /usr/bin/xcrun metal "/Volumes/HD2/Elements/ElementsSamples/Oxygene/Toffee/OS X/Metal/MetalExample/Shader/AAPLShaders1.metal" -arch air64 -emit-llvm -c -gline-tables-only -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk -ffast-math -serialize-diagnostics "/Users/Westermann/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-EC30A8BCDCF5C0C5204B20D37D9AC91E9B57254A/Debug/Toffee-macOS/MetalShaders/AAPLShaders1/AAPLShaders1.dia" -o "/Users/Westermann/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-EC30A8BCDCF5C0C5204B20D37D9AC91E9B57254A/Debug/Toffee-macOS/MetalShaders/AAPLShaders1/AAPLShaders1.air" -mmacosx-version-min=10.13 -MMD -MT dependencies
D:             /usr/bin/xcrun metallib -o "/Users/Westermann/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-EC30A8BCDCF5C0C5204B20D37D9AC91E9B57254A/Debug/Toffee-macOS/MetalShaders/AAPLShaders1/AAPLShaders1.metallib" "/Users/Westermann/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-EC30A8BCDCF5C0C5204B20D37D9AC91E9B57254A/Debug/Toffee-macOS/MetalShaders/AAPLShaders1/AAPLShaders1.air"
               > metallib: creating metal-library /Users/Westermann/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-EC30A8BCDCF5C0C5204B20D37D9AC91E9B57254A/Debug/Toffee-macOS/MetalShaders/AAPLShaders1/AAPLShaders1.metallib
D:             Adding AppResource '/Users/Westermann/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-EC30A8BCDCF5C0C5204B20D37D9AC91E9B57254A/Debug/Toffee-macOS/MetalShaders/AAPLShaders1/AAPLShaders1.metallib'
D:             /usr/bin/xcrun metal "/Volumes/HD2/Elements/ElementsSamples/Oxygene/Toffee/OS X/Metal/MetalExample/Shader/AAPLShaders2.metal" -arch air64 -emit-llvm -c -gline-tables-only -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk -ffast-math -serialize-diagnostics "/Users/Westermann/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-EC30A8BCDCF5C0C5204B20D37D9AC91E9B57254A/Debug/Toffee-macOS/MetalShaders/AAPLShaders2/AAPLShaders2.dia" -o "/Users/Westermann/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-EC30A8BCDCF5C0C5204B20D37D9AC91E9B57254A/Debug/Toffee-macOS/MetalShaders/AAPLShaders2/AAPLShaders2.air" -mmacosx-version-min=10.13 -MMD -MT dependencies
D:             /usr/bin/xcrun metallib -o "/Users/Westermann/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-EC30A8BCDCF5C0C5204B20D37D9AC91E9B57254A/Debug/Toffee-macOS/MetalShaders/AAPLShaders2/AAPLShaders2.metallib" "/Users/Westermann/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-EC30A8BCDCF5C0C5204B20D37D9AC91E9B57254A/Debug/Toffee-macOS/MetalShaders/AAPLShaders2/AAPLShaders2.air"
               > metallib: creating metal-library /Users/Westermann/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-EC30A8BCDCF5C0C5204B20D37D9AC91E9B57254A/Debug/Toffee-macOS/MetalShaders/AAPLShaders2/AAPLShaders2.metallib
D:             Adding AppResource '/Users/Westermann/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-EC30A8BCDCF5C0C5204B20D37D9AC91E9B57254A/Debug/Toffee-macOS/MetalShaders/AAPLShaders2/AAPLShaders2.metallib'
D:             /usr/bin/xcrun metal "/Volumes/HD2/Elements/ElementsSamples/Oxygene/Toffee/OS X/Metal/MetalExample/Shader/AAPLShaders3.metal" -arch air64 -emit-llvm -c -gline-tables-only -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk -ffast-math -serialize-diagnostics "/Users/Westermann/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-EC30A8BCDCF5C0C5204B20D37D9AC91E9B57254A/Debug/Toffee-macOS/MetalShaders/AAPLShaders3/AAPLShaders3.dia" -o "/Users/Westermann/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-EC30A8BCDCF5C0C5204B20D37D9AC91E9B57254A/Debug/Toffee-macOS/MetalShaders/AAPLShaders3/AAPLShaders3.air" -mmacosx-version-min=10.13 -MMD -MT dependencies
D:             /usr/bin/xcrun metallib -o "/Users/Westermann/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-EC30A8BCDCF5C0C5204B20D37D9AC91E9B57254A/Debug/Toffee-macOS/MetalShaders/AAPLShaders3/AAPLShaders3.metallib" "/Users/Westermann/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-EC30A8BCDCF5C0C5204B20D37D9AC91E9B57254A/Debug/Toffee-macOS/MetalShaders/AAPLShaders3/AAPLShaders3.air"
               > metallib: creating metal-library /Users/Westermann/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-EC30A8BCDCF5C0C5204B20D37D9AC91E9B57254A/Debug/Toffee-macOS/MetalShaders/AAPLShaders3/AAPLShaders3.metallib
D:             Adding AppResource '/Users/Westermann/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-EC30A8BCDCF5C0C5204B20D37D9AC91E9B57254A/Debug/Toffee-macOS/MetalShaders/AAPLShaders3/AAPLShaders3.metallib'
D:             /usr/bin/xcrun metal "/Volumes/HD2/Elements/ElementsSamples/Oxygene/Toffee/OS X/Metal/MetalExample/Shader/AAPLShaders4.metal" -arch air64 -emit-llvm -c -gline-tables-only -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk -ffast-math -serialize-diagnostics "/Users/Westermann/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-EC30A8BCDCF5C0C5204B20D37D9AC91E9B57254A/Debug/Toffee-macOS/MetalShaders/AAPLShaders4/AAPLShaders4.dia" -o "/Users/Westermann/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-EC30A8BCDCF5C0C5204B20D37D9AC91E9B57254A/Debug/Toffee-macOS/MetalShaders/AAPLShaders4/AAPLShaders4.air" -mmacosx-version-min=10.13 -MMD -MT dependencies
D:             /usr/bin/xcrun metallib -o "/Users/Westermann/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-EC30A8BCDCF5C0C5204B20D37D9AC91E9B57254A/Debug/Toffee-macOS/MetalShaders/AAPLShaders4/AAPLShaders4.metallib" "/Users/Westermann/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-EC30A8BCDCF5C0C5204B20D37D9AC91E9B57254A/Debug/Toffee-macOS/MetalShaders/AAPLShaders4/AAPLShaders4.air"
               > metallib: creating metal-library /Users/Westermann/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-EC30A8BCDCF5C0C5204B20D37D9AC91E9B57254A/Debug/Toffee-macOS/MetalShaders/AAPLShaders4/AAPLShaders4.metallib
D:             Adding AppResource '/Users/Westermann/Library/Application Support/RemObjects Software/EBuild/Obj/MetalExample-EC30A8BCDCF5C0C5204B20D37D9AC91E9B57254A/Debug/Toffee-macOS/MetalShaders/AAPLShaders4/AAPLShaders4.metallib'
            <- Task ProcessMetalShaders

(marc hoffman) #28

Yeah, I’ll retest once I have a new build that includes that installed as my main local compiler. I’m a day or so behind with that I have installed :wink:


(marc hoffman) #29

Works (I think :wink: