000000 ランダム
 ホーム | 日記 | プロフィール 【フォローする】 【ログイン】

まいみ09のお買い物ダイアリ

PR

キーワードサーチ

▼キーワード検索

カテゴリ

カレンダー

バックナンバー

コメント新着

お気に入りブログ

夏が始まる前にマイ… New! doziさん

焼尻島 New! サイボーグ・007さん

美味しい! 3種類… New! 幸子@専務さん

ドン・キホーテで1se… さくら もものこさん

marche エコバッグ fun*8さん

夏季休暇のお知らせ craftwork5659さん

サイド自由欄

2020年05月21日
XML
カテゴリ:本のちょっと技巧

高速処理のできるNVIDIA社のグラボ即ちCUDAを利用して画像処理を行う基礎知識の概略を踏まえてプログラミングを解説した書である。発行年が2014年と些か古いので、最新版のCUDA開発とは若干の差異があるかもしれないけど、学習してゆく中で修正を加えて読み進めれば良さ気ではないだろうか。

2Dや3Dなどのコンピュータ画像処理を担うGPU(Graphic Processing Unit)は性能向上が著しく,その処理能力を活かすためのソフトウェア開発が求められています。GPUはCPUと異なり並列処理機能に秀でており,複雑な図形計算を高速処理できるからです。本書はGPUによる並列処理機能を軸に,nVIDIA社のCUDA(Compute Unified Device Architecture)の利用方法とOpenGLのプログラミング方法を基礎の基礎から解説します。コンピュータグラフィックスのプログラミングを実践するための理論を学べます。C言語の知識は必須です。

発売日:2014年3月
著者/編集: 乾正知
レーベル: Software Design plus
出版社: 技術評論社
発行形態:単行本
ページ数:337p
ISBNコード:9784774

主な目次

  • 第1部 コンピュータグラフィックスの基礎
    • 第1章 プログラミングの準備
      • 1.1 Visual
        • 1.1.1 コンソールアプリケーションの作成
        • 1.1.2 設定の変更
      • 1.2 glutとOpenGLの利用
      • 1.3 freeglutのインストール
      • 1.4 freeglutを利用したプログラミング
    • 第2章 OpenGLとglutを用いた2次元コンピュータグラフィックス
      • 2.1 2次元コンピュータグラフィックスのプログラミング
        • 2.1.1 図形の指示
        • 2.1.2 座標の指示
        • 2.1.3 図形の色付け
      • 2.2 座標の投影とビューポート変換
        • 2.2.1 正投影の導入による表示範囲の拡大
        • 2.2.2 ウィンドウとビューポート変換
        • 2.2.3 アスペクト比の変更
        • 2.2.4 図形中心の表示
    • 第3章 3次元コンピュータグラフィックスへの拡張
      • 3.1 正投影
        • 3.1.1 視点の変更
        • 3.1.2 視体積の範囲決め
        • 3.1.3 方位角と仰角の利用
        • 3.1.4 マウス操作による視点の変更
      • 3.2 ポリゴンの描画
        • 3.2.1 隠面消去
        • 3.2.2 シェーディング
  • 第2部 OpenGLを用いた並列図形処理
    • 第4章 ボロノイ図の生成
      • 4.1 ボロノイ図とは
      • 4.2 ボロノイ図の画像生成
      • 4.3 実装の準備
      • 4.4 円錐形状の描画
      • 4.5 画像の取得と利用
    • 第5章 オフセット面の生成
      • 5.1 デプスバッファを用いたオフセット面の計算
      • 5.2 STLフォーマット
      • 5.3 STLファイルの読み込み用関数
      • 5.4 ポリゴンモデルの表示用関数
      • 5.5 オフセットプログラムの準備
      • 5.6 オフセット処理の実現
        • 5.6.1 球,円筒形,スラブ形状の描画
        • 5.6.2 オフセット面の取得
        • 5.6.3 オフセット面の描画
      • 5.7 プログラムの完成
  • 第3部 CUDAの導入とOpenGLとの併用
    • 第6章 CUDAの導入
      • 6.1 CUDAのインストール
      • 6.2 Visual StudioによるCUDAプログラムの開発
      • 6.3 CUDA処理の基本的な考え方
        • 6.3.1 典型的な処理の流れ
        • 6.3.2 GPUの並列処理アーキテクチャ
        • 6.3.3 スレッドによる並列処理
        • 6.3.4 ブロックとグリッド
      • 6.4 CUDA関数の紹介
        • 6.4.1 メモリ管理
        • 6.4.2 データ転送
        • 6.4.3 ブロックとグリッドの定義
        • 6.4.4 カーネル関数
        • 6.4.5 デバイス関数
      • 6.5 プログラム例
        • 6.5.1 CPU処理の実装例
        • 6.5.2 CUDAによる実装
        • 6.5.3 シェアードメモリの利用
    • 第7章 粒子法解析とアニメーション表示
        >
      • 7.1 粒子法解析
      • 7.2 粒子法解析アルゴリズムの実装
        • 7.2.1 CPU処理による実装
        • 7.2.2 GPU処理による実装
      • 7.3 VBOの導入
        • 7.3.1 VBOを用いた図形描画
        • 7.3.2 VBOによる粒子群の表示
      • 7.4 CUDAとVBOの併用
    • 第8章 拡散方程式の数値解法とアニメーション表示
      • 8.1 差分法による拡散方程式の数値解法
      • 8.2 差分法アルゴリズムの実装
        • 8.2.1 CPU処理による実装
        • 8.2.2 GPU処理による実装
        • 8.2.3 シェアードメモリの利用
        • 8.2.4 テクスチャメモリの利用
      • 8.3 PBOの導入
  • 第4部 CUDAによる複雑な図形処
    • 第9章 メタボール法
      • 9.1 粒子群の濃度場
      • 9.2 ソートによる粒子群のセルへの割り当て
      • 9.3 実装の準備
      • 9.4 基本的なデバイス関数の定義
      • 9.5 カーネル関数の定義
      • 9.6 thrustライブラリ
    • 第10章 マーチングキューブ法
      • 10.1 マーチングキューブ法
      • 10.2 アルゴリズムの概要
      • 10.3 実装の準備
      • 10.4 テクスチャメモリの利用
      • 10.5 カーネル関数の定義
      • 10.6 Metaball.cppの修正
    • 第11章 包含立体の利用
      • 11.1 包含ボックス
      • 11.2 ボックス定義の準備
      • 11.3 AABBとOBBの定義
        • 11.3.1 AABBの定義
        • 11.3.2 OBBの定義
      • 11.4 包含ボックスに関する計算
        • 11.4.1 点と包含ボックス間の距離
        • 11.4.2 包含ボックス間の交差判定
      • 11.5 階層的な包含ボックス
      • 11.6 プログラムの利用法
    • 第12章 立体間の衝突検出
      • 12.1 階層的な包含ボックスによる絞り込み
      • 12.2 ポリゴン間の並列交差判定
      • 12.3 撃力ベース法
      • 12.4 実装の準備
      • 12.5 階層的な包含ボックスによる絞り込み
      • 12.6 撃力ベース法による衝突の解消
      • 12.7 衝突判定
      • 12.8 デバイス関数
      • 12.9 カーネル関数
      • 12.10 プログラムの利用法
  • あとがき
  • サンプルプログラムの使い方

楽天ブックスは品揃え200万点以上!







最終更新日  2020年05月21日 07時51分52秒
コメント(0) | コメントを書く
[本のちょっと技巧] カテゴリの最新記事


フリーページ


Copyright (c) 1997-2020 Rakuten, Inc. All Rights Reserved.