Opened 2 years ago
Closed 2 years ago
#9501 closed defect (can't reproduce)
vr true: 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.22621 ChimeraX Version: 1.5 (2022-11-24 00:03:27 UTC) Description Error happened when turning vr on after creating a meeting. Log: UCSF ChimeraX version: 1.5 (2022-11-24) © 2016-2022 Regents of the University of California. All rights reserved. How to cite UCSF ChimeraX > open 3nos format mmcif fromDatabase pdb 3nos title: Human endothelial nitric oxide synthase with arginine substrate [more info...] Chain information for 3nos #1 --- Chain | Description | UniProt A B | ENDOTHELIAL NITRIC-OXIDE SYNTHASE | NOS3_HUMAN Non-standard residues in 3nos #1 --- H4B — 5,6,7,8-tetrahydrobiopterin HAR — N-ω-hydroxy-L-arginine HEM — protoporphyrin IX containing Fe (HEME) ZN — zinc ion > vr true started SteamVR rendering > ui tool show Meeting > meeting start bcbb Meeting "bcbb" started at chimeraxmeeting.net port 52196 Participants can join with command "meeting bcbb" Connection from ::1 port 50242 established, waiting for join message Connection accepted from ::1 port 50242 > close session Disconnected from ::1 port 50242 Connection from ::1 port 50246 established, waiting for join message Connection accepted from ::1 port 50246 > open 3nos format mmcif fromDatabase pdb 3nos title: Human endothelial nitric oxide synthase with arginine substrate [more info...] Chain information for 3nos #1 --- Chain | Description | UniProt A B | ENDOTHELIAL NITRIC-OXIDE SYNTHASE | NOS3_HUMAN Non-standard residues in 3nos #1 --- H4B — 5,6,7,8-tetrahydrobiopterin HAR — N-ω-hydroxy-L-arginine HEM — protoporphyrin IX containing Fe (HEME) ZN — zinc ion > meeting close > meeting start bcbb Meeting "bcbb" started at chimeraxmeeting.net port 52201 Participants can join with command "meeting bcbb" Connection from ::1 port 50255 established, waiting for join message Connection accepted from ::1 port 50255 Disconnected from ::1 port 50255 Connection from ::1 port 50256 established, waiting for join message Connection accepted from ::1 port 50256 > 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\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\bin\lib\site- packages\chimerax\graphics\view.py", line 177, in draw self._draw_scene(camera, drawings) File "C:\Program Files\ChimeraX\bin\lib\site- packages\chimerax\graphics\view.py", line 219, in _draw_scene camera.set_render_target(vnum, r) File "C:\Program Files\ChimeraX\bin\lib\site-packages\chimerax\vive\vr.py", line 948, in set_render_target self._submit_eye_image('left', left_fb.openvr_texture, render) File "C:\Program Files\ChimeraX\bin\lib\site-packages\chimerax\vive\vr.py", line 962, in _submit_eye_image result = self._compositor.submit(eye, texture) File "C:\Program Files\ChimeraX\bin\lib\site-packages\openvr\\__init__.py", line 4439, in submit openvr.error_code.CompositorError.check_error_value(error) File "C:\Program Files\ChimeraX\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 535.98 OpenGL renderer: NVIDIA GeForce RTX 3080 Ti/PCIe/SSE2 OpenGL vendor: NVIDIA Corporation Python: 3.9.11 Locale: en_US.cp1252 Qt version: PyQt6 6.3.1, Qt 6.3.1 Qt runtime version: 6.3.2 Qt platform: windows Manufacturer: Micro-Star International Co., Ltd. Model: MS-7D30 OS: Microsoft Windows 11 Pro (Build 22621) Memory: 68,497,039,360 MaxProcessMemory: 137,438,953,344 CPU: 20 12th Gen Intel(R) Core(TM) i7-12700K OSLanguage: en-US Installed Packages: alabaster: 0.7.12 appdirs: 1.4.4 asttokens: 2.1.0 Babel: 2.11.0 backcall: 0.2.0 blockdiag: 3.0.0 build: 0.8.0 certifi: 2022.9.24 cftime: 1.6.2 charset-normalizer: 2.1.1 ChimeraX-AddCharge: 1.4 ChimeraX-AddH: 2.2.1 ChimeraX-AlignmentAlgorithms: 2.0 ChimeraX-AlignmentHdrs: 3.2.1 ChimeraX-AlignmentMatrices: 2.0 ChimeraX-Alignments: 2.6 ChimeraX-AlphaFold: 1.0 ChimeraX-AltlocExplorer: 1.0.3 ChimeraX-AmberInfo: 1.0 ChimeraX-Arrays: 1.0 ChimeraX-Atomic: 1.41.5 ChimeraX-AtomicLibrary: 8.0.3 ChimeraX-AtomSearch: 2.0.1 ChimeraX-AxesPlanes: 2.3 ChimeraX-BasicActions: 1.1.2 ChimeraX-BILD: 1.0 ChimeraX-BlastProtein: 2.1.2 ChimeraX-BondRot: 2.0.1 ChimeraX-BugReporter: 1.0.1 ChimeraX-BuildStructure: 2.7.1 ChimeraX-Bumps: 1.0 ChimeraX-BundleBuilder: 1.2 ChimeraX-ButtonPanel: 1.0.1 ChimeraX-CageBuilder: 1.0.1 ChimeraX-CellPack: 1.0 ChimeraX-Centroids: 1.3.1 ChimeraX-ChangeChains: 1.0.2 ChimeraX-CheckWaters: 1.3 ChimeraX-ChemGroup: 2.0 ChimeraX-Clashes: 2.2.4 ChimeraX-ColorActions: 1.0.3 ChimeraX-ColorGlobe: 1.0 ChimeraX-ColorKey: 1.5.2 ChimeraX-CommandLine: 1.2.4 ChimeraX-ConnectStructure: 2.0.1 ChimeraX-Contacts: 1.0.1 ChimeraX-Core: 1.5 ChimeraX-CoreFormats: 1.1 ChimeraX-coulombic: 1.3.2 ChimeraX-Crosslinks: 1.0 ChimeraX-Crystal: 1.0 ChimeraX-CrystalContacts: 1.0.1 ChimeraX-DataFormats: 1.2.2 ChimeraX-Dicom: 1.1 ChimeraX-DistMonitor: 1.3 ChimeraX-DockPrep: 1.0 ChimeraX-Dssp: 2.0 ChimeraX-EMDB-SFF: 1.0 ChimeraX-ExperimentalCommands: 1.0 ChimeraX-FileHistory: 1.0.1 ChimeraX-FunctionKey: 1.0.1 ChimeraX-Geometry: 1.2 ChimeraX-gltf: 1.0 ChimeraX-Graphics: 1.1 ChimeraX-Hbonds: 2.4 ChimeraX-Help: 1.2.1 ChimeraX-HKCage: 1.3 ChimeraX-IHM: 1.1 ChimeraX-ImageFormats: 1.2 ChimeraX-IMOD: 1.0 ChimeraX-IO: 1.0.1 ChimeraX-ItemsInspection: 1.0.1 ChimeraX-Label: 1.1.7 ChimeraX-ListInfo: 1.1.1 ChimeraX-Log: 1.1.5 ChimeraX-LookingGlass: 1.1 ChimeraX-Maestro: 1.8.2 ChimeraX-Map: 1.1.2 ChimeraX-MapData: 2.0 ChimeraX-MapEraser: 1.0.1 ChimeraX-MapFilter: 2.0 ChimeraX-MapFit: 2.0 ChimeraX-MapSeries: 2.1.1 ChimeraX-Markers: 1.0.1 ChimeraX-Mask: 1.0.1 ChimeraX-MatchMaker: 2.0.9 ChimeraX-MDcrds: 2.6 ChimeraX-MedicalToolbar: 1.0.2 ChimeraX-Meeting: 1.0.1 ChimeraX-MLP: 1.1 ChimeraX-mmCIF: 2.8 ChimeraX-MMTF: 2.2 ChimeraX-Modeller: 1.5.6 ChimeraX-ModelPanel: 1.3.6 ChimeraX-ModelSeries: 1.0.1 ChimeraX-Mol2: 2.0 ChimeraX-Mole: 1.0 ChimeraX-Morph: 1.0.1 ChimeraX-MouseModes: 1.1.1 ChimeraX-Movie: 1.0 ChimeraX-Neuron: 1.0 ChimeraX-Nucleotides: 2.0.3 ChimeraX-OpenCommand: 1.9.1 ChimeraX-PDB: 2.6.8 ChimeraX-PDBBio: 1.0 ChimeraX-PDBLibrary: 1.0.2 ChimeraX-PDBMatrices: 1.0 ChimeraX-PickBlobs: 1.0.1 ChimeraX-Positions: 1.0 ChimeraX-PresetMgr: 1.1 ChimeraX-PubChem: 2.1 ChimeraX-ReadPbonds: 1.0.1 ChimeraX-Registration: 1.1.1 ChimeraX-RemoteControl: 1.0 ChimeraX-RenumberResidues: 1.1 ChimeraX-ResidueFit: 1.0.1 ChimeraX-RestServer: 1.1 ChimeraX-RNALayout: 1.0 ChimeraX-RotamerLibMgr: 2.0.1 ChimeraX-RotamerLibsDunbrack: 2.0 ChimeraX-RotamerLibsDynameomics: 2.0 ChimeraX-RotamerLibsRichardson: 2.0 ChimeraX-SaveCommand: 1.5.1 ChimeraX-SchemeMgr: 1.0 ChimeraX-SDF: 2.0 ChimeraX-Segger: 1.0 ChimeraX-Segment: 1.0 ChimeraX-SelInspector: 1.0 ChimeraX-SeqView: 2.7.2 ChimeraX-Shape: 1.0.1 ChimeraX-Shell: 1.0.1 ChimeraX-Shortcuts: 1.1.1 ChimeraX-ShowSequences: 1.0.1 ChimeraX-SideView: 1.0.1 ChimeraX-Smiles: 2.1 ChimeraX-SmoothLines: 1.0 ChimeraX-SpaceNavigator: 1.0 ChimeraX-StdCommands: 1.10 ChimeraX-STL: 1.0 ChimeraX-Storm: 1.0 ChimeraX-StructMeasure: 1.1 ChimeraX-Struts: 1.0.1 ChimeraX-Surface: 1.0 ChimeraX-SwapAA: 2.0.1 ChimeraX-SwapRes: 2.1.3 ChimeraX-TapeMeasure: 1.0 ChimeraX-Test: 1.0 ChimeraX-Toolbar: 1.1.2 ChimeraX-ToolshedUtils: 1.2.1 ChimeraX-Tug: 1.0.1 ChimeraX-UI: 1.24.3 ChimeraX-uniprot: 2.2.1 ChimeraX-UnitCell: 1.0.1 ChimeraX-ViewDockX: 1.1.4 ChimeraX-VIPERdb: 1.0 ChimeraX-Vive: 1.1 ChimeraX-VolumeMenu: 1.0.1 ChimeraX-VTK: 1.0 ChimeraX-WavefrontOBJ: 1.0 ChimeraX-WebCam: 1.0.1 ChimeraX-WebServices: 1.1.0 ChimeraX-Zone: 1.0.1 colorama: 0.4.5 comtypes: 1.1.10 cxservices: 1.2 cycler: 0.11.0 Cython: 0.29.32 debugpy: 1.6.4 decorator: 5.1.1 docutils: 0.19 entrypoints: 0.4 executing: 1.2.0 filelock: 3.7.1 fonttools: 4.38.0 funcparserlib: 1.0.1 grako: 3.16.5 h5py: 3.7.0 html2text: 2020.1.16 idna: 3.4 ihm: 0.33 imagecodecs: 2022.7.31 imagesize: 1.4.1 importlib-metadata: 5.1.0 ipykernel: 6.15.3 ipython: 8.4.0 ipython-genutils: 0.2.0 jedi: 0.18.1 Jinja2: 3.1.2 jupyter-client: 7.3.4 jupyter-core: 5.1.0 kiwisolver: 1.4.4 line-profiler: 3.5.1 lxml: 4.9.1 lz4: 4.0.2 MarkupSafe: 2.1.1 matplotlib: 3.5.2 matplotlib-inline: 0.1.6 msgpack: 1.0.4 nest-asyncio: 1.5.6 netCDF4: 1.6.0 networkx: 2.8.5 numexpr: 2.8.4 numpy: 1.23.1 openvr: 1.23.701 packaging: 21.3 ParmEd: 3.4.3 parso: 0.8.3 pep517: 0.13.0 pickleshare: 0.7.5 Pillow: 9.2.0 pip: 22.2.2 pkginfo: 1.8.3 platformdirs: 2.5.4 prompt-toolkit: 3.0.33 psutil: 5.9.1 pure-eval: 0.2.2 pycollada: 0.7.2 pydicom: 2.3.0 Pygments: 2.12.0 PyOpenGL: 3.1.5 PyOpenGL-accelerate: 3.1.5 pyparsing: 3.0.9 PyQt6-commercial: 6.3.1 PyQt6-Qt6: 6.3.2 PyQt6-sip: 13.4.0 PyQt6-WebEngine-commercial: 6.3.1 PyQt6-WebEngine-Qt6: 6.3.2 python-dateutil: 2.8.2 pytz: 2022.6 pywin32: 303 pyzmq: 24.0.1 qtconsole: 5.3.1 QtPy: 2.3.0 RandomWords: 0.4.0 requests: 2.28.1 scipy: 1.9.0 setuptools: 65.1.1 sfftk-rw: 0.7.2 six: 1.16.0 snowballstemmer: 2.2.0 sortedcontainers: 2.4.0 Sphinx: 5.1.1 sphinx-autodoc-typehints: 1.19.1 sphinxcontrib-applehelp: 1.0.2 sphinxcontrib-blockdiag: 3.0.0 sphinxcontrib-devhelp: 1.0.2 sphinxcontrib-htmlhelp: 2.0.0 sphinxcontrib-jsmath: 1.0.1 sphinxcontrib-qthelp: 1.0.3 sphinxcontrib-serializinghtml: 1.1.5 stack-data: 0.6.2 tables: 3.7.0 tifffile: 2022.7.31 tinyarray: 1.2.4 tomli: 2.0.1 tornado: 6.2 traitlets: 5.3.0 urllib3: 1.26.13 wcwidth: 0.2.5 webcolors: 1.12 wheel: 0.37.1 wheel-filename: 1.4.1 WMI: 1.5.1 zipp: 3.11.0
Change History (4)
comment:1 by , 2 years ago
Component: | Unassigned → VR |
---|---|
Owner: | set to |
Platform: | → all |
Project: | → ChimeraX |
Status: | new → assigned |
Summary: | ChimeraX bug report submission → vr true: CompositorError_TextureUsesUnsupportedFormat |
comment:2 by , 2 years ago
comment:3 by , 2 years ago
Doing the exact steps from the log in the same version 1.5 of ChimeraX (open 3nos, vr true, meeting start tg, close session, open 3nos, meeting close, meeting start tg, vr true) does not reproduce the error. I did not try joining the meetings. It is possible that something done by one of the participants that joined the meetings is a necessary step to produce the error.
From the bug report #4407 two years ago it is evident that this error is from starting vr twice without stopping the first VR camera before the second is made. The current code does not allow creating two VR cameras. It always reuses the same camera. But if I tamper with the code I can get this same error by turning on vr and then forgetting VR is on (in the shell session._steamvr_camera = None) then turning it on again. That produces a different error in OpenVR waitGetPoses(), but then if I switch to mono camera, restart graphics and turn vr back on (camera mono, graphics restart, vr on) then I get exactly the same openvr.error_code.CompositorError_TextureUsesUnsupportedFormat error.
It seems very likely the problem in this bug report is somehow using two VR cameras without the first one being properly closed. But I don't see any way that can happen.
Report again if you see this error again.
By the way, I started yesterday replacing SteamVR with OpenXR.
comment:4 by , 2 years ago
Resolution: | → can't reproduce |
---|---|
Status: | assigned → closed |
According to ticket #4407 from 2 years ago this error used to happen when you start and stop VR multiple times. It was caused by initializing OpenVR twice. The way that happened in the previous report was fixed. But apparently OpenVR is getting initialized twice by a different route in this bug report.
The log in this report shows "vr on" and meeting started and no errors, then "close session" and meeting start and "vr on" produces the error. My guess is that the "close session" causes the code not to shutdown OpenVR and then the second "vr on" tries to initialize it again. I'll see if I can reproduce it and fix it in the daily build. In the meantime you can probably avoid this by using "vr off" after the first "vr on" instead of relying on "close session" to properly turn off vr.