def test_roundtrip_compressed_animation(self): hierarchy_name = 'testhiera_skl' hierarchy = get_hierarchy(hierarchy_name) meshes = [ get_mesh(name='sword', skin=True), get_mesh(name='soldier', skin=True), get_mesh(name='TRUNK') ] hlod = get_hlod('testmodelname', hierarchy_name) boxes = [get_collision_box()] dazzles = [get_dazzle()] comp_animation = get_compressed_animation(hierarchy_name) self.filepath = self.outpath() + 'output_skn' create_data(self, meshes, hlod, hierarchy, boxes, None, comp_animation, dazzles) # export self.filepath = self.outpath() + 'output_skn' export_settings = {'mode': 'HM', 'use_existing_skeleton': True} save_data(self, export_settings) self.filepath = self.outpath() + 'testhiera_skl' export_settings['mode'] = 'H' save_data(self, export_settings) self.filepath = self.outpath() + 'output_comp_ani' export_settings['mode'] = 'A' export_settings['compression'] = 'TC' save_data(self, export_settings) # reset scene bpy.ops.wm.read_homefile(app_template='') # import self.filepath = self.outpath() + 'output_skn.w3d' load(self) self.filepath = self.outpath() + 'output_comp_ani.w3d' load(self) # check created objects self.assertTrue(hierarchy_name.upper() in bpy.data.objects) self.assertTrue(hierarchy_name.upper() in bpy.data.armatures) amt = bpy.data.armatures[hierarchy_name.upper()] self.assertEqual(7, len(amt.bones)) self.assertTrue('sword' in bpy.data.objects) self.assertTrue('soldier' in bpy.data.objects) self.assertTrue('TRUNK' in bpy.data.objects) self.assertTrue('Brakelight' in bpy.data.objects)
def test_roundtrip_HAM_tc_animation(self): hierarchy_name = 'TestName' hierarchy = get_hierarchy(hierarchy_name) meshes = [ get_mesh(name='sword', skin=True), get_mesh(name='soldier', skin=True), get_mesh(name='TRUNK') ] hlod = get_hlod(hierarchy_name, hierarchy_name) boxes = [get_collision_box()] dazzles = [get_dazzle()] comp_animation = get_compressed_animation(hierarchy_name) self.filepath = self.outpath() + 'output' create_data(self, meshes, hlod, hierarchy, boxes, None, comp_animation, dazzles) # export self.filepath = self.outpath() + 'output' export_settings = {'mode': 'HAM', 'compression': 'TC'} save_data(self, export_settings) # reset scene bpy.ops.wm.read_homefile(app_template='') # import self.filepath = self.outpath() + 'output.w3d' load(self) # check created objects self.assertTrue('output' in bpy.data.armatures) amt = bpy.data.armatures['output'] self.assertEqual(7, len(amt.bones)) self.assertTrue('sword' in bpy.data.objects) self.assertTrue('soldier' in bpy.data.objects) self.assertTrue('TRUNK' in bpy.data.objects) self.assertTrue('Brakelight' in bpy.data.objects)