Search Issue Tracker
Fixed in master
Votes
2
Found in [Package]
7.1.2
Issue ID
1197958
Regression
No
[XR][Oculus Quest][Oculus Go][URP] MSAA isn't applied until eye textures are relocated by changing their resolution
Repro steps:
1. Open attached project
2. Build and Run on Oculus Quest/Go
3. Observe the display
4. Press the B button followed by A which relocates the eye textures
Actual: MSAA is applied only after changing the resolution of the textures
Reproducible with: 2020.1.0a19 Universal RP 7.1.7
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- SpeedTree importer fails to import .st files when path to the project includes a special character
- [VFX Graph] HSLS Redefinition error when input have the same name as attributes
- [VFX Graph] HLSL VFXFIXED_RAND isn't working
- Crash on Meta Quest 2 when using Vulkan
- Greyed out Icon for Tool Context is misaligned in the Tools Overlay in the URP 3D Sample Template
dansopanso
Apr 29, 2021 22:15
not sure why this is set to "fixed" because still a lot of people seem to have issues with this.
this one worked for me:
Unity 2019.4.19
URP 7.5.2
yourproject\Library\PackageCache\com.unity.render-pipelines.universal@7.5.2\Runtime\UniversalRenderPipelineCore.cs
change code from
static RenderTextureDescriptor CreateRenderTextureDescriptor(Camera camera, float renderScale,
bool isStereoEnabled, bool isHdrEnabled, int msaaSamples, bool needsAlpha)
{
RenderTextureDescriptor desc;
GraphicsFormat renderTextureFormatDefault = SystemInfo.GetGraphicsFormat(DefaultFormat.LDR);
// NB: There's a weird case about XR and render texture
// In test framework currently we render stereo tests to target texture
// The descriptor in that case needs to be initialized from XR eyeTexture not render texture
// Otherwise current tests will fail. Check: Do we need to update the test images instead?
if (isStereoEnabled)
{
desc = XRGraphics.eyeTextureDesc;
renderTextureFormatDefault = desc.graphicsFormat;
}
TO
static RenderTextureDescriptor CreateRenderTextureDescriptor(Camera camera, float renderScale,
bool isStereoEnabled, bool isHdrEnabled, int msaaSamples, bool needsAlpha)
{
RenderTextureDescriptor desc;
GraphicsFormat renderTextureFormatDefault = SystemInfo.GetGraphicsFormat(DefaultFormat.LDR);
// NB: There's a weird case about XR and render texture
// In test framework currently we render stereo tests to target texture
// The descriptor in that case needs to be initialized from XR eyeTexture not render texture
// Otherwise current tests will fail. Check: Do we need to update the test images instead?
if (isStereoEnabled)
{
desc = XRGraphics.eyeTextureDesc;
desc.msaaSamples = msaaSamples;
renderTextureFormatDefault = desc.graphicsFormat;
}
Lyje
Mar 27, 2021 16:56
Broken in 2019.4.22f1 with URP 7.5.3. Have to force backbufferMsaaSamples in ForwardRenderer.cs to fix.
Tom_3D
Jan 04, 2021 00:11
fix didn't work
Incode
Jan 23, 2020 01:50
This is a work around reported from QA to fix this issue. It can be attached to any gameobject.
public class AAFix : MonoBehaviour{
void Start() {
StartCoroutine("Fix");
}
IEnumerator Fix() {
UnityEngine.XR.XRSettings.eyeTextureResolutionScale = 0.5f; // Any value, just to trigger the refresh
yield return new WaitForEndOfFrame(); // Needed to apply the changes
UnityEngine.XR.XRSettings.eyeTextureResolutionScale = 1f; // Use your target resolution here
Destroy(this);
}
}