Google ビルディングメーカーで作ってみた

茜丸@昼勤務 | 2009年10月16日

SeaGate Blogさんのように、建物が造れたらと語ったのは遠い3年ほどまえの話になりますでしょうか?あれ以来、それなりにモデルデータを作るという技術に関しては、全くではないのですが、まぁ、正直言って粘土細工に [...]

Start uga_insert_html_once: head, Footer hooked: HTML inserted: Location is HEAD Start uga_get_option: footer_hooked uga_options: array ( 'version_sent' => '1.6.0', 'advanced_config' => true, 'account_id' => 'UA-159521-2', 'internal_domains' => 'virtual.haru.gs', 'max_user_level' => '8', 'prefix_ext_links' => '/outgoing/', 'prefix_mail_links' => '/mailto/', 'prefix_file_links' => '/ge/wp-content/uploads', 'track_extensions' => 'kmz,kml', 'enable_tracker' => true, 'filter_content' => true, 'filter_comments' => true, 'filter_comment_authors' => true, 'track_adm_pages' => true, 'track_ext_links' => true, 'track_mail_links' => true, 'track_files' => true, 'ignore_users' => true, 'debug' => true, 'check_updates' => true, 'footer_hooked' => true, ) Ending uga_get_option: footer_hooked (1) End uga_insert_html Ending uga_wp_head_track: Start uga_filter:

;-) queenstowerSeaGate Blogさんのように、建物が造れたらと語ったのは遠い3年ほどまえの話になりますでしょうか?あれ以来、それなりにモデルデータを作るという技術に関しては、全くではないのですが、まぁ、正直言って粘土細工に毛が生えた程度の進歩しかしていない自分ですが、そんな自分でもそれなりにビルが作れてしまうツールが登場しました。その名も :-oGoogle ビルディングメーカー」です。

このビルディングメーカーなのですが、そうはいっても、超簡単とまではいきません。たしかに扱いは簡単の部類に入りますし、テクスチャも用意してくれます。また、ブロックを配置すると自動的にテクスチャが貼られますので、こちらはただただ粘土をこねるが如く、ブロックをいじるだけなのですが、問題はこれが難しい。

単純な真四角なビルだったらよかったのですが、馬鹿なことに横浜のクイーンズタワーに挑戦した結果、スクリーンショットのような形になりました。一見すると、良くできているかのように見えます。ですが、それは大きな間違いです。よーーーくみると、角に変な角度が付いていたり、わけのわからない段差が付いていたり、ビルにあり得ない切れ目があったり。よく見える角度からスクリーンショット取っただけというハリボテ仕様になっています。いやぁSeaGate Blogさんってやっぱりスゴイって感じました。

Start uga_in_feed Ending uga_in_feed: Start uga_track_user Start uga_get_option: ignore_users uga_options: array ( 'version_sent' => '1.6.0', 'advanced_config' => true, 'account_id' => 'UA-159521-2', 'internal_domains' => 'virtual.haru.gs', 'max_user_level' => '8', 'prefix_ext_links' => '/outgoing/', 'prefix_mail_links' => '/mailto/', 'prefix_file_links' => '/ge/wp-content/uploads', 'track_extensions' => 'kmz,kml', 'enable_tracker' => true, 'filter_content' => true, 'filter_comments' => true, 'filter_comment_authors' => true, 'track_adm_pages' => true, 'track_ext_links' => true, 'track_mail_links' => true, 'track_files' => true, 'ignore_users' => true, 'debug' => true, 'check_updates' => true, 'footer_hooked' => true, ) Ending uga_get_option: ignore_users (1) Start uga_get_option: max_user_level uga_options: array ( 'version_sent' => '1.6.0', 'advanced_config' => true, 'account_id' => 'UA-159521-2', 'internal_domains' => 'virtual.haru.gs', 'max_user_level' => '8', 'prefix_ext_links' => '/outgoing/', 'prefix_mail_links' => '/mailto/', 'prefix_file_links' => '/ge/wp-content/uploads', 'track_extensions' => 'kmz,kml', 'enable_tracker' => true, 'filter_content' => true, 'filter_comments' => true, 'filter_comment_authors' => true, 'track_adm_pages' => true, 'track_ext_links' => true, 'track_mail_links' => true, 'track_files' => true, 'ignore_users' => true, 'debug' => true, 'check_updates' => true, 'footer_hooked' => true, ) Ending uga_get_option: max_user_level (8) Tracking user with level Ending uga_track_user: 1 Calling preg_replace_callback: ]*?)href\s*=\s*['"](.*?)['"]([^>]*)>(.*?) Start uga_preg_callback: Array Get tracker for full url Start uga_track_full_url: virtual.haru.gs/ge/wp-content/uploads/queenstower.jpg Start uga_is_url_internal: virtual.haru.gs/ge/wp-content/uploads/queenstower.jpg Start uga_get_option: internal_domains uga_options: array ( 'version_sent' => '1.6.0', 'advanced_config' => true, 'account_id' => 'UA-159521-2', 'internal_domains' => 'virtual.haru.gs', 'max_user_level' => '8', 'prefix_ext_links' => '/outgoing/', 'prefix_mail_links' => '/mailto/', 'prefix_file_links' => '/ge/wp-content/uploads', 'track_extensions' => 'kmz,kml', 'enable_tracker' => true, 'filter_content' => true, 'filter_comments' => true, 'filter_comment_authors' => true, 'track_adm_pages' => true, 'track_ext_links' => true, 'track_mail_links' => true, 'track_files' => true, 'ignore_users' => true, 'debug' => true, 'check_updates' => true, 'footer_hooked' => true, ) Ending uga_get_option: internal_domains (virtual.haru.gs) Checking hostname virtual.haru.gs Match found, url is internal Ending uga_is_url_internal: 1 Get tracker for internal URL Start uga_track_internal_url: virtual.haru.gs/ge/wp-content/uploads/queenstower.jpg, Start uga_get_option: track_files uga_options: array ( 'version_sent' => '1.6.0', 'advanced_config' => true, 'account_id' => 'UA-159521-2', 'internal_domains' => 'virtual.haru.gs', 'max_user_level' => '8', 'prefix_ext_links' => '/outgoing/', 'prefix_mail_links' => '/mailto/', 'prefix_file_links' => '/ge/wp-content/uploads', 'track_extensions' => 'kmz,kml', 'enable_tracker' => true, 'filter_content' => true, 'filter_comments' => true, 'filter_comment_authors' => true, 'track_adm_pages' => true, 'track_ext_links' => true, 'track_mail_links' => true, 'track_files' => true, 'ignore_users' => true, 'debug' => true, 'check_updates' => true, 'footer_hooked' => true, ) Ending uga_get_option: track_files (1) Tracking files enabled Start uga_get_option: track_extensions uga_options: array ( 'version_sent' => '1.6.0', 'advanced_config' => true, 'account_id' => 'UA-159521-2', 'internal_domains' => 'virtual.haru.gs', 'max_user_level' => '8', 'prefix_ext_links' => '/outgoing/', 'prefix_mail_links' => '/mailto/', 'prefix_file_links' => '/ge/wp-content/uploads', 'track_extensions' => 'kmz,kml', 'enable_tracker' => true, 'filter_content' => true, 'filter_comments' => true, 'filter_comment_authors' => true, 'track_adm_pages' => true, 'track_ext_links' => true, 'track_mail_links' => true, 'track_files' => true, 'ignore_users' => true, 'debug' => true, 'check_updates' => true, 'footer_hooked' => true, ) Ending uga_get_option: track_extensions (kmz,kml) Checking file extension kmz Checking file extension kml Ending uga_track_internal_url: Ending uga_track_full_url: Ending uga_preg_callback: queenstower Start uga_preg_callback: Array Get tracker for full url Start uga_track_full_url: pub.ne.jp/seagate/ Start uga_is_url_internal: pub.ne.jp/seagate/ Start uga_get_option: internal_domains uga_options: array ( 'version_sent' => '1.6.0', 'advanced_config' => true, 'account_id' => 'UA-159521-2', 'internal_domains' => 'virtual.haru.gs', 'max_user_level' => '8', 'prefix_ext_links' => '/outgoing/', 'prefix_mail_links' => '/mailto/', 'prefix_file_links' => '/ge/wp-content/uploads', 'track_extensions' => 'kmz,kml', 'enable_tracker' => true, 'filter_content' => true, 'filter_comments' => true, 'filter_comment_authors' => true, 'track_adm_pages' => true, 'track_ext_links' => true, 'track_mail_links' => true, 'track_files' => true, 'ignore_users' => true, 'debug' => true, 'check_updates' => true, 'footer_hooked' => true, ) Ending uga_get_option: internal_domains (virtual.haru.gs) Checking hostname virtual.haru.gs Ending uga_is_url_internal: Get tracker for external URL Start uga_track_external_url: pub.ne.jp/seagate/ Start uga_get_option: track_ext_links uga_options: array ( 'version_sent' => '1.6.0', 'advanced_config' => true, 'account_id' => 'UA-159521-2', 'internal_domains' => 'virtual.haru.gs', 'max_user_level' => '8', 'prefix_ext_links' => '/outgoing/', 'prefix_mail_links' => '/mailto/', 'prefix_file_links' => '/ge/wp-content/uploads', 'track_extensions' => 'kmz,kml', 'enable_tracker' => true, 'filter_content' => true, 'filter_comments' => true, 'filter_comment_authors' => true, 'track_adm_pages' => true, 'track_ext_links' => true, 'track_mail_links' => true, 'track_files' => true, 'ignore_users' => true, 'debug' => true, 'check_updates' => true, 'footer_hooked' => true, ) Ending uga_get_option: track_ext_links (1) Tracking external links enabled Start uga_get_option: prefix_ext_links uga_options: array ( 'version_sent' => '1.6.0', 'advanced_config' => true, 'account_id' => 'UA-159521-2', 'internal_domains' => 'virtual.haru.gs', 'max_user_level' => '8', 'prefix_ext_links' => '/outgoing/', 'prefix_mail_links' => '/mailto/', 'prefix_file_links' => '/ge/wp-content/uploads', 'track_extensions' => 'kmz,kml', 'enable_tracker' => true, 'filter_content' => true, 'filter_comments' => true, 'filter_comment_authors' => true, 'track_adm_pages' => true, 'track_ext_links' => true, 'track_mail_links' => true, 'track_files' => true, 'ignore_users' => true, 'debug' => true, 'check_updates' => true, 'footer_hooked' => true, ) Ending uga_get_option: prefix_ext_links (/outgoing/) Ending uga_track_external_url: pub.ne.jp/seagate/ Ending uga_track_full_url: /outgoing/pub.ne.jp/seagate/ Adding onclick attribute for /outgoing/pub.ne.jp/seagate/ Ending uga_preg_callback: SeaGate Blog Start uga_preg_callback: Array Get tracker for full url Start uga_track_full_url: sketchup.google.com/3dwh/buildingmaker.html Start uga_is_url_internal: sketchup.google.com/3dwh/buildingmaker.html Start uga_get_option: internal_domains uga_options: array ( 'version_sent' => '1.6.0', 'advanced_config' => true, 'account_id' => 'UA-159521-2', 'internal_domains' => 'virtual.haru.gs', 'max_user_level' => '8', 'prefix_ext_links' => '/outgoing/', 'prefix_mail_links' => '/mailto/', 'prefix_file_links' => '/ge/wp-content/uploads', 'track_extensions' => 'kmz,kml', 'enable_tracker' => true, 'filter_content' => true, 'filter_comments' => true, 'filter_comment_authors' => true, 'track_adm_pages' => true, 'track_ext_links' => true, 'track_mail_links' => true, 'track_files' => true, 'ignore_users' => true, 'debug' => true, 'check_updates' => true, 'footer_hooked' => true, ) Ending uga_get_option: internal_domains (virtual.haru.gs) Checking hostname virtual.haru.gs Ending uga_is_url_internal: Get tracker for external URL Start uga_track_external_url: sketchup.google.com/3dwh/buildingmaker.html Start uga_get_option: track_ext_links uga_options: array ( 'version_sent' => '1.6.0', 'advanced_config' => true, 'account_id' => 'UA-159521-2', 'internal_domains' => 'virtual.haru.gs', 'max_user_level' => '8', 'prefix_ext_links' => '/outgoing/', 'prefix_mail_links' => '/mailto/', 'prefix_file_links' => '/ge/wp-content/uploads', 'track_extensions' => 'kmz,kml', 'enable_tracker' => true, 'filter_content' => true, 'filter_comments' => true, 'filter_comment_authors' => true, 'track_adm_pages' => true, 'track_ext_links' => true, 'track_mail_links' => true, 'track_files' => true, 'ignore_users' => true, 'debug' => true, 'check_updates' => true, 'footer_hooked' => true, ) Ending uga_get_option: track_ext_links (1) Tracking external links enabled Start uga_get_option: prefix_ext_links uga_options: array ( 'version_sent' => '1.6.0', 'advanced_config' => true, 'account_id' => 'UA-159521-2', 'internal_domains' => 'virtual.haru.gs', 'max_user_level' => '8', 'prefix_ext_links' => '/outgoing/', 'prefix_mail_links' => '/mailto/', 'prefix_file_links' => '/ge/wp-content/uploads', 'track_extensions' => 'kmz,kml', 'enable_tracker' => true, 'filter_content' => true, 'filter_comments' => true, 'filter_comment_authors' => true, 'track_adm_pages' => true, 'track_ext_links' => true, 'track_mail_links' => true, 'track_files' => true, 'ignore_users' => true, 'debug' => true, 'check_updates' => true, 'footer_hooked' => true, ) Ending uga_get_option: prefix_ext_links (/outgoing/) Ending uga_track_external_url: sketchup.google.com/3dwh/buildingmaker.html Ending uga_track_full_url: /outgoing/sketchup.google.com/3dwh/buildingmaker.html Adding onclick attribute for /outgoing/sketchup.google.com/3dwh/buildingmaker.html Ending uga_preg_callback: Google ビルディングメーカー Ending uga_filter:

;-) queenstowerSeaGate Blogさんのように、建物が造れたらと語ったのは遠い3年ほどまえの話になりますでしょうか?あれ以来、それなりにモデルデータを作るという技術に関しては、全くではないのですが、まぁ、正直言って粘土細工に毛が生えた程度の進歩しかしていない自分ですが、そんな自分でもそれなりにビルが作れてしまうツールが登場しました。その名も :-oGoogle ビルディングメーカー」です。

このビルディングメーカーなのですが、そうはいっても、超簡単とまではいきません。たしかに扱いは簡単の部類に入りますし、テクスチャも用意してくれます。また、ブロックを配置すると自動的にテクスチャが貼られますので、こちらはただただ粘土をこねるが如く、ブロックをいじるだけなのですが、問題はこれが難しい。

単純な真四角なビルだったらよかったのですが、馬鹿なことに横浜のクイーンズタワーに挑戦した結果、スクリーンショットのような形になりました。一見すると、良くできているかのように見えます。ですが、それは大きな間違いです。よーーーくみると、角に変な角度が付いていたり、わけのわからない段差が付いていたり、ビルにあり得ない切れ目があったり。よく見える角度からスクリーンショット取っただけというハリボテ仕様になっています。いやぁSeaGate Blogさんってやっぱりスゴイって感じました。

Start uga_filter:

SeaGate Blogさんのように、建物が造れたらと語ったのは遠い3年ほどまえの話になりますでしょうか?あれ以来、それなりにモデルデータを作るという技術に関しては、全くではないのですが、まぁ、正直言って粘土細工に [...]

Start uga_in_feed Ending uga_in_feed: Start uga_track_user Start uga_get_option: ignore_users uga_options: array ( 'version_sent' => '1.6.0', 'advanced_config' => true, 'account_id' => 'UA-159521-2', 'internal_domains' => 'virtual.haru.gs', 'max_user_level' => '8', 'prefix_ext_links' => '/outgoing/', 'prefix_mail_links' => '/mailto/', 'prefix_file_links' => '/ge/wp-content/uploads', 'track_extensions' => 'kmz,kml', 'enable_tracker' => true, 'filter_content' => true, 'filter_comments' => true, 'filter_comment_authors' => true, 'track_adm_pages' => true, 'track_ext_links' => true, 'track_mail_links' => true, 'track_files' => true, 'ignore_users' => true, 'debug' => true, 'check_updates' => true, 'footer_hooked' => true, ) Ending uga_get_option: ignore_users (1) Start uga_get_option: max_user_level uga_options: array ( 'version_sent' => '1.6.0', 'advanced_config' => true, 'account_id' => 'UA-159521-2', 'internal_domains' => 'virtual.haru.gs', 'max_user_level' => '8', 'prefix_ext_links' => '/outgoing/', 'prefix_mail_links' => '/mailto/', 'prefix_file_links' => '/ge/wp-content/uploads', 'track_extensions' => 'kmz,kml', 'enable_tracker' => true, 'filter_content' => true, 'filter_comments' => true, 'filter_comment_authors' => true, 'track_adm_pages' => true, 'track_ext_links' => true, 'track_mail_links' => true, 'track_files' => true, 'ignore_users' => true, 'debug' => true, 'check_updates' => true, 'footer_hooked' => true, ) Ending uga_get_option: max_user_level (8) Tracking user with level Ending uga_track_user: 1 Calling preg_replace_callback: ]*?)href\s*=\s*['"](.*?)['"]([^>]*)>(.*?) Ending uga_filter:

SeaGate Blogさんのように、建物が造れたらと語ったのは遠い3年ほどまえの話になりますでしょうか?あれ以来、それなりにモデルデータを作るという技術に関しては、全くではないのですが、まぁ、正直言って粘土細工に [...]

Start uga_wp_footer_track: Start uga_get_tracker Start uga_in_feed Ending uga_in_feed: Start uga_track_user Start uga_get_option: ignore_users uga_options: array ( 'version_sent' => '1.6.0', 'advanced_config' => true, 'account_id' => 'UA-159521-2', 'internal_domains' => 'virtual.haru.gs', 'max_user_level' => '8', 'prefix_ext_links' => '/outgoing/', 'prefix_mail_links' => '/mailto/', 'prefix_file_links' => '/ge/wp-content/uploads', 'track_extensions' => 'kmz,kml', 'enable_tracker' => true, 'filter_content' => true, 'filter_comments' => true, 'filter_comment_authors' => true, 'track_adm_pages' => true, 'track_ext_links' => true, 'track_mail_links' => true, 'track_files' => true, 'ignore_users' => true, 'debug' => true, 'check_updates' => true, 'footer_hooked' => true, ) Ending uga_get_option: ignore_users (1) Start uga_get_option: max_user_level uga_options: array ( 'version_sent' => '1.6.0', 'advanced_config' => true, 'account_id' => 'UA-159521-2', 'internal_domains' => 'virtual.haru.gs', 'max_user_level' => '8', 'prefix_ext_links' => '/outgoing/', 'prefix_mail_links' => '/mailto/', 'prefix_file_links' => '/ge/wp-content/uploads', 'track_extensions' => 'kmz,kml', 'enable_tracker' => true, 'filter_content' => true, 'filter_comments' => true, 'filter_comment_authors' => true, 'track_adm_pages' => true, 'track_ext_links' => true, 'track_mail_links' => true, 'track_files' => true, 'ignore_users' => true, 'debug' => true, 'check_updates' => true, 'footer_hooked' => true, ) Ending uga_get_option: max_user_level (8) Tracking user with level Ending uga_track_user: 1 Start uga_get_option: account_id uga_options: array ( 'version_sent' => '1.6.0', 'advanced_config' => true, 'account_id' => 'UA-159521-2', 'internal_domains' => 'virtual.haru.gs', 'max_user_level' => '8', 'prefix_ext_links' => '/outgoing/', 'prefix_mail_links' => '/mailto/', 'prefix_file_links' => '/ge/wp-content/uploads', 'track_extensions' => 'kmz,kml', 'enable_tracker' => true, 'filter_content' => true, 'filter_comments' => true, 'filter_comment_authors' => true, 'track_adm_pages' => true, 'track_ext_links' => true, 'track_mail_links' => true, 'track_files' => true, 'ignore_users' => true, 'debug' => true, 'check_updates' => true, 'footer_hooked' => true, ) Ending uga_get_option: account_id (UA-159521-2) Ending uga_get_tracker: Start uga_insert_html_once: footer, Footer hooked: HTML inserted: Location is FOOTER Inserting HTML End uga_insert_html Ending uga_wp_footer_track: Start uga_shutdown Start uga_in_feed Ending uga_in_feed: Start uga_track_user Start uga_get_option: ignore_users uga_options: array ( 'version_sent' => '1.6.0', 'advanced_config' => true, 'account_id' => 'UA-159521-2', 'internal_domains' => 'virtual.haru.gs', 'max_user_level' => '8', 'prefix_ext_links' => '/outgoing/', 'prefix_mail_links' => '/mailto/', 'prefix_file_links' => '/ge/wp-content/uploads', 'track_extensions' => 'kmz,kml', 'enable_tracker' => true, 'filter_content' => true, 'filter_comments' => true, 'filter_comment_authors' => true, 'track_adm_pages' => true, 'track_ext_links' => true, 'track_mail_links' => true, 'track_files' => true, 'ignore_users' => true, 'debug' => true, 'check_updates' => true, 'footer_hooked' => true, ) Ending uga_get_option: ignore_users (1) Start uga_get_option: max_user_level uga_options: array ( 'version_sent' => '1.6.0', 'advanced_config' => true, 'account_id' => 'UA-159521-2', 'internal_domains' => 'virtual.haru.gs', 'max_user_level' => '8', 'prefix_ext_links' => '/outgoing/', 'prefix_mail_links' => '/mailto/', 'prefix_file_links' => '/ge/wp-content/uploads', 'track_extensions' => 'kmz,kml', 'enable_tracker' => true, 'filter_content' => true, 'filter_comments' => true, 'filter_comment_authors' => true, 'track_adm_pages' => true, 'track_ext_links' => true, 'track_mail_links' => true, 'track_files' => true, 'ignore_users' => true, 'debug' => true, 'check_updates' => true, 'footer_hooked' => true, ) Ending uga_get_option: max_user_level (8) Tracking user with level Ending uga_track_user: 1 Footer hook was executed Start uga_get_option: footer_hooked uga_options: array ( 'version_sent' => '1.6.0', 'advanced_config' => true, 'account_id' => 'UA-159521-2', 'internal_domains' => 'virtual.haru.gs', 'max_user_level' => '8', 'prefix_ext_links' => '/outgoing/', 'prefix_mail_links' => '/mailto/', 'prefix_file_links' => '/ge/wp-content/uploads', 'track_extensions' => 'kmz,kml', 'enable_tracker' => true, 'filter_content' => true, 'filter_comments' => true, 'filter_comment_authors' => true, 'track_adm_pages' => true, 'track_ext_links' => true, 'track_mail_links' => true, 'track_files' => true, 'ignore_users' => true, 'debug' => true, 'check_updates' => true, 'footer_hooked' => true, ) Ending uga_get_option: footer_hooked (1) Start uga_get_option: debug uga_options: array ( 'version_sent' => '1.6.0', 'advanced_config' => true, 'account_id' => 'UA-159521-2', 'internal_domains' => 'virtual.haru.gs', 'max_user_level' => '8', 'prefix_ext_links' => '/outgoing/', 'prefix_mail_links' => '/mailto/', 'prefix_file_links' => '/ge/wp-content/uploads', 'track_extensions' => 'kmz,kml', 'enable_tracker' => true, 'filter_content' => true, 'filter_comments' => true, 'filter_comment_authors' => true, 'track_adm_pages' => true, 'track_ext_links' => true, 'track_mail_links' => true, 'track_files' => true, 'ignore_users' => true, 'debug' => true, 'check_updates' => true, 'footer_hooked' => true, ) Ending uga_get_option: debug (1) -->