2007年8月31日
PHPで簡単に3D画像作成!
最近、特に何もしてないのにやたら日焼けしているらしい中川です。
PHPで3D画像を簡単に作成することができるライブラリ
「PEAR::Image_3D」を紹介します。
3D画像をつくるとなるといろいろと面倒だったりするものですが、
このライブラリを使えば比較的簡単に3D画 像を作成することができます。
現在、「PEAR::Image_3D」はver0.4.0のalpha版で提供されています。
マニュアルがなかったり、動作に不安がありますが、
サンプルファイルがたくさんあるので、よく動作確認してから利用してください。
インストールはpearコマンドで行えます。
(PHPはGDを使えるようにしておいてください。)
# pear install Image_3D-alpha
それでは早速、サンプルをちょっと編集したもので動作を確認してみましょう。
<?php
set_time_limit(0);
require_once('Image/3D.php');
$world = new Image_3D();
$world->setColor(new Image_3D_Color(255, 255, 255));
$light = $world->createLight('Light', array(-400, -50, -100));
$light->setColor(new Image_3D_Color(255, 255, 255));
$text = $world->createObject('text', 'PHPpro-TIPS');
$text->setColor(new Image_3D_Color(0, 200, 255));
$text->transform($world->createMatrix('Rotation', array(0, 40, 0)));
$text->transform($world->createMatrix('Move', array(-30, 0, 0)));
$text->transform($world->createMatrix('Scale', array(3, 3, 3)));
$world->setOption(Image_3D::IMAGE_3D_OPTION_BF_CULLING, false);
$world->setOption(Image_3D::IMAGE_3D_OPTION_FILLED, true);
$world->createRenderer('perspectively');
$world->createDriver('GD');
$filename = "phppro.png";
$world->render(300, 50, $filename);
header("Content-Type: image/png");
readfile($filename);
exit;
?>
このように、簡単に3D画像を作ることができます。
他にも、サンプルには次のような画像を作成するスクリプトがあります。
まだマニュアルはそろっていないみたいようなので、
サンプルコードを見たり、実際のソースコードを確認しながら使ってみて下さい。
PHPで3D画像が作成できるということで、中々、便利なライブラリではないでしょうか。