Moguri / BlenderPanda

Blender addon for integrating Panda3D
MIT License
76 stars 11 forks source link

Rendered viewport not supported on macOS #15

Closed songproducer closed 6 years ago

songproducer commented 8 years ago
2016-10-26 13:15:29.717 Python[60743:32261869] Error loading /Library/Audio/Plug-Ins/HAL/JackRouter.plugin/Contents/MacOS/JackRouter:  dlopen(/Library/Audio/Plug-Ins/HAL/JackRouter.plugin/Contents/MacOS/JackRouter, 262): Library not loaded: /System/Library/Frameworks/Jackmp.framework/Versions/A/Jackmp
  Referenced from: /Library/Audio/Plug-Ins/HAL/JackRouter.plugin/Contents/MacOS/JackRouter
  Reason: image not found
2016-10-26 13:15:29.717 Python[60743:32261869] Cannot find function pointer New_JackRouterPlugIn for factory 7CB18864-927D-48B5-904C-CCFBCFBC7ADD in CFBundle/CFPlugIn 0x7f981c98dc70 </Library/Audio/Plug-Ins/HAL/JackRouter.plugin> (bundle, not loaded)
Unable to open window
Unable to connect to external process
Unable to connect to external process
Exception in thread Thread-7:
Traceback (most recent call last):
  File "/Applications/Blender2.78.app/Contents/Resources/2.78/python/lib/python3.5/threading.py", line 923, in _bootstrap_inner
    self.run()
  File "/Users/leotreasure/Library/Application Support/Blender/2.78/scripts/addons/BlenderPanda/brte/brte/processor_thread.py", line 43, in run
    self.processor.destroy()
  File "/Users/leotreasure/Library/Application Support/Blender/2.78/scripts/addons/BlenderPanda/brte/brte/processors/external_processor.py", line 34, in destroy
    self.listen_socket.shutdown(socket.SHUT_RDWR)
OSError: [Errno 57] Socket is not connected

Some of these errors always show whenever I open Blender like the JackRouter, I'm not sure how to fix them or whether they are affecting this issue.

Moguri commented 8 years ago

BlenderPanda uses Panda3D's pbuffers, which are not currently supported on macOS.

Moguri commented 6 years ago

Lack of off-screen rendering support in Panda3D for macOS is tracked by panda3d/panda3d#183

rdb commented 6 years ago

Even with panda3d/panda3d#183 fixed, it doesn't quite work yet. The pman shader uses GLSL version 1.30, which is supported by neither the compatibility profile nor the core profile on macOS.

What makes it work is changing the #version in the shader to either 140 or 150, and also adding gl-version 3 2 to the configuration in processor_app.py in order to make Panda request a forward-compatible OpenGL context. (It might alternatively be possible to backport the shader to GLSL 1.20.)

Moguri commented 6 years ago

Thanks for testing this @rdb! I will figure out how I want to deal with core vs compatibility profiles on macOS.