[решено] - импорт .blend файла в Unity3D (Blender 2.57) - Форум Игроделов
Пт, 03 Май 2024, 06:54 
 
Приветствую Вас Гость Главная | Регистрация | Вход
Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 2
  • 1
  • 2
  • »
Форум Игроделов » МИР 3D - РЕДАКТОРЫ, МОДЕЛЛИНГ, ЛЕПКА, ДИЗАЙН » Blender » [решено] - импорт .blend файла в Unity3D (Blender 2.57)
[решено] - импорт .blend файла в Unity3D (Blender 2.57)
DjeeZДата: Вт, 24 Май 2011, 10:16 | Сообщение # 1
 
Сообщений: 270
Награды: 8
Репутация: 291
Статус: Offline
Решение - как избежать проблемы с импортом .blend файла в Unity3D в Blender 2.57:

Установив Blender 2.57 и попытавшись перетащить .blend файл в Unity3D обнаруживается ошибка и, как следствие - нулевой результат.
Тому виной, пока не приведенные в соответствие, различия версий.
Что надо делать.
Открыть файл Unity-BlenderToFBX.py в папке Unity с дефолтным расположением:
Code
c:\Program Files\Unity\Editor\Data\Tools\Unity-BlenderToFBX.py

заменить текст скрипта на этот (у меня работает эта версия скрипта):
Code
blender249 = True

try: import Blender
except:
   blender249 = False
   import bpy   

if blender249:
   try: import export_fbx
   except:
    print('error: export_fbx not found.')
    Blender.Quit()
else:
   try: import io_scene_fbx.export_fbx
   except:
    print('error: io_scene_fbx.export_fbx not found.')
    # This might need to be bpy.Quit()
    raise

# Find the Blender output file
import os
outfile = os.getenv("UNITY_BLENDER_EXPORTER_OUTPUT_FILE")

# Do the conversion
print("Starting blender to FBX conversion " + outfile)

if blender249:
   export_fbx.write(outfile,
   EXP_OBS_SELECTED=False,
   EXP_MESH=True,
   EXP_MESH_APPLY_MOD=True,
   EXP_MESH_HQ_NORMALS=True,
   EXP_ARMATURE=True,
   EXP_LAMP=True,
   EXP_CAMERA=True,
   EXP_EMPTY=True,
   EXP_IMAGE_COPY=False,
   ANIM_ENABLE=True,
   ANIM_OPTIMIZE=False,
   ANIM_ACTION_ALL=True,
   GLOBAL_MATRIX = Blender.Mathutils.RotationMatrix( -90, 4, 'x' ),\
   )
else:
   import math
   from mathutils import Matrix
   # -90 degrees
   mtx4_x90n = Matrix.Rotation(-math.pi / 2.0, 4, 'X')
     
   class FakeOp:
    def report(self, tp, msg):
     print("%s: %s" % (tp, msg))
     
   io_scene_fbx.export_fbx.save(FakeOp(), bpy.context, filepath=outfile,
                  GLOBAL_MATRIX=mtx4_x90n,
                  use_selection=False,
                  # context_objects=None,
                  # object_types={'EMPTY', 'ARMATURE', 'MESH'},
                  EXP_MESH=True,
                  EXP_ARMATURE=True,
                  EXP_EMPTY=True,
                  EXP_MESH_APPLY_MOD=True,
                  # mesh_smooth_type='FACE',
                  EXP_LAMP=False,
                  EXP_CAMERA=False,
                  ANIM_ENABLE=True,
                  ANIM_OPTIMIZE=False,
                  ANIM_OPTIMIZE_PRECISSION=6,
                  ANIM_ACT   ION_ALL=True,
                  batch_mode='OFF',
                  # path_mode='AUTO',
                  BATCH_OWN_DIR=False,
                  use_metadata=True)

print("Finished blender to FBX conversion " + outfile)


Источник:Доступно только для пользователей

Еще один вариант скрипта:
Code
blender249 = True

try: import Blender
except:
     blender249 = False
     import bpy     

if blender249:
     try: import export_fbx
     except:
         print('error: export_fbx not found.')
         Blender.Quit()
else:
     try: import io_scene_fbx.export_fbx
     except:
         print('error: io_scene_fbx.export_fbx not found.')
         # This might need to be bpy.Quit()
         raise

# Find the Blender output file
import os
outfile = os.getenv("UNITY_BLENDER_EXPORTER_OUTPUT_FILE")

# Do the conversion
print("Starting blender to FBX conversion " + outfile)

if blender249:
     mtx4_x90n = Blender.Mathutils.RotationMatrix(-90, 4, 'x')
     export_fbx.write(outfile,
         EXP_OBS_SELECTED=False,
         EXP_MESH=True,
         EXP_MESH_APPLY_MOD=True,
         EXP_MESH_HQ_NORMALS=True,
         EXP_ARMATURE=True,
         EXP_LAMP=True,
         EXP_CAMERA=True,
         EXP_EMPTY=True,
         EXP_IMAGE_COPY=False,
         ANIM_ENABLE=True,
         ANIM_OPTIMIZE=False,
         ANIM_ACTION_ALL=True,
         GLOBAL_MATRIX=mtx4_x90n)
else:
     # blender 2.58 or newer
     import math
     from mathutils import Matrix
     # -90 degrees
     mtx4_x90n = Matrix.Rotation(-math.pi / 2.0, 4, 'X')
      
     print("moo")
      
     class FakeOp:
         def report(self, tp, msg):
             print("%s: %s" % (tp, msg))
      
     exportObjects = ['ARMATURE', 'EMPTY', 'MESH']
          
     minorVersion = bpy.app.version[1];     
     if minorVersion <= 58:
         # 2.58
         io_scene_fbx.export_fbx.save(FakeOp(), bpy.context, filepath=outfile,
             global_matrix=mtx4_x90n,
             use_selection=False,
             object_types=exportObjects,
             mesh_apply_modifiers=True,
             ANIM_ENABLE=True,
             ANIM_OPTIMIZE=False,
             ANIM_OPTIMIZE_PRECISSION=6,
             ANIM_ACTION_ALL=True,
             batch_mode='OFF',     
             BATCH_OWN_DIR=False)
     else:
         # 2.59 and later
         io_scene_fbx.export_fbx.save(FakeOp(), bpy.context, filepath=outfile,
             global_matrix=mtx4_x90n,
             use_selection=False,
             object_types=exportObjects,
             use_mesh_modifiers=True,
             use_anim=True,
             use_anim_optimize=False,
             anim_optimize_precission=6,
             use_anim_action_all=True,
             batch_mode='OFF',
             use_batch_own_dir=False)
     # HQ normals are not supported in the current exporter

print("Finished blender to FBX conversion " + outfile)


smile

Еще один момент с той ветки форума. Выложено, как нечто новое то, что импортированную в Unity .blend файлом, модель - можно открывать двойным щелчком мыши, она открывается, редактируется и по нажатию клавиш сохранения обновляется в Unity. Что ж, - может для кого то - это действительно новая и полезная информация.


Сообщение отредактировал DjeeZ - Чт, 22 Дек 2011, 11:28
 
СообщениеРешение - как избежать проблемы с импортом .blend файла в Unity3D в Blender 2.57:

Установив Blender 2.57 и попытавшись перетащить .blend файл в Unity3D обнаруживается ошибка и, как следствие - нулевой результат.
Тому виной, пока не приведенные в соответствие, различия версий.
Что надо делать.
Открыть файл Unity-BlenderToFBX.py в папке Unity с дефолтным расположением:
Code
c:\Program Files\Unity\Editor\Data\Tools\Unity-BlenderToFBX.py

заменить текст скрипта на этот (у меня работает эта версия скрипта):
Code
blender249 = True

try: import Blender
except:
   blender249 = False
   import bpy   

if blender249:
   try: import export_fbx
   except:
    print('error: export_fbx not found.')
    Blender.Quit()
else:
   try: import io_scene_fbx.export_fbx
   except:
    print('error: io_scene_fbx.export_fbx not found.')
    # This might need to be bpy.Quit()
    raise

# Find the Blender output file
import os
outfile = os.getenv("UNITY_BLENDER_EXPORTER_OUTPUT_FILE")

# Do the conversion
print("Starting blender to FBX conversion " + outfile)

if blender249:
   export_fbx.write(outfile,
   EXP_OBS_SELECTED=False,
   EXP_MESH=True,
   EXP_MESH_APPLY_MOD=True,
   EXP_MESH_HQ_NORMALS=True,
   EXP_ARMATURE=True,
   EXP_LAMP=True,
   EXP_CAMERA=True,
   EXP_EMPTY=True,
   EXP_IMAGE_COPY=False,
   ANIM_ENABLE=True,
   ANIM_OPTIMIZE=False,
   ANIM_ACTION_ALL=True,
   GLOBAL_MATRIX = Blender.Mathutils.RotationMatrix( -90, 4, 'x' ),\
   )
else:
   import math
   from mathutils import Matrix
   # -90 degrees
   mtx4_x90n = Matrix.Rotation(-math.pi / 2.0, 4, 'X')
     
   class FakeOp:
    def report(self, tp, msg):
     print("%s: %s" % (tp, msg))
     
   io_scene_fbx.export_fbx.save(FakeOp(), bpy.context, filepath=outfile,
                  GLOBAL_MATRIX=mtx4_x90n,
                  use_selection=False,
                  # context_objects=None,
                  # object_types={'EMPTY', 'ARMATURE', 'MESH'},
                  EXP_MESH=True,
                  EXP_ARMATURE=True,
                  EXP_EMPTY=True,
                  EXP_MESH_APPLY_MOD=True,
                  # mesh_smooth_type='FACE',
                  EXP_LAMP=False,
                  EXP_CAMERA=False,
                  ANIM_ENABLE=True,
                  ANIM_OPTIMIZE=False,
                  ANIM_OPTIMIZE_PRECISSION=6,
                  ANIM_ACT   ION_ALL=True,
                  batch_mode='OFF',
                  # path_mode='AUTO',
                  BATCH_OWN_DIR=False,
                  use_metadata=True)

print("Finished blender to FBX conversion " + outfile)


Источник:Доступно только для пользователей

Еще один вариант скрипта:
Code
blender249 = True

try: import Blender
except:
     blender249 = False
     import bpy     

if blender249:
     try: import export_fbx
     except:
         print('error: export_fbx not found.')
         Blender.Quit()
else:
     try: import io_scene_fbx.export_fbx
     except:
         print('error: io_scene_fbx.export_fbx not found.')
         # This might need to be bpy.Quit()
         raise

# Find the Blender output file
import os
outfile = os.getenv("UNITY_BLENDER_EXPORTER_OUTPUT_FILE")

# Do the conversion
print("Starting blender to FBX conversion " + outfile)

if blender249:
     mtx4_x90n = Blender.Mathutils.RotationMatrix(-90, 4, 'x')
     export_fbx.write(outfile,
         EXP_OBS_SELECTED=False,
         EXP_MESH=True,
         EXP_MESH_APPLY_MOD=True,
         EXP_MESH_HQ_NORMALS=True,
         EXP_ARMATURE=True,
         EXP_LAMP=True,
         EXP_CAMERA=True,
         EXP_EMPTY=True,
         EXP_IMAGE_COPY=False,
         ANIM_ENABLE=True,
         ANIM_OPTIMIZE=False,
         ANIM_ACTION_ALL=True,
         GLOBAL_MATRIX=mtx4_x90n)
else:
     # blender 2.58 or newer
     import math
     from mathutils import Matrix
     # -90 degrees
     mtx4_x90n = Matrix.Rotation(-math.pi / 2.0, 4, 'X')
      
     print("moo")
      
     class FakeOp:
         def report(self, tp, msg):
             print("%s: %s" % (tp, msg))
      
     exportObjects = ['ARMATURE', 'EMPTY', 'MESH']
          
     minorVersion = bpy.app.version[1];     
     if minorVersion <= 58:
         # 2.58
         io_scene_fbx.export_fbx.save(FakeOp(), bpy.context, filepath=outfile,
             global_matrix=mtx4_x90n,
             use_selection=False,
             object_types=exportObjects,
             mesh_apply_modifiers=True,
             ANIM_ENABLE=True,
             ANIM_OPTIMIZE=False,
             ANIM_OPTIMIZE_PRECISSION=6,
             ANIM_ACTION_ALL=True,
             batch_mode='OFF',     
             BATCH_OWN_DIR=False)
     else:
         # 2.59 and later
         io_scene_fbx.export_fbx.save(FakeOp(), bpy.context, filepath=outfile,
             global_matrix=mtx4_x90n,
             use_selection=False,
             object_types=exportObjects,
             use_mesh_modifiers=True,
             use_anim=True,
             use_anim_optimize=False,
             anim_optimize_precission=6,
             use_anim_action_all=True,
             batch_mode='OFF',
             use_batch_own_dir=False)
     # HQ normals are not supported in the current exporter

print("Finished blender to FBX conversion " + outfile)


smile

Еще один момент с той ветки форума. Выложено, как нечто новое то, что импортированную в Unity .blend файлом, модель - можно открывать двойным щелчком мыши, она открывается, редактируется и по нажатию клавиш сохранения обновляется в Unity. Что ж, - может для кого то - это действительно новая и полезная информация.

Автор - DjeeZ
Дата добавления - 24 Май 2011 в 10:16
ЛевшаДата: Вт, 24 Май 2011, 20:10 | Сообщение # 2
Черный Волк
 
Сообщений: 7257
Награды: 30
Репутация: 3313
Статус: Offline
Quote (DjeeZ)
Что надо делать.

Прежде всего читать документацию по движку, блин...
Откуда ты вообще взял что Унити поддерживает формат блендера...?


X.cor.R (Prologue)
 
Сообщение
Quote (DjeeZ)
Что надо делать.

Прежде всего читать документацию по движку, блин...
Откуда ты вообще взял что Унити поддерживает формат блендера...?

Автор - Левша
Дата добавления - 24 Май 2011 в 20:10
DjeeZДата: Вт, 24 Май 2011, 23:52 | Сообщение # 3
 
Сообщений: 270
Награды: 8
Репутация: 291
Статус: Offline
О чем это? Не понял. Поддерживает начиная с версии 3.2. Приблизительно как и с Максом работает.
Или я, по твоему, стал бы писать то, что написал сообщением выше, если бы у меня это не работало? smile

Ага, кажется понял. Если бегло, через строчку (способом Левши :)), прочитать, то может создаться впечатление что я прошу помочь, а не даю способ избавиться от проблемы.
Приписал заголовок.


Сообщение отредактировал DjeeZ - Ср, 25 Май 2011, 04:15
 
СообщениеО чем это? Не понял. Поддерживает начиная с версии 3.2. Приблизительно как и с Максом работает.
Или я, по твоему, стал бы писать то, что написал сообщением выше, если бы у меня это не работало? smile

Ага, кажется понял. Если бегло, через строчку (способом Левши :)), прочитать, то может создаться впечатление что я прошу помочь, а не даю способ избавиться от проблемы.
Приписал заголовок.

Автор - DjeeZ
Дата добавления - 24 Май 2011 в 23:52
HanzoДата: Ср, 25 Май 2011, 16:17 | Сообщение # 4
 
Сообщений: 1070
Награды: 8
Репутация: 296
Статус: Offline
Quote (DjeeZ)
Поддерживает начиная с версии 3.2.

Юнити не поддерживает формат Блендера. Юнити экспортирует формат blend в fbx (с коим работает на прямую), через экспортер Блендера. С остальными редакторами точно так же. Если быть точным: Юнити поддерживает экспорт сцен из Блендера, а не его формат. И если убрать скрипт экспорта в fbx из Блендера, вы ни одну модельку закинуть не сможете. Как-то так. wacko


Сообщение отредактировал Hanzo - Ср, 25 Май 2011, 16:32
 
Сообщение
Quote (DjeeZ)
Поддерживает начиная с версии 3.2.

Юнити не поддерживает формат Блендера. Юнити экспортирует формат blend в fbx (с коим работает на прямую), через экспортер Блендера. С остальными редакторами точно так же. Если быть точным: Юнити поддерживает экспорт сцен из Блендера, а не его формат. И если убрать скрипт экспорта в fbx из Блендера, вы ни одну модельку закинуть не сможете. Как-то так. wacko

Автор - Hanzo
Дата добавления - 25 Май 2011 в 16:17
DjeeZДата: Ср, 25 Май 2011, 18:11 | Сообщение # 5
 
Сообщений: 270
Награды: 8
Репутация: 291
Статус: Offline
По тому же принципу - а если удалить FBXMaxExport.ms?..
А если удалить Unity.exe - обнаружится что Unity и Винду не поддерживает. biggrin
Ведь очевидно же, что все форматы Unity приводит к тем, с которыми затем работает.
Поддержка заключается не в наличии файла задающего настройки экспортера (Unity-BlenderToFBX.py - сам по себе этот файл ничего не экспортирует).

Unity умеет при надобности запускать Блендер (так-же как и Мах и др.) в фоновом режиме и использовать его, Блендера, возможности по экспорту. Обычная практика в Windows среде. И какая разница каким способом Блендер реализует экспорт? Это его, Блендера, дело.
Если не установлен Блендер, а в проекте содержится .blend файл - Unity пищит об отсутствии Блендера (так же как и с другими 3D прогами).
Поддерживается перетаскивание мышкой. Файл блендера хранится в файлах проекта Unity фоново и Unity знает - что это и как с этим обращаться.
Импортированную в Unity через .blend, модель - можно открывать двойным щелчком мыши в Блендере для редактирования. При обновлении(пересохранении) .blend файла Unity обновляет модель - подобно тому, как обновляет файл скрипта при работе в Editor-е.

Какая поддержка еще нужна? Что бы Unity хранил данные в .blend файлах в реал-тайм? smile
 
СообщениеПо тому же принципу - а если удалить FBXMaxExport.ms?..
А если удалить Unity.exe - обнаружится что Unity и Винду не поддерживает. biggrin
Ведь очевидно же, что все форматы Unity приводит к тем, с которыми затем работает.
Поддержка заключается не в наличии файла задающего настройки экспортера (Unity-BlenderToFBX.py - сам по себе этот файл ничего не экспортирует).

Unity умеет при надобности запускать Блендер (так-же как и Мах и др.) в фоновом режиме и использовать его, Блендера, возможности по экспорту. Обычная практика в Windows среде. И какая разница каким способом Блендер реализует экспорт? Это его, Блендера, дело.
Если не установлен Блендер, а в проекте содержится .blend файл - Unity пищит об отсутствии Блендера (так же как и с другими 3D прогами).
Поддерживается перетаскивание мышкой. Файл блендера хранится в файлах проекта Unity фоново и Unity знает - что это и как с этим обращаться.
Импортированную в Unity через .blend, модель - можно открывать двойным щелчком мыши в Блендере для редактирования. При обновлении(пересохранении) .blend файла Unity обновляет модель - подобно тому, как обновляет файл скрипта при работе в Editor-е.

Какая поддержка еще нужна? Что бы Unity хранил данные в .blend файлах в реал-тайм? smile

Автор - DjeeZ
Дата добавления - 25 Май 2011 в 18:11
СкептикДата: Ср, 25 Май 2011, 18:57 | Сообщение # 6
Мыслитель
 
Сообщений: 5860
Награды: 48
Репутация: 1731
Статус: Offline
DjeeZ, это не поддержка blend-файлов, а поддержка Блендера как редактора.

Фанат игр Max Payne и Fahrenheit.
 
СообщениеDjeeZ, это не поддержка blend-файлов, а поддержка Блендера как редактора.

Автор - Скептик
Дата добавления - 25 Май 2011 в 18:57
HanzoДата: Ср, 25 Май 2011, 19:25 | Сообщение # 7
 
Сообщений: 1070
Награды: 8
Репутация: 296
Статус: Offline
Юнити поддерживает FBX, .dae, .3DS, .dxf и .obj.
Вот выдержка с сайта:
Unity can read .FBX, .dae, .3DS, .dxf and .obj files, so if your program can export to this format you're home free. FBX exporters for popular 3D packages can be found here. Many packages also have a Collada exporter available.

Да и заметил еще одно: анимация не воспроизводится в Юнити из бленд-файлов, приходиться конвертить в fbx. Работаю в Блендере 2.49.2, может в серии 2.5. с этим все норм.... cry
 
СообщениеЮнити поддерживает FBX, .dae, .3DS, .dxf и .obj.
Вот выдержка с сайта:
Unity can read .FBX, .dae, .3DS, .dxf and .obj files, so if your program can export to this format you're home free. FBX exporters for popular 3D packages can be found here. Many packages also have a Collada exporter available.

Да и заметил еще одно: анимация не воспроизводится в Юнити из бленд-файлов, приходиться конвертить в fbx. Работаю в Блендере 2.49.2, может в серии 2.5. с этим все норм.... cry

Автор - Hanzo
Дата добавления - 25 Май 2011 в 19:25
DjeeZДата: Ср, 25 Май 2011, 19:25 | Сообщение # 8
 
Сообщений: 270
Награды: 8
Репутация: 291
Статус: Offline
Quote (Скептик)
DjeeZ, это не поддержка blend-файлов, а поддержка Блендера как редактора.

Конечно. Но и поддержка бленд файлов через такое взаимодействие. Многие(большинство) программ используют в работе объекты из других программ, динамических библиотек. Это такой способ реализации. И не значит что твоя прога не может выводить на дисплей окно, только потому что, сама она это не делает, а использует стандартные функции в библиотеках Windows.
А в данном контексте, когда говорится о поддержке того или иного файла проекта 3D программы, именно такое взаимодействие и имеется в виду. Никто и не требует большего.

Здесь, ведь скорее путаница в значении слов. Файл .blend - это не графический формат подобный 3ds, fbx, jpeg. Это файл проекта, некий архив содержащий объекты в различных графических форматах. С ним работает только Блендер. С максовским форматом работает только Мах. И т.д. Потому для работы с такими файлами проектов и требуется наличие самих программ.
Поддержка в таких случаях заключается в умении контактировать с самими программами (обычно в фоновом режиме, без вывода на экран), а не в прямом чтении из файла проекта. Такое чтение, также часто запрещает лицензия этих программ.

Quote (Hanzo)
Да и заметил еще одно: анимация не воспроизводится в Юнити из бленд-файлов, приходиться конвертить в fbx. Работаю в Блендере 2.49.2, может в серии 2.5. с этим все норм.... cry
А экспорт анимации отмечен? У меня работает. Blender 2.57.


Сообщение отредактировал DjeeZ - Ср, 25 Май 2011, 19:44
 
Сообщение
Quote (Скептик)
DjeeZ, это не поддержка blend-файлов, а поддержка Блендера как редактора.

Конечно. Но и поддержка бленд файлов через такое взаимодействие. Многие(большинство) программ используют в работе объекты из других программ, динамических библиотек. Это такой способ реализации. И не значит что твоя прога не может выводить на дисплей окно, только потому что, сама она это не делает, а использует стандартные функции в библиотеках Windows.
А в данном контексте, когда говорится о поддержке того или иного файла проекта 3D программы, именно такое взаимодействие и имеется в виду. Никто и не требует большего.

Здесь, ведь скорее путаница в значении слов. Файл .blend - это не графический формат подобный 3ds, fbx, jpeg. Это файл проекта, некий архив содержащий объекты в различных графических форматах. С ним работает только Блендер. С максовским форматом работает только Мах. И т.д. Потому для работы с такими файлами проектов и требуется наличие самих программ.
Поддержка в таких случаях заключается в умении контактировать с самими программами (обычно в фоновом режиме, без вывода на экран), а не в прямом чтении из файла проекта. Такое чтение, также часто запрещает лицензия этих программ.

Quote (Hanzo)
Да и заметил еще одно: анимация не воспроизводится в Юнити из бленд-файлов, приходиться конвертить в fbx. Работаю в Блендере 2.49.2, может в серии 2.5. с этим все норм.... cry
А экспорт анимации отмечен? У меня работает. Blender 2.57.

Автор - DjeeZ
Дата добавления - 25 Май 2011 в 19:25
СкептикДата: Ср, 25 Май 2011, 20:19 | Сообщение # 9
Мыслитель
 
Сообщений: 5860
Награды: 48
Репутация: 1731
Статус: Offline
Quote (Hanzo)
Юнити поддерживает

Я на юнити3д.ру более полный список видел. Все форматы: 2Д, 3Д. аудио, видео...


Фанат игр Max Payne и Fahrenheit.
 
Сообщение
Quote (Hanzo)
Юнити поддерживает

Я на юнити3д.ру более полный список видел. Все форматы: 2Д, 3Д. аудио, видео...

Автор - Скептик
Дата добавления - 25 Май 2011 в 20:19
ЛевшаДата: Ср, 25 Май 2011, 21:26 | Сообщение # 10
Черный Волк
 
Сообщений: 7257
Награды: 30
Репутация: 3313
Статус: Offline
Удивили, про то что с версии 3.2 ввели поддержку блендера, не знал...
А где написано? huh Ссыль?

Добавлено (25.05.2011, 21:26)
---------------------------------------------
Блин... хрен моржовый унити видит, а не файл блендера.
Ремня те мало... врать горазд. angry Ща специально сохранил куб из блендера 2.5.7 в Унити 3.3. Никакой реакции, в упор не импортит...

Вот файл блендера: А вот файл макса: Разницу видишь?
Прикрепления: 6019062.png (10.5 Kb) · 3328497.png (20.8 Kb)


X.cor.R (Prologue)
 
СообщениеУдивили, про то что с версии 3.2 ввели поддержку блендера, не знал...
А где написано? huh Ссыль?

Добавлено (25.05.2011, 21:26)
---------------------------------------------
Блин... хрен моржовый унити видит, а не файл блендера.
Ремня те мало... врать горазд. angry Ща специально сохранил куб из блендера 2.5.7 в Унити 3.3. Никакой реакции, в упор не импортит...

Вот файл блендера: А вот файл макса: Разницу видишь?

Автор - Левша
Дата добавления - 25 Май 2011 в 21:26
DjeeZДата: Ср, 25 Май 2011, 23:17 | Сообщение # 11
 
Сообщений: 270
Награды: 8
Репутация: 291
Статус: Offline
Ну здрасте, опять - двадцать пять. biggrin
Из-за этой возможности тогда качал unity-3.2, не успев рассмотреть 3.1. Для меня большой трафик. А сейчас сижу тут и вру, со скуки, наверное.
У меня файл из Блендера выглядит точно также, как у тебя из Макса.

Тут список изменений в версии unity-3.2 на офсайте.
строчка: Direct import from Blender 2.55.1 and later.

Не знаю почему у тебя не работает. Может Блендер не установлен(не прописан в системе) как надо. Может отменили в версии 3.3 - решили слишком жирно будет - прямой импорт из бесплатного пакета.
А то что, релиз Блендер 2.57 состоялся недавно, после выхода Unity3.3, а тем более 3.2, и в нем другой API - собственно решению этой проблемы и посвящено мое сообщение на предыдущей странице.
Файл "c:\Program Files\Unity\Editor\Data\Tools\Unity-BlenderToFBX.py" хотя бы имеется у тебя вообще?
 
СообщениеНу здрасте, опять - двадцать пять. biggrin
Из-за этой возможности тогда качал unity-3.2, не успев рассмотреть 3.1. Для меня большой трафик. А сейчас сижу тут и вру, со скуки, наверное.
У меня файл из Блендера выглядит точно также, как у тебя из Макса.

Тут список изменений в версии unity-3.2 на офсайте.
строчка: Direct import from Blender 2.55.1 and later.

Не знаю почему у тебя не работает. Может Блендер не установлен(не прописан в системе) как надо. Может отменили в версии 3.3 - решили слишком жирно будет - прямой импорт из бесплатного пакета.
А то что, релиз Блендер 2.57 состоялся недавно, после выхода Unity3.3, а тем более 3.2, и в нем другой API - собственно решению этой проблемы и посвящено мое сообщение на предыдущей странице.
Файл "c:\Program Files\Unity\Editor\Data\Tools\Unity-BlenderToFBX.py" хотя бы имеется у тебя вообще?

Автор - DjeeZ
Дата добавления - 25 Май 2011 в 23:17
HanzoДата: Ср, 25 Май 2011, 23:56 | Сообщение # 12
 
Сообщений: 1070
Награды: 8
Репутация: 296
Статус: Offline
Quote (Левша)
Удивили, про то что с версии 3.2 ввели поддержку блендера, не знал...

вообще-то еще с версии Юнити 2.5 happy
 
Сообщение
Quote (Левша)
Удивили, про то что с версии 3.2 ввели поддержку блендера, не знал...

вообще-то еще с версии Юнити 2.5 happy

Автор - Hanzo
Дата добавления - 25 Май 2011 в 23:56
ЛевшаДата: Ср, 25 Май 2011, 23:59 | Сообщение # 13
Черный Волк
 
Сообщений: 7257
Награды: 30
Репутация: 3313
Статус: Offline
Quote (DjeeZ)
Может Блендер не установлен

А как я его файл сохранил в унити? biggrin

Quote
Asset Importing:
Direct import of Modo files (*.lxo). Officialy supported Modo versions are 501 and higher.
Direct import from Cinema 4D R12.
Direct import from Blender 2.55.1 and later.
Upgraded FBX SDK to 2011.3.1.
Support for import of mesh instances from FBX files. Import of instances is not enabled for direct import of 3dsMax/Maya files due to limitations on FBX exporters (see Known Issues).


Бум разбираться, дело в том мну эта тема волнует, так хочу пересесть на блендер.
Однако факт, не работает у меня... huh


X.cor.R (Prologue)
 
Сообщение
Quote (DjeeZ)
Может Блендер не установлен

А как я его файл сохранил в унити? biggrin

Quote
Asset Importing:
Direct import of Modo files (*.lxo). Officialy supported Modo versions are 501 and higher.
Direct import from Cinema 4D R12.
Direct import from Blender 2.55.1 and later.
Upgraded FBX SDK to 2011.3.1.
Support for import of mesh instances from FBX files. Import of instances is not enabled for direct import of 3dsMax/Maya files due to limitations on FBX exporters (see Known Issues).


Бум разбираться, дело в том мну эта тема волнует, так хочу пересесть на блендер.
Однако факт, не работает у меня... huh

Автор - Левша
Дата добавления - 25 Май 2011 в 23:59
ЛевшаДата: Чт, 26 Май 2011, 00:02 | Сообщение # 14
Черный Волк
 
Сообщений: 7257
Награды: 30
Репутация: 3313
Статус: Offline
Quote (DjeeZ)
Файл "c:\Program Files\Unity\Editor\Data\Tools\Unity-BlenderToFBX.py" хотя бы имеется у тебя вообще?

Есть!

Прикрепления: 4552049.png (5.4 Kb)


X.cor.R (Prologue)
 
Сообщение
Quote (DjeeZ)
Файл "c:\Program Files\Unity\Editor\Data\Tools\Unity-BlenderToFBX.py" хотя бы имеется у тебя вообще?

Есть!


Автор - Левша
Дата добавления - 26 Май 2011 в 00:02
HanzoДата: Чт, 26 Май 2011, 00:08 | Сообщение # 15
 
Сообщений: 1070
Награды: 8
Репутация: 296
Статус: Offline
Quote (Левша)
Direct import from Blender 2.55.1 and later.
Upgraded FBX SDK to 2011.3.1.

А Юнити разве держит fbx 2011?
Quote (Левша)
так хочу пересесть на блендер.

С чего это вдруг? 3д Макс же - всему голова biggrin


Сообщение отредактировал Hanzo - Чт, 26 Май 2011, 00:19
 
Сообщение
Quote (Левша)
Direct import from Blender 2.55.1 and later.
Upgraded FBX SDK to 2011.3.1.

А Юнити разве держит fbx 2011?
Quote (Левша)
так хочу пересесть на блендер.

С чего это вдруг? 3д Макс же - всему голова biggrin

Автор - Hanzo
Дата добавления - 26 Май 2011 в 00:08
DjeeZДата: Чт, 26 Май 2011, 00:52 | Сообщение # 16
 
Сообщений: 270
Награды: 8
Репутация: 291
Статус: Offline
Quote (Hanzo)
вообще-то еще с версии Юнити 2.5 happy
Не знаю что там было. Ни разу не видел. Но поддержка прямого импорта начиная с 3.2 где-то прорекламировалась, вот я ее и скачал.

Quote (Левша)
Есть!
А пишет что-то типа, что у вас Блендер не той версии, если попытаться перетащить бленд файл в окно Project?
Вообщем я так понял:

В конце файла Unity-BlenderToFBX.py передаются параметры импорта:
io_scene_fbx.export_fbx.save(FakeOp(), bpy.context, filepath=outfile,
тут имена и присваемые значения)
_ Только эту часть скрипта и следует менять.
Передавать в Pithon-е, в данном случае можно не все параметры и в любой последовательности.
Значком "#" строчка отключается подобно "//" в С++
Можно поотключать все непонятные параметры (для непередаваемых есть умолчания) и пробовать постепенно включать в случае успеха.
Нужно, что-бы имена переменных были такие же как и в файле __init__.py, который у меня тут:
"c:\Documents and Settings\...\Application Data\Blender Foundation\Blender\2.57\scripts\addons\io_scene_fbx\__init__.py"
Параметры по умолчанию в нем.

Собственно измененный файл, который у меня хорошо заработал я и выложил на предыдущей странице.


Сообщение отредактировал DjeeZ - Чт, 26 Май 2011, 01:17
 
Сообщение
Quote (Hanzo)
вообще-то еще с версии Юнити 2.5 happy
Не знаю что там было. Ни разу не видел. Но поддержка прямого импорта начиная с 3.2 где-то прорекламировалась, вот я ее и скачал.

Quote (Левша)
Есть!
А пишет что-то типа, что у вас Блендер не той версии, если попытаться перетащить бленд файл в окно Project?
Вообщем я так понял:

В конце файла Unity-BlenderToFBX.py передаются параметры импорта:
io_scene_fbx.export_fbx.save(FakeOp(), bpy.context, filepath=outfile,
тут имена и присваемые значения)
_ Только эту часть скрипта и следует менять.
Передавать в Pithon-е, в данном случае можно не все параметры и в любой последовательности.
Значком "#" строчка отключается подобно "//" в С++
Можно поотключать все непонятные параметры (для непередаваемых есть умолчания) и пробовать постепенно включать в случае успеха.
Нужно, что-бы имена переменных были такие же как и в файле __init__.py, который у меня тут:
"c:\Documents and Settings\...\Application Data\Blender Foundation\Blender\2.57\scripts\addons\io_scene_fbx\__init__.py"
Параметры по умолчанию в нем.

Собственно измененный файл, который у меня хорошо заработал я и выложил на предыдущей странице.

Автор - DjeeZ
Дата добавления - 26 Май 2011 в 00:52
ЛевшаДата: Чт, 26 Май 2011, 02:03 | Сообщение # 17
Черный Волк
 
Сообщений: 7257
Награды: 30
Репутация: 3313
Статус: Offline
Quote (Hanzo)
С чего это вдруг? 3д Макс же - всему голова

Пришло время задуматься, поступил реальный заказ на социалку, за разработку платят, а вот за софт не хотят...
Так что сам понимаешь, надо пересесть на бесплатный софт, а так я по прежнему отдаю предпочтение 2009 максу, как самому стабильному. (пока во всяком случае).


X.cor.R (Prologue)
 
Сообщение
Quote (Hanzo)
С чего это вдруг? 3д Макс же - всему голова

Пришло время задуматься, поступил реальный заказ на социалку, за разработку платят, а вот за софт не хотят...
Так что сам понимаешь, надо пересесть на бесплатный софт, а так я по прежнему отдаю предпочтение 2009 максу, как самому стабильному. (пока во всяком случае).

Автор - Левша
Дата добавления - 26 Май 2011 в 02:03
Zer0nДата: Вс, 30 Окт 2011, 17:51 | Сообщение # 18
 
Сообщений: 880
Награды: 23
Репутация: 516
Статус: Offline
А как у блендера 2.6 с прямым импортом в Юнити?

 
СообщениеА как у блендера 2.6 с прямым импортом в Юнити?

Автор - Zer0n
Дата добавления - 30 Окт 2011 в 17:51
DjeeZДата: Вс, 04 Дек 2011, 04:05 | Сообщение # 19
 
Сообщений: 270
Награды: 8
Репутация: 291
Статус: Offline
Да все также. Эта часть сильно не изменилась по сравнению с 2.59. Также будет импортировать .blend файл, если подменить файл Unity-BlenderToFBX.py.
(файл тут: "c:\Program Files\Unity\Editor\Data\Tools\Unity-BlenderToFBX.py" )
Код скрипта:
Code
blender249 = True

try: import Blender
except:
  blender249 = False
  import bpy  

if blender249:
  try: import export_fbx
  except:
   print('error: export_fbx not found.')
   Blender.Quit()
else:
  try: import io_scene_fbx.export_fbx
  except:
   print('error: io_scene_fbx.export_fbx not found.')
   # This might need to be bpy.Quit()
   raise

# Find the Blender output file
import os
outfile = os.getenv("UNITY_BLENDER_EXPORTER_OUTPUT_FILE")

# Do the conversion
print("Starting blender to FBX conversion ", outfile)

if blender249:
  export_fbx.write(outfile,
  EXP_OBS_SELECTED=False,
  EXP_MESH=True,
  EXP_MESH_APPLY_MOD=True,
  EXP_MESH_HQ_NORMALS=True,
  EXP_ARMATURE=True,
  EXP_LAMP=True,
  EXP_CAMERA=True,
  EXP_EMPTY=True,
  EXP_IMAGE_COPY=False,
  ANIM_ENABLE=True,
  ANIM_OPTIMIZE=False,
  ANIM_ACTION_ALL=True,
  GLOBAL_MATRIX = Blender.Mathutils.RotationMatrix( -90, 4, 'x' ),\
  )
else:
  import math
  from mathutils import Matrix
  # -90 degrees
  mtx4_x90n = Matrix.Rotation(-math.pi / 2.0, 4, 'X')
   
  class FakeOp:
   def report(self, tp, msg):
    print("%s: %s" % (tp, msg))
   
  io_scene_fbx.export_fbx.save(
                 FakeOp(),  
                 bpy.context,  
                 filepath=outfile,
                 use_selection=False,
                 global_matrix=mtx4_x90n,
                 object_types={'ARMATURE', 'EMPTY', 'MESH'},
                 use_mesh_modifiers=True,
                 use_anim=True,
                 use_anim_optimize=False,
                 use_anim_action_all=True,
                 # batch_mode='OFF',
                 use_default_take=True
                 )

print("Finished blender to FBX conversion ", outfile)


Подогнал в нем просто параметры функции "io_scene_fbx.export_fbx.save" к параметрам по умолчанию для Unity3D из файла fbx-экспортера Блендера.
При желании можно попробовать поизменять параметры, если кому интересно, но вроде нет нужды - все необходимое и так работает.

Файл проекта открытого в Unity3D не должен находиться в какой нибудь "Мои документы".
А то можно забыться, не обратить внимания где находится проект, и безуспешно пытаться таскать файл в окно Unity, незаслуженно кроя и меня и все скрипты на свете. biggrin

Добавлено (20.11.2011, 22:52)
---------------------------------------------
Первое учебное пособие по Blender 2.6 на русском языке.

Кто еще не видел.
Говорим спасибо автору и переводчикам и...
Смотрим русский перевод четвертого издания книги Джеймса Кронистера - Blender Basics 4-rd edition. И учимся. smile

Blender Basics 4-rd edition на русском.

Добавлено (04.12.2011, 04:05)
---------------------------------------------
Переводится книга по персонажестроению в Blender 2.5.

Моделирование персонажа
Ссылка на перевод книги по созданию персонажа в новом Блендере.
"Создание персонажа в Блендер 2,5". Автор: Джонатан Уильямсон
Ждал, пока переводчик допереведет книгу, хотя бы главы по персонажу, но что-то дело не движется - качайте то, что есть.
Переводчик не очень опытный в Блендере, но старательный.
Переведено:
1. Немного по модификаторам.
2. Неплохая глава про Скульптинг, поможет ознакомится с темой, тем кто еще не касался.
3. Переведены три главы по созданию персонажа.
Главы по текстурированию не переведены еще. Неизвестно будут ли.
Будут полезны, тем кто с процессом не знаком, помогут во многом разобраться. Но надо помнить, что не обязательно строго придерживаться техники, там изложенной. Наработав некоторые навыки и поняв основные принципы, не стоит отказываться от исследования разнообразных приемов в других уроках. Потом уже будет не так важно, о старом или новом Блендере эти уроки.

Как полезное пособие также рекомендую взять еще книгу по изготовлению персонажа в старом Блендере.
BSoD/Анимация персонажей
BSOD_Animation_ru.pdf
Автор: Ryan Dale Перевод: Striver
А мелкие непонятности что да как, если возникнут - легко найти ответ, при необходимости, в Инете, в разнообразных небольших уроках. В любом случае почитать и другие уроки полезно будет.

 
СообщениеДа все также. Эта часть сильно не изменилась по сравнению с 2.59. Также будет импортировать .blend файл, если подменить файл Unity-BlenderToFBX.py.
(файл тут: "c:\Program Files\Unity\Editor\Data\Tools\Unity-BlenderToFBX.py" )
Код скрипта:
Code
blender249 = True

try: import Blender
except:
  blender249 = False
  import bpy  

if blender249:
  try: import export_fbx
  except:
   print('error: export_fbx not found.')
   Blender.Quit()
else:
  try: import io_scene_fbx.export_fbx
  except:
   print('error: io_scene_fbx.export_fbx not found.')
   # This might need to be bpy.Quit()
   raise

# Find the Blender output file
import os
outfile = os.getenv("UNITY_BLENDER_EXPORTER_OUTPUT_FILE")

# Do the conversion
print("Starting blender to FBX conversion ", outfile)

if blender249:
  export_fbx.write(outfile,
  EXP_OBS_SELECTED=False,
  EXP_MESH=True,
  EXP_MESH_APPLY_MOD=True,
  EXP_MESH_HQ_NORMALS=True,
  EXP_ARMATURE=True,
  EXP_LAMP=True,
  EXP_CAMERA=True,
  EXP_EMPTY=True,
  EXP_IMAGE_COPY=False,
  ANIM_ENABLE=True,
  ANIM_OPTIMIZE=False,
  ANIM_ACTION_ALL=True,
  GLOBAL_MATRIX = Blender.Mathutils.RotationMatrix( -90, 4, 'x' ),\
  )
else:
  import math
  from mathutils import Matrix
  # -90 degrees
  mtx4_x90n = Matrix.Rotation(-math.pi / 2.0, 4, 'X')
   
  class FakeOp:
   def report(self, tp, msg):
    print("%s: %s" % (tp, msg))
   
  io_scene_fbx.export_fbx.save(
                 FakeOp(),  
                 bpy.context,  
                 filepath=outfile,
                 use_selection=False,
                 global_matrix=mtx4_x90n,
                 object_types={'ARMATURE', 'EMPTY', 'MESH'},
                 use_mesh_modifiers=True,
                 use_anim=True,
                 use_anim_optimize=False,
                 use_anim_action_all=True,
                 # batch_mode='OFF',
                 use_default_take=True
                 )

print("Finished blender to FBX conversion ", outfile)


Подогнал в нем просто параметры функции "io_scene_fbx.export_fbx.save" к параметрам по умолчанию для Unity3D из файла fbx-экспортера Блендера.
При желании можно попробовать поизменять параметры, если кому интересно, но вроде нет нужды - все необходимое и так работает.

Файл проекта открытого в Unity3D не должен находиться в какой нибудь "Мои документы".
А то можно забыться, не обратить внимания где находится проект, и безуспешно пытаться таскать файл в окно Unity, незаслуженно кроя и меня и все скрипты на свете. biggrin

Добавлено (20.11.2011, 22:52)
---------------------------------------------
Первое учебное пособие по Blender 2.6 на русском языке.

Кто еще не видел.
Говорим спасибо автору и переводчикам и...
Смотрим русский перевод четвертого издания книги Джеймса Кронистера - Blender Basics 4-rd edition. И учимся. smile

Blender Basics 4-rd edition на русском.

Добавлено (04.12.2011, 04:05)
---------------------------------------------
Переводится книга по персонажестроению в Blender 2.5.

Моделирование персонажа
Ссылка на перевод книги по созданию персонажа в новом Блендере.
"Создание персонажа в Блендер 2,5". Автор: Джонатан Уильямсон
Ждал, пока переводчик допереведет книгу, хотя бы главы по персонажу, но что-то дело не движется - качайте то, что есть.
Переводчик не очень опытный в Блендере, но старательный.
Переведено:
1. Немного по модификаторам.
2. Неплохая глава про Скульптинг, поможет ознакомится с темой, тем кто еще не касался.
3. Переведены три главы по созданию персонажа.
Главы по текстурированию не переведены еще. Неизвестно будут ли.
Будут полезны, тем кто с процессом не знаком, помогут во многом разобраться. Но надо помнить, что не обязательно строго придерживаться техники, там изложенной. Наработав некоторые навыки и поняв основные принципы, не стоит отказываться от исследования разнообразных приемов в других уроках. Потом уже будет не так важно, о старом или новом Блендере эти уроки.

Как полезное пособие также рекомендую взять еще книгу по изготовлению персонажа в старом Блендере.
BSoD/Анимация персонажей
BSOD_Animation_ru.pdf
Автор: Ryan Dale Перевод: Striver
А мелкие непонятности что да как, если возникнут - легко найти ответ, при необходимости, в Инете, в разнообразных небольших уроках. В любом случае почитать и другие уроки полезно будет.


Автор - DjeeZ
Дата добавления - 04 Дек 2011 в 04:05
iamДата: Вт, 28 Май 2013, 23:09 | Сообщение # 20
Нет аватара
 
Сообщений: 20
Награды: 0
Репутация: 0
Статус: Offline
Цитата (DjeeZ)
Решение - как избежать проблемы

помоги со скриптом http://gamecreatingcommunity.ru/forum/196-5839-1 : D
 
Сообщение
Цитата (DjeeZ)
Решение - как избежать проблемы

помоги со скриптом http://gamecreatingcommunity.ru/forum/196-5839-1 : D

Автор - iam
Дата добавления - 28 Май 2013 в 23:09
Форум Игроделов » МИР 3D - РЕДАКТОРЫ, МОДЕЛЛИНГ, ЛЕПКА, ДИЗАЙН » Blender » [решено] - импорт .blend файла в Unity3D (Blender 2.57)
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:
Загрузка...

Game Creating CommUnity © 2009 - 2024