Reputation: 31
I am using panda3d and have come across a bug in my code. I can't seem to find whats wrong. Here it is:
/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/panda3d/etc/Confauto.prc
:util: Reading /Users/Munish/Desktop/python/pygame_games/Config.prc
Known pipe types:
(all display modules loaded.)
Traceback (most recent call last):
File "3d.py", line 12, in <module>
game = MyGame()
File "3d.py", line 10, in __init__
super().__init__()
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/direct/showbase/ShowBase.py", line 338, in __init__
self.openDefaultWindow(startDirect = False, props=props)
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/direct/showbase/ShowBase.py", line 1020, in openDefaultWindow
self.openMainWindow(*args, **kw)
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/direct/showbase/ShowBase.py", line 1055, in openMainWindow
self.openWindow(*args, **kw)
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/direct/showbase/ShowBase.py", line 765, in openWindow
win = func()
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/direct/showbase/ShowBase.py", line 745, in <lambda>
func = lambda : self._doOpenWindow(
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/direct/showbase/ShowBase.py", line 817, in _doOpenWindow
self.makeDefaultPipe()
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/direct/showbase/ShowBase.py", line 646, in makeDefaultPipe
self.notify.error(
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/direct/directnotify/Notifier.py", line 130, in error
raise exception(errorString)
Exception: No graphics pipe is available!
Your Config.prc file must name at least one valid panda display
library via load-display or aux-display.
Here is my coding script:
from panda3d.core import loadPrcFile
from panda3d.core import ConfigPageManager
print( ConfigPageManager.getGlobalPtr())
loadPrcFile('Config.prc')
from direct.showbase.ShowBase import ShowBase
class MyGame(ShowBase):
def __init__(self):
super().__init__()
game = MyGame()
print(base)
ShowBase().run()
Here is my Config.prc:
window-width 1280 720
What am I doing wrong? Thank you in advance.
Upvotes: 0
Views: 1266
Reputation: 1617
Rename your Config.prc
file to something else. Otherwise, you are overriding Panda3D's default configuration file, which is also called Config.prc
.
Upvotes: 0
Reputation:
this should hopefully work:
3d.py:
from panda3d.core import loadPrcFile
from panda3d.core import ConfigPageManager
from direct.showbase.ShowBase import ShowBase
print(ConfigPageManager.getGlobalPtr())
# capitalization is important.
loadPrcFile('config.prc')
class MyGame(ShowBase):
def __init__(self):
super().__init__(self)
game = MyGame()
print(base)
game.run()
config.prc:
win-size 1280 720
Upvotes: 0