BlenderにOBJファイルをインポートする


ドラマ『下町ロケット』(2016)
同じエンジニアとして血が騒ぎ、とてつもなく面白かったです。
「どんな難問にも必ず答えはある」
いい言葉だと思います。そしてギリギリのところで、仕事をやりとげる佃製作所すごいです。でも現実ではギリギリセーフの仕事って完全アウトな気がします。ギリギリ間に合うかもしれないは、ギリギリ間に合わないかもしれない、であるからです。それではスケジュールが守れませんね。

下町ロケットでは、帝国重工がロケットをすべて自社製作ではなく、キーデバイスであるバルブシステムだけは、佃製作所から部品供給を受けます。
3DCG制作においても、すべて自分でモデリングが出来れば良いのですが、得手不得手あるかと思います。モデリングが出来なくても、出来上がったモデルを組み合わせて3DCGを制作する楽しみ方もあります。WEBからフリーのモデルを探して使ってみましょう。

今回はhttp://tf3dm.com/ でモデルを探します。
ロケットを探したいので、飛行機(空を飛ぶものでまとめてるのでしょう)マークをクリックします。
bl-rocket-002
OBJファイルのみでフィルタリングします。
bl-rocket-003

zeontronさんのモデル「Proton Rocket」(Proton.obj)を使わせてもらうことにしました。
モデルの圧縮ファイルをダウンロードして解凍したら、下のスクリプトを実行します。

     1	#!/bin/bash
     2	cat <<EOL>/tmp/tmp.py
     3	
     4	import bpy
     5	
     6	bpy.ops.object.delete()
     7	
     8	bpy.ops.mesh.primitive_plane_add()
     9	bpy.ops.transform.resize(value=(20,20,1))
    10	bpy.data.objects['Plane'].location=(0,0,-0.1)
    11	
    12	mat=bpy.data.materials['Material']
    13	mat.diffuse_color=(0.095, 1, 0.107)
    14	bpy.context.object.data.materials.append(mat)
    15	
    16	bpy.ops.object.particle_system_add()
    17	
    18	bpy.data.particles['ParticleSettings'].type="HAIR"
    19	bpy.data.particles['ParticleSettings'].hair_length=0.1
    20	bpy.data.particles['ParticleSettings'].child_type="SIMPLE"
    21	bpy.data.particles['ParticleSettings'].child_radius=1.0
    22	bpy.data.particles['ParticleSettings'].count=2000
    23	bpy.data.particles['ParticleSettings'].rendered_child_count=100
    24	
    25	path='Proton.obj'
    26	bpy.ops.import_scene.obj(filepath=path)
    27	s=0.0017
    28	bpy.ops.transform.resize(value=(s,s,s))
    29	
    30	bpy.data.lamps['Lamp'].distance=1000
    31	bpy.data.lamps['Lamp'].type='SUN'
    32	
    33	EOL
    34	blender -P /tmp/tmp.py

23行目までは、草原の作成です、パーティクルのヘアで草原を表現しています。
25〜28行目が、OBJファイルのインポートです。ロケットが巨大過ぎるため、かなり縮小しています。

実行して、レンダリングすれば、このように草原に立つロケットが見られます。
bl-rocket-001

Leave a Reply

Your email address will not be published. Required fields are marked *

CAPTCHA