OpenGL/Vulkanスレ Part22©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
2015/08/27(木) 18:12:51.54ID:VxmGCqDu
クロスプラットフォームの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/
2016/07/06(水) 12:27:48.03ID:qioYPRFr
OpenGLでガンヴァロウ
そんなAPIやってられん
2016/07/07(木) 23:12:05.35ID:hGlT+uLz
>>306
なんか勘違いしてそうだけど、環境作る側の「環境」って組み込み機器とかの事だぞ
GPUは無いけどOpenGL ESを動かしたいとかの特殊な状況で役に立つだろう
2016/07/07(木) 23:13:23.07ID:hGlT+uLz
ラッパーライブラリを作る側はアプリを作る側とOpenGLからしてみれば同じだよ
2016/07/08(金) 12:23:32.11ID:VW0hfFNQ
>>311
そのOpenGLの中身をVulkanにしよう動きが既に出ている
効率を上げないとしんどいインディーがすごく増えたし
スマホゲームにおいてVulkanを積極的にやらんとMetal持ってるiOSに負ける
315デフォルトの名無しさん
垢版 |
2016/07/08(金) 12:44:15.91ID:UF+RGGyc
>>312
それと、搭載予定のGPUが開発中で実物が無い時に、すでに開発はスタートしてるとかね。
2016/07/08(金) 15:17:39.75ID:M+8Itm4Z
>>314
OpenGLをVulkanで実装したところで効率が良くなるとは思えんが…
むしろ間接的になるから効率は悪くなるだろ
OpenGLは仕様上色々ドライバがチェックすべき事が多いからDrawコールが重いんだろう
Vulkanで実装したところでやるべき事は一緒だ
2016/07/08(金) 16:12:15.71ID:XUluGpCt
OpenGLはまずコマンドバッファの管理がドライバ任せなのが良くない感じ?

テクスチャや頂点バッファ用のメモリ確保とか転送をどうやるかもドライバ次第だしな
モバイルでglTexSubImage2dがやたら遅いとかよくあった

モバイルだと殆どのGPUがタイルベースだけど
この処理もドライバ任せだし
処理結果を取っておいたりも出来ない
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
>>318
コンテキストは複数持てるけど
MakeCurrentが同時に一つのスレッドからしか出来なくて
1つのスレッドからしかコマンドを送れないのが問題では
このマルチコアCPUの時代に
2016/07/10(日) 13:08:45.63ID:BPe8fmjI
どうせ使われてないんだから過去の互換性なんか切り捨ててくればよかったのに
使われまくってるDirectXでもやってんのに
2016/07/10(日) 15:17:11.91ID:SUPEDuXc
>>320
結局実行速度が厳しいスマホだからこそ急いで開発しないとマジでiOSに人取られるからなあ
より負荷の高いゲームでどっちが快適に動くかってのを見せられてしまうとなおさら
324名無しさん@そうだ選挙に行こう! Go to vote!
垢版 |
2016/07/10(日) 18:01:48.02ID:7bNQZoic
>>322
切り捨てて作ったのがVulkanだろ
2016/07/10(日) 21:39:44.73ID:K/z/M4wG
Vulkanは最近のGPUの仕様に合わせて策定されてんだから今後は普通に使われるようになるだろ
時代はどんどん先へ進んでんだよ
プログラマが追い付かなきゃいかんよ
2016/07/11(月) 11:59:03.53ID:xfWl4DPh
コード的には退化してる
327デフォルトの名無しさん
垢版 |
2016/07/11(月) 12:43:39.07ID:tFSd98iK
>>326
そう思うなら直接使うの諦めてゲームエンジンとかのミドルウェア使えばいいじゃん。それらが対応してれば恩恵受けれるんだし
2016/07/13(水) 11:22:02.27ID:0mOEb/aF
OpenGLもミドルウェア的な物を通じて使う物じゃないのか
2016/07/13(水) 21:54:26.00ID:fWwCFzYf
コード的には退化とか言って
ハードの進化がPGのオナニーに帳消しにされてるのが我慢ならない。
クソみたいに遅いなスクリプト言語は禁止せよ
2016/07/13(水) 22:16:54.83ID:0mOEb/aF
?
2016/07/13(水) 22:34:50.16ID:ygJbv1Fw
高級言語のFORTRANから低級言語のCに「退化」したようなもんだろ。
2016/07/14(木) 07:32:49.91ID:X1+/IxXc
アーキテクチャの進化に付いていけないって悲しいな
2016/07/14(木) 22:30:11.83ID:y2jpUAL1
今まで抽象化されてドライバ任せだったメモリ管理とかが、今後はソフトやプログラマが直接管理しなきゃならないから、
直にはついて行けない奴も大勢いるだろ
というか、エンジンや環境自体を開発しているようなハイエンドな連中以外は環境が整うまで待ちだろ
2016/07/15(金) 00:08:34.60ID:TvQRmVn+
つうか赤本早くしてくれ…(一応10月発売予定にはなってる)
2016/07/15(金) 20:23:03.82ID:3Sl2ginq
対応実機持ってないしなあ
2016/07/15(金) 20:23:51.70ID:zqzheoRV
そこだよね
どこまで対応したドライバが普及するのか
2016/07/15(金) 20:47:56.99ID:+hrWOFBB
今は泥でGLつついてるんだがjavaでVulkanAPIとかパフォーマンス出なそう
まあ遅い言語でチューニングした方が感コツ掴めそうだから完成したらC++に清書か
2016/07/15(金) 20:51:50.49ID:NV7zQ3yX
Intel内蔵GPUでもLinuxだったらIvy Bridge(2012年発売)から対応してるぞ
Windows版だと最近のしか対応しないようだが
NVIDIAも2012年製のから対応してる
↓詳しいことはこれ見れば分かる
https://en.wikipedia.org/wiki/Vulkan_(API)
2016/07/15(金) 20:56:33.06ID:NV7zQ3yX
AndroidはAdreno一強だけど500からしか対応しないから今年の最新モデルからだね
PowerVRはかなり古いのから対応してるけどこっちはほぼApple専用だしな…
2016/07/15(金) 21:26:25.72ID:zqzheoRV
intelの対応が遅いのがな
Macの少し前のでは動かないの確定か・・・
341デフォルトの名無しさん
垢版 |
2016/07/15(金) 22:07:21.36ID:kBkiG3Sk
>>339
ハードウェア的にはそこそこ古いものでも対応出来るんだろうがAndroidのSoCベンダーは一度出した製品のドライバー絶対更新しないからな…
Googleすらドライバーのバグを回避するworkaround書いてる程だから
2016/07/15(金) 22:44:03.45ID:+hrWOFBB
グラフィック周りの更新は特に文鎮化の危険あるからな
2016/07/15(金) 22:58:50.58ID:3IYjBgbR
>>337
そもそもAndroidのVulkan APIってNDK前提じゃ?
2016/07/16(土) 00:26:24.80ID:f/DgtYZl
幸いな事にVulkanはモバイルとデスクトップでAPIに差がないからとりあえずデスクトップで組んでおくのがいいだろうね
345デフォルトの名無しさん
垢版 |
2016/07/16(土) 00:37:04.46ID:YVZVQkaI
>>342
いや、関係ないだろ
2016/07/16(土) 07:41:16.22ID:7CVppVRt
>>343
へーそうなの初耳だわ
2016/07/16(土) 09:51:04.73ID:bNZm+5vP
VulkanのAPIがローレベル過ぎてJavaバインディングを作るのは難しいのかも
2016/07/17(日) 16:43:47.60ID:cm6P0jo0
OpenGLを蹴ってまでのAPIでJava使ったら速度でなくて意味ないじゃん
2016/07/18(月) 23:16:14.49ID:7760Fm83
流れを見るとJava+OpenGL→Java+Vulkanって話でしょ
当然意味はある
あとバインディングもOpenGLより簡単だろう
VulkanAPIは全てXMLで定義されてるからツールに通して作れるはず
2016/07/23(土) 09:48:38.91ID:Plvoi5O2
OpenGLでもややこしいのにこれ以上ややこしくするなよ
2016/07/23(土) 11:51:52.48ID:q2oxmEOv
よくわからないけど
GPUのこと詳しくなればVulkanのほうがわかりやすくなるんじゃね
よくわからないけど
2016/07/23(土) 12:49:49.76ID:V4JGvq9g
実際そうだと思う。OpenCLを先にやってたらOpenGLは暗黙の了解みたいなのが多くてわけわからなかった。
2016/07/24(日) 10:00:19.87ID:BvjWz3uk
VulkanをJavaに持っていこうとしても
JNIでやり取りする時のコストがでかくて
低オーバーヘッドの意味がなくなるとかない?
2016/07/24(日) 10:16:24.11ID:Z3SkWthj
試せ
2016/07/24(日) 13:19:04.93ID:dq+Rqgee
SDKサンプルが上がってこないとわかんないな最初に描画手順のコード?渡して
後は頂点渡すだけみたいな感じなら普通に恩恵あるだろうし
2016/07/24(日) 17:20:27.50ID:XV2OXjbQ
複雑なアプリを作ってるとOpenGLはステートを内部でもってるから整合性を保つのが滅茶苦茶面倒になる
Vulkanは外部に置いておけるからその辺は簡単になるだろう
OpenGL→最初簡単だけど後が大変
Vulkan→最初大変だけど後が楽
じゃないか?
2016/07/24(日) 23:47:56.68ID:QfpMWXUS
Vulkan SDK 1.0.21.1
2016/07/25(月) 12:28:39.42ID:bHa5mRdV
nvidiaはPCで不利になるから裏でVulkanを普及させたくない意図が見え隠れしてるけど
OpenGLはいい加減古い
2016/07/26(火) 00:57:36.60ID:P70t/zUn
NVIDIAは無理してVulkanに移行しなくてもOpenGLだけでCPU負荷を減らせる拡張を用意してるだけだ
デベロッパーに優しいんだよ
それとゲームはDirectX12の速度の方が重要じゃないか?
360デフォルトの名無しさん
垢版 |
2016/07/26(火) 01:56:37.46ID:R2cFxA5u
>>359
Windowsしか使わないの?
2016/07/26(火) 20:37:51.77ID:jYnejzD0
いまやスマホだよな
2016/07/26(火) 20:37:53.18ID:jYnejzD0
いまやスマホだよな
2016/07/26(火) 23:46:34.98ID:1yunqESs
Steamの調査だとWindowsが95%以上だけどな
2016/07/26(火) 23:50:35.33ID:HtJzFbj/
スマホもハードが進化したらPC用OSになる
2016/07/27(水) 10:44:58.20ID:MIqC1yVf
スマホは電池の問題があるから意図的に遅くても消費電力少ないCPU使ってるから
PCを超えることはないんだよバーカ
2016/07/27(水) 12:34:24.99ID:n5XSmKiJ
逆にAndroidがWindowsを置き換える
MS帝国の終焉
2016/07/27(水) 13:36:40.66ID:lrmpmMbD
それ言うならChromeOS(Chromebook)だな
もはやAndroidも包含してんだから
2016/07/27(水) 14:24:40.83ID:CeyxgAlj
AndroidのOpenGLESは正直無茶苦茶で完全にiOSに敗北してるからさっさとVulkanラッパーに移行したい
2016/07/27(水) 17:57:49.91ID:aSOycJoj
ChromeOSを電話に乗せればよかったんじゃと思う泥は急こしらえっていうか雑だね嫌いじゃないが
370デフォルトの名無しさん
垢版 |
2016/07/27(水) 22:46:27.42ID:+xrdoiGB
>>368
Vulkanの薄いAPIすら心配なレベルだからなぁ…
2016/07/27(水) 22:50:44.37ID:0Ef+lpVH
AndroidのOpenGLESが無茶苦茶に思えるのは腐ってるドライバのせいだろ
しかもアップデートもされない
Vulkanではそうならないことを願う
372デフォルトの名無しさん
垢版 |
2016/07/30(土) 16:49:27.46ID:NnN7Vre0
>>369
ChromeOSに限らずGoogleの出すものは全部雑な感じする
2016/08/02(火) 06:56:55.79ID:R+izKGGu
vulkanってHLSL使えるらしいからGLSLいらないね
2016/08/03(水) 00:09:59.72ID:jr+ageRA
GLSLは滅びぬ、何度でも蘇るさ!
2016/08/03(水) 00:26:49.09ID:TYVGHSEt
ていうか特定のシェーダー言語に捕らわれる必要は無くなったわけだし
2016/08/03(水) 10:22:21.68ID:n1aeLSbX
なんにしろそんな最新ハードまだ持ってないし日本語本もないしOpenGL ES3の方が覚えたい
2016/08/08(月) 23:48:34.59ID:k72FOCvw
Vulkan実行すると、OSいきなり落ちたりしない?
コーディングしてて即落ちして萎える。
2016/08/09(火) 00:02:34.00ID:/90aZcQE
おま環じゃね?
2016/08/09(火) 01:02:18.05ID:cMzsnvho
OpenGLみたいにドライバーが実行時エラーを補足しないからな
2016/08/11(木) 11:27:04.55ID:lFfds5RZ
おまコードじゃね?
2016/08/11(木) 13:12:10.10ID:FP3MI2h+
おま○コード
2016/08/16(火) 17:35:02.14ID:/553Bm79
DirectXじゃなくてOpenGL使う意味ってある?OpenGLは研究に使われてるイメージ
2016/08/16(火) 17:48:32.17ID:+HOVpTRk
mac対応
2016/08/16(火) 18:34:02.00ID:6YKAxD8c
>>382
DirectXの方が速いはず
やってることは同じ
2016/08/16(火) 18:43:56.12ID:HlSmpCVY
DirectXで書くといずれ動く環境が無くなる可能性があるが
OpenGLはいまだにドライバが1.0のコードが動くように対応している
その違い
だからといって今更begin,end,vertexを使ったコードを書くべきでは全くない
たまに質問見かけたりするけどな
2016/08/16(火) 20:03:30.29ID:/553Bm79
>>383-385
使えるAPIもOpenGLの方が少ないイメージあったんだけどあまり変わらないってことか
2016/08/16(火) 20:15:59.04ID:EOyum1ME
1から勉強する場合はDirectXとOpenGLとVulkan、どれがいいのん?
2016/08/16(火) 20:50:06.17ID:o2FZVflw
>>387
DirectX(D3D11)安定
2016/08/16(火) 21:20:02.38ID:5Trr3wwO
dxは日本語リファレンスが神
3dに対する情報も多く含み大変勉強になる
俺もdx11を勧める
2016/08/16(火) 21:45:25.49ID:EOyum1ME
>>388,389
レスありがとう
やっぱ日本語の情報が沢山ある方がやる気にも繋がるよね
2016/08/16(火) 23:35:20.25ID:56zF905F
つうか3DAPIに安定を求めても無駄だ
OpenGLは比較的安定してるから研究目的で使われてるだけだ
それと最先端の情報は間違いなく日本語ではない
2016/08/17(水) 11:03:05.64ID:VM9CuBkP
OpenGLとD3D9は古い手法が混ざっていて混乱の元
VulkanとD3D12は周辺知識が余計に要る
2016/08/17(水) 13:52:00.66ID:P3V6aYuj
お前どっちもちゃんと扱った事ないだろw
2016/08/17(水) 15:34:47.82ID:fGC+I60P
WindowsだけならDirectXで良いけど、スマフォとかMacとかマルチを考えるならOpenGL
2016/08/17(水) 16:45:06.27ID:7YeA1aVk
1から勉強するならWebGLが最適
最新のブラウザには良く出来たデバッガとプロファイラが備わってるし
コンソールにはご丁寧に実行時エラーを表示してくれる
どうせお前ら実行時エラー出しまくりなんだろうからこれが滅茶苦茶役に立つ
で、基礎を身に着けたらC++とかでやればいい
2016/08/17(水) 20:09:15.75ID:QRsMLiC7
>>385
ES2.0はプログラマブルシェーダーあるGPUが前提になって
それに要らん機能は削除されてる

Coreプロファイルもなんか色々削除されてるはず
2016/08/17(水) 20:13:46.78ID:SlPTVXjn
coreプロファイルってなんですか?
2016/08/18(木) 20:01:09.03ID:MF6CGVf/
2.xまでにあった要らん機能まで思い切って削っちゃったバージョン?
2016/08/19(金) 20:50:01.17ID:s5nMr5/q
directx周りのossのライブラリは軒並み微妙な印象
2016/09/02(金) 15:44:31.82ID:HIFOxvQq
>>365
電池も再来年に革新が起こりそうだけどね
まあVulkanに取り組んどいた方が後々楽だと思うよ
2016/09/03(土) 16:40:52.81ID:FrYijLTu
>>400
違うスレでも見た気がするけど、その電池の革新って何だ?
ソースプリーズ
2016/09/03(土) 23:51:00.03ID:h2wll6jz
日経エレクトロニクスでも記事になってた全固体電池じゃね?
安全で容量が数倍になるうえに寿命も長く、さらに充電時間も短縮するとか。
2016/09/06(火) 00:16:04.95ID:dm/HXvsI
固体電池が実用になるのは早くても2020年頃になると思うけどね
で、容量が大きくなったからと言ってGPUをブン回すことが出来るかって言うとそうじゃないな
電池の持ちは良くなるだろうけど現状でもスマホで3Dゲームやると
持ってられなくなるぐらい熱くなるから、結局GPUの省電力化が全てだろう
2016/09/06(火) 10:46:46.56ID:dPVu7qd7
さすがにpcか据え置き機でやれよ
405デフォルトの名無しさん
垢版 |
2016/09/06(火) 18:54:57.67ID:MfZbc6Jb
mobile が PC 追い越すことは永遠にない
2016/09/06(火) 21:01:44.94ID:3p+KPqnG
>>405
本当に永遠と言い切れるか?
電力を無線で飛ばす時代だ
普通に持ってるだけでスマホに500W以上の大電力が供給される可能性だってゼロとは言えない
そうなるとPCを超えられる
2016/09/06(火) 21:23:34.01ID:e+pQoU+e
お前は未来技術板にでも行くんだな。
2016/09/06(火) 22:32:04.24ID:xiDyDxAm
物理的なサイズの問題はどこいったのかな。
小型で高性能化したスマホの技術を結局デスクトップに応用できるんだからでかいほうが強いのはずっとかわらん。
2016/09/06(火) 23:50:21.43ID:BbG5xseE
>>408
PC用にボードを販売しても儲からないからスマホに最先端GPUを供給するようになったら立場が逆転する
経済的に立場が逆転する事は十分考えられる
よって永遠とは言い難い
2016/09/07(水) 00:29:44.15ID:CPDLZkVP
説得力ゼロでワロタ
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。