기본적으로 Panda3D 1.9.2, Python 2.7.12 및 pygame 1.9.1을 사용하여 실험하고 있습니다. Toontown Rewritten과 Disney의 Toontown Online 자산을 무작위로 만들고 어디에서 얻을 수 있는지 알아보기 위해 시도했습니다. 나는 파이썬 w/Panda3D & 파이 게임에서 코딩하기에 새로운 브랜드이다. 그래서 내가 잘못하고있는 것이 확실하지 않다. http://prntscr.com/bnvvaeOGG 음악은 "게임"의 나머지 부분이로드되지 않아 프로세스에서 응답하지 않는 오류가 발생합니다.
나는 전체 코드를 작성하지 않은, 오히려 온라인 게시 한 사람의 예를 수정 :
는from direct.actor.Actor import Actor
from pandac.PandaModules import *
from direct.task import Task
import math
from math import pi, sin, cos
from direct.showbase.ShowBase import ShowBase
from direct.task import Task
from direct.interval.IntervalGlobal import Sequence
from pandac.PandaModules import Point3
from pandac.PandaModules import *
from panda3d.core import loadPrcFile
loadPrcFile("config.prc")
import direct.directbase.DirectStart
from panda3d.core import CollisionTraverser,CollisionNode
from panda3d.core import CollisionHandlerQueue,CollisionRay
from panda3d.core import Filename,AmbientLight,DirectionalLight
from panda3d.core import PandaNode, NodePath, Camera, TextNode
from panda3d.core import Vec3,Vec4,BitMask32
from direct.gui.OnscreenText import OnscreenText
from direct.actor.Actor import Actor
from direct.showbase.DirectObject import DirectObject
import pygame
pygame.init()
pygame.mixer.music.load('bgm.ogg')
pygame.mixer.music.play(-1, 0.0)
while pygame.mixer.music.get_busy() == True:
continue
cog = Actor ('phase_3.5/models/char/suitA-mod.bam', {'action':'phase_4/models/char/suitA-neutral.bam'})
cog.loop('action')
cog.reparentTo(render)
cog.find('**/hands').setColor(0.95, 0.75, 0.75, 1.0)
#SELLBOT cog.find('**/hands').setColor(0.95, 0.75, 0.95, 1.0)
#CASHBOT cog.find('**/hands').setColor(0.65, 0.95, 0.85, 1.0)
#LAWBOT cog.find('**/hands').setColor(0.75, 0.75, 0.95, 1.0)
#BOSSBOT cog.find('**/hands').setColor(0.95, 0.75, 0.75, 1.0)
cog.setPos(0, 20, 0)
myTex = loader.loadTexture('phase_3.5/maps/c_blazer.jpg')
cog.findAllMatches('**/torso').setTexture(myTex, 1)
myTex2 = loader.loadTexture('phase_3.5/maps/c_leg.jpg')
cog.findAllMatches('**/legs').setTexture(myTex2, 1)
myTex3 = loader.loadTexture('phase_3.5/maps/c_sleeve.jpg')
cog.findAllMatches('**/arms').setTexture(myTex3, 1)
coghead = loader.loadModel('phase_4/models/char/suitA-heads.bam').find('**/yesman')
coghead.reparentTo(cog.find('**/joint_head'))
camera.hide()
base.oobe()
base.run()
이 코드는이 혼란을 생성 : 내 코드입니다. OGG 파일을 구현할 때까지는 제대로 작동하지 않았습니다. 나는 또한 프로그램이 "응답하지 않음"에도 불구하고 음악 파일이 완벽하게 재생된다고 덧붙여 야합니다.
내가 잘못하고있는 것이 확실하지 않습니다. 누군가 제발 나를 도와 줄 수 있니?
나는 내가 잘못 여기에 무슨 일이 일어나고 있는지 볼 생각하지 않습니다. 음악 파일을로드 한 다음 무한정 재생 한 다음 더 이상 음악을 재생하지 않는 경우에만 종료되는 while 루프를 입력합니다. 하지만 당신은 무한히 음악을 연주하고 있습니까? 그래서 나는 완전히 무언가를 놓치고있는 중이거나 그 동안 반복적으로 응답하지 않는 것입니다. –
음악 파일 코드가없는 게임은 정상적으로 실행되지만 음악 코드를 입력하면 무한대로 재생되지만 음악이 재생되는 동안 게임이 응답하지 않습니다. 루프는 훌륭하지만 게임 자체가 작동하지 않습니다. – CoffeetipM8
'while pygame.mixer.music.get_busy() == True : continue'는 무한 루프입니다. 아무것도하지 않는 무한 루프에 빠지기 때문에 게임이 응답하지 않게됩니다. –