OpenGLに関するwaterlのブックマーク (12)

  • Android上での3D(OpenGL)描画の基礎とNDKによる実践的高速化手法

    長岡技術科学大学 2015年度GPGPU実践プログラミング(全15回,学部4年対象講義) 第6回パフォーマンス解析ツール 2015年度GPGPU実践プログラミング ・第1回 GPGPU歴史と応用例 http://www.slideshare.net/ssuserf87701/2015gpgpu1-59179080 ・第2回 GPUのアーキテクチャとプログラム構造 http://www.slideshare.net/ssuserf87701/2015gpgpu2-59179215 ・第3回 GPGPUプログラミング環境 http://www.slideshare.net/ssuserf87701/2015gpgpu3-59179255 ・第3回補足 GROUSEの利用方法 http://www.slideshare.net/ssuserf87701/2015gpgpu3-59183677

    Android上での3D(OpenGL)描画の基礎とNDKによる実践的高速化手法
    waterl
    waterl 2013/06/11
    圧縮テクスチャは各チップ環境ごとのデータが必要。OpenGL ES2.0以降、ETC1は標準で使用可能だが、アルファマスクのデータを持つことができずに使いにくい。
  • 自堕落なぺぇじ

    誤って10年近く使っていたサーバーを吹っ飛ばしてしまいログが消滅しました。 技術ブログは、はてな使ってて助かりました。 storyboardからheader / footerを追加する さて、UICollectionViewでheader / footerを追加する方法について。 UITableViewでは、適当にViewでも引っ張って来てやれば追加できたりしますが UICollectionViewの場合は、「Collection Reusable View」を使います。 これをCollectionViewに引っ張って行ってやればheader Viewは追加できますが footer Viewは追加できません。では、どうするかと言うと CollectionViewを選択して、AccessoriesからSection Footerにチェックを入れてやります。 そうすると自動的にfooter用の

    自堕落なぺぇじ
    waterl
    waterl 2013/06/10
    setEGLConfigChooserはES1.1で呼び出す必要がないと。書かれています。setEGLConfigChooserでオブジェクトを設定した場合、ギャラクシーネクサスでエラーが発生する場合があります。
  • JUNO通信: Android + OpenGL の戦い その1

    いま「Battle Tank Sword」を Windows に移植するためにコネコネいじくり回している最中なのですが、その途中、Java のソースを眺めていた時にふと目に止まった部分がありました。 それは度重なる不具合で皆様に御迷惑をおかけした原因とも言える場所であり、その作業過程がもしかしたら誰かの役に立つかもしれないと思い、ここに文章化することにしました。 Android 向けゲーム「Battle Tank SWORD」は、初めて OpenGL + NDK で作ったアプリだったので色々と大変だったのですが、一番苦労したのはほかでもない OpenGL の初期化部分でした。はじめは解説サイトなどを参考にしてさらっと mGLSurfaceView.setEGLConfigChooser(5, 6, 5, 0, 0, 1); と記述してあり、手元の端末では正しく動いていたのですが、実はこれが

    waterl
    waterl 2013/05/24
    GLサーフェス初期化時のsetEGLConfigChooser の注意点について書かれています。 直接 setEGLConfigChooser に値を設定して使用してはいけません。デバイスに対応したフォーマットを選択し設定するようにします。
  • (Mac・iPhone)プリミティブについて - 強火で進め

    今回はプリミティブについて解説です。OpenGLでプリミティブと言えば点やライン、三角形、四角形、多角形などのことを表します。 OpenGLで使用できるプリミティブには以下のものがあります。 GL_POINTS GL_LINES GL_LINE_STRIP GL_LINE_LOOP GL_TRIANGLES GL_TRIANGLE_STRIP GL_TRIANGLE_FAN GL_QUADS GL_QUAD_STRIP GL_POLYGON それでは順番に解説します。緑色で記述してある数字は頂点の指定の順番です。 GL_POINTS 点を描画。 最初の1つ→頂点1つを指定(頂点データの0番を使用して描画) 2つ目以降→頂点1つを追加で指定(2つ目は頂点データの1番を使用して描画) GL_LINES 2つの頂点を指定して、ラインを描画。2つ目以降のラインもそれぞれ2つの頂点を指定する。 最初

    (Mac・iPhone)プリミティブについて - 強火で進め
    waterl
    waterl 2013/04/16
    GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN の頂点の指定の順番など図で説明してくださっています。
  • 床井研究室 - GL_CLAMP_TO_EDGE, GL_CLAMP_TO_BORDER

    朝日新聞の火曜日の夕刊に連載されている「熱血!マンガ学」というマンガ評を結構楽しみにしているんですが,今週は CLAMP の「カードキャプターさくら」でした.「年齢や性別を超えたつらく切ない恋も描かれる」と評されていましたが,私が子供のを借りて読んだときは,「これを小学生相手に描くにはちょっと難しいんと違うか?」と思える部分がありました.少女漫画も進化したもんだ.そう言えばこの映画を見に行ったとき(子供連れて行ったんだよ),自分と同じような家族連れに混じって,大学生くらいの男の子のグループをちらほら見かけました.見る方も年齢や性別を超えてるんですね. GL_CLAMP の問題 CLAMP つながりというわけではないんですが(狙ってましたが),書き忘れたと思っていたことの三つ目です.ポリゴンにテクスチャをマッピングする際,テクスチャの拡大縮小に線形補間(GL_LINEAR 等)を指定したと

    床井研究室 - GL_CLAMP_TO_EDGE, GL_CLAMP_TO_BORDER
    waterl
    waterl 2013/04/16
    GL_CLAMP_TO_EDGE, GL_CLAMP_TO_BORDER に関して絵とプログラムで丁寧に解説してくださっているページです。
  • 3Dプログラミング基礎知識(1) - Tech-Sketch

    3Dプログラミングの基礎知識(1) はじめに 主にiPhone/AndroidからOpenGL ESを使って3D表現を行う場合に必要となる基礎知識についてまとめていきたいと思います。 基礎の基礎から説明して行くため、言語や3Dライブラリ(DirectX/OpenGL)に依存しない情報が多くなります。OpenGLに限らず「C++ + DirectX」などの環境で開発を行う人もどうぞ。 内容 5回ぐらいに分けて以下のような内容を書いていきたいと思います。 モデルを構成する頂点情報、面情報 画面に描画されるまでの流れ、平行移動・回転・拡縮行列(ワールド変換) カメラ、Zバッファ 法線、ライティング 頂点シェーダ、ピクセルシェーダ(フラグメントシェーダ) 座標系 3D表現を行う為には3次元の座標系をどのように定義するか決める必要があります。 2Dの場合はX軸、Y軸で座標系を表しますが、3Dの場

    waterl
    waterl 2013/04/15
    非常に丁寧な説明と、図解で解説してくださっているページです。。サンプル等のプログラムはありません。
  • Error establishing a database connection

    Error establishing a database connection This either means that the username and password information in your wp-config.php file is incorrect or we can't contact the database server at localhost. This could mean your host's database server is down. Are you sure you have the correct username and password? Are you sure that you have typed the correct hostname? Are you sure that the database server i

    waterl
    waterl 2013/04/11
    OpenGLのエラー出力方法について載せていただいているサイトです。
  • 2024年04月の徒然なる戯れ言

    最近10回の更新 [2024/04/21 10:52] - 2024/04/21 【PCAINEX「HDE-19」 持ち運びにも便利なM.2 2230規格専用の ... [2024/04/21 10:51] - 2024/04/21 【PC】サハロフ佐藤のアキバ定点観測(4月13日調査分) 【価格調 ... [2024/04/21 10:49] - 2024/04/21 【PC】Ryzen 8000対応のASRock小型ベアボーン「DeskMeet X600」 ... [2024/03/23 22:39] - 2024/03/23 【PC】米AMD、RyzenやRadeonで生成AIをローカル実行するハウツー ... [2024/03/23 22:37] - 2024/03/23 【PC】Core Ultra搭載でAI PC化した「Surface Pro 10」「Surfac ... [

    waterl
    waterl 2013/04/10
    OpenGLをVBからの呼び出しから、サウンド・アセンブラ・オセロのアルゴリズムなど多岐に渡る内容のページとなります。
  • OpenGLの座標系

    左下原点のテクスチャ座標を用いたサンプル テクスチャ座標やウィンドウ座標をOpenGL系に統一したため、確認も含め、次のようなテクスチャを正方形に貼り付ける簡単なプログラムを作成しました。 まず、bmpファイルの読み込みです。実はbmpファイルも左下から順に格納されています。そのため、loadbmp.cのloadBMP関数内で、次のように格納されている順に読み込みます。もちろん、futil.hでの#defineマクロでOPENGL_IMAGE_COORDINATEは(1)に定義されています。 : : 途中略 : : switch(bpp) { case 8: /* 8 bits/pixel */ /* カラーマップ読み込み */ fseek(fp,54,SEEK_SET); fread(&palette[0], sizeof(RGBQuad), 256, fp); #if OPENGL_I

    waterl
    waterl 2013/04/09
    OpenGLとDirect3Dの違いについて解説して頂いているページです。
  • OpenGLプログラムのダウンロードページ

    OpenGLプログラムのサンプル(GLSL) GLSLのサンプルプログラムです。下記プログラムを動かすには、VC++やGLUTライブラリ、GLEWライブラリが必要です。もちろん全部フリーです。インストール方法は、それぞれ「VC++ Expressの準備」、「GLUTインストール」、「GLEWで簡単にGL拡張」で紹介しています。ぜひダウンロードしてみてください。掲示板も開設したので、感想を書いてくれると嬉しいです。 シェーダのサンプルを作成している際、光源をワールド座標で設定していたつもりが視点座標で設定していることに気付き、カートゥーンのサンプルを一部修正しました。(2007/05/27) キューブ環境マッピング GLSLを使用したキューブ環境マッピングのプログラムです。バンプマッピングも使っています。これまでのサンプルはモデルの回転だけでしたが、視点も四元数で回転できるようにしました。キ

    waterl
    waterl 2013/04/09
    OpenGLのシェーダプログラムのサンプルを紹介してくださっているサイトです。
  • OpenGL04_視野のセッティング

    続いて、視野のセッティングをおこなう。視野を考えるとき、どこから、どこを、どんなレンズで除いているのかなどを設定するが、設定がうまくいかないと何も表示されなくなってしまう。実行したのに何も表示されない場合は一番に疑うべき項目といえる。 混乱する原因は主に以下のとおりである。 ・この種のコマンドが複数存在し、それぞれどんな働きをするのかが分からない。 ・コマンドの実行順が決まっていることを知らない。(実行順が異なると、おかしくなる) それをふまえ、ここでは、サンプルコードを書く前に流れとコマンドを解説する。 OpenGLでは4x4行列を構成点座標に乗算することで変換処理をおこなっている。前述のように、物体の動作を表現するには、物体自体の変化とカメラの変化が考えられるが、OpenGLもそれぞれに行列をもっている。 うれしいことに、行列の形で値を扱わなくても、十分操作できるコマンドが用

    waterl
    waterl 2013/04/08
    OpenGLの視点変換関数について丁寧な説明がされているページです。glOrtho、glFrustum、gluPerspective、gluLookAt
  • OpenGL - Sample8

    今回は、いよいよテクスチャマップをしてみます。sample08.cだけでなく、ppmread.c、ppmread.h、texture1.ppmもいっしょにダウンロードしてください。 テクスチャの読み込み サンプルプログラムを見てみます。まず、最初にppmread.cの方です。OpenGLのテクスチャに直接関係のあるのは、ReadPPMTexture()の中の、glGenTextures()、glBindTexture()、glTexImage2D()の3つの関数です。 (注)今回は、ReadPPMMipmap()は使いません。ミップマップは次回、解説します。 void glGenTextures(GLsizei n, GLuint *textures) OpenGLでは、テクスチャにそれぞれ番号をつけて、テクスチャを管理します。glGenTextures()は、その番号を取得する関数です。

    waterl
    waterl 2013/04/02
    OpenGL のテクスチャに関するパラメータの説明があるページです。
  • 1