Answers.Body: <h2>Don't</h2>
  <p>A protein is not only list of atomic coordinates. Bar for a proof of concept (i.e. learn to code in Unity VR), it is an endless spiral of hurt in a field where there is a lot of competition and were you to push a product you'd need to invest more manhours in publicity than in coding...</p>
  <h2>Connectivity</h2>
  <p>Here is the short of it. Chemistry is classically a graph network: nodes=atoms, edges=bonds. The connectivity of the atoms is dictated by their residue's 3-letter name, which is either</p>
  <ul>
  <li>assumed —software know the 20 AAs (and several modifications, eg. <code>SEP</code>, 4x2 bases and some ligands, e.g. <code>HOH</code>— or</li>
  <li>a special entry in the PDB or mmCIF file —in PDB it's a CONECT entry.
  E.g. <a href="https://www.rcsb.org/ligand/CFF" rel="nofollow noreferrer">https://www.rcsb.org/ligand/CFF</a></li>
  </ul>
  <p>AlphaFold2 does not have ligands, AlphaFill does. But scientists (not PR specialists) use PDB entries or run their own modelling. AlphaFold2 from EBI is rarely used: oligomers with ligands is where it's at. Especially if doing a drug discovery campaign (and red biotech can and does afford VR headsets).</p>
  <h2>Format</h2>
  <p>mmCIF is a deposition standard, PDB is the workhorse standard. mmTF is a cool idea that is not catching on (cf XKCD comic strip about standard proliferation...). Using PDB is easier: <a href="https://www.wwpdb.org/documentation/file-format-content/format33/v3.3.html" rel="nofollow noreferrer">https://www.wwpdb.org/documentation/file-format-content/format33/v3.3.html</a></p>
  <h2>Representation</h2>
  <p>Problems arise when offering representations —everyone has their favourite. See NGL gallery for an array: <a href="https://nglviewer.org/ngl/gallery/index.html" rel="nofollow noreferrer">https://nglviewer.org/ngl/gallery/index.html</a>
  Surface display has additional issues —PyMOL simply and openly reuses the Advance Poisson-Boltzmann Solvation tool as it's tricky.</p>
  <h2>Dragons in the minefield</h2>
  <p>In a PDB entry not from AF2, you can have disulfides (<code>SSBOND</code> and/or <code>CIZ</code> entry), isopeptide bonds (<code>LINK</code>), missing atoms, the <code>UNK</code>, <code>UNX</code> and <code>UNL</code> residues, alphatraces, insertion sequences, alt. occupancy, gaps, non-standard usages of all of these etc etc. and my favourite implied proximity bonding.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-08-08T13:49:12.063Z
Answers.Text: Okay, I get it. AlphaFold is not at all popular, heavily overhyped and has severe technical shortfalls. Good to know, thank you.
Answers.UserDisplayName: M__
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-08-08T14:28:51.540Z
Answers.Text: @M__ The algorithm (and its variants) are utterly-unutterably–undeniably phenomenal. It makes great complexes, thus making CoIP Westerns a thing of the stone age, does away with C-alpha traces in cryoEM and much more. It's the off-the-shelf EBI-AlphaFold2 models that are not as revolutionary as the publicity. The latest Trembl release is rather pointess in fact. Say one wants to see how a given pyrethrin-analogue drug binds in different arthropods? One would need to model the GABA channel as an oligomer. Norleucine insesitive Eco MetK? It's a missense in a patent not in Trembl. etc.
Answers.UserDisplayName: Matteo Ferla
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-08-08T19:28:19.203Z
Answers.Text: Thanks @MatteoFerla thats insightful. Pyrethrin-analogue in insects - this I do understand, E. coli metK dunno. CoIP Westerns being obsolete is a big statement - I did hear about the antibody binding prediction: I need to look into it in more detail and might forward this as a question in a month or so. Thanks again.
Answers.UserDisplayName: M__
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-08-08T20:57:08.143Z
Answers.Text: So basically "Don't bother for the above reasons" is what I'm hearing, is that correct?
Answers.UserDisplayName: webNoob13
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-08-08T21:01:33.217Z
Answers.Text: Conditionally: if it's for learning, do go ahead but don't let feature crawl get you!
  If it's to make a business that will compete against Nanome, yes, don't bother.
Answers.UserDisplayName: Matteo Ferla
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-08-08T21:02:47.463Z
Answers.Text: On the AF2 modelling side discussion, there is currently an explosion of variants —there's a repo https://github.com/sacdallago/folding_tools that's got things helpfully collected. However, ColabFold is the go to —although it does occasionally fail and demand MSA tinkering.
Answers.UserDisplayName: Matteo Ferla
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2022-08-08T09:42:15.523Z
Answers.LastActivityDate: 2022-08-08T09:42:15.523Z
Answers.UserDisplayName: Matteo Ferla
Body: <p><a href="https://alphafold.com/entry/Q9Y499" rel="nofollow noreferrer">https://alphafold.com/entry/Q9Y499</a></p>
  <p>Starting at line 918 of the downloadable mmCIF file, it looks like there might be coordinates in x, y,z:</p>
  <pre><code>ATOM 1    N N   . TRP A 1 1   ? 12.549  -2.565  -21.811 1.0 96.06 ? 1   TRP A N   1 Q9Y499 UNP 1   W 
  ATOM 2    C CA  . TRP A 1 1   ? 12.477  -2.290  -20.365 1.0 96.06 ? 1   TRP A CA  1 Q9Y499 UNP 1   W 
  ATOM 3    C C   . TRP A 1 1   ? 11.221  -2.928  -19.812 1.0 96.06 ? 1   TRP A C   1 Q9Y499 UNP 1   W 
  ATOM 4    C CB  . TRP A 1 1   ? 12.469  -0.785  -20.103 1.0 96.06 ? 1   TRP A CB  1 Q9Y499 UNP 1   W 
  ATOM 5    O O   . TRP A 1 1   ? 10.206  -2.922  -20.501 1.0 96.06 ? 1   TRP A O   1 Q9Y499 UNP 1   W 
  ATOM 6    C CG  . TRP A 1 1   ? 13.795  -0.114  -20.270 1.0 96.06 ? 1   TRP A CG  1 Q9Y499 UNP 1   W 
  ATOM 7    C CD1 . TRP A 1 1   ? 14.286  0.508   -21.369 1.0 96.06 ? 1   TRP A CD1 1 Q9Y499 UNP 1   W 
  ATOM 8    C CD2 . TRP A 1 1   ? 14.791  0.098   -19.228 1.0 96.06 ? 1   TRP A CD2 1 Q9Y499 UNP 1   W 
  </code></pre>
  <p>I am a bioinformatics noob (took an intro class in my undergrad CS degree at a Canadian university) but know some Unity game engine with which I want to build a standalone visualization tool for users with VR headsets.</p>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2022-08-05T22:39:33.717Z
Comments.Text: "I want to build a standalone visualization tool" - Why, exactly? There are protein viewers in many languages (c - RasMol, Java - Jmol, C/Python - PyMol, Javascript = NGLViewer (?), etc) that will be able to show the structure in all sorts of detail.
Comments.UserDisplayName: gilleain
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2022-08-06T14:43:06.237Z
Comments.Text: more helpfully, I suppose the mmCIF format is here : http://ww1.iucr.org/iucr-top/cif/mm/index.html ; also yes, those look like the x/y/z coords (or Cartn_x, Cartn_y, Cartn_z) Again, there are mmCIF readers https://mmcif.wwpdb.org/docs/software-resources.html
Comments.UserDisplayName: gilleain
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2022-08-06T14:48:32.493Z
Comments.Text: @gilleain how about in VR?
Comments.UserDisplayName: webNoob13
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2022-08-07T07:54:34.177Z
Comments.Text: Ok, that is slightly different, I see. For Jmol, at least, this was done a while ago - https://github.com/Jmol-OVR - in general, I would hope that some VR software could integrate with an external library. If you like, you could edit your question to focus on VR and I could make this comment into a proper answer
Comments.UserDisplayName: gilleain
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2022-08-08T09:22:11.407Z
Comments.Text: There are a few VR solution out there on the market, e.g. Nanome. The rate limiting step is the cost of the VR headset and user training so only biotech startups have them!
Comments.UserDisplayName: Matteo Ferla
Tags: <proteins>
Title: How do I read mmCIF files from Alphafold DB as coordinates to use in replicating their visualization for Unity VR?
ThreadText: # How do I read mmCIF files from Alphafold DB as coordinates to use in replicating their visualization for Unity VR?
  
  (Asked by: username_0 on 2022-08-05)
  
  <https://alphafold.com/entry/Q9Y499>
  
  Starting at line 918 of the downloadable mmCIF file, it looks like there might be coordinates in x, y,z:
  
  ```
  ATOM 1    N N   . TRP A 1 1   ? 12.549  -2.565  -21.811 1.0 96.06 ? 1   TRP A N   1 Q9Y499 UNP 1   W 
  ATOM 2    C CA  . TRP A 1 1   ? 12.477  -2.290  -20.365 1.0 96.06 ? 1   TRP A CA  1 Q9Y499 UNP 1   W 
  ATOM 3    C C   . TRP A 1 1   ? 11.221  -2.928  -19.812 1.0 96.06 ? 1   TRP A C   1 Q9Y499 UNP 1   W 
  ATOM 4    C CB  . TRP A 1 1   ? 12.469  -0.785  -20.103 1.0 96.06 ? 1   TRP A CB  1 Q9Y499 UNP 1   W 
  ATOM 5    O O   . TRP A 1 1   ? 10.206  -2.922  -20.501 1.0 96.06 ? 1   TRP A O   1 Q9Y499 UNP 1   W 
  ATOM 6    C CG  . TRP A 1 1   ? 13.795  -0.114  -20.270 1.0 96.06 ? 1   TRP A CG  1 Q9Y499 UNP 1   W 
  ATOM 7    C CD1 . TRP A 1 1   ? 14.286  0.508   -21.369 1.0 96.06 ? 1   TRP A CD1 1 Q9Y499 UNP 1   W 
  ATOM 8    C CD2 . TRP A 1 1   ? 14.791  0.098   -19.228 1.0 96.06 ? 1   TRP A CD2 1 Q9Y499 UNP 1   W 
  
  ```
  
  I am a bioinformatics noob (took an intro class in my undergrad CS degree at a Canadian university) but know some Unity game engine with which I want to build a standalone visualization tool for users with VR headsets.
  
  **Tags:** proteins
  
  > **Comments:**
  > **username_1**: "I want to build a standalone visualization tool" - Why, exactly? There are protein viewers in many languages (c - RasMol, Java - Jmol, C/Python - PyMol, Javascript = NGLViewer (?), etc) that will be able to show the structure in all sorts of detail.  
  > **username_1**: more helpfully, I suppose the mmCIF format is here : http://ww1.iucr.org/iucr-top/cif/mm/index.html ; also yes, those look like the x/y/z coords (or Cartn_x, Cartn_y, Cartn_z) Again, there are mmCIF readers https://mmcif.wwpdb.org/docs/software-resources.html  
  > **username_0**: @username_1 how about in VR?  
  > **username_1**: Ok, that is slightly different, I see. For Jmol, at least, this was done a while ago - https://github.com/Jmol-OVR - in general, I would hope that some VR software could integrate with an external library. If you like, you could edit your question to focus on VR and I could make this comment into a proper answer  
  > **username_2**: There are a few VR solution out there on the market, e.g. Nanome. The rate limiting step is the cost of the VR headset and user training so only biotech startups have them!  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_2 on 2022-08-08. Score: 3 | Accepted answer
  
  ## Don't
  
  A protein is not only list of atomic coordinates. Bar for a proof of concept (i.e. learn to code in Unity VR), it is an endless spiral of hurt in a field where there is a lot of competition and were you to push a product you'd need to invest more manhours in publicity than in coding...
  
  ## Connectivity
  
  Here is the short of it. Chemistry is classically a graph network: nodes=atoms, edges=bonds. The connectivity of the atoms is dictated by their residue's 3-letter name, which is either
  
  * assumed —software know the 20 AAs (and several modifications, eg. `SEP`, 4x2 bases and some ligands, e.g. `HOH`— or
  * a special entry in the PDB or mmCIF file —in PDB it's a CONECT entry.
    E.g. <https://www.rcsb.org/ligand/CFF>
  
  AlphaFold2 does not have ligands, AlphaFill does. But scientists (not PR specialists) use PDB entries or run their own modelling. AlphaFold2 from EBI is rarely used: oligomers with ligands is where it's at. Especially if doing a drug discovery campaign (and red biotech can and does afford VR headsets).
  
  ## Format
  
  mmCIF is a deposition standard, PDB is the workhorse standard. mmTF is a cool idea that is not catching on (cf XKCD comic strip about standard proliferation...). Using PDB is easier: <https://www.wwpdb.org/documentation/file-format-content/format33/v3.3.html>
  
  ## Representation
  
  Problems arise when offering representations —everyone has their favourite. See NGL gallery for an array: <https://nglviewer.org/ngl/gallery/index.html>
  Surface display has additional issues —PyMOL simply and openly reuses the Advance Poisson-Boltzmann Solvation tool as it's tricky.
  
  ## Dragons in the minefield
  
  In a PDB entry not from AF2, you can have disulfides (`SSBOND` and/or `CIZ` entry), isopeptide bonds (`LINK`), missing atoms, the `UNK`, `UNX` and `UNL` residues, alphatraces, insertion sequences, alt. occupancy, gaps, non-standard usages of all of these etc etc. and my favourite implied proximity bonding.
  
  > **Comments:**
  > **username_3**: Okay, I get it. AlphaFold is not at all popular, heavily overhyped and has severe technical shortfalls. Good to know, thank you.  
  > **username_2**: @username_3 The algorithm (and its variants) are utterly-unutterably–undeniably phenomenal. It makes great complexes, thus making CoIP Westerns a thing of the stone age, does away with C-alpha traces in cryoEM and much more. It's the off-the-shelf EBI-AlphaFold2 models that are not as revolutionary as the publicity. The latest Trembl release is rather pointess in fact. Say one wants to see how a given pyrethrin-analogue drug binds in different arthropods? One would need to model the GABA channel as an oligomer. Norleucine insesitive Eco MetK? It's a missense in a patent not in Trembl. etc.  
  > **username_3**: Thanks @username_2 thats insightful. Pyrethrin-analogue in insects - this I do understand, E. coli metK dunno. CoIP Westerns being obsolete is a big statement - I did hear about the antibody binding prediction: I need to look into it in more detail and might forward this as a question in a month or so. Thanks again.  
  > **username_0**: So basically "Don't bother for the above reasons" is what I'm hearing, is that correct?  
  > **username_2**: Conditionally: if it's for learning, do go ahead but don't let feature crawl get you! If it's to make a business that will compete against Nanome, yes, don't bother.  
  > **username_2**: On the AF2 modelling side discussion, there is currently an explosion of variants —there's a repo https://github.com/sacdallago/folding_tools that's got things helpfully collected. However, ColabFold is the go to —although it does occasionally fail and demand MSA tinkering.  
  
  ---
  
  