OSDN Git Service
(root)
/
meshio
/
pymeshio.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
3dedb08
)
object name
author
ousttrue
<ousttrue@gmail.com>
Thu, 13 Oct 2011 16:15:15 +0000
(
01:15
+0900)
committer
ousttrue
<ousttrue@gmail.com>
Thu, 13 Oct 2011 16:15:15 +0000
(
01:15
+0900)
blender26-meshio/import_pmx.py
patch
|
blob
|
history
diff --git
a/blender26-meshio/import_pmx.py
b/blender26-meshio/import_pmx.py
index
d04044d
..
db2c3d7
100644
(file)
--- a/
blender26-meshio/import_pmx.py
+++ b/
blender26-meshio/import_pmx.py
@@
-163,12
+163,26
@@
def _execute(filepath):
for pos in (v.position for v in model.vertices)]
# マテリアル毎にメッシュを作成する
for pos in (v.position for v in model.vertices)]
# マテリアル毎にメッシュを作成する
+ def get_object_name(index, name):
+ """
+ object名を作る。最大21バイト
+ """
+ len_list=[len(name[:i].encode('utf-8')) for i in range(1, len(name)+1, 1)]
+ letter_count=0
+ for str_len in len_list:
+ if str_len<18: # 21-3
+ letter_count+=1
+ else:
+ break
+ name="{0:02}:{1}".format(index, name[:letter_count])
+ print("%s(%d)" % (name, letter_count))
+ return name
for i, m in enumerate(model.materials):
print(m.name)
# material作成
material=__create_a_material(m, m.name, textures_and_images)
# object名はutf-8で21byteまで
for i, m in enumerate(model.materials):
print(m.name)
# material作成
material=__create_a_material(m, m.name, textures_and_images)
# object名はutf-8で21byteまで
- mesh, mesh_object=bl.mesh.create(
"object:{0:02}".format(i
))
+ mesh, mesh_object=bl.mesh.create(
get_object_name(i, m.name
))
bl.mesh.addMaterial(mesh, material)
# activate object
bl.object.deselectAll()
bl.mesh.addMaterial(mesh, material)
# activate object
bl.object.deselectAll()