Angle running on top of MoltenVK , implemented for iOS and Mac

891 views
Skip to first unread message

Eli X

unread,
Jan 22, 2019, 2:41:57 AM1/22/19
to angleproject
Hi all , just F.Y.I

I have implemented  "Angle running on top of MoltenVK" solution as part of an game engine.

You can read about it and try it out  :

The branch with the code :

git clone -b angle-vulkan https://github.com/elix22/Urho3D.git

I have created 4 scripts that will create for you the Xcode projects  with all the samples:

cmake_ios-metal.sh - will create an iOS Xcode project using the metal backend (my work)
cmake_ios-gles.sh - will create an iOS Xcode project using the default OpenGL-ES backend
cmake_xcode-metal.sh - will create an Mac Xcode project using the metal backend (my work)
cmake_xcode-gl.sh - will create an Mac Xcode project using the default OpenGL-ES backend

For the Metal projects , In order to get the best performance you will have to modify the scheme to release build configuration and also disable metal API validation .

Everyone is free to use it for any purpose

Enjoy!


Jamie Madill

unread,
Jan 22, 2019, 10:22:46 AM1/22/19
to Eli X, angleproject
Very cool Eli. Thanks for sharing. How is the performance?

--
You received this message because you are subscribed to the Google Groups "angleproject" group.
To unsubscribe from this group and stop receiving emails from it, send an email to angleproject...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Eli X

unread,
Jan 22, 2019, 1:42:32 PM1/22/19
to angleproject

Performance is very good , 
On 99 % of the samples I am getting stable 60 FPS on my iPad , scheme configured to build release and Metal Api validation disabled.

Only 1 sample shows poor performance , 20_HugeObjectCount  , simulating 62500 draw-calls every frame.

Angle/Vulkan/MoltenGL : 7-9 FPS
GLES2 : 19 - 33 FPS

Eli X

unread,
Feb 3, 2019, 3:14:27 PM2/3/19
to angleproject
I added also Angle-Vulkan support for Windows , to be used as reference/test-bed   (my main objective is supporting MoltenVK)
You can use it If you wish to see how Angle-Vulkan performs while rendering complex scenes (and not only rendering of a simple cube) ,

You can read my Wiki on how to use it (both on Window-Vulkan and Mac/iOS-MoltenVK)



On Tuesday, January 22, 2019 at 5:22:46 PM UTC+2, Jamie Madill wrote:

Jamie Madill

unread,
Oct 23, 2019, 1:53:33 PM10/23/19
to Eli X, angleproject
Hey Eli,

Following up on this message from February 2019.

You've done some really great work here. Would you be willing to contribute this work to ANGLE? Either via contributing it yourself or an ANGLE developer integrating it upstream?

Eli X

unread,
Oct 24, 2019, 2:53:33 AM10/24/19
to angleproject
Hey Jamie ,
Feel free to integrate my stuff into ANGLE upstream , you have my consent.

Please look at this branch , it's the most recent one .
To unsubscribe from this group and stop receiving emails from it, send an email to anglep...@googlegroups.com.

Jamie Madill

unread,
Oct 24, 2019, 8:17:59 AM10/24/19
to Eli X, angleproject
Thanks Eli, will do.

Hamish Arblaster

unread,
Jan 30, 2021, 5:03:03 PM1/30/21
to angleproject
Hey, just wanted to check if this has been committed upstream yet (and if so, how to "enable" it) as I was interested in its GLES2 performance compared to the standard Metal backing renderer.

eli...@gmail.com

unread,
Jan 31, 2021, 4:15:24 PM1/31/21
to angleproject
This was more a Game Engine centric implementation 
However you can use the excellent "Angle (GLES2/GLES3) On top of Metal" implementation created by @kakashidinho

I guess some of it already made into upstream  (not all of it)

I personally find it to be more performant  than Angle on MoltenVK 

Hamish Arblaster

unread,
Feb 1, 2021, 4:22:03 AM2/1/21
to angleproject
Okay, thanks.
I'll be sure to give it a go!

Jamie Madill

unread,
Feb 1, 2021, 9:42:08 AM2/1/21
to hama...@gmail.com, angleproject
Most of the work in that repo has also been integrated upstream, thanks to Quyen.

Reply all
Reply to author
Forward
0 new messages