Im currently messing around with the new ARKit stuff and have a question… I have a the AR sample up and running and everything looks great, the only issue is that I am trying to take my models and scale them to the size of a board game so roughly 30cm x 30cm for my ground plane. Scaled to this size it looks good on AR and fits to its surroundings as I want it to, but the shadows look shocking and in certain cases non existent. Yet if I scale everything back up shadows look great. I would like to know if anyone has any advice on how to scale down effectively… I see that VR has a world scale option but that doesn’t affect AR. Any help would be greatly appreciated
AR should be using Modulated Shadows. Did you try to issue this console command and see if the quality of the shadows increases on your scaled down objects? r.shadowquality 5
Scaling your Actor yourself in blueprints is the only way. For example in the Constructor or at BeginPlay.
Scaling down the Level with “Set Level Transform” will make sure all actors are at the right location.
Even with this improvised method, simply scaling the level and all individual actors is not ideal and will cause problems.
Problems with unit based values (velocity, gravity, mass in kg, particle size). For example with physics and character movement component.
The character movement component accepts a floor distance tolerance of 2units (cm). This is unnoticeable for a 180-200 units tall character like the ue4 mannequin.
But for a small character on the table, it will appear to be floating about the ground.
So epic could easily use the “Meters to World” setting, that works great for VR and easily make it available for AR to. AR is also locked to an HMD, not different from VR.
That would make it all about only changing 1 float value – done.
But that is too much to ask for, i guess. Rather milking the Fortnite cow, than implementing this.
I think you want to use “Set AR Alignment Transform” Once at the start with the scale of the transform set to scale down the scene. From what I understand this does not actually scale anything in the scene, it just moves your Camera to a point and adjusts how fast the camera moves to appear as if the objects are scaled-down. Here is some blueprint screengrabs of a very rough setup I have. I am using an image marker to track the positions and rotations for my scene I then have a Do Once to set the scale of the scene. I am running on an event tick to track the Image Marker constantly, you may want to only run it once for the scale change. The relevant part for scale is the one in red, this is what I am using for a large scale experience to see it run smaller on my table for testing purposes.
The other big thing that helped me with shadow quality was using the Apple Preview ES3.1 in the editor. This represented very close to the iPad and allowed me to tweak the shadows.
How can I change the scale of an individual Actor? For instance, after the user add an actor in the scene, then by using pitch he wants change the size of the actor.
I tried so many approaches, but nothing worked with me.