Opened 2 years ago
Closed 2 years ago
#9651 closed defect (fixed)
OpenXR: IndexError into frame buffers
| 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.7.dev202308261747 (2023-08-26 17:47:14 UTC)
Description
I am testing the 4070 TI series with the latest daily build using the 'XR on" command, the following error occured when executed. (Describe the actions that caused this problem to occur here)
Log:
UCSF ChimeraX version: 1.7.dev202308261747 (2023-08-26)
© 2016-2023 Regents of the University of California. All rights reserved.
How to cite UCSF ChimeraX
> open C:\Users\niaid\Downloads\8a40.pdb format pdb
8a40.pdb title:
Structure of mammalian pol II-tfiis elongation complex [more info...]
Chain information for 8a40.pdb #1
---
Chain | Description | UniProt
A | DNA-directed RNA polymerase subunit |
B | DNA-directed RNA polymerase subunit β | I3LGP4_PIG -76-1174
C | DNA-directed RNA polymerase II subunit RPB3 | I3LCH3_PIG 1-275
D | RNA polymerase II subunit D |
E | DNA-directed RNA polymerases I, II, and III subunit RPABC1 | RPAB1_BOVIN
1-210
F | DNA-directed RNA polymerases I, II, and III subunit RPABC2 | F1SKN8_PIG
1-127
G | DNA-directed RNA polymerase II subunit RPB7 |
H | DNA-directed RNA polymerases I, II, and III subunit RPABC3 | I3LCB2_PIG
1-150
I | DNA-directed RNA polymerase II subunit RPB9 | RPB9_PIG 1-125
J | DNA-directed RNA polymerases I, II, and III subunit RPABC5 |
K | DNA-directed RNA polymerase II subunit RPB11-A | F1RKE4_PIG 1-117
L | RNA polymerase II subunit K | I3LN51_PIG 1-58
N | non-template DNA |
P | RNA |
T | template DNA |
U | transcription elongation factor A protein 1 | TCEA1_HUMAN 1-301
Non-standard residues in 8a40.pdb #1
---
MG — magnesium ion
ZN — zinc ion
> xr true
> lighting simple
OpenXR runtime: Oculus
OpenXR system: Meta Quest Pro
started OpenXR 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.
list index out of range
Traceback (most recent call last):
File "C:\Program Files\ChimeraXDaily8\26\bin\Lib\site-
packages\chimerax\core\updateloop.py", line 73, in draw_new_frame
view.draw(check_for_changes = False)
File "C:\Program Files\ChimeraXDaily8\26\bin\Lib\site-
packages\chimerax\graphics\view.py", line 179, in draw
camera.combine_rendered_camera_views(r)
File "C:\Program Files\ChimeraXDaily8\26\bin\Lib\site-
packages\chimerax\vive\xr.py", line 997, in combine_rendered_camera_views
drawing = self._desktop_drawing()
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\ChimeraXDaily8\26\bin\Lib\site-
packages\chimerax\vive\xr.py", line 1034, in _desktop_drawing
texture = self._xr._framebuffers[1].color_texture
~~~~~~~~~~~~~~~~~~~~~~^^^
IndexError: list index out of range
OpenGL version: 3.3.0 NVIDIA 528.57
OpenGL renderer: NVIDIA GeForce RTX 4070 Laptop GPU/PCIe/SSE2
OpenGL vendor: NVIDIA Corporation
Python: 3.11.2
Locale: en_US.cp1252
Qt version: PyQt6 6.3.1, Qt 6.3.1
Qt runtime version: 6.3.2
Qt platform: windows
Manufacturer: Dell Inc.
Model: XPS 15 9530
OS: Microsoft Windows 11 Home (Build 22621)
Memory: 68,374,552,576
MaxProcessMemory: 137,438,953,344
CPU: 20 13th Gen Intel(R) Core(TM) i9-13900H
OSLanguage: en-US
Installed Packages:
alabaster: 0.7.13
appdirs: 1.4.4
asttokens: 2.2.1
Babel: 2.12.1
backcall: 0.2.0
beautifulsoup4: 4.11.2
blockdiag: 3.0.0
blosc2: 2.0.0
build: 0.10.0
certifi: 2023.7.22
cftime: 1.6.2
charset-normalizer: 3.2.0
ChimeraX-AddCharge: 1.5.11
ChimeraX-AddH: 2.2.5
ChimeraX-AlignmentAlgorithms: 2.0.1
ChimeraX-AlignmentHdrs: 3.4
ChimeraX-AlignmentMatrices: 2.1
ChimeraX-Alignments: 2.9.3
ChimeraX-AlphaFold: 1.0
ChimeraX-AltlocExplorer: 1.1.1
ChimeraX-AmberInfo: 1.0
ChimeraX-Arrays: 1.1
ChimeraX-Atomic: 1.47.1
ChimeraX-AtomicLibrary: 10.0.8
ChimeraX-AtomSearch: 2.0.1
ChimeraX-AxesPlanes: 2.3.2
ChimeraX-BasicActions: 1.1.2
ChimeraX-BILD: 1.0
ChimeraX-BlastProtein: 2.1.2
ChimeraX-BondRot: 2.0.4
ChimeraX-BugReporter: 1.0.1
ChimeraX-BuildStructure: 2.10.4
ChimeraX-Bumps: 1.0
ChimeraX-BundleBuilder: 1.2.2
ChimeraX-ButtonPanel: 1.0.1
ChimeraX-CageBuilder: 1.0.1
ChimeraX-CellPack: 1.0
ChimeraX-Centroids: 1.3.2
ChimeraX-ChangeChains: 1.0.2
ChimeraX-CheckWaters: 1.3.1
ChimeraX-ChemGroup: 2.0.1
ChimeraX-Clashes: 2.2.4
ChimeraX-ColorActions: 1.0.3
ChimeraX-ColorGlobe: 1.0
ChimeraX-ColorKey: 1.5.3
ChimeraX-CommandLine: 1.2.5
ChimeraX-ConnectStructure: 2.0.1
ChimeraX-Contacts: 1.0.1
ChimeraX-Core: 1.7.dev202308261747
ChimeraX-CoreFormats: 1.1
ChimeraX-coulombic: 1.4.2
ChimeraX-Crosslinks: 1.0
ChimeraX-Crystal: 1.0
ChimeraX-CrystalContacts: 1.0.1
ChimeraX-DataFormats: 1.2.3
ChimeraX-Dicom: 1.2
ChimeraX-DistMonitor: 1.4
ChimeraX-DockPrep: 1.1.2
ChimeraX-Dssp: 2.0
ChimeraX-EMDB-SFF: 1.0
ChimeraX-ESMFold: 1.0
ChimeraX-FileHistory: 1.0.1
ChimeraX-FunctionKey: 1.0.1
ChimeraX-Geometry: 1.3
ChimeraX-gltf: 1.0
ChimeraX-Graphics: 1.1.1
ChimeraX-Hbonds: 2.4
ChimeraX-Help: 1.2.2
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-IUPAC: 1.0
ChimeraX-Label: 1.1.8
ChimeraX-ListInfo: 1.2
ChimeraX-Log: 1.1.5
ChimeraX-LookingGlass: 1.1
ChimeraX-Maestro: 1.9
ChimeraX-Map: 1.1.4
ChimeraX-MapData: 2.0
ChimeraX-MapEraser: 1.0.1
ChimeraX-MapFilter: 2.0.1
ChimeraX-MapFit: 2.0
ChimeraX-MapSeries: 2.1.1
ChimeraX-Markers: 1.0.1
ChimeraX-Mask: 1.0.2
ChimeraX-MatchMaker: 2.1.2
ChimeraX-MCopy: 1.0
ChimeraX-MDcrds: 2.6
ChimeraX-MedicalToolbar: 1.0.2
ChimeraX-Meeting: 1.0.1
ChimeraX-MLP: 1.1.1
ChimeraX-mmCIF: 2.12.1
ChimeraX-MMTF: 2.2
ChimeraX-Modeller: 1.5.12
ChimeraX-ModelPanel: 1.4
ChimeraX-ModelSeries: 1.0.1
ChimeraX-Mol2: 2.0.2
ChimeraX-Mole: 1.0
ChimeraX-Morph: 1.0.2
ChimeraX-MouseModes: 1.2
ChimeraX-Movie: 1.0
ChimeraX-Neuron: 1.0
ChimeraX-Nifti: 1.1
ChimeraX-NRRD: 1.1
ChimeraX-Nucleotides: 2.0.3
ChimeraX-OpenCommand: 1.10.2
ChimeraX-PDB: 2.7.2
ChimeraX-PDBBio: 1.0.1
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.2
ChimeraX-RemoteControl: 1.0
ChimeraX-RenderByAttr: 1.1
ChimeraX-RenumberResidues: 1.1
ChimeraX-ResidueFit: 1.0.1
ChimeraX-RestServer: 1.2
ChimeraX-RNALayout: 1.0
ChimeraX-RotamerLibMgr: 3.0
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.1
ChimeraX-Segger: 1.0
ChimeraX-Segment: 1.0.1
ChimeraX-SelInspector: 1.0
ChimeraX-SeqView: 2.9
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.2
ChimeraX-SmoothLines: 1.0
ChimeraX-SpaceNavigator: 1.0
ChimeraX-StdCommands: 1.12.1
ChimeraX-STL: 1.0.1
ChimeraX-Storm: 1.0
ChimeraX-StructMeasure: 1.1.2
ChimeraX-Struts: 1.0.1
ChimeraX-Surface: 1.0.1
ChimeraX-SwapAA: 2.0.1
ChimeraX-SwapRes: 2.2.2
ChimeraX-TapeMeasure: 1.0
ChimeraX-Test: 1.0
ChimeraX-Toolbar: 1.1.2
ChimeraX-ToolshedUtils: 1.2.4
ChimeraX-Topography: 1.0
ChimeraX-ToQuest: 1.0
ChimeraX-Tug: 1.0.1
ChimeraX-UI: 1.31.4
ChimeraX-uniprot: 2.3
ChimeraX-UnitCell: 1.0.1
ChimeraX-ViewDockX: 1.3
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.2
ChimeraX-WebServices: 1.1.1
ChimeraX-Zone: 1.0.1
colorama: 0.4.6
comm: 0.1.4
comtypes: 1.1.14
contourpy: 1.1.0
cxservices: 1.2.2
cycler: 0.11.0
Cython: 0.29.33
debugpy: 1.6.7.post1
decorator: 5.1.1
docutils: 0.19
executing: 1.2.0
filelock: 3.9.0
fonttools: 4.42.1
funcparserlib: 1.0.1
glfw: 2.6.2
grako: 3.16.5
h5py: 3.9.0
html2text: 2020.1.16
idna: 3.4
ihm: 0.38
imagecodecs: 2023.7.10
imagesize: 1.4.1
ipykernel: 6.23.2
ipython: 8.14.0
ipython-genutils: 0.2.0
ipywidgets: 8.1.0
jedi: 0.18.2
Jinja2: 3.1.2
jupyter-client: 8.2.0
jupyter-core: 5.3.1
jupyterlab-widgets: 3.0.8
kiwisolver: 1.4.5
line-profiler: 4.0.2
lxml: 4.9.2
lz4: 4.3.2
MarkupSafe: 2.1.3
matplotlib: 3.7.2
matplotlib-inline: 0.1.6
msgpack: 1.0.4
nest-asyncio: 1.5.7
netCDF4: 1.6.2
networkx: 3.1
nibabel: 5.0.1
nptyping: 2.5.0
numexpr: 2.8.5
numpy: 1.25.1
openvr: 1.23.701
packaging: 23.1
ParmEd: 3.4.3
parso: 0.8.3
pep517: 0.13.0
pickleshare: 0.7.5
Pillow: 10.0.0
pip: 23.0
pkginfo: 1.9.6
platformdirs: 3.10.0
prompt-toolkit: 3.0.39
psutil: 5.9.5
pure-eval: 0.2.2
py-cpuinfo: 9.0.0
pycollada: 0.7.2
pydicom: 2.3.0
Pygments: 2.16.1
pynrrd: 1.0.0
PyOpenGL: 3.1.7
PyOpenGL-accelerate: 3.1.7
pyopenxr: 1.0.2801
pyparsing: 3.0.9
pyproject-hooks: 1.0.0
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: 2023.3
pywin32: 305
pyzmq: 25.1.1
qtconsole: 5.4.3
QtPy: 2.3.1
RandomWords: 0.4.0
requests: 2.31.0
scipy: 1.11.1
setuptools: 67.4.0
sfftk-rw: 0.7.3
six: 1.16.0
snowballstemmer: 2.2.0
sortedcontainers: 2.4.0
soupsieve: 2.4.1
sphinx: 6.1.3
sphinx-autodoc-typehints: 1.22
sphinxcontrib-applehelp: 1.0.7
sphinxcontrib-blockdiag: 3.0.0
sphinxcontrib-devhelp: 1.0.5
sphinxcontrib-htmlhelp: 2.0.4
sphinxcontrib-jsmath: 1.0.1
sphinxcontrib-qthelp: 1.0.6
sphinxcontrib-serializinghtml: 1.1.9
stack-data: 0.6.2
superqt: 0.5.0
tables: 3.8.0
tcia-utils: 1.5.1
tifffile: 2023.7.18
tinyarray: 1.2.4
tomli: 2.0.1
tornado: 6.3.3
traitlets: 5.9.0
typing-extensions: 4.7.1
tzdata: 2023.3
urllib3: 2.0.4
wcwidth: 0.2.6
webcolors: 1.12
wheel: 0.38.4
wheel-filename: 1.4.1
widgetsnbextension: 4.0.8
WMI: 1.5.1
File attachment: 8a40.pdb
Attachments (1)
Change History (4)
by , 2 years ago
comment:1 by , 2 years ago
| Component: | Unassigned → VR |
|---|---|
| Owner: | set to |
| Platform: | → all |
| Project: | → ChimeraX |
| Status: | new → assigned |
| Summary: | ChimeraX bug report submission → OpenXR: IndexError into frame buffers |
comment:2 by , 2 years ago
I think the trouble is the OpenXR rendering is trying to mirror to the desktop before it has rendered to the headset because the headset can take several frames before it declares it is ready to render.
Try command
xr on mirror false
I'll try to test and fix the issue today in tonight's daily build.
If you want to turn on mirroring to the desktop you can probably do it after you start without mirroring by then issuing
xr mirror true
comment:3 by , 2 years ago
| Resolution: | → fixed |
|---|---|
| Status: | assigned → closed |
Fixed.
Surprisingly my tests on Vive Pro with OpenXR never give this error. I'm guessing it happened with Oculus because the headset somehow was not ready to render when a connection is first made with OpenXR. I fixed the code so it does not try to mirror the VR view if the VR has not yet been drawn.
I also made mirroring off by default. With OpenXR to Vive Pro the mirroring works fine. But with OpenXR to Quest the mirroring causes severe flicker. I'll have to investigate that.
Another problem I noticed with Quest is that if I take the headset off for tens of seconds and then put it on again then the rendering is broken.
Keep in mind that this OpenXR rendering still needs weeks of shake-down to figure out and hopefully fix all these quirky problems.
Added by email2trac