Page MenuHome

Camera perspective, corrupt 3D view in one workspace tab.
Open, Confirmed, LowPublic

Description

System Information
Operating system: Linux-4.15.0-51-generic-x86_64-with-debian-buster-sid 64 Bits
Graphics card: Radeon RX Vega (VEGA10, DRM 3.23.0, 4.15.0-51-generic, LLVM 8.0.0) X.Org 4.5 (Core Profile) Mesa 19.0.2

Blender Version
Broken: version: 2.80 (sub 74), branch: master, commit date: 2019-07-11 13:50, hash: rB06312c6d2db8
Worked: (optional)

Short description of error
Sometimes a 3D view can become corrupted and can't show camera view.
The viewport will not show anything.
Rendered viewport will flip between Path Tracing Sample counts but nothing will get done.
Rendering an image from the camera will work, suggesting it's not the camera itself that is erroneous.
Switching to other tabs with a 3D view will also work fine, suggesting it's that specific 3D view that is corrupted.

Exact steps for others to reproduce the error
In provided file:

  • Observe that in Shading.002 tab, everything works - camera perspective and user perspective view, solid and rendered.
  • Switch to Shading tab and you get a gray wall in camera perspective, while user perspective view works. Switching to rendered view while in camera perspective, the sample counter will just flip between a couple of numbers rather than complete.

I've had this happen a couple of times now, for no apparent reason - I can't reproduce on demand.
Clicking the add workspace quickly fixes it, but the first time I lost hours trying to figure out what was going on.
Trying to search for bugs here, all I got was the error message:
Unhandled Exception ("PhutilAggregateException")

Note: In my startup, I am using two linked math libraries (bunch of material node groups); one with failing image texture links and one with updated texture links. In the original work file (completely stripped down here), I was using linked blend containing objects in instanced collections and objects regularly instanced. Some objects have textures on multiple UVs (incl BastioniLab human). That's about the only "special" things I can remember about the real file.

Details

Type
Bug

Event Timeline

CarlG (CarlG) updated the task description. (Show Details)
Sebastian Parborg (zeddb) triaged this task as Waiting for Developer to Reproduce priority.

I'm getting and assert:

BLI_assert failed: /home/zed/prog/blender/source/blender/draw/intern/draw_manager_data.c:1264, draw_view_matrix_state_update(), at 'is_negative_m4(viewmat) == !is_negative_m4(winmat)'

And if I print the winmat, we can see that in contains nan values:

 -nan 0.000000 -nan 0.000000
0.000000 -nan -nan 0.000000
0.000000 0.000000 -1.000020 -0.002000
0.000000 0.000000 -1.000000 0.000000

@Clément Foucault (fclem) @Jeroen Bakker (jbakker) any idea what might cause this?

Probably totally unrelated, but I am getting this exact assert in T66745

Clément Foucault (fclem) lowered the priority of this task from Waiting for Developer to Reproduce to Confirmed, Low.Jul 18 2019, 10:27 AM

Ok this is because the view3D is corrupted (somehow).

rv3d->camdx and rv3d->camdy are NaN in the file for this View3D leading to incorrect matrix calculation.

Workaround : The only way to reset them seems to be the "View Camera Center" operator.

Not sure how you ended up with this as theses values are clamped. Maybe zooming too much in camera view?

Not sure how to solve it either. Maybe some underflow/overflow protection at some level?

@CarlG (CarlG) could you try to figure out what is causing this for you?
It will be quite hard for us to fix it if we do not have a way to reproduce it.

Workaround : The only way to reset them seems to be the "View Camera Center" operator.
What does the above mean? How would I execute this?

I can try zooming around, way too far and see if something happens.
Sorry, but I have no idea how it happens, and considering it only happened a couple of times I doubt it's going to be easy for me to reproduce as well.

Currently I add a new Workspace, but that ends up last and without stepwise relocating (only first and last) it's kinda annoying :)
But again, only a couple of times and not in important projects.

@CarlG (CarlG) "View Camera Center" is an operator. Search for it when in camera view after pressing F3 to invoke the search operator box.