我也出现了,后来大家是怎么解决的?
恭喜你。我在后面加一个空帧搞定
你是怎么出现这个问题的啊 我怎么没有出现过啊
确实少一帧 我错了 是真的少一帧
我们也遇到了这个问题,后来发现这是编辑器的bug,具体修复看下面python代码,直接检查json文件
def fix_last_frame_add(hero_path):
if not hero_path.endswith(’/’):
hero_path += ‘/’
list_hero = os.listdir(hero_path)
for hero in list_hero:
json_path = hero_path
json_path += hero
json_path += ‘/Json/’
json_path += hero
json_path += ‘.json’
if not os.path.exists(json_path):
continue
handle_json = open(json_path)
obj_json = json.load(handle_json)
handle_json.close()
flag_change = 0
for lam in obj_json’animation_data’]:
for lmv in lam’mov_data’]:
frame_index = 0
for lmb in lmv’mov_bone_data’]:
num_bone = len(lmb’frame_data’])
if frame_index <= lmb’frame_data’]‘fi’]:
frame_index = lmb’frame_data’]‘fi’]
for lmb in lmv’mov_bone_data’]:
num_bone = len(lmb’frame_data’])
if frame_index <= lmb’frame_data’]‘fi’]:
m = lmb’frame_data’]-1]
n = lmb’frame_data’]-2]
# if m’fi’] == n’fi’] + 1:
# lmb’frame_data’] = lmb’frame_data’]:-1]
# flag_change += 1
# print ‘delete last frame …’
if lmv’dr’] != m’fi’] + 1:
lmv’dr’] = m’fi’] + 1
flag_change += 1
print “已修正 dr 导致的最后一帧问题”, hero, lmv’name’], lmb’name’], ‘dr =’, lmv’dr’]
if flag_change > 0:
data_json = json.dumps(obj_json, indent=2, sort_keys=True)
handle_json = open(json_path, ‘w’)
handle_json.write(data_json)
handle_json.close()
if flag_change <= 0:
print “\n\tdr 正常,(解决由索引值导致的最后一帧无法播放的bug)”
3.2 3.3 + ccs1.6 我这重来灭有播过最后一帧 -------
找到dr的值,如果不等于fi + 1,就修改成等于即可了!