Vendor debugpy for VS Code attach debugging
Bundles debugpy 1.7.0 directly in python/ so "Maya: Attach (debugpy)" works with no per-machine pip install step. Installed via Maya 2022's own pip so it resolved a version actually compatible with Python 3.7 (Maya 2022's interpreter), then verified import + listen() succeeds under all three target Maya Python versions (3.7/3.9/3.10). Also fixes a latent __file__-under-exec() bug in start_debug_server.py (same pitfall as Maya's own plugin loader, never hit until this exercised it) and corrects the README's Maya Python version claim -- 2022 ships Python 3.7, not 3.9 as previously stated, which was never independently verified until now. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
#!/usr/bin/env python
|
||||
"""Simple GLUT example to manually test event loop integration.
|
||||
|
||||
To run this:
|
||||
1) Enable the PyDev GUI event loop integration for glut
|
||||
2) do an execfile on this script
|
||||
3) ensure you have a working GUI simultaneously with an
|
||||
interactive console
|
||||
4) run: gl.glClearColor(1,1,1,1)
|
||||
"""
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
||||
#!/usr/bin/env python
|
||||
import sys
|
||||
import OpenGL.GL as gl
|
||||
import OpenGL.GLUT as glut
|
||||
|
||||
def close():
|
||||
glut.glutDestroyWindow(glut.glutGetWindow())
|
||||
|
||||
def display():
|
||||
gl.glClear (gl.GL_COLOR_BUFFER_BIT | gl.GL_DEPTH_BUFFER_BIT)
|
||||
glut.glutSwapBuffers()
|
||||
|
||||
def resize(width,height):
|
||||
gl.glViewport(0, 0, width, height+4)
|
||||
gl.glMatrixMode(gl.GL_PROJECTION)
|
||||
gl.glLoadIdentity()
|
||||
gl.glOrtho(0, width, 0, height+4, -1, 1)
|
||||
gl.glMatrixMode(gl.GL_MODELVIEW)
|
||||
|
||||
if glut.glutGetWindow() > 0:
|
||||
interactive = True
|
||||
glut.glutInit(sys.argv)
|
||||
glut.glutInitDisplayMode(glut.GLUT_DOUBLE |
|
||||
glut.GLUT_RGBA |
|
||||
glut.GLUT_DEPTH)
|
||||
else:
|
||||
interactive = False
|
||||
|
||||
glut.glutCreateWindow('gui-glut')
|
||||
glut.glutDisplayFunc(display)
|
||||
glut.glutReshapeFunc(resize)
|
||||
# This is necessary on osx to be able to close the window
|
||||
# (else the close button is disabled)
|
||||
if sys.platform == 'darwin' and not bool(glut.HAVE_FREEGLUT):
|
||||
glut.glutWMCloseFunc(close)
|
||||
gl.glClearColor(0,0,0,1)
|
||||
|
||||
if not interactive:
|
||||
glut.glutMainLoop()
|
||||
Reference in New Issue
Block a user