クロスプラットフォームの3D API OpenGL 及び次世代のローレベルAPI Vulkan に関する話題を扱うスレッド。
現在の最新バージョンは4.5
https://www.opengl.org/
https://www.khronos.org/vulkan
== OpenGLと一緒に使われるツール&ライブラリ ==
苦労したくなかったらとりあえず入れとけ。
・glx: XからOpenGLを使うためのライブラリ。普通は直接は使わず意識する事はない
・glut: クロスプラットフォームなツールキット。でもさすがに古くさい
・GLFW より新しいマルチプラットフォームなツールキット
・glew: これを入れないと拡張機能が使えないor使いにくい
・glxgears: 歯車が回るベンチマーク。-infoでOpenGLのバージョンが見られる。OpenGLの動作確認はこれで
・glxinfo: 自分の使っているカードのOpenGLの機能が全てリストアップされる。
・OpenTK C#からOpenGLを簡単に使えるようになる。VC#の強力なIntellisenseとあわせてサクサク開発可能。
・OpenSceneGraph: OpenGL を高度に抽象化し、利便性を高めたラッパー。C++ ライブラリ
・OpenGL Mathematics (GLM): GLSL 文法ライクの C++ 数学ライブラリ
== チュートリアルサイト ==
床井研究室: http://marina.sys.wakayama-u.ac.jp/~tokoi/oglarticles.html
OpenGL de プログラミング: http://wiki.livedoor.jp/mikk_ni3_92/
NeHe: http://nehe.gamedev.net/
Tutorials for OpenGL 3.3 and later http://www.opengl-tutorial.org/
Learning Modern 3D Graphics Programming http://www.arcsynthesis.org/gltut/
== 前スレ ==
OpenGLスレ Part21
http://peace.2ch.net/test/read.cgi/tech/1409581958/
== 関連スレ ==
【O3D】HTML5用 3D API WebGL 【Canvas:3D】
http://peace.2ch.net/test/read.cgi/tech/1308761577/
OpenGL 2.0 専用スレ
http://peace.2ch.net/test/read.cgi/tech/1126268759/
OpenGL/Vulkanスレ Part22©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
2015/08/27(木) 18:12:51.54ID:VxmGCqDu
247デフォルトの名無しさん
2016/05/21(土) 10:39:39.90ID:SK4V46be Vulkan SDK 1.0.13.0
248デフォルトの名無しさん
2016/05/22(日) 17:06:39.95ID:B1ZnT2eI 頂点のデータ1個分が半端なサイズだと性能が低下するみたいに書いてあるけどマジ?
https://developer.nvidia.com/content/understanding-structured-buffer-performance
5%とは書いてあるけどその5%が結構でかいか?
https://developer.nvidia.com/content/understanding-structured-buffer-performance
5%とは書いてあるけどその5%が結構でかいか?
249デフォルトの名無しさん
2016/05/23(月) 18:25:59.24ID:sxSKeUhG >>248
それはメモリ一般の話でGPUだけの話じゃないな
float4 position;にしてw成分にradiusを入れるとかよくやる
多分、float3 position; float radius;でも駄目なはず
それはメモリ一般の話でGPUだけの話じゃないな
float4 position;にしてw成分にradiusを入れるとかよくやる
多分、float3 position; float radius;でも駄目なはず
250デフォルトの名無しさん
2016/05/23(月) 20:15:41.27ID:rfU8/+zM251デフォルトの名無しさん
2016/05/24(火) 07:23:41.22ID:hRqmCXiK openglで、3Dモデルの断面だけを表示したいのですが、
以下のやり方だと視点変更時にちらつきが起こってしまいます。
glClipPlane(GL_CLIP_PLANE0, 平面);
glClipPlane(GL_CLIP_PLANE1, 平面(逆向き));
ちらつきを回避する方法をご存じの方、いらっしゃるでしょうか。
0,1で指定する平面を少し離すとちらつきは起きなくなるのですが、
拡大すると幅が見えてしまうので、平面は(向き以外は)1つにしたい
と思っています。
以下のやり方だと視点変更時にちらつきが起こってしまいます。
glClipPlane(GL_CLIP_PLANE0, 平面);
glClipPlane(GL_CLIP_PLANE1, 平面(逆向き));
ちらつきを回避する方法をご存じの方、いらっしゃるでしょうか。
0,1で指定する平面を少し離すとちらつきは起きなくなるのですが、
拡大すると幅が見えてしまうので、平面は(向き以外は)1つにしたい
と思っています。
252デフォルトの名無しさん
2016/05/24(火) 09:56:54.89ID:cQa1G5gr ちらつくのはGPUの計算誤差のせいか
つうか平面で輪切りにするなら
ある程度の厚さは元々必要じゃないの?
GPUの演算精度にあわせて最小の厚みを入れれば?
あと断面を描画したい場合もっとマシな方法があったはず
つうか平面で輪切りにするなら
ある程度の厚さは元々必要じゃないの?
GPUの演算精度にあわせて最小の厚みを入れれば?
あと断面を描画したい場合もっとマシな方法があったはず
253デフォルトの名無しさん
2016/05/24(火) 10:26:25.89ID:TKPt/9v7 >>251
ヒント: 1/∞
ヒント: 1/∞
254デフォルトの名無しさん
2016/05/24(火) 13:41:51.46ID:kfi1pEM9 >>251
厚みがあるように見えないようにカメラとの距離や拡大率で2つの平面の距離を変えればいいんじゃない
厚みがあるように見えないようにカメラとの距離や拡大率で2つの平面の距離を変えればいいんじゃない
255デフォルトの名無しさん
2016/05/24(火) 14:32:55.62ID:NcOn82rz glPolygonOffset
256デフォルトの名無しさん
2016/05/24(火) 17:16:47.81ID:4MJ+rKOz このクリッピングプレーンって
カメラ座標系らしいが
任意の傾きでクリッピングしてくれるんだろうか?
カメラ視線と平行でなくても良いなら
どういう仕組みだろうか
カメラ座標系らしいが
任意の傾きでクリッピングしてくれるんだろうか?
カメラ視線と平行でなくても良いなら
どういう仕組みだろうか
257デフォルトの名無しさん
2016/05/24(火) 23:13:35.09ID:73PdSs4C C#で、OpenGLリソースの解放忘れても.NETのファイナライザで解放されるようにしたいのだが
調べていたらファイナライザは別スレッドで実行される仕様っぽい事が分かった
コンテキストを有効にできるのは1つのスレッドだけらしいから問題
ミューテックスをロック
↓
コンテキストをMakeCurrent
↓
OpenGLのコマンドを実行
↓
MakeCurrentで現在有効なコンテキストをNULLに
↓
ロック解除
これで何とかなる?
ただロックしたり、何度もMakeCurrent
したりするのは速度的にどうなんだろ
同じコンテキストなら平気?
コマンドをキューから取り出して消費するスレッドを作れば1スレッドでOpenGLコマンドを実行する事も可能かもしれないがそれは複雑そう
調べていたらファイナライザは別スレッドで実行される仕様っぽい事が分かった
コンテキストを有効にできるのは1つのスレッドだけらしいから問題
ミューテックスをロック
↓
コンテキストをMakeCurrent
↓
OpenGLのコマンドを実行
↓
MakeCurrentで現在有効なコンテキストをNULLに
↓
ロック解除
これで何とかなる?
ただロックしたり、何度もMakeCurrent
したりするのは速度的にどうなんだろ
同じコンテキストなら平気?
コマンドをキューから取り出して消費するスレッドを作れば1スレッドでOpenGLコマンドを実行する事も可能かもしれないがそれは複雑そう
258デフォルトの名無しさん
2016/05/25(水) 01:11:39.37ID:bZif6UFV GLのスレッドが終了する前に全部処理すればいいだけだろ。
というかスレッド消滅しちゃったらたぶんリークする。
GLの仕様なので仕方ない。そっちに合わせろ。
というかスレッド消滅しちゃったらたぶんリークする。
GLの仕様なので仕方ない。そっちに合わせろ。
259デフォルトの名無しさん
2016/05/25(水) 07:55:56.73ID:d+DQRqHD260デフォルトの名無しさん
2016/05/25(水) 09:35:29.39ID:Jg8l7ZmY261デフォルトの名無しさん
2016/05/25(水) 15:27:30.58ID:fzqm+Lrj >>259
じゃあ、その面方程式を書いてみてよ
じゃあ、その面方程式を書いてみてよ
262デフォルトの名無しさん
2016/05/25(水) 16:03:06.10ID:Pw7Hw/FX >>261
教えてくださいお願いしますだろ
教えてくださいお願いしますだろ
263デフォルトの名無しさん
2016/05/25(水) 16:41:44.52ID:Qi/4WCte OpenGLってCで書かれてるんでしょうか?
Javaから使いたいんですけどプラットフォームがwindowsならライブラリはどの言語から使っても共通なんでしょうか?
Javaから使いたいんですけどプラットフォームがwindowsならライブラリはどの言語から使っても共通なんでしょうか?
264デフォルトの名無しさん
2016/05/25(水) 16:42:45.54ID:Td5FGjy5 方程式方程式うるせーな
その次のフェーズを言ってるんだよ
その方程式でポリゴンのクリップする境界を特定したとして
どうやってそれを描画するのかってこと
その次のフェーズを言ってるんだよ
その方程式でポリゴンのクリップする境界を特定したとして
どうやってそれを描画するのかってこと
265デフォルトの名無しさん
2016/05/25(水) 23:30:11.95ID:SpZNKB3W266デフォルトの名無しさん
2016/05/25(水) 23:33:36.28ID:SpZNKB3W267デフォルトの名無しさん
2016/05/26(木) 08:19:37.94ID:m6HlOT3G androidスマートフォンにvulkanが搭載されると具体的なこととして何か変わりますか?
また1年後の普及率は個人的にどうなると思いますか
また1年後の普及率は個人的にどうなると思いますか
268デフォルトの名無しさん
2016/05/26(木) 15:31:00.55ID:8n8nKgcZ >>264
デプスバッファとかアルファリファレンスで discard することを理解できるなら、面方程式でのクリップなんて、内積とって大小比較して discard するだけなんだから、分からない理由がわからない。
デプスバッファとかアルファリファレンスで discard することを理解できるなら、面方程式でのクリップなんて、内積とって大小比較して discard するだけなんだから、分からない理由がわからない。
269デフォルトの名無しさん
2016/05/26(木) 18:55:19.65ID:lgnLogyr >>268
WorldView空間の平面は
WorldViewProj空間では平面ではなく
曲面になる
ただしカメラ方向(z軸)と平行な場合は
平面は平面のままとなる
曲面じゃなく平面のままならそりゃ簡単さ
ただ、GLのクリッピングプレーンの座標系は
カメラ空間とあったので
平面の向きによっては曲面になりうる
その場合どのような実装でクリッピングを実現しているのか気になったわけ
まあ逆行列でWorldView空間に戻して
判定、discardすれば出来なくは無いが、
わざわざそんなまぬけな実装入れるか?ってこと
オタクが見当違いも甚だしいってわかったかよ?
WorldView空間の平面は
WorldViewProj空間では平面ではなく
曲面になる
ただしカメラ方向(z軸)と平行な場合は
平面は平面のままとなる
曲面じゃなく平面のままならそりゃ簡単さ
ただ、GLのクリッピングプレーンの座標系は
カメラ空間とあったので
平面の向きによっては曲面になりうる
その場合どのような実装でクリッピングを実現しているのか気になったわけ
まあ逆行列でWorldView空間に戻して
判定、discardすれば出来なくは無いが、
わざわざそんなまぬけな実装入れるか?ってこと
オタクが見当違いも甚だしいってわかったかよ?
270デフォルトの名無しさん
2016/05/26(木) 19:29:40.41ID:IMqlwn34271デフォルトの名無しさん
2016/05/26(木) 20:33:50.99ID:lgnLogyr だから言ってんじゃん
お前は2chの低レベルっぷりを
体現してる奴だってな
教えてやるのもここまでだ
後は自分で勉強するこった
お前は2chの低レベルっぷりを
体現してる奴だってな
教えてやるのもここまでだ
後は自分で勉強するこった
272デフォルトの名無しさん
2016/05/26(木) 20:54:41.79ID:KxXBNl+O 多分透視除算でzが手前から奥にリニアに変化しないということなんだろう
273デフォルトの名無しさん
2016/05/26(木) 21:37:28.12ID:Z1edgFxo だからまあWVPの行列かけた後の透視除算前に処理するんじゃないか?
274デフォルトの名無しさん
2016/05/26(木) 22:04:39.82ID:H0ytGV88275デフォルトの名無しさん
2016/05/26(木) 22:11:24.04ID:H0ytGV88 >>271
リニアにならないのはMVP行列を掛けるとZ値がWに移動してwが1.0にならなくなる
それをピクセルシェーダに渡すとGPUがZ/Wを補間するようになるからリニアにはならなくなる
後は自分で勉強するこったw
リニアにならないのはMVP行列を掛けるとZ値がWに移動してwが1.0にならなくなる
それをピクセルシェーダに渡すとGPUがZ/Wを補間するようになるからリニアにはならなくなる
後は自分で勉強するこったw
276デフォルトの名無しさん
2016/05/26(木) 22:26:10.65ID:Z1edgFxo ピクセルシェーダなんて話は誰もしてないわけだが
277デフォルトの名無しさん
2016/05/26(木) 23:01:04.80ID:CLG55rQ1 glhint(gl_perspective_correction_hint gl_nicest)
つまりナイス!
つまりナイス!
278デフォルトの名無しさん
2016/05/27(金) 09:55:07.38ID:fT3TR/+E クリッププレーンはちゃんとしらべたらシェーダ利用時はそのまま使えないじゃん
別途MV変換した座標を渡す必要があるんだとな
別途MV変換した座標を渡す必要があるんだとな
279デフォルトの名無しさん
2016/05/27(金) 11:49:01.50ID:UpqEF0dP glDisableしようとすると1280エラーになるのだけれど私の環境では使えないのでしょうか?
エラーが出るのは GL_CONVOLUTION_1D_EXT GL_CONVOLUTION_2D_EXT GL_SEPARABLE_2D_EXT
GL_HISTOGRAM_EXT GL_MINMAX_EXTです
環境は CPU:Intel core I7-4771 GPU:オンボード MB:ASUS Z87-PRO-V メモリ:8GB
OS:ArchLinux カーネル4.5.4でGNOMEを使っていて
OpenGLのバージョンはよくわからないのでglxinfoを抜粋します
OpenGL renderer string: Mesa DRI Intel(R) Haswell Desktop
OpenGL core profile version string: 3.3 (Core Profile) Mesa 11.2.2
OpenGL core profile shading language version string: 3.30
OpenGL version string: 3.0 Mesa 11.2.2
OpenGL shading language version string: 1.30
長文申し訳ありませんが、宜しくお願いします
エラーが出るのは GL_CONVOLUTION_1D_EXT GL_CONVOLUTION_2D_EXT GL_SEPARABLE_2D_EXT
GL_HISTOGRAM_EXT GL_MINMAX_EXTです
環境は CPU:Intel core I7-4771 GPU:オンボード MB:ASUS Z87-PRO-V メモリ:8GB
OS:ArchLinux カーネル4.5.4でGNOMEを使っていて
OpenGLのバージョンはよくわからないのでglxinfoを抜粋します
OpenGL renderer string: Mesa DRI Intel(R) Haswell Desktop
OpenGL core profile version string: 3.3 (Core Profile) Mesa 11.2.2
OpenGL core profile shading language version string: 3.30
OpenGL version string: 3.0 Mesa 11.2.2
OpenGL shading language version string: 1.30
長文申し訳ありませんが、宜しくお願いします
280デフォルトの名無しさん
2016/05/27(金) 14:09:39.83ID:5/CmsdlJ281デフォルトの名無しさん
2016/05/27(金) 14:30:29.08ID:UpqEF0dP >>280
レス有難う
Linux版のOpenToonzで落ちるところを探ってて行き当たったので
GL_EXT_convolutionとかGL_EXT_histogramのifdefで囲ってあるようですが上手く判定できていないのかな
もうちと調べてみます
レス有難う
Linux版のOpenToonzで落ちるところを探ってて行き当たったので
GL_EXT_convolutionとかGL_EXT_histogramのifdefで囲ってあるようですが上手く判定できていないのかな
もうちと調べてみます
282デフォルトの名無しさん
2016/05/27(金) 14:42:52.68ID:fvoGjXwU >>281
それらがdefineされてるかどうかとお前の使ってるGPUがそれらをサポートしてるかどうかは別の話だから
それらがdefineされてるかどうかとお前の使ってるGPUがそれらをサポートしてるかどうかは別の話だから
283デフォルトの名無しさん
2016/05/27(金) 20:11:31.75ID:LFdJJr4H なぜextension調べないのか
284デフォルトの名無しさん
2016/06/03(金) 20:26:38.31ID:hF5p/WFD OpenGL(ES)のバージョンを指定で使いたいんだけど、
getコンテキストなんたらで、バージョン指定すりゃいいの?
2.0指定してみたけど、読み出したら3.0になってるんだが・・・
getコンテキストなんたらで、バージョン指定すりゃいいの?
2.0指定してみたけど、読み出したら3.0になってるんだが・・・
285デフォルトの名無しさん
2016/06/03(金) 20:43:22.41ID:0Rj+QG2p >>284
2のプログラムそのまま動くから3で問題ないよ
2のプログラムそのまま動くから3で問題ないよ
286デフォルトの名無しさん
2016/06/05(日) 04:14:39.27ID:ye6u/kZm 機械学習ベース グラフィックAPIまだできてねーのかよ
287デフォルトの名無しさん
2016/06/05(日) 16:37:43.32ID:vQseBiFc OpenGLで単純な直線・ドット・四角形の描画を実行すると
ドライバ(ビデオカード?)によって同じ座標値を与えても描画結果が異なるみたいなんだけど
そういうもんなの?
環境依存しまくりで頭抱える
ドライバ(ビデオカード?)によって同じ座標値を与えても描画結果が異なるみたいなんだけど
そういうもんなの?
環境依存しまくりで頭抱える
288デフォルトの名無しさん
2016/06/05(日) 16:40:06.35ID:J5Uoisn/ そういう話がなくはないけど、そこまで単純なモノだったらなにかコーディングが間違ってそう
289デフォルトの名無しさん
2016/06/05(日) 22:42:25.12ID:fKt+kMxz Adrenoはmediump以下の精度にしようとしても無視してhighpにするって読んだ
290デフォルトの名無しさん
2016/06/06(月) 02:12:48.61ID:etHtvK3t291デフォルトの名無しさん
2016/06/06(月) 07:00:36.40ID:UEWlMU/Q 旧APIの固定機能パイプラインの実装が微妙に異なるんじゃね。型とか。
292デフォルトの名無しさん
2016/06/06(月) 07:37:17.36ID:Y6IHoxrC Vertex2d指定で14x14の小さい丸に見立てた八角形を描こうとしたら形が歪んで
ミスが見つけられなかったから他の環境で実行したら違う形にゆがんだので
テスト用にL字型の線分を描かせてみたら違うピクセルが抜けたりと
ぶっちゃけ斜め要素のない四角形以外はおかしかったです
ミスが見つけられなかったから他の環境で実行したら違う形にゆがんだので
テスト用にL字型の線分を描かせてみたら違うピクセルが抜けたりと
ぶっちゃけ斜め要素のない四角形以外はおかしかったです
293デフォルトの名無しさん
2016/06/06(月) 21:08:34.91ID:EceGlO4T 凹ポリ描こうとしてたり…
無いか
無いか
294デフォルトの名無しさん
2016/06/07(火) 13:27:04.82ID:irsyXiHg >>292
それだけだと何とも言えないけどZテスト有効にしてZ値込みで描画してたりすんじゃないの?
それだけだと何とも言えないけどZテスト有効にしてZ値込みで描画してたりすんじゃないの?
295デフォルトの名無しさん
2016/06/07(火) 13:28:59.61ID:irsyXiHg296デフォルトの名無しさん
2016/06/07(火) 13:40:18.91ID:YXdpUuyy おかしなコマンドやデータを与えた時の動作は
実装依存でもおかしくない
実装依存でもおかしくない
297デフォルトの名無しさん
2016/06/09(木) 22:51:32.59ID:Z2ZBFZUW GLSLのShader Storage Buffer Objectで質問だけど、
これを関数の引数に渡すのってどう書くの?
layout(std140,binding=0) buffer _a {
writeonly vec4 a[];
};
layout(std140, binding=1) buffer _b {
readonly vec4 b[];
};
があって、_bの内容を_aにコピーできるような一般的な関数を作る場合に
引数の型がどうなるのかがわかりません。
これを関数の引数に渡すのってどう書くの?
layout(std140,binding=0) buffer _a {
writeonly vec4 a[];
};
layout(std140, binding=1) buffer _b {
readonly vec4 b[];
};
があって、_bの内容を_aにコピーできるような一般的な関数を作る場合に
引数の型がどうなるのかがわかりません。
298デフォルトの名無しさん
2016/06/16(木) 19:35:08.66ID:Sexkwk5r eglCreateSyncKHRとか、KHR付いた拡張使いたいんだけど、
なんか前提条件ある?
試したらEGL_NO_SYNC_KHRしかかえって来ない、これって駄目って事だよな?
もうひとつ、この手の機能はglFinishとかの代用って解説あるけど、
glutとか使わない生のGLES使ってる分にはeglswapがあるから意味無い?
なんか前提条件ある?
試したらEGL_NO_SYNC_KHRしかかえって来ない、これって駄目って事だよな?
もうひとつ、この手の機能はglFinishとかの代用って解説あるけど、
glutとか使わない生のGLES使ってる分にはeglswapがあるから意味無い?
299デフォルトの名無しさん
2016/06/26(日) 02:07:41.62ID:dw6nt173 Vulkan SDK 1.0.17.0
300デフォルトの名無しさん
2016/06/27(月) 11:49:12.99ID:E0ORTsPB AppleはVulkan対応しないの?
301デフォルトの名無しさん
2016/06/29(水) 07:20:04.87ID:bcgc76wf Apple様はMetal推しだからな
いいAPIだと思うよ、移植性を除けば
いいAPIだと思うよ、移植性を除けば
302デフォルトの名無しさん
2016/06/30(木) 18:59:31.43ID:qTuZz+mN303デフォルトの名無しさん
2016/06/30(木) 19:42:05.22ID:LevSiXF4 mesaみたいなもんなんだろうか?
304デフォルトの名無しさん
2016/07/01(金) 22:57:55.48ID:pgrRPR6O 今時OpenGLが動かない環境なんてクソみたいもんだからどうでもいいよ
305デフォルトの名無しさん
2016/07/02(土) 19:55:01.85ID:ZiIDTaS+ 環境を作る側に行く可能性が無い人にとってはね。
2016/07/05(火) 03:47:43.79ID:fGwSDfE9
307デフォルトの名無しさん
2016/07/05(火) 19:42:37.58ID:QfXwP4YG Vulkanって今まで通り、GLESのコードで動くの?
308デフォルトの名無しさん
2016/07/05(火) 21:54:11.70ID:l6bE/62d309デフォルトの名無しさん
2016/07/05(火) 22:15:52.17ID:+mdcf8kt Vulkanってそんなむずいの?
https://forums.developer.apple.com/thread/38469
MetalはVulkanよりは色々やってくれて優しいみたいな事が書いてある
MetalがVulkanよりハイレベルで動くなら
他のプラットフォームで動くMetal互換の実装を作るのは可能?
でもプロプライエタリAPIの互換実装なんか誰も作らないか
https://forums.developer.apple.com/thread/38469
MetalはVulkanよりは色々やってくれて優しいみたいな事が書いてある
MetalがVulkanよりハイレベルで動くなら
他のプラットフォームで動くMetal互換の実装を作るのは可能?
でもプロプライエタリAPIの互換実装なんか誰も作らないか
310デフォルトの名無しさん
2016/07/06(水) 00:03:57.85ID:zRpS2tef VulkanのアプリをMetalで動かすレイヤーはある
Metalは絶対消え去る運命にあるのは間違いない
Metalは絶対消え去る運命にあるのは間違いない
311デフォルトの名無しさん
2016/07/06(水) 12:27:48.03ID:qioYPRFr OpenGLでガンヴァロウ
そんなAPIやってられん
そんなAPIやってられん
312デフォルトの名無しさん
2016/07/07(木) 23:12:05.35ID:hGlT+uLz313デフォルトの名無しさん
2016/07/07(木) 23:13:23.07ID:hGlT+uLz ラッパーライブラリを作る側はアプリを作る側とOpenGLからしてみれば同じだよ
314デフォルトの名無しさん
2016/07/08(金) 12:23:32.11ID:VW0hfFNQ >>311
そのOpenGLの中身をVulkanにしよう動きが既に出ている
効率を上げないとしんどいインディーがすごく増えたし
スマホゲームにおいてVulkanを積極的にやらんとMetal持ってるiOSに負ける
そのOpenGLの中身をVulkanにしよう動きが既に出ている
効率を上げないとしんどいインディーがすごく増えたし
スマホゲームにおいてVulkanを積極的にやらんとMetal持ってるiOSに負ける
315デフォルトの名無しさん
2016/07/08(金) 12:44:15.91ID:UF+RGGyc >>312
それと、搭載予定のGPUが開発中で実物が無い時に、すでに開発はスタートしてるとかね。
それと、搭載予定のGPUが開発中で実物が無い時に、すでに開発はスタートしてるとかね。
316デフォルトの名無しさん
2016/07/08(金) 15:17:39.75ID:M+8Itm4Z >>314
OpenGLをVulkanで実装したところで効率が良くなるとは思えんが…
むしろ間接的になるから効率は悪くなるだろ
OpenGLは仕様上色々ドライバがチェックすべき事が多いからDrawコールが重いんだろう
Vulkanで実装したところでやるべき事は一緒だ
OpenGLをVulkanで実装したところで効率が良くなるとは思えんが…
むしろ間接的になるから効率は悪くなるだろ
OpenGLは仕様上色々ドライバがチェックすべき事が多いからDrawコールが重いんだろう
Vulkanで実装したところでやるべき事は一緒だ
317デフォルトの名無しさん
2016/07/08(金) 16:12:15.71ID:XUluGpCt OpenGLはまずコマンドバッファの管理がドライバ任せなのが良くない感じ?
テクスチャや頂点バッファ用のメモリ確保とか転送をどうやるかもドライバ次第だしな
モバイルでglTexSubImage2dがやたら遅いとかよくあった
モバイルだと殆どのGPUがタイルベースだけど
この処理もドライバ任せだし
処理結果を取っておいたりも出来ない
テクスチャや頂点バッファ用のメモリ確保とか転送をどうやるかもドライバ次第だしな
モバイルでglTexSubImage2dがやたら遅いとかよくあった
モバイルだと殆どのGPUがタイルベースだけど
この処理もドライバ任せだし
処理結果を取っておいたりも出来ない
318デフォルトの名無しさん
2016/07/09(土) 23:10:45.67ID:M+Fpadyy >>317
コンテキストが一つってのが問題点じゃなかったでしたっけ?
コンテキストが一つってのが問題点じゃなかったでしたっけ?
2016/07/10(日) 11:16:29.74ID:JU0nYL+k
コード量が増えるってことはバグも人件費も増えるってことじゃないの
普及するのかね
普及するのかね
2016/07/10(日) 11:59:50.38ID:gNtLgAII
実行速度を重視するかどうかで分かれるだけでしょ
2016/07/10(日) 12:15:17.43ID:IeFM40zW
2016/07/10(日) 13:08:45.63ID:BPe8fmjI
どうせ使われてないんだから過去の互換性なんか切り捨ててくればよかったのに
使われまくってるDirectXでもやってんのに
使われまくってるDirectXでもやってんのに
2016/07/10(日) 15:17:11.91ID:SUPEDuXc
324名無しさん@そうだ選挙に行こう! Go to vote!
2016/07/10(日) 18:01:48.02ID:7bNQZoic >>322
切り捨てて作ったのがVulkanだろ
切り捨てて作ったのがVulkanだろ
325デフォルトの名無しさん
2016/07/10(日) 21:39:44.73ID:K/z/M4wG Vulkanは最近のGPUの仕様に合わせて策定されてんだから今後は普通に使われるようになるだろ
時代はどんどん先へ進んでんだよ
プログラマが追い付かなきゃいかんよ
時代はどんどん先へ進んでんだよ
プログラマが追い付かなきゃいかんよ
326デフォルトの名無しさん
2016/07/11(月) 11:59:03.53ID:xfWl4DPh コード的には退化してる
327デフォルトの名無しさん
2016/07/11(月) 12:43:39.07ID:tFSd98iK >>326
そう思うなら直接使うの諦めてゲームエンジンとかのミドルウェア使えばいいじゃん。それらが対応してれば恩恵受けれるんだし
そう思うなら直接使うの諦めてゲームエンジンとかのミドルウェア使えばいいじゃん。それらが対応してれば恩恵受けれるんだし
328デフォルトの名無しさん
2016/07/13(水) 11:22:02.27ID:0mOEb/aF OpenGLもミドルウェア的な物を通じて使う物じゃないのか
329デフォルトの名無しさん
2016/07/13(水) 21:54:26.00ID:fWwCFzYf コード的には退化とか言って
ハードの進化がPGのオナニーに帳消しにされてるのが我慢ならない。
クソみたいに遅いなスクリプト言語は禁止せよ
ハードの進化がPGのオナニーに帳消しにされてるのが我慢ならない。
クソみたいに遅いなスクリプト言語は禁止せよ
330デフォルトの名無しさん
2016/07/13(水) 22:16:54.83ID:0mOEb/aF ?
331デフォルトの名無しさん
2016/07/13(水) 22:34:50.16ID:ygJbv1Fw 高級言語のFORTRANから低級言語のCに「退化」したようなもんだろ。
332デフォルトの名無しさん
2016/07/14(木) 07:32:49.91ID:X1+/IxXc アーキテクチャの進化に付いていけないって悲しいな
333デフォルトの名無しさん
2016/07/14(木) 22:30:11.83ID:y2jpUAL1 今まで抽象化されてドライバ任せだったメモリ管理とかが、今後はソフトやプログラマが直接管理しなきゃならないから、
直にはついて行けない奴も大勢いるだろ
というか、エンジンや環境自体を開発しているようなハイエンドな連中以外は環境が整うまで待ちだろ
直にはついて行けない奴も大勢いるだろ
というか、エンジンや環境自体を開発しているようなハイエンドな連中以外は環境が整うまで待ちだろ
334デフォルトの名無しさん
2016/07/15(金) 00:08:34.60ID:TvQRmVn+ つうか赤本早くしてくれ…(一応10月発売予定にはなってる)
335デフォルトの名無しさん
2016/07/15(金) 20:23:03.82ID:3Sl2ginq 対応実機持ってないしなあ
336デフォルトの名無しさん
2016/07/15(金) 20:23:51.70ID:zqzheoRV そこだよね
どこまで対応したドライバが普及するのか
どこまで対応したドライバが普及するのか
337デフォルトの名無しさん
2016/07/15(金) 20:47:56.99ID:+hrWOFBB 今は泥でGLつついてるんだがjavaでVulkanAPIとかパフォーマンス出なそう
まあ遅い言語でチューニングした方が感コツ掴めそうだから完成したらC++に清書か
まあ遅い言語でチューニングした方が感コツ掴めそうだから完成したらC++に清書か
338デフォルトの名無しさん
2016/07/15(金) 20:51:50.49ID:NV7zQ3yX Intel内蔵GPUでもLinuxだったらIvy Bridge(2012年発売)から対応してるぞ
Windows版だと最近のしか対応しないようだが
NVIDIAも2012年製のから対応してる
↓詳しいことはこれ見れば分かる
https://en.wikipedia.org/wiki/Vulkan_(API)
Windows版だと最近のしか対応しないようだが
NVIDIAも2012年製のから対応してる
↓詳しいことはこれ見れば分かる
https://en.wikipedia.org/wiki/Vulkan_(API)
339デフォルトの名無しさん
2016/07/15(金) 20:56:33.06ID:NV7zQ3yX AndroidはAdreno一強だけど500からしか対応しないから今年の最新モデルからだね
PowerVRはかなり古いのから対応してるけどこっちはほぼApple専用だしな…
PowerVRはかなり古いのから対応してるけどこっちはほぼApple専用だしな…
340デフォルトの名無しさん
2016/07/15(金) 21:26:25.72ID:zqzheoRV intelの対応が遅いのがな
Macの少し前のでは動かないの確定か・・・
Macの少し前のでは動かないの確定か・・・
341デフォルトの名無しさん
2016/07/15(金) 22:07:21.36ID:kBkiG3Sk >>339
ハードウェア的にはそこそこ古いものでも対応出来るんだろうがAndroidのSoCベンダーは一度出した製品のドライバー絶対更新しないからな…
Googleすらドライバーのバグを回避するworkaround書いてる程だから
ハードウェア的にはそこそこ古いものでも対応出来るんだろうがAndroidのSoCベンダーは一度出した製品のドライバー絶対更新しないからな…
Googleすらドライバーのバグを回避するworkaround書いてる程だから
342デフォルトの名無しさん
2016/07/15(金) 22:44:03.45ID:+hrWOFBB グラフィック周りの更新は特に文鎮化の危険あるからな
343デフォルトの名無しさん
2016/07/15(金) 22:58:50.58ID:3IYjBgbR >>337
そもそもAndroidのVulkan APIってNDK前提じゃ?
そもそもAndroidのVulkan APIってNDK前提じゃ?
344デフォルトの名無しさん
2016/07/16(土) 00:26:24.80ID:f/DgtYZl 幸いな事にVulkanはモバイルとデスクトップでAPIに差がないからとりあえずデスクトップで組んでおくのがいいだろうね
345デフォルトの名無しさん
2016/07/16(土) 00:37:04.46ID:YVZVQkaI >>342
いや、関係ないだろ
いや、関係ないだろ
346デフォルトの名無しさん
2016/07/16(土) 07:41:16.22ID:7CVppVRt >>343
へーそうなの初耳だわ
へーそうなの初耳だわ
■ このスレッドは過去ログ倉庫に格納されています
