51842

autoenablesDefaultLighting is too bright in iOS 12 and SCNView.pointOfView is not effective

Question:

I am using SceneKit’s autoenablesDefaultLighting and allowsCameraControl functions of my sceneView to provide light to an obj 3D model in the app and rotate around this object in Objective-C. Since upgrading to iOS12, the default light intensity of autoenablesDefaultLighting gets higher and the 3D model looks so bright!

Did anyone faced the same issue? If yes, is there a way to control the light intensity of autoenablesDefaultLighting when its value is ‘YES’? If it is not editable, I tried to attach/constraint an omni light or directional light to a camera by creating a node, assign a light to this node and add as child of SCNView.pointOfView but no light illuminates the scene.

Exemple:<br /><a href="https://i.stack.imgur.com/Bve0h.jpg" rel="nofollow">3D object displayed before iOS 12</a><br /><a href="https://i.stack.imgur.com/WKDfH.jpg" rel="nofollow">3D object displayed in iOS 12</a>

It will be good if anyone can help me on it.

Many thanks!

<strong>Edit to solve this issue</strong>

I create a new SCNCamera and add this in a node and set the PointOfView of my scnView. Activate the HDR of this camera with scnView.pointOfView.wantHDR = YES; but a had a grey background.

To delete the grey background I delete the background color with scnView.backgroundColor = [UIColor ClearColor] and set the explosure of the camera to -1 with :

self.scnView.pointOfView.camera.minimumExposure = -1; self.scnView.pointOfView.camera.maximumExposure = -1;

Thanks

Answer1:

You can try enabling HDR. It should result in a balanced exposure

scnView?.pointOfView?.camera?.wantsHDR = true

With HDR enabled, you can even control exposure compensation with

scnView?.pointOfView?.camera?.exposureOffset

Answer2:

.camera?.wantsHDR = true

.camera?.wantsExposureAdaptation = false

Should solve the problem!

Recommend

  • Issues with running a second node on another processor
  • UIScrollView AutoLayout Vertical Only
  • Omni completion Does not contain all the php functions
  • Faster way to find out the key for given value from Map?
  • Image map / custom shaped clickable regions in WPF - WP7
  • Using Oozie ssh action with private key
  • Unity build a dark scene with no lights except torch
  • Automata with kleene star
  • Resource for understanding view, projection, 'virtual camera' in OpenGL or graphics in gen
  • How to hide or deactivate a TextField and a Label with javafx
  • Unable to scan Code 128
  • How to mount dynamically single file component in Vue.js
  • LatLong falls within a given polygon in D3 + Leaflet
  • Column Nullability/Optionality: NULL vs NOT NULL
  • Remove every nth element from swift array
  • Joining Model with Table Laravel 5.2
  • JQgrid : Change entire row's font color if one column is filled
  • Trouble Attaching Call Back to Unobtrusive Validation Show Error
  • if I want to find what's referencing an object in SQL Server, is searching syscomments comprehe
  • getFinancials (quantmod) and tq_get (tidy quant) not working?
  • Phonegap GA plugin not working
  • How do you remove the JComboBox 'click and see dropdown' functionality?
  • Is there a way to disable a specific event in kendo ui scheduler?
  • XNU incudes in Kext
  • Galaxy S4 Android Custom Camera Issue
  • How to Model Ternary Relationship in CakePhp?
  • Hash Code in SQL Server?
  • Moving Android View and preventing onDraw to be called over and over again
  • Initializer list vs. initialization method
  • Control modification in presentation layer
  • Sails.js/waterline: Executing waterline queries in toJSON function of a model?
  • Display issues when we change from one jquery mobile page to another in firefox
  • Nant, Vault & Windows Integrated Authentication
  • Different response to non-authenticated users and AJAX calls
  • Fetching methods from BroadcastReceiver to update UI
  • Bug in WPF DataGrid
  • Arrow is showed instead of the material design version hamburger icon. Why doesn't syncState in
  • jQuery tmpl and DataLink beta
  • How can I estimate amount of memory left with calling System.gc()?
  • Data Validation Drop Down Box Arrow Disappearing