Opened 5 years ago
Closed 5 years ago
#4407 closed defect (fixed)
Error restarting VR: openvr CompositorError_TextureUsesUnsupportedFormat
Reported by: | Owned by: | Tom Goddard | |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | VR | Version: | |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Notify when closed: | Platform: | all | |
Project: | ChimeraX |
Description
The following bug report has been submitted: Platform: Windows-10-10.0.19041 ChimeraX Version: 1.2.dev202103070148 (2021-03-07 01:48:03 UTC) Description VR was working but flickering after reopening the same VR session 3 times in a row. So I used "vr off" then "vr on" and got this error. Log: UCSF ChimeraX version: 1.2.dev202103070148 (2021-03-07) © 2016-2020 Regents of the University of California. All rights reserved. > open C:\Users\goddard/Desktop/test.cxs Opened emdb 20205 as #1, grid size 98,112,104, pixel 1.07,1.07,1.07, shown at level 0.287, step 1, values float32 Log from Wed Mar 24 18:07:43 2021UCSF ChimeraX version: 1.1 (2020-09-09) © 2016-2020 Regents of the University of California. All rights reserved. How to cite UCSF ChimeraX > open 20205 format ccp4 fromDatabase emdb Opened emd_20205.map, grid size 98,112,104, pixel 1.07,1.07,1.07, shown at level 0.287, step 1, values float32 > vr true started SteamVR rendering > save C:\Users\goddard/Desktop/test.cxs ——— End of log from Wed Mar 24 18:07:43 2021 ——— started SteamVR rendering opened ChimeraX session > vr false > vr true started SteamVR rendering An error occurred in drawing the scene. Redrawing graphics is now stopped to avoid a continuous stream of error messages. To restart graphics use the command "graphics restart" after changing the settings that caused the error. Traceback (most recent call last): File "C:\Program Files\ChimeraX-Mar-8-2021\bin\lib\site- packages\chimerax\core\updateloop.py", line 73, in draw_new_frame view.draw(check_for_changes = False) File "C:\Program Files\ChimeraX-Mar-8-2021\bin\lib\site- packages\chimerax\graphics\view.py", line 165, in draw self._draw_scene(camera, drawings) File "C:\Program Files\ChimeraX-Mar-8-2021\bin\lib\site- packages\chimerax\graphics\view.py", line 205, in _draw_scene camera.set_render_target(vnum, r) File "C:\Program Files\ChimeraX-Mar-8-2021\bin\lib\site- packages\chimerax\vive\vr.py", line 929, in set_render_target self._submit_eye_image('left', left_fb.openvr_texture, render) File "C:\Program Files\ChimeraX-Mar-8-2021\bin\lib\site- packages\chimerax\vive\vr.py", line 943, in _submit_eye_image result = self._compositor.submit(eye, texture) File "C:\Program Files\ChimeraX-Mar-8-2021\bin\lib\site- packages\openvr\\__init__.py", line 4367, in submit openvr.error_code.CompositorError.check_error_value(error) File "C:\Program Files\ChimeraX-Mar-8-2021\bin\lib\site- packages\openvr\error_code\\__init__.py", line 23, in check_error_value raise error_class(error_value, message) openvr.error_code.CompositorError_TextureUsesUnsupportedFormat OpenGL version: 3.3.0 NVIDIA 456.71 OpenGL renderer: GeForce GTX 1080 Ti/PCIe/SSE2 OpenGL vendor: NVIDIA Corporation Manufacturer: Gigabyte Technology Co., Ltd. Model: Z270X-Gaming K7 OS: Microsoft Windows 10 Home (Build 19041) Memory: 17,129,693,184 MaxProcessMemory: 137,438,953,344 CPU: 8 Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz OSLanguage: en-US Locale: ('en_US', 'cp1252') PyQt5 5.15.2, Qt 5.15.2 Installed Packages: alabaster: 0.7.12 appdirs: 1.4.4 Babel: 2.9.0 backcall: 0.2.0 blockdiag: 2.0.1 certifi: 2020.12.5 cftime: 1.4.1 chardet: 3.0.4 ChimeraX-AddCharge: 1.0 ChimeraX-AddH: 2.1.4 ChimeraX-AlignmentAlgorithms: 2.0 ChimeraX-AlignmentHdrs: 3.2 ChimeraX-AlignmentMatrices: 2.0 ChimeraX-Alignments: 2.1 ChimeraX-AmberInfo: 1.0 ChimeraX-Arrays: 1.0 ChimeraX-Atomic: 1.11.2 ChimeraX-AtomicLibrary: 2.0 ChimeraX-AtomSearch: 2.0 ChimeraX-AtomSearchLibrary: 1.0 ChimeraX-AxesPlanes: 2.0 ChimeraX-BasicActions: 1.1 ChimeraX-BILD: 1.0 ChimeraX-BlastProtein: 1.1 ChimeraX-BondRot: 2.0 ChimeraX-BugReporter: 1.0 ChimeraX-BuildStructure: 2.5 ChimeraX-Bumps: 1.0 ChimeraX-BundleBuilder: 1.1 ChimeraX-ButtonPanel: 1.0 ChimeraX-CageBuilder: 1.0 ChimeraX-CellPack: 1.0 ChimeraX-Centroids: 1.1 ChimeraX-ChemGroup: 2.0 ChimeraX-Clashes: 2.1 ChimeraX-ColorActions: 1.0 ChimeraX-ColorGlobe: 1.0 ChimeraX-ColorKey: 1.1 ChimeraX-CommandLine: 1.1.3 ChimeraX-ConnectStructure: 2.0 ChimeraX-Contacts: 1.0 ChimeraX-Core: 1.2.dev202103070148 ChimeraX-CoreFormats: 1.0 ChimeraX-coulombic: 1.0.3 ChimeraX-Crosslinks: 1.0 ChimeraX-Crystal: 1.0 ChimeraX-CrystalContacts: 1.0 ChimeraX-DataFormats: 1.1 ChimeraX-Dicom: 1.0 ChimeraX-DistMonitor: 1.1 ChimeraX-DistUI: 1.0 ChimeraX-Dssp: 2.0 ChimeraX-EMDB-SFF: 1.0 ChimeraX-ExperimentalCommands: 1.0 ChimeraX-FileHistory: 1.0 ChimeraX-FunctionKey: 1.0 ChimeraX-Geometry: 1.1 ChimeraX-gltf: 1.0 ChimeraX-Graphics: 1.0 ChimeraX-Hbonds: 2.1 ChimeraX-Help: 1.1 ChimeraX-HKCage: 1.3 ChimeraX-IHM: 1.0 ChimeraX-ImageFormats: 1.1 ChimeraX-IMOD: 1.0 ChimeraX-IO: 1.0 ChimeraX-Label: 1.0 ChimeraX-ListInfo: 1.1 ChimeraX-Log: 1.1.1 ChimeraX-LookingGlass: 1.1 ChimeraX-Maestro: 1.8.1 ChimeraX-Map: 1.0.2 ChimeraX-MapData: 2.0 ChimeraX-MapEraser: 1.0 ChimeraX-MapFilter: 2.0 ChimeraX-MapFit: 2.0 ChimeraX-MapSeries: 2.0 ChimeraX-Markers: 1.0 ChimeraX-Mask: 1.0 ChimeraX-MatchMaker: 1.1 ChimeraX-MDcrds: 2.2 ChimeraX-MedicalToolbar: 1.0.1 ChimeraX-Meeting: 1.0 ChimeraX-MLP: 1.0 ChimeraX-mmCIF: 2.2 ChimeraX-MMTF: 2.1 ChimeraX-Modeller: 1.0 ChimeraX-ModelPanel: 1.0.1 ChimeraX-ModelSeries: 1.0 ChimeraX-Mol2: 2.0 ChimeraX-Morph: 1.0 ChimeraX-MouseModes: 1.0 ChimeraX-Movie: 1.0 ChimeraX-Neuron: 1.0 ChimeraX-Nucleotides: 2.0 ChimeraX-OpenCommand: 1.5 ChimeraX-PDB: 2.2 ChimeraX-PDBBio: 1.0 ChimeraX-PDBLibrary: 1.0 ChimeraX-PDBMatrices: 1.0 ChimeraX-PickBlobs: 1.0 ChimeraX-Positions: 1.0 ChimeraX-PresetMgr: 1.0.1 ChimeraX-PubChem: 2.0.1 ChimeraX-ReadPbonds: 1.0 ChimeraX-Registration: 1.1 ChimeraX-RemoteControl: 1.0 ChimeraX-ResidueFit: 1.0 ChimeraX-RestServer: 1.1 ChimeraX-RNALayout: 1.0 ChimeraX-RotamerLibMgr: 2.0 ChimeraX-RotamerLibsDunbrack: 2.0 ChimeraX-RotamerLibsDynameomics: 2.0 ChimeraX-RotamerLibsRichardson: 2.0 ChimeraX-SaveCommand: 1.4 ChimeraX-SchemeMgr: 1.0 ChimeraX-SDF: 2.0 ChimeraX-Segger: 1.0 ChimeraX-Segment: 1.0 ChimeraX-SeqView: 2.3 ChimeraX-Shape: 1.0.1 ChimeraX-Shell: 1.0 ChimeraX-Shortcuts: 1.0 ChimeraX-ShowAttr: 1.0 ChimeraX-ShowSequences: 1.0 ChimeraX-SideView: 1.0 ChimeraX-Smiles: 2.0.1 ChimeraX-SmoothLines: 1.0 ChimeraX-SpaceNavigator: 1.0 ChimeraX-StdCommands: 1.3 ChimeraX-STL: 1.0 ChimeraX-Storm: 1.0 ChimeraX-Struts: 1.0 ChimeraX-Surface: 1.0 ChimeraX-SwapAA: 2.0 ChimeraX-SwapRes: 2.1 ChimeraX-TapeMeasure: 1.0 ChimeraX-Test: 1.0 ChimeraX-Toolbar: 1.0 ChimeraX-ToolshedUtils: 1.1 ChimeraX-Tug: 1.0 ChimeraX-UI: 1.6.1 ChimeraX-uniprot: 2.1 ChimeraX-UnitCell: 1.0 ChimeraX-ViewDockX: 1.0 ChimeraX-Vive: 1.1 ChimeraX-VolumeMenu: 1.0 ChimeraX-VTK: 1.0 ChimeraX-WavefrontOBJ: 1.0 ChimeraX-WebCam: 1.0 ChimeraX-WebServices: 1.0 ChimeraX-Zone: 1.0 colorama: 0.4.3 comtypes: 1.1.7 cxservices: 1.0 cycler: 0.10.0 Cython: 0.29.21 decorator: 4.4.2 distlib: 0.3.1 docutils: 0.16 filelock: 3.0.12 funcparserlib: 0.3.6 grako: 3.16.5 h5py: 2.10.0 html2text: 2020.1.16 idna: 2.10 ihm: 0.17 imagecodecs: 2020.5.30 imagesize: 1.2.0 ipykernel: 5.3.4 ipython: 7.18.1 ipython-genutils: 0.2.0 jedi: 0.17.2 Jinja2: 2.11.2 jupyter-client: 6.1.7 jupyter-core: 4.7.1 kiwisolver: 1.3.1 line-profiler: 2.1.2 lxml: 4.6.2 lz4: 3.1.0 MarkupSafe: 1.1.1 matplotlib: 3.3.2 msgpack: 1.0.0 netCDF4: 1.5.4 networkx: 2.5 numexpr: 2.7.3 numpy: 1.19.2 numpydoc: 1.1.0 openvr: 1.14.1501 packaging: 20.9 ParmEd: 3.2.0 parso: 0.7.1 pickleshare: 0.7.5 Pillow: 7.2.0 pip: 21.0.1 pkginfo: 1.5.0.1 prompt-toolkit: 3.0.16 psutil: 5.7.2 pycollada: 0.7.1 pydicom: 2.0.0 Pygments: 2.7.1 PyOpenGL: 3.1.5 PyOpenGL-accelerate: 3.1.5 pyparsing: 2.4.7 PyQt5-commercial: 5.15.2 PyQt5-sip: 12.8.1 PyQtWebEngine-commercial: 5.15.2 python-dateutil: 2.8.1 pytz: 2021.1 pywin32: 228 pyzmq: 22.0.3 qtconsole: 4.7.7 QtPy: 1.9.0 RandomWords: 0.3.0 requests: 2.24.0 scipy: 1.5.2 setuptools: 50.3.2 sfftk-rw: 0.6.7.dev1 six: 1.15.0 snowballstemmer: 2.1.0 sortedcontainers: 2.2.2 Sphinx: 3.2.1 sphinxcontrib-applehelp: 1.0.2 sphinxcontrib-blockdiag: 2.0.0 sphinxcontrib-devhelp: 1.0.2 sphinxcontrib-htmlhelp: 1.0.3 sphinxcontrib-jsmath: 1.0.1 sphinxcontrib-qthelp: 1.0.3 sphinxcontrib-serializinghtml: 1.1.4 suds-jurko: 0.6 tables: 3.6.1 tifffile: 2020.9.3 tinyarray: 1.2.3 tornado: 6.1 traitlets: 5.0.5 urllib3: 1.25.11 wcwidth: 0.2.5 webcolors: 1.11.1 wheel: 0.36.0 wheel-filename: 1.2.0 WMI: 1.5.1
Change History (2)
comment:1 by , 5 years ago
Component: | Unassigned → VR |
---|---|
Owner: | set to |
Platform: | → all |
Project: | → ChimeraX |
Status: | new → assigned |
Summary: | ChimeraX bug report submission → Error restarting VR: openvr CompositorError_TextureUsesUnsupportedFormat |
comment:2 by , 5 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Fixed.
Each VR session restore was registering an extra new frame handler because session restore is replacing the current SteamVR camera with a mono camera and then starting the SteamVR camera again, and when the session restore did this it did not call the close() method of the SteamVR camera. It was supposed to call the close() method. But that is super fragile. So I put in logic so the SteamVR camera checks if it is already started and does not register an extra new frame callback. Also I think it was reinitializing OpenVR which ultimately led to the weird error.
Same steps repeated does reproduce this bug. Using Vive Pro headset.
Reopening session 3 times causes volume model in session to flicker badly. Possibly the new frame trigger for VR redraw is happening for all 3 sessions?