サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
大そうじへの備え
www.wakhok.ac.jp/~momma
稚内北星学園短期大学 2001年度 グラフィックス理論/プログラミング 講義録 このページは、稚内北星学園大学において私 門間 穣司 が行った、OpenGLによる3Dグラフィックスプログラミングを扱った講義の内容です。
グラフィックス理論/プログラミング 第8回 2000年11月24日 テクスチャマッピングのまとめ 前回学んだテクスチャマッピングの手順を改めてまとめておくと、 1. 必要なテクスチャの個数を決める。 2. glTexGen()によって、決めた個数の分のテクスチャを指定するための番号をシステムから割り当ててもらう。 3. glBindTexture()によって、テクスチャの番号を指定する。 4. 何らかの方法で(ファイルから読み込むか、計算によって生成するなど)メインメモリ内の配列にテクスチャデータを用意する。この部分はOpenGLの機能ではない。 5. glTexImage2D()によって、このテクスチャのデータをグラフィックシステムのテクスチャメモリへ送り込む。 6. glTexParameter*()およびglTexEnv*()を用いて、このテクスチャの使用条件を指定す
グラフィックス理論/プログラミング 第1回 コンピュータ・グラフィックスについての基礎知識 広い意味でのコンピュータグラフィックス(CG)という場合、まず2Dと3Dに分けることができる。2DのCGとは、絵筆やペンのかわりにドロー系やペイント系などの描画ソフトを使用して描かれたイラストや、実写の写真をスキャンして取りこんだものを加工したもの、これらを組み合わせたものを指す。 一方、狭い意味でのCGという場合、3DCG、すなわち3次元空間内に物体が存在すると仮定して、その物体がどのように見えるかを理論的にコンピュータによって計算して求めたものを指す。この場合、その計算のアルゴリズムによって、一枚の画像を生成するのに必要な計算の量および時間が大幅に異なる。そこで、まず人間の目やカメラに物体の像が映る仕組みを簡単に振り返っておこう。 光源と物体、カメラの関係 実際の世界では、次のような経
OpenGLとは何なのか? OpenGLとは、高品位なリアルタイム3Dグラフィックスの表示のために定められた、オペレーティングシステムに依存しないAPIです。もともとは、SGI社のワークステーションで用いられていたIrisGLというライブラリがベースになっていますが、現在ではその仕様はオープンになっており、OpenGLを用いることで特定のプラットホームに依存せずに3Dグラフィックスプログラミングを行うことが可能になります。 OpenGLの仕様は、現在では、SGI、Microsoft、Intelなどの各社を含む OpenGL ARB A(Architecture Referece Board) によって策定されており、特定の実装を行ったベンダーは、SGIからライセンスを受け、かつARBのコンパチビリティ試験にパスして認可を受けることでOpenGLを名乗ることができるようになります。
グラフィックス・プログラミング 第7回 1999年5月26日 法線とライティング処理 すでに解説したように、OpenGLにおけるポリゴンの各ピクセルの色を決定するプロセスは大きく分けて2つのステップからなっている。 ライティング:ポリゴンの頂点における色を、ライティングを有効にしてあれば前回学んだ照光モデルに基づいて、光源、カメラの位置、頂点における物体のデータから決定する。ライティングが無効に設定されている場合はglColor*( )で指定した色が頂点の色を決定する。 シェーディング:各頂点でのピクセルの色に基づいて、ポリゴン内部の各ピクセルの色を決定する。シェーディングモデルとして、スムースシェーディング(別名グーローシェーディング)が指定されていれば、各頂点での色の値を滑らかに補間して各ピクセルの色を決定する。フラットシェーディングでは、いずれか一つの頂点の色でポリゴン全
概説 SSGは、非常にシンプルで軽いシーングラフAPIで、OpenGLの上の層に位置し、C++を利用しています。GLUTと共に、あるいはGLUTと無関係に使用することができます。 SSGは、PLIBの一部です。 この文書は、ある程度のOpenGLの知識を持っていることを前提にしています。 SSGは、簡単な行列とベクトル操作のための補助ライブラリを含んでおり、この補助ライブラリはSG(Simple Geometry)と呼ばれ、ある程度の交差判定、視界による刈り込みなどを行うことができます。SGはSSGの中で大いに使用されていますが、独立したライブラリとしても有用です。 「シーングラフ」とは、基本的には、単なるツリー構造のデータベースで、階層構造をなす分岐と、数多くの葉ノードを含んでいます。それぞれの葉ノードは、何がしかのOpenGLのレンダリング対象を表しています。一方分岐ノード
グラフィックス理論/プログラミング 第6回 2000年11月10日 行列スタックによるモデルビュー行列の保存と復帰 物体を描くために3次元のペンであるローカル座標の平行移動や回転、拡大/縮小を繰り返すうちに、ローカル座標の状態は最初とは違うものになっていく。また、glScalef( )を用いた後は座標軸の目盛が各軸の方向によって異なってくるため、この後の回転や平行移動の操作が非常に難解になる。そのため、プログラム中のある時点で、ローカル座標を過去の時点での状態に戻したいという場合が出てくる。 このために、OpenGLにはローカル座標の状態、すなわちモデルビュー行列を記憶する行列スタックと呼ばれる領域が用意されている。スタックとは、複数の物を記憶する場合に、もっとも最後に入れたものが最初に取り出されるような(牛丼屋の紅生姜のように)システムのことであり、別の呼び名ではFILO(Fi
Version 0.10 Sam Lantinga (この日本語版は、ASCII TECH 編集部と門間 穣司([email protected])によるものですが、 著作権、頒布についてはオリジナルと同じくLGPLに従います。) "シンプルに、効率的に、そしてポータブルに" このライブラリは、Linux、Win32、BeOSなどの各OS上でそれぞれのネイティブなマルチメディアインターフェース(ビデオ、オーディオ機能など)を使用しながら、ソースコードレベルでは単一のAPIによるゲーム開発が容易になるように設計されたものです。かなり低レベルのAPIからなっていますが、大変柔軟に、完全にポータブルなアプリケーションを記述することができます。 このライブラリは各プラットフォーム上でダイナミックリンクライブラリとしてロードされ、現在のネイティブなコンパイル環境はLinuxです。Win3
このページを最初にブックマークしてみませんか?
『http://www.wakhok.ac.jp/~momma/』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く