はてなキーワード: OpenGLとは
元増田です。書くのは初めてなんだけど、たくさん反応があって嬉しい。
内定が出た時は宝くじが当たったような気持ちだった。本当に無知だった。
卒研ではC++とOpenGLで朝から夜までプログラムを書いてて楽しかった。
ゲームプログラマに興味があったのは、そういう事ができそうな気がしたからだと思う(実際どうなのかは知らないが)
VB製ソフトの機能追加や改修をして、データベースを弄り、Excelにテスト結果を書く日々。
他にも諸々の書き物があり、Excelを使っている時間の方が長い。
全く楽しくない。辛い。上司や近くの人も黙々と同じ事やってる。
http://www.heroesofnewerth.com/
プログラミング能力もないし、日本人は同人でやってることがレベルが低すぎる
糞ジャップの開発能力は一生、シューティング、テトリス、横スク、ラノベ、ターンRPG
そんな程度だよ
↑みたいなをC++で書いてデザインもして作れてないのにUnityとかほざいてる
基本を学べとかいってる割に Unityからやっちゃうんですか(笑)
Unity勉強家の連中がやってることも低レベル見ればわかるよ
日本の同人・LLジャップがやってることは2011年にもなって
RPGの基本 Rogue風
作れない
PC向けのオンラインゲーム作ってるプロジェクトやLL使いがいたらそいつ凄いけどね
せいぜい2011年にもなってカスタムロボみたいなのも作れねーだろ同人で
たかがしれてんだよ
そこからかいw
そこは、ライブラリ/フレームワーク/エンジンをそれぞれググってもらうとして。
少なくとも最低各プラットフォーム用にライブラリを揃えてる大手サードにそんな手間はいらない、というのはあってるよ。
『バンナムの技術力なら、相手がPS3であってもプラットフォーム間移植が難しくないのは、間違いないけどさ。』と書いたのはそういうこと。(そもそも『自社のXBOX360汎用ライブラリをベースに各種チューニングをかませたアイマス2専用エンジンだと思うよ。』と書く人がNUライブラリ知らないわけないだろ・・・)「議論」になってる「移植困難性は無い」という主張には文句つけてないんだよ。
まあ、ライブラリとエンジンの違いが判ってないんだったら、「大手全社がプラットフォーム共通エンジン持ってるわけじゃないよ」という単なる指摘、という趣旨が判らなくなくて、かみつくのも無理ないけどさ・・・(些細と言えば些細だけど)「誤認」があるのを指摘してるだけだから議論じゃないんだよ。
たぶん困難じゃないよ。元々『難しくないのは、間違いないけどさ』って書いてるにのに何故わざわざそういう誤読をするかなあ。あえて言うなら、エンジンベースと違って、ライブラリベースでそこから拡張されてると手間がかかる、ってだけ。ライブラリ内でプラットフォーム互換性が保たれていても、あるプラットフォーム用のライブラリから拡張した部分は別のプラットフォーム用のライブラリに実装しなおさなきゃならないからね。アイマス2はNUライブラリの範囲を超えた拡張をしてるな、ってのはCEDECの講演聞いてれば判るよ。
いろいろ間違ってるかもしれないが、力尽きた
分類 | 開発環境 | 開発言語 | メーカー | GPU | OS | API | 備考 | URL |
---|---|---|---|---|---|---|---|---|
シェーダ言語 | _ | Cg | NVIDIA | GeForce | Linux Windows Mac OS X XBOX | OpenGL DirectX 8/9 | C言語ライクな言語 グラフィック用途向け シェーダープログラムの最適化 | http://developer.nvidia.com/page/cg_main.html |
シェーダ言語 | _ | HLSL | Microsoft | GeForce RADEON | Windows | DirectX | グラフィック用途向け シェーダープログラムの最適化 | |
シェーダ言語 | _ | GLSL | OpenGL ARB | _ | _ | OpenGL | C言語ライクな言語 グラフィック用途向け シェーダープログラムの最適化 | |
GPGPU言語 | CUDA | C言語 | NVIDIA | GeForce GeForce 8100 mGPU以上 | Linux Windows XP/Vista Mac OS X | _ | 標準C言語 | http://www.nvidia.com/object/cuda_home.html |
GPGPU言語 | Stream SDK | Brook+ | AMD | RADEON R600世代以降 (=RADEON HD2400以降) | Linux Windows | OpenCL(対応予定) DirectX 11(対応予定) | C言語ライクな言語 | http://ati.amd.com/technology/streamcomputing/index.html |
GPGPU言語 | Brook for GPU | Brook | スタンフォード大学 | GeForce RADEON | Linux Windows | OpenGL DirectX 9 | C++ライクな言語 | |
GPGPU言語 | Close to Metal(CTM) | アセンブリ言語 | AMD | RADEON | _ | Stream SDKのCALに移行 | ||
GPGPU言語 | _ | Sh | _ | _ | _ | _ | C++ライクな言語 | |
GPGPU言語 | RapidMind | C++ | _ | GPU マルチコアCPU Cell | _ | _ | Shの商用化版 |
参考文献
CUDAを使う:tech.ckme.co.jp
http://tech.ckme.co.jp/cuda.shtml
【特集】超並列プロセサ - GeForceアーキテクチャとCUDAプログラミング
http://journal.mycom.co.jp/special/2008/cuda/menu.html
Windows環境は、Visual Studioを用いてmakeを行うようになっている
だいたい、セグメンテーションフォルトを起こすような言語は嫌い
Haskelわけわかんないし
Java重苦しいし、いちいちclass Hogehoge { public static void main() { ... } }書くのがめんどくさいし、API多すぎ
オブジェクト指向したくなるような複雑なプログラムは最初から考えない(作れない)
言語が提供するGUIのツールはOSとは別に独自のレイヤー、世界感を持っててとっつきにくい
マルチスレッド、排他処理を扱うようなプログラムは脳味噌がついて行かないので書かない
Ruby、、、そもそもLL言語で大規模でオブジェクト指向なプログラム書きたくない。小規模ならオブジェクト指向要らない。
俺のマシンで実行できないAda/Basic/Fortran/Pascal その他いろいろ
VHDL、Verilog?FPGAやゲートアレイなんて持ってない、持ちたくない(苦手だもん)
HTML、XMLは日本語とタグが入り乱れるので、そのつど日本語入力の切替えが死ぬほど嫌になった。
だから、HTMLとXMLは全部手入力なんて真似は絶対してやらねえ。
Flex(Action Script)はコンパイラがJavaで実装されてて重すぎる。(シェルを使えばまし)
JavaScriptはブラウザごとの挙動の違いを吸収しきれる自身が無いので使わない。
1プログラムにつき、(コメント含めて)250行以上書きたくない
(本文には触ったこともない言語を思い込みで罵倒しているなど、嘘、おおげさ、紛らわしいが多数混入しています。それが全部わかった貴方はプログラミング言語マスターです。)
当たり前だが何らかの言語を覚える必要がある。3DCGを扱う上ではデファクトになっているC++などがお勧めだ。
しかし、入門用の言語としては不適切の可能性がある。まずは別の言語を学んだあとでやるべきだろう。
最低限、線形代数の知識を必要とする。
そもそも3D空間で自由に物体を操作するには4次元での演算が必要となる。なぜか解らなければ数学の先生に聞いてみよう
DirectXやOpenGLなどのAPI知識を必要とするだろう。
また、それらを使う前提になる各環境依存のAPI(たとえばWindowsAPI)などの最低限の知識を必要とするだろう。
コンピュータグラフィックスがどのように演算されているか知っている必要がある。
そのためには前提となる2dCGの知識も問われるだろう。
16からプログラミングを始めた23歳
思えば最初からレベル2でのスタートだった。始めた当初からプログラミングが楽しくて仕方なかったのだ。
プログラミングを始めて3ヶ月ぐらいはC,C++を学び、Boost最強!とかと思っていた。パズルを解くのにはまる。
六ヶ月ぐらい経過したときには、MFCを使ってwindowsで色々作っていた。目に見える物が作れるのがうれしかった。
ふとWindowsAPIで直接組んでみたときにMFCの使いづらさを知った。
数ヶ月後、ソフトウェアレンダラとか、剛体シミュレーションとか作り始めた。OpenGLやDirectXにも手を出した。
ここら辺で一年ぐらい経過した。
いつの間にかmlやらschemeやらに手を出した。新しい地平を目にした気がした。
rubyやpythonにも手を出した。LLという新しいあり方を知った。
それでも完全に満足できなかったので新しい言語を作ってみた。
設計して、検討して実装した。とりあえずの最低限の機能をだ。
あまりの地道な作業に気が遠くなった。自分には言語を作るのが無理だと思った。
就職した。仕事をしてプログラマはプログラミングが好きじゃない人がいることに驚愕した。
今ではNEETをしている。
ちょっと酔いぎみですが勘弁。
Windowsでしか動作しないのはあれだよね、DirectXだよね。元をただせばWindowsにOpenGLを実装してたWindowsNTチームの陰謀が原因か。そのせいでDirectX作る羽目になったんだし。遠まわしに陰謀が成功しているわけで、Linuxとかの人には悪いけど、DirectX互換APIみたいなのも実装しないと移植できないんだろうなあ。
MESAってOpenGLだっけ? よくわかんないけど、SDL移植とかのQuake4はLinuxで動いてる。えーっと、つまりつまり市販品ではあまり見ないけれど、「技術的な壁はない」が、移植が困難あるいは採算が取れないってことかー。
freeciv? こっちのほうで論破されてませんでしたっけ>http://www.yamdas.org/column/technique/gamej_ind.html。クローンゲームだとWindowsに対抗すらできてない気が。なんでオープンソースゲームの品質が悪いのかについてのなぞも関係してくるのでしょうか。オープンソースで進捗が悪いところのほうが品質が驚くほどいい気がします。
ぷらぐいんとかよくわかんないです。じゃばもわかんないです。
MacにAdobe製品があって、Windowsにも一応移植されているのに、Linux/Unixの人はほしがらないのでしょうか? それとも、そんな作業をする人がいない? そんなばかな。