本文整理汇总了Python中rapi.rpgConstructModel函数的典型用法代码示例。如果您正苦于以下问题:Python rpgConstructModel函数的具体用法?Python rpgConstructModel怎么用?Python rpgConstructModel使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了rpgConstructModel函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: load_single_model
def load_single_model(data, mdlList):
'''Loads a single model. For testing purposes'''
if rapi.checkFileExt(rapi.getInputName(), ".mbn"):
bs = NoeBitStream(data)
idstring = bs.readUInt()
numFiles = bs.readUInt()
bs.read('2L')
filesizes = []
for i in range(numFiles):
unk, size, crc, null = bs.read('4L')
filesizes.append(size)
for i in range(numFiles):
size = filesizes[i]
mdl = bs.readBytes(size)
parser = mdl_parser(mdl)
parser.parse_file()
mdl = rapi.rpgConstructModel()
mdl.setModelMaterials(NoeModelMaterials(parser.texList, parser.matList))
mdlList.append(mdl)
elif rapi.checkFileExt(rapi.getInputName(), ".mdl"):
parser = mdl_parser(data)
parser.parse_file()
mdl = rapi.rpgConstructModel()
mdl.setModelMaterials(NoeModelMaterials(parser.texList, parser.matList))
mdlList.append(mdl)
示例2: noepyLoadModel
def noepyLoadModel(data, mdlList):
ctx = rapi.rpgCreateContext()
parser = Teatime_ODF(data)
parser.parse_file()
mdl = rapi.rpgConstructModel()
mdl.setModelMaterials(NoeModelMaterials(parser.texList, parser.matList))
mdlList.append(mdl)
mdl2 = rapi.rpgConstructModel()
mdlList.append(mdl2)
return 1
示例3: noepyLoadModel
def noepyLoadModel(data, mdlList):
'''Build the model, set materials, bones, and animations. You do not
need all of them as long as they are empty lists (they are by default)'''
ctx = rapi.rpgCreateContext()
filename = rapi.getLocalFileName(rapi.getInputName())
fileID = ''.join(c for c in filename if c.isdigit())
bs = NoeBitStream(data)
idstring = bs.readUInt()
idstring2 = bs.readUInt()
if idstring == 1213416781: #MESH
if idstring2 == 1:
parser = StaticParser1(data)
elif idstring2 == 2:
parser = StaticParser2(data)
else:
parser = SanaeParser(data)
print(idstring)
parser.parse_file()
mdl = rapi.rpgConstructModel()
mdl.setModelMaterials(NoeModelMaterials(parser.texList, parser.matList))
mdl.setBones(parser.boneList)
mdl.setAnims(parser.animList)
mdlList.append(mdl)
return 1
示例4: load_all_models
def load_all_models(mdlList):
'''Load all models'''
#carry over from previous models
matList = []
texList = []
##load face
#facePath = "E:\\My Documents\\Workspace\\sample\\Age of Wushu\\g_face.xmod"
#f = open(facePath, 'rb')
#data2 = f.read()
#parser = AgeOfWushu_XMOD(data2)
#parser.parse_file()
#material = NoeMaterial("g_face", "E:\\My Documents\\Workspace\\sample\\Age of Wushu\\g_face_1.dds")
#matList.append(material)
#load the outfit
dirPath = rapi.getDirForFilePath(rapi.getInputName())
fileList = [file for file in os.listdir(dirPath) if file.lower().endswith(".xmod")]
for file in fileList:
f = open(dirPath + file, 'rb')
data2 = f.read()
parser = AgeOfWushu_XMOD(data2)
parser.parse_file()
matList.extend(parser.matList)
texList.extend(parser.texList)
mdl = rapi.rpgConstructModel()
mdl.setModelMaterials(NoeModelMaterials(texList, matList))
mdlList.append(mdl)
示例5: noepyLoadModel
def noepyLoadModel(data, mdlList):
'''Build the model, set materials, bones, and animations. You do not
need all of them as long as they are empty lists (they are by default)'''
parser = SanaeParser(data)
parser.parse_file()
ctx = rapi.rpgCreateContext()
for i in range(len(parser.vertBuffs)):
vertBuff, numVerts = parser.vertBuffs[i]
idxBuff, numIdx, matNum = parser.idxBuffs[i]
matList = [parser.matList[matNum]]
texList = [parser.texList[matNum]]
matName = matList[0].name
rapi.rpgReset()
rapi.rpgBindPositionBufferOfs(vertBuff, noesis.RPGEODATA_FLOAT, 32, 0)
rapi.rpgBindNormalBufferOfs(vertBuff, noesis.RPGEODATA_FLOAT, 32, 12)
rapi.rpgBindUV1BufferOfs(vertBuff, noesis.RPGEODATA_FLOAT, 32, 24)
rapi.rpgSetMaterial(matName)
rapi.rpgCommitTriangles(idxBuff, noesis.RPGEODATA_USHORT, numIdx, noesis.RPGEO_TRIANGLE, 1)
mdl = rapi.rpgConstructModel()
mdl.setModelMaterials(NoeModelMaterials(texList, matList))
mdl.setBones(parser.boneList)
mdl.setAnims(parser.animList)
mdlList.append(mdl)
return 1
示例6: noepyLoadModel
def noepyLoadModel(data, mdlList):
'''Build the model, set materials, bones, and animations. You do not
need all of them as long as they are empty lists (they are by default)'''
ctx = rapi.rpgCreateContext()
parser = SanaeParser(data)
parser.parse_file()
#build meshes
for pose in parser.vertGroups.keys():
print(pose, len(parser.vertGroups[pose]))
vertBuffs = parser.vertGroups["walk"]
for i in range(len(vertBuffs)):
idxBuff, numIdx, matNum = parser.idxBuffs[i%len(parser.idxBuffs)]
vertBuff = vertBuffs[i]
rapi.rpgBindPositionBufferOfs(vertBuff, noesis.RPGEODATA_FLOAT, 32, 0)
rapi.rpgBindNormalBufferOfs(vertBuff, noesis.RPGEODATA_FLOAT, 32, 12)
rapi.rpgBindUV1BufferOfs(vertBuff, noesis.RPGEODATA_FLOAT, 32, 24)
matName = parser.matList[matNum].name
rapi.rpgSetMaterial(matName)
rapi.rpgSetOption(noesis.RPGOPT_TRIWINDBACKWARD, 1)
rapi.rpgCommitTriangles(idxBuff, noesis.RPGEODATA_USHORT, numIdx, noesis.RPGEO_TRIANGLE, 1)
mdl = rapi.rpgConstructModel()
mdl.setModelMaterials(NoeModelMaterials(parser.texList, parser.matList))
mdl.setBones(parser.boneList)
mdl.setAnims(parser.animList)
mdlList.append(mdl)
return 1
示例7: parse
def parse(self):
self.data.seek(4,1)
self.numModel = self.data.readUInt()
self.data.seek(43,0)
self.SkipChunk()
self.data.seek(10,1)
self.numMesh = self.data.readUInt()
for i in range (self.numMesh):
self.data.seek(9,1)
self.data.readBytes(self.data.readUByte())
self.data.seek(23,1)
self.data.readBytes(self.data.readUByte())
self.Vertices()
self.Triangles()
self.DrawCall()
self.data.seek(5,1)
self.BoneMap()
self.ReadAnimations()
self.ReadBones()
self.ReadMaterials()
self.CreateModel()
mdl = rapi.rpgConstructModel()
mdl.setBones(self.boneList)
mdl.setModelMaterials(NoeModelMaterials(self.texList, self.matList))
self.mdl = mdl
return
示例8: noepyLoadModel
def noepyLoadModel(data, mdlList):
ctx = rapi.rpgCreateContext()
parser = TouhouSkyArena_MDL(data)
parser.parse_file()
mdl = rapi.rpgConstructModel()
mdl.setModelMaterials(NoeModelMaterials(parser.texList, parser.matList))
mdlList.append(mdl)
return 1
示例9: noepyLoadModel
def noepyLoadModel(data,mdlList):
ctx = rapi.rpgCreateContext()
model = P3D(data)
mdl = rapi.rpgConstructModel()
mdl.setModelMaterials(NoeModelMaterials(model.texList, model.matList))
mdlList.append(mdl)
return 1
示例10: load_single_model
def load_single_model(data, mdlList):
'''Loads a single model. For testing purposes'''
parser = SanaeParser(data)
parser.parse_file()
mdl = rapi.rpgConstructModel()
mdl.setModelMaterials(NoeModelMaterials(parser.texList, parser.matList))
mdlList.append(mdl)
示例11: load_single_model
def load_single_model(data, mdlList):
'''Loads a single model. For testing purposes'''
filename = rapi.getExtensionlessName(rapi.getInputName())
parser = SanaeParser(data, filename)
parser.parse_file()
mdl = rapi.rpgConstructModel()
mdl.setModelMaterials(NoeModelMaterials(parser.texList, parser.matList))
mdlList.append(mdl)
示例12: noepyLoadModel
def noepyLoadModel(data, mdlList):
ctx = rapi.rpgCreateContext()
parser = Illusion_XX(data)
parser.parse_file()
mdl = rapi.rpgConstructModel()
mdl.setModelMaterials(NoeModelMaterials(parser.texList, parser.matList))
mdl.setBones(parser.boneList)
mdlList.append(mdl)
return 1
示例13: load_single_model
def load_single_model(data, mdlList):
'''Loads a single model. For testing purposes'''
filename, ext = os.path.splitext(rapi.getLocalFileName(rapi.getInputName()))
parser = SanaeParser(data)
parser.parse_file(filename)
mdl = rapi.rpgConstructModel()
mdl.setModelMaterials(NoeModelMaterials(parser.texList, parser.matList))
mdlList.append(mdl)
示例14: noepyLoadModel
def noepyLoadModel(data, mdlList):
'''Load the model'''
ctx = rapi.rpgCreateContext()
parser = DragonOath_MESH(data)
parser.parse_file()
mdl = rapi.rpgConstructModel()
mdl.setModelMaterials(NoeModelMaterials(parser.texList, parser.matList))
mdlList.append(mdl)
return 1
示例15: noepyLoadModel
def noepyLoadModel(data, mdlList):
'''Load the model'''
ctx = rapi.rpgCreateContext()
parser = TalesOfFantasy_SKEM(data)
parser.parse_file()
mdl = rapi.rpgConstructModel()
mdlList.append(mdl)
mdl.setModelMaterials(NoeModelMaterials(parser.texList, parser.matList))
return 1