TECH PLAY

Beyond Interaction[改訂第3版]

3,850円 (税込)

楽天

Beyond Interaction[改訂第3版]

書籍情報

発売日:

著者/編集:田所淳

出版社:ビー・エヌ・エヌ新社

発行形態:単行本

書籍説明

内容紹介

7年ぶりの大改訂、クリエイティブ・コーディングの基本書。インタラクションデザイン/メディアアート制作のためのオープンソースのツールキット、openFrameworksの解説書。かんたんな図形からアニメーション、サウンド、OpenCV、3D表現、シェーディング(陰影)など、プログラミングの初歩から応用までを丁寧に解説。

目次

はじめに 作業環境について/サンプルコードについて/ご注意 Chapter 1 openFrameworks入門  1-1 openFrameworkについて   1-1-1 openFrameworksって何?   1-1-2 openFrameworks開発の歴史   1-1-3 「糊 glue」としてのopenFrameworks   1-1-4 openFrameworksの特徴—既存のインタラクションを超えて  1-2 作例とコミュニティ   1-2-1 openFrameworksを使用した作品例   1-2-2 openFrameworks情報の入手 Chapter 2 openFrameworksプログラミング初級編  2-1 プログラムの入手とインストール   2-1-1 openFrameworks開発のための環境設定   2-1-2 macOSの場合—Xcodeをインストールする   2-1-3 Windowsの場合—Visual Studioをインストールする   2-1-4 openFrameworksのダウンロード   2-1-5 openFrameworksのファイル構成   2-1-6 openFrameworksのフォルダ構造  2-2 サンプルプログラムの起動   2-2-1 サンプルプログラムを起動してみる  2-3 openFrameworksプログラムを始めよう   2-3-1 このセクションの流れ  2-4 ProjectGeneratorで新規プロジェクトを作成   2-4-1 ProjectGeneratorとは   2-4-2 新規プロジェクトを作成する   2-4-3 重要な3つのファイル   2-4-4 関数—処理をまとめる  2-5 図形を描く   2-5-1 座標系について   2-5-2 直線を描く—ofDrawLine   2-5-3 四角形を描く—ofDrawRectangle   2-5-4 円、楕円を描く—ofDrawCircle、ofDrawEllipse   2-5-5 三角形を描く—ofDrawTriangle  2-6 色の設定   2-6-1 コンピュータ上での色の表現   2-6-2 背景色と描画色   2-6-3 色を塗り分ける   2-6-4 透明度の付加  2-7 数値の記憶と計算   2-7-1 数値の計算   2-7-2 変数について   2-7-3 変数を使って図形を描く   2-7-4 画面の幅と高さを取得  2-8 たくさんの図形を一気に描く   2-8-1 繰り返し—for文   2-8-2 規則的に配置する—カウンタ変数を利用した演算   2-8-3 繰り返しを繰り返す  2-9 たくさんの値を記憶する―配列   2-9-1 配列の概念   2-9-2 繰り返しと配列の組み合せ   2-9-3 乱数の使用   2-9-4 乱数で位置を指定する   2-9-5 乱数で色を指定する  2-10 移動する—アニメーション   2-10-1 図形を移動する   2-10-2 アニメーションのプログラムの構造   2-10-3 物体を直線運動させる  2-11 条件分岐—「もし○○なら××せよ」   2-11-1 もし画面からはみ出たら反対から出現させよ   2-11-2 条件分岐の応用編—壁でバウンドさせる  2-12 たくさんの図形を移動する   2-12-1 たくさんの円を同時に動かす   2-12-2 配列を利用してたくさんの図形をまとめてコントロールする  2-13 図形に触れる—インタラクション   2-13-1 インタラクションとは   2-13-2 マウスの位置の検知   2-13-3 マウスによるインタラクション   2-13-4 インタラクションとアニメーションを組み合わせる  2-14 より高度な表現へ   2-14-1 表現に現実味を持たせる   2-14-2 パーティクル—重力と摩擦力を導入   2-14-3 動きの軌跡をフェード Chapter 3 openFrameworksプログラミング中級編  3-1 プロジェクトの構造をより深く理解する   3-1-1 openFrameworksのプロジェクト構造について   3-1-2 openFrameworksとC++の関係   3-1-3 オブジェクト指向プログラミングとは   3-1-4 オブジェクト = 属性 + 動   3-1-5 クラス = オブジェクトの設計図   3-1-6 C++ でのクラスの作成   3-1-7 ファイルを分割して管理する   3-1-8 UMLクラス図   3-1-9 クラスとしてofAppを捉え直す   3-1-10 ofAppはofBaseAppの子供   3-1-11 openFrameworksプロジェクト構造  3-2 いろいろなメディアを扱う   3-2-1 openFrameworksで扱うことのできるメディア   3-2-2 音を扱う—音とは何か   3-2-3 コンピュータで音を扱うには   3-2-4 波形の生成—ofSoundStream   3-2-5 サウンドの入力—ofSoundStream   3-2-6 サウンドファイルの再生—ofSoundPlayer   3-2-7 画像ファイルを扱う—ofImage   3-2-8 フォントデータを扱う—ofTrueTypeFont   3-2-9 動画の再生—ofVideoPlayer   3-2-10 動画のキャプチャ—ofVideoGrabber  3-3 OOOF:オブジェクト指向oFプログラミング   3-3-1 openFrameworksでオブジェクト指向プログラミング   3-3-2 新規クラスの生成   3-3-3 画面の中心に円を表示する—メソッドの追加①   3-3-4 円の大きさと場所の初期値を指定する—コントラスタの作成   3-3-5 円の大きさと場所の情報を取得、設定する—セッターとゲッター   3-3-6 円をアニメーションする—メソッドの追加②   3-3-7 円が拡大縮小する動きを加える—メソッドの追加③   3-3-8 画面をクリックすると、どんどん円が増殖する—複数のクラスの生成①   3-3-9 円をクリックすると、細かな円に分裂する—複数のクラスの生成②  3-4 アドオンの利用   3-4-1 アドオンとは   3-4-2 アドオンの使用①—ofxBox2dを使う   3-4-3 アドオンの使用②—ofxOpenCvを使用する   3-4-4 ofxBox2DとofxOpenCvを組み合せる  3-5 楽器を作る   3-5-1 ここまでの内容を統合する   3-5-2 楽器の構想   3-5-3 楽器の設計   3-5-4 プロジェクトの設計   3-5-5 実装   3-5-6 プロジェクト完成 Chapter 4 openFrameworksプログラミング上級編  4-1 3Dグラフィクスプログラミングの基本   4-1-1 3Dで図形を描くということ   4-1-2 3D基本図形   4-1-3 視点 (カメラ) の設定   4-1-4 光と影 (ライト、シェーディング)   4-1-5 光と影に色をつける   4-1-6 3D基本図形  4-2 より自由な3D図形を描く—ポリゴンメッシュの操作   4-2-1 より自由に3D図形を描く—ポリゴンメッシュについて   4-2-2 3D基本図形からメッシュを生成する   4-2-3 メッシュの頂点の座標をランダムに移動する   4-2-4 三角関数で波打つ立体を描く   4-2-5 ノイズによる不規則な波を描く   4-2-6 球体をノイズで変形する   4-2-7 ノイズで変形した球の面をレンダリング   4-2-8 カメラからの映像をテクスチャーに  4-3 GLSL (シェーダー) を使う—ofShader   4-3-1 シェーダーとは   4-3-2 レンダリングパイプラインとシェーダー   4-3-3 GLSLのバージョン   4-3-4 GLSLをopenFrameworksで表示する Chapter 5 openFrameworksの現状と未来  5-1 openFrameworksは終わったのか?  5-2 クリエイティブ・コーディング環境の発展と進化   5-2-1 ビジュアルプログラミング言語—Max、Pure Data、vvvv、TouchDesigner   5-2-2 ゲームエンジンの活用—Unreal Engine、Unity   5-2-3 もっとフィジカルにリアルタイムに—ライブコーディング  5-3 クリエイティブ・コーディングの歴史の継承   5-3-1 コンピュータアート黎明期のパイオニア達   5-3-2 Muriel Cooper—Visible Language Workshop (1974)   5-3-3 Jhon Maeda—MIT Aesthetics + Computation Group (1996)   5-3-4 Casey Reas、Ben Fry - Processing (2001)   5-3-5 Golan Levin, Zach Lieberman, Theo Watson—openFrameworks (2005)   5-3-6 クリエイティブ・コーディングの歴史の中のopenFrameworks  5-4 「ツール」ではなく「マテリアル」としてのコンピューティング  5-5 オープンなフレームワークであること  5-6 openFrameworksを超えて Index

著者情報

田所, 淳

田所淳

田所 淳( たどころ・あつし)|1972年、千葉県生まれ。前橋工科大学工学部総合デザイン工学科准教授。東京藝術大学芸術情報センター非常勤講師。慶應義塾大学環境情報学部非常勤講師。アルゴリズムを用いた音響合成による音楽作品の創作、ラップトップコンピュータを用いた音と映像による即興演奏などを行う。大学では、openFrameworks、Processing、Arduino、Pure Data、SupreColliderといった「クリエイティブ・コーディング」についての講義を行う。講義資料はWebサイトhttp://yoppa.orgで公開、多くの学生やクリエイターに活用されている。