スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

GLSL入門:レイトレーシング、三角形の交差判定その2

試行錯誤。
なかなか思い通りに事が運ばず苦戦しています。
問題は大量のポリゴンデータをGLSLに渡せない事です。
glUniform3fvで試みましたがどうやら?数に制限があるようです。
とりあえず単純に3角形をGLSL内でどれだけ定義できるか試してみました。
するとハード的な限界もあるようで?



PCのボード:Intel HD graphics family

動画中の黄色の壁が三角形をつなげて作成したものです。
三角形の数は40です。
FPSがかなり落ちました。

400でも動きました。
FPSは2~3程度。

調子に乗って4000にしてみたら
PC画面が真っ暗になりました。
直後にWindowsから
「グラフィックボードが停止しましたが無事復旧しました。」
的なメッセージが。
プログラムは動き続けているようでしたが
OpenGLウィンドウは真っ白のままになりました。

いやー、焦りました。
ボードが壊れたかと思いました。

原因はGLSLの問題と言うよりハード的に無理ということでしょうか?
これはどうしようもないので困ります。。。

これとは別にGLSL内の変数の大きさに制限があるようです。

uniform vec3 stlPos[2000];

とシェーダに書くとシェーダコンパイル時にエラーとなります。

こちらの問題については解決策があるようです。
テクスチャを使ってポリゴン頂点情報をGLSLに送る方法があるそうです。
ハード的な限界があるとこれをやっても仕方ないですが
とりあえずこの方法を理解しておこうと思います。

スポンサーサイト

コメントの投稿

非公開コメント

カレンダー
07 | 2017/08 | 09
- - 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31 - -
プロフィール

uglab

Author:uglab
ソフト開発会社

【Twitter】
フォローお願いします

【You tube動画一覧】
チャンネル登録お願いします


最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
FC2カウンター
検索フォーム
スポンサードリンク
    【スポンサードリンク】

リンク
RSSリンクの表示
ブロとも申請フォーム

この人とブロともになる

QRコード
QRコード
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。