質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

3DCG

コンピュータの演算により、3次元空間の仮想物体を、2次元平面上で表現する手法である。

WebGL

WebGL(ウェブジーエル)は、ウェブブラウザで 3次元コンピュータグラフィックスを表示させるための標準仕様です。

Q&A

解決済

3回答

10899閲覧

3Dプログラミングを学びたい

退会済みユーザー

退会済みユーザー

総合スコア0

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

3DCG

コンピュータの演算により、3次元空間の仮想物体を、2次元平面上で表現する手法である。

WebGL

WebGL(ウェブジーエル)は、ウェブブラウザで 3次元コンピュータグラフィックスを表示させるための標準仕様です。

0グッド

2クリップ

投稿2015/08/25 06:37

編集2015/08/25 23:49

3Dプログラミングの勉強をはじめたいです。

まわりの知人たちに訪ねてみたところ、Unityを推されたのですが、
私はあまりゲーム制作に興味がもてません。

Unityといえば、ゲームをつくるためにあるというイメージが強くあるのですが、
一方、Unityをゲーム以外にも活用している事例などもあると耳にします。
具体的にUnityのゲーム以外の活用例をご存知でしたら、どんなものがあるのか教えて頂きたいです。

私は主にメディアアートの分野に興味があり、恥ずかしながら将来的にはライゾマティクスやPARTYのような、いわゆるカッコイイ系のインタラクティブコンテンツの制作に携わりたいと考えています。
そのため、表現手法として、3Dプログラミングを学びたいと考えています。3Dプログラミングを初心者からはじめたい人にとって、おすすめの言語やツールをお教え頂きたいです。

・WebGL(three.js)
・Processing

程度であれば、少しだけかじったことがあります。


みなさん、本当にためになる意見を頂き、ありがとうございました!
決めるのが難しかったのですが、最も具体度の高い回答をくださったpikovoltさんにベストアンサーをしました!

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

たぶん挙げている集団の作品を考えると、ツールというか重要な部分はC++とかで自作じゃないでしょうか。
(ものによって、MAXやLiveで同期取ったりはしているかもしれませんが)

自作の全部入り系という意味ではopenFrameworksがお勧めです。
C++のライブラリなのでC++を覚える必要がありますが、いろんな機能を連携させるのを主眼にしたフレームワーク作りが行われています。

ただ個人的にはCycling'74のMAXを面白がれるなら、アリかも。と思います。かなりアカデミックな分野に近いところの技術になりますが、いろいろなモジュールを連動させる系統としては歴史のあるソフトです。
体験版で試してみるか、同じ系統のPureDataを使ってみることをお勧めします。
こっちも、自分でオブジェクトを作り始めるにはC++が必要になってきます。
あと音楽を連動させる場合は、Ableton Live 及び Max for Liveもお勧めです。

あと3Dソフトですが、Blenderの使い方くらいは覚えた方が良いです。
なにかデータを表示させたい場合に、計算で自動生成した幾何学模様しか出なくてもよければソフト不要と言えますが…普通なにかの形状を表示させたりすると思うので。
標準でどんなデータ形式が扱えて、UIでどんな操作ができるのか、くらいは最低限知っておきましょう。

ところで、
質問者さんの挙げているクリエイティブ系の分野だと、1人でどうこう考える前にまずは同好の士を求めた方が良いと思います。
もし学生さんでしたら、そういう人が集まる大学を探してその大学に必要な基本スキルと、自分の好きな分野をはっきりさせるのが先です。尖った奴らと意見を戦わせて、自分の土台をしっかり固める中で必要なスキルとして3DCG技術が必要な状況でしたら、僕は先に挙げたようなフレームワークやツールをお勧めします。

投稿2015/08/25 12:17

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2015/08/25 18:29 編集

とてもくわしい回答をありがとうございます! 回答者様のおっしゃる通り、自分のやりたいことをしっかり整理したいと思います。 とりあえず、openFrameworksとBlenderのことを調べてみたいと思います。 フレームワークという概念がいまいち分からないのですが、OpenGLや画像処理なんかを基本的な知識だけあれば、簡単に(直感的に)使えるというような認識でいいのでしょうか?たとえば、上に挙げたUnityなんかは複雑な物理演算の知識がなくても、ある程度のものであれば制作できると思うのですが、そういったイメージで問題ないでしょうか? 初歩的な質問ですみません。
退会済みユーザー

退会済みユーザー

2015/08/25 19:38 編集

 openFrameworks(oF)は別々に提供されているライブラリの統合を目的にしていて、インターフェースをある程度まとめてある。という感じですがバラバラに覚えるよりは楽だし、機能を探し歩く手間も少ないです。  フレームワークというと、作業に対する枠組みを用意して作業を定型化・効率化するのが目的ですが、oFはまだそこまで纏めきれてない印象です。ただ初期化処理とか纏まってるだけでも初期導入時には助かるので使った方が楽かと。 >簡単に(直感的に)使えるというような認識でいいのでしょうか?  ミドルウェア的に高度に機能をラップして、ハンドリングし易くしている感じでもないと思います。単に導入を楽にする感じです。  もっとミドルウェア的なものがお望みだとUnity、少し細かいところに手を入れるのがお望みならUE4(UnrealEngine4)を試してみてはどうでしょうか。
退会済みユーザー

退会済みユーザー

2015/08/25 23:51

なるほど、openFrameworksの勉強をすれば、その周辺の知識もある程度いっぺんに学習できるということで効率が良いんですね。 この質問で、自分のやりたいことを実現するには、Unityよりも他の言語のほうがよさそうな感じがしました。もちろんUnityも触ってみますが。 いろいろと教えてくださり、本当にありがとうございました!!
guest

0

Unityといえば、ゲームをつくるためにある

おっしゃる通り、基本的にゲームエンジンですが、
ゲーム以外にも活用できるというのはそうでしょう。

Unityのゲーム以外の活用例

初音ミクが人気ロックバンド「BUMP OF CHICKEN」とコラボ、PV制作に使われたUnity

映像分野で有名な例では上記があります。


3Dプログラミングを初心者からはじめたい人にとって、おすすめの言語やツール

・WebGL(three.js)
・Processing

これらはそのままおすすめできる言語です。
とくにProcessing.jsを使えば、JavaScriptで扱えて手軽です。

カッコイイ系のインタラクティブコンテンツの制作

コンテンツが動画中心か、操作中心かで方向性が異なりますが、
動画寄りでしたら、動画編集ソフトが重要になると思います。

たとえばAviUtlとか、商業制作であればAfter Effectsとか。

それから、Blenderやメタセコイアなど、3Dのモデリングソフト。
ただ自分でモデリングせず、なるべく素材を使う手もあります。

ですから、どんなツールを使うかというのは、
プログラミング、モデリング、エディティングなど、
どの部分に重心を置くか、質問者様の制作方針によります。

投稿2015/08/25 10:05

LLman

総合スコア5592

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2015/08/25 18:33

回答ありがとうございます! 私は、3Dモデリングで精巧なCGグラフィックをつくりたいといったわけではなく、どちらかというとインタラクティブなインスタレーション作品のプログラマーとして携わりたいです。
LLman

2015/08/25 21:10

>インタラクティブなインスタレーション作品のプログラマー でしたらやはり、Processingが一番それに向く言語だと思います。 それからProcessingの周辺、インタラクティブアートに関係する言語には、 「p5.js」「Pure Data」「vvvv」「Context Free Art」などがあります。 実際に使うかどうかはともかく、一応ご紹介しておきます。 「openFrameworks」はC++で組むため、本格的ですがハードルは高くなります。 商業作品などで性能が求められる場合、腰をすえて取り組む必要があるでしょう。 Unityは、インタラクティブ性がゲームに近くなる場合、とくに効率的でしょう。 たとえば、建物の中で人に話しかける仮想空間を提示する作品とか。
退会済みユーザー

退会済みユーザー

2015/08/25 23:45

ありがとうございます! インタラクティブアート周辺にはそんなにたくさん言語があったんですね! なるほど、C++...とりあえずドットインストールでもやってみます! この質問で、自分のやりたいことを実現するには、Unityよりも他の言語のほうがよさそうな感じがしました。もちろんUnityも触ってみますが。 いろいろと教えてくださり、本当にありがとうございました!!
guest

0

Unityは、Rigidbody(物理挙動)という属性をオブジェクトに与えることができます。
これを使うと「物体が重力によって落下する」「壁にぶつかって跳ね返る」といった動作を、自分で物理学的計算をしなくても作ることができます。
なのでシミュレーション的な使い方もできます。計算精度の点では充分ではありませんが、“お手軽な可視化ツール”として使っています。

オブジェクトの質感を変えたり、ライティング周りも簡単にできます。
無償版でもかなりの機能が使えるようですので、ためしに使ってみるといいですよ。
結構楽しめます。

投稿2015/08/25 14:30

mie

総合スコア229

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2015/08/25 18:10

なるほど!以外な使い方があるんですね!参考になります!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問