I'm experimenting with Unity's capabilities on iOS. I've been trying to get deferred rendering to work on iOS, but so far I have had no luck. The editor viewport always renders using the forward rendering path unless I set my main camera to explicitly render using the deferred path. Changing the iOS player settings alone has no effect on the way the viewport renders. Even when I do tell the camera explicitly to use the deferred rendering path, and my editor viewport renders using the deferred path, the forward path is always used when I load the scene onto my device.
This is making me wonder if the deferred rendering path is actually supported on iOS currently; although, I can find no specific information about this.
The device I am currently using is an iPhone 6. Unity's build is targeting iOS 8.1, the current iOS version installed on my device. I have tried both the Metal and OpenGL ES 3.x graphics APIs, with no luck on either of them.
I noticed that the rendering path of a Camera was a writable property, and I tried setting the rendering path of my main camera to deferred in the setup() method of one of my scripts, but this triggered a runtime error (though it did build and compile fine).
Again, the forward rendering path works fine on iOS, but I can't seem to get the deferred path to active; it's always overridden by the forward path. It occurred to me that the deferred path might not be supported currently on iOS, but I do not see why that would be the case on the A7/A8 chips, given the great support for Multiple Render Targets in the Metal API.
Has anybody else had this problem, or know of a solution? If Unity's deferred rendering path is not currently supported on this generation iOS devices, is there a timeline for when it will be, or is Unity waiting for another generation before implementation?
↧