ソフトウェア開発の最近のブログ記事

フライトシミュレータの開発(男のロマン)

現在、田中ゼミのYR君がフライトシミュレータの開発を進めています。
本格的な操縦桿やペダル、シートまで用意しています。
この気合の入りようが分かるでしょうか?

今年の田中ゼミのテーマは「のロマン」だそうです。
cockpit.jpg


























こちらは開発中の画面です。
VS画面キャプチャ.jpg





















今回の記事が面白いと思った方は以下のボタンをクリックして下さい.

 人気ブログランキングへ にほんブログ村 大学生日記ブログ ゼミ・サークルへ



長野大学の企業情報学部は、オープンソース系のシステムを用いたソフトウェア開発が得意分野なのですが、
意外と知られていません。

たとえば、田中ゼミはCGや画像処理ばかりやっていると思われがちなのですが(そういう人もいますが)、
実はオープンソース系のシステム開発にも力を入れています。

そのため田中ゼミでは、「CGとかデザインセンスは無いけど、プログラムはメチャクチャ得意」っていう人がいます。
もちろん、「CGを制作するのは得意だけど、プログラムは全然ダメ」という人も多いのですが...

というわけで、大学の教育・研究の方のWebページで、そういったオープンソース系システム開発の活動を紹介したページが開設されました。

まだ作成途上のページのようですが、そちらでも田中ゼミの活躍が掲載されていますので、以下のリンクからご覧下さい。



また、引き続き「次世代3DCGプロジェクト」のページもよろしくお願い致します。


FreeBSD.jpg



























今回の記事が面白いと思った方は以下のボタンをクリックして下さい.

 人気ブログランキングへ にほんブログ村 大学生日記ブログ ゼミ・サークルへ



Ubuntu Linuxの試験的導入(新OSでの開発環境の構築)

先日の記事で、田中ゼミで開発しているソフトウェアをNVIDIA社のCUDAに移植していかなければならないという話をしました。

この画像は後述するLinuxシステム上でCUDAのデモを実行している様子をキャプチャしたものです。
煙のオブジェクトがリアルタイムに動いています。
田中ゼミで開発しているシステムを改良して、より高速に高精細な3DCGを生成するためには、このCUDAは非常に強力なツールになりそうです。

100815cuda.jpg



















このとき問題となるのが、開発環境をどうやって構築していくのか、ということです。
田中ゼミでは主たる開発環境として、OSFreeBSDを使っていますが、CUDAの開発環境を構築するにはOSをWindowsかLinuxに移行する必要が出てきます。

開発環境の移行というものは、単に新しいOSをインストールして終わり、とか、新しいOS上で今開発しているソフトウェアを移植して終わり、というわけにはいかず実は大変な労力が伴います。

開発環境を移行することで発生するであろう大きな問題点は、以下のようにたくさんあります。
特に田中ゼミでは長年かけて開発環境を熟成させてきているので、新しい環境への移行にはいろいろと問題が発生する可能性があります。

  • 今まで開発してきたソフトウェアが問題なく動くかどうか?
  • 今まで使っていた開発ツールが新しい環境でも全て揃うかどうか?、また、同じ動作をするのか?
  • ソフトウェア作成時にAPI(Application Program Interface)と呼ばれるOS側の機能呼び出しが同様なものを持っているのか?、あるいは同様な動作をしてくれるのか?
  • ソフトウェアやデータが保存される場所がどこに移動するのか?
  • 今まで開発してきたソフトウェアが新しい環境で安定して動作してくれるのか?
  • トラブルが発生した場合に対処方法はどの程度変わるのか?また、すぐに対処できるのか?
と、考えればキリがありません。

まぁ、ゴチャゴチャ考えていても仕方ないので、とりあえず試験的に Ubuntu Linux を田中ゼミのPCにインストールしてみました。
インストールしたバージョンは、10.04LTS 64bit版です。

通常の使用であれば、32bit版をインストールすべきなのですが、田中ゼミではギガバイト単位の巨大な高精細画像データや形状データを扱うため、32bitのOSだとアドレス空間が足りません。
そのため、本年度田中ゼミでは、全てのOSを64bitに移行しました。

そういうことですので、Ubuntu も64bit版です。

ただ、そうすると日本語の設定やFlash等通常使うソフトウェアの設定が面倒になりますが、今回は仕方ありません。とりあえず、頑張ってみます。

Ubuntu Linuxは現在のLinuxのディストリビューションの中でもっとも人気のあるものです。Ubuntuを選択した理由としては、環境構築が簡単だということと、ユーザ数が多いということです。
特にユーザ数が多いということは、いろいろな不具合も解決されている可能性が高く、いろいろと利点が多いだろうと考えたからです。

とりあえず、Ubuntuを田中ゼミ仕様に設定していきます。

こういった作業が終了すれば、暫定的に田中ゼミ仕様の開発環境が出来上がります。


インストールと各種設定が終わったLinuxシステムに田中ゼミが開発しているレイトレーシングシステムを移植してみました。
このシステムはOpenGL+GLSLで記述しています。とりあえず、問題なく動いているようです。
100815desktop.jpg



















さらにデジタルコスメが開発している人間の肌の3DCG生成システムを移植して実行してみました。
こちらも問題なく動いているようです。
※2010年9月5日追記(実は、後で速度面に問題があることが分かりました。
以下の画像が、その結果です。人間の3DCG(肌の3DCG)が綺麗に生成されているのがわかるでしょうか。
100815face.jpg






























と、以上のようにUbuntu Linuxの試験導入はほぼ問題なくできました。
とは言っても、細かい部分ではトラブったのですが、そういう部分は次回以降機会があれば、ご紹介いたします。


 

今回の記事が面白いと思った方は以下のボタンをクリックして下さい.

 人気ブログランキングへ にほんブログ村 大学生日記ブログ ゼミ・サークルへ 

GPUを用いた3DCGプログラミング

田中ゼミではGPUを用いてリアルタイムに3DCGを生成するプログラムを

開発しています.

といっても何のことかわからないと思いますので,

細かいところは気にせず,まずはどんなCGを作成しているか見て下さい.

kao-CG.jpg

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


田中ゼミで開発したソフトウェアで再現した人間の3DCG(田中法博ゼミ デジタルコスメチーム作成)

 

どうです? リアルな人の顔のCGでしょ?

このブログ上の画像は,我々が開発したソフトウェアの実行結果をキャプチャして画像を

貼り付けていますので動きませんが,実際にはリアルタイム3DCGなので

マウスでグリグリ見る方向を変えたり光の当て方をリアルタイムに変えていくことができます.

実際にCGが動いている様子が見たい人がいたら田中ゼミまで来てみてください。


パソコンで3Dゲームをする人は,NVIDIA社のGeForceとか AMD社(旧ATI)のRadeonと

かっていうグラフィックスカードを,ご存じだと思いますが,快適にきれいな3Dゲームを

実行できるかどうかはこういったグラフィックスカードの性能に依存します.

このGeForceとかRadeonというものは,いわゆるGPU(Graphics Processing Unit)と

呼ばれるグラフィックス専用のハードウェアのことです.

 

田中ゼミではこういったGPUを使って,美術品や人間の肌をリアルに3DCG再現するための

ソフトウェアを開発しています.

GPU上のプログラムは専用のプログラム言語で記述しなければならないのですが,

田中ゼミでは,パソコン側ではC言語でプログラムを書き,GPU上ではGLSL(OpenGL Shading

Language)という言語でプログラムを書きます.

基本的にはFreeBSDといったオープンソースな開発環境でソフトウェア開発を

行っています.

 

今後,このブログ上でそういった技術を少しずつご紹介していきたいと思います.

興味のある人は,このブログをちょくちょくチェックして下さい. 

人気ブログランキングへ にほんブログ村 大学生日記ブログ ゼミ・サークルへ

 

 

カテゴリ「ソフトウェア開発」を追加しました。

このカテゴリではソフトウェア開発に関する技術的な話題を書き込んでいきたいと
思います。

まず遅ればせながら、田中ゼミのソフトウェア開発環境のご紹介をしたいと思います。

田中ゼミでは、ソフトウェア開発のテーマを選ぶと年間を通して膨大な量の
プログラムを作成することになります。
そうじゃない人もいますが。

このカテゴリでは、その田中ゼミのソフトウェア開発に関しての
門外不出(オーバーでごめんなさい)の技術的な内容を
ご披露させていただきたいと思います。

まず最初は開発環境として

田中ゼミでは、Windowsだけでなく、FreeBSDというunix系のオープンソースOSを
メインの開発環境として使用しています。
FreeBSDというOSは聞いたことが無い人が多いかも知れませんが、自分たちでサーバ構築したり、
ソフトウェア開発環境を整えるには非常に強力なものです。
(Linuxは聞いたことある人が多いと思いますが、似たようなものだと思って下さい)

田中ゼミでは、年度の最初に自分たちの目的にあったパーツを選定してPCを自作します。
パーツの購入にはけっこうな費用がかかるので、田中先生が「お金がない~」って
騒ぐのはまずこの時期です。

自分たちで作ったPCに、今度はFreeBSDをインストールしてソフトウェア開発環境を
自力で構築します。

これが最初の難関ですが、ここまででコンピュータの構造やネットワークの仕組み、
OSの概要などといった知識が身につくので、けっこう実力が身についたことを実感できます。

だけど、これは始まりに過ぎません...



人気ブログランキングへ
1

このアーカイブについて

このページには、過去に書かれたブログ記事のうちソフトウェア開発カテゴリに属しているものが含まれています。

前のカテゴリはその他です。

次のカテゴリは技術情報です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

長野大学公式サイトへ