「OpenGL」を含む日記 RSS

はてなキーワード: OpenGLとは

2020-06-19

2D簡単アニメーションさせるフリーソフトは?

OpenGLが3.3程度しかいから、

有名なものが使えなくて困ってる。

Blenderの古いバージョンなら動かせるもの

2Dボーン組み込んで簡単アニメーションさせるのは難しそうだ。

うーん。Blender3D作って、それを動かして2Dに見せる?

うーん。

2020-06-18

Androidの画面は大抵の場合OpenGLから、多少のエフェクトはそんなに難しくなく入るんだけど、あれはアーティスト系にも使われているから、それはアーティストさん個別に言ってもらわないとデフォルト値を変えることはちょっとむずかしいので、プログラムベンダーではなくアーティスト事務所にお願いします。

特別事情がある方については、その方の端末に対して、個別当方事務所個別対応することもございますが、いずれにしろプログラマー個人的活動アカウント相談されてもご回答ができません。

事務所にお願いします。(ソースコードがあれば、メインプログラマーを呼ばずにアシスタントで十分)

2020-06-13

anond:20200613181020

英語での解答例

すみませんAndroidコンポーネントの使い方がよくわからなくて、どのコンポーネントを使えばいいかおしえてください。

 ↓

OpenGLで書けばいい

 

WebViewの反応が遅いんですけど

 ↓

ブラウザをフルで(Androidに)移植して好きに改造してJNIから呼べ

 

コミケっってセーラームーンだけではないらしい案件

2020-06-12

JavaScriptをすっごい久々に触った

立体CGでなんか動かそうかとOpenGLプログラム環境であれでもない、これでもないとさまよい歩いてる内にWebGLに辿り着いた。

JavaScriptに触れるのはいつぶりだろうか。まだNetscapeとかあった頃。

どれどれと使ってみるとほぼJava感。

前はもっと変な文法だったような?

threejs使ったら則OpebGL使えた。

しかブラウザ上でヌルヌル動く。

で、デバッグ環境ブラウザ上に完備。

もう完全に浦島太郎状態自分

いねWeb技術

以上、ハード屋さんのつぶやきでした。

2020-06-10

おっちゃん行政書士だよね。 

追記

ころすきでやらないとやってもらえない

そりゃ普通そうだろ

相手が嫌がっていることを 仕事でもない

さっしてくれ

やらせるには 殺す気 つまり 事実上脅迫でやらないと無理だろう

そりゃしょうがない。 そういうときもある

それならやってもらえる

どれだけいっても、人違いということを認める気がない

追記

いや、書類の不備っていう単語ちゃんと前ふりしてくれるやさしい行政

 

ポリゴンで12面体を作れ

C++

OpenGLなどのレンダリングエンジンから作れ OpenGLDirectXなどを使わないことの意味

フレームバッファは使ってよく 画面サイズは1024x768 32Bitカラー アルファなしとする 

簡単?難しい? わかんないよね

まぁ みんなやるよね 普通ちゃぁふつう

HTML5アプリを作りなさい ブラウザから(From Browserではなくブラウザもつくる)  とか ふつう

Android携帯を 半導体アキバでかってきてつくれ とかよりはむずかしくない

簡単っていわれちゃうと ちがうよ っていいたいけど そいつにとっては簡単なんだろうなっておもうと

優秀なやつって こまる 次元が違いすぎる

でも、みんなが、そっちがあたりまえで

Android携帯をいまどき買ってくるとか信じられない あれは作るんだよっていわれると

そうかもなぁっておもう

 

あなたにとっては常識です。っていわれても 困るよなぁ・・・っていつもおもう。

普通って何?みんなもAndroid携帯ぐらい自作するのが普通

2020-05-22

anond:20200522100219

3次元データプロット、今ならOpenGLより学習が楽な方法ありそ。大学なら高いソフトいっぱい持ってるだろ。その話もしかして20年前とかか?

anond:20200522094921

好きでやっている趣味プログラマー

仕事でやらされている業務プログラマーが勝てるわけがない

ただ、地頭センスが良いと一気にレベルが上がるってしま

知り合いの大学教授が、集めたデータ3次元で表示したいって言って

言語全く知らないのに1カ月でOpenGLを覚えてささっと作ったのには驚愕した。

2020-02-23

2020年プログラミング言語解説

Ruby

まつほろひとゆきが作った日本産コンピューター言語パールというコンピューター言語を元に作られていてWebサービスを作るためのフレームワークを搭載している。代表的WebフレームワークtDiary

C

デニス立地さんがNTTで開発した言語マルチクスというOS作成するために作られた。わざと複雑な言語仕様にすることで自分役職ポジションを守ろうとしていたが、思った以上に世の中の人間はこの言語を使いこなしてしまい、超有名な言語になってしまった。スーファミゲーム制作にさえ使えなほどの超高級言語

まじないと呼ばれるプリプロセッサでの書き換えが必要な謎の文字列を埋め込む必要があったり、言語仕様曖昧な部分も多く、同じソースなのに実行環境によって動きが異なる、欠陥言語である。(32bit向けプログラムが64bit環境動作しないなど)

C++

オブジェクト指向言語。すべてのオブジェクト指向言語はこいつから始まった。

主にWindows上で動作するゲームを作るための言語。今ではUnityとか色々なゲーム開発の環境とかあるが、結局はパフォーマンスとか考えたらC++使うことになる。

代表作はOpenGLDirectX、Window10、LibreOffice など

Java

JavaScriptから派生した言語。読み方は(ジャワジャワ島のジャワ。)。もともとはOracle創始者博士趣味作成して、現在Oracleデータベースの基礎となるテクノロジーアプレットという実行するための専用プログラムインストールしないと、Javaで作ったプログラム(.classファイル)は動作しない。マークコーヒーだと思われがちだが、紅茶(ジャワティー)である

アンドロイドOS作成するためにも使われており、アンドロイドOSカーネルJava制御されている。そのため定期的にGCが走るので、アンドロイド端末は定期的に動作を停止することがある(いわゆるプチフリーズ)。

対策するためにはGC戦略見直してヒープ領域サイズメモリに乗せるキャッシュサイズなどの調整が必要であるが、げんざいのGoogleにはこれらを調整する人員はすでにいない。

このように業務データベースから携帯電話まで幅広く使われているので、Java技術があっても市場価値殆どないと言われている。(みんな使えて当たり前)

PHP

晩年政界への進出を目論んでいた松下幸之助が、未来社会を見据えて開発した言語。主にWebアプリケーション作成するために使われている。PはパナソニックのP。を略してPHP

かんたんにシェルコマンドを実行できたり、クエリストリングに代入した値を直接グローバル評価できたりするなど、洗練されていてとても便利な言語である

HTMLメール本文の中にもPHPの処理を書き込むことができる。

この世のすべてのサーバーに実行環境存在するので、PHPコードさえあれば、コンパイル不要でどのような環境でも動作する。

C言語の100倍生産性が高く、WikipediaFacebookSlackなどの超一流のサイトサービスで大量のアクセスを捌いている。

WardPressと呼ばれるフレームワーク(全世界Webサイト3分の1以上はWardPressで作成されている)を作成している言語であり、この言語なくして今のWeb存在していない。

データベースとも親和性がある、などと言われることもあるが特に根拠はない。

Go

韓国人棋士を倒したAIに特化したプログラム言語Googleが開発しており、もともとはDartという名前だったが、汚いという理由でなまえがGoに変わった。そのため現在Dartという言語存在していない。

AIに特化しているというだけあり、低レイヤむけの実行ファイル作成する必要があるため、コンパイル必要ではあるが、だいたいどの環境向けのバイナリも生成することができる。

デフォルトディープラーニングを使うための機能を持っていたり、プログラムを並列実行するための機能が備わっているので、コア数の多い環境で高速に動くプログラムを作りやすい。

JavaScript

Javaの元になったプロトタイプベースオブジェクト指向言語。読み方はジャワエスクリプト。W3Mというブラウザの上でインタラクティブWebサイトを動かすために作成された言語。もともとブラウザの上で動くための言語だったが、後にSafariブラウザに搭載されていたV6エンジンというJavaScript言語の実行エンジンを分離してNPMというJavaScriptを直接実行できる環境となった。

それ以降JavaScriptはブラウザ以外にVRゴーグルの中などで動くようになった。

並列プログラミング不可能な作りのため、コールバックを多用して、スパゲッティコードを量産することができる。

NPMを使う奴らは、JSブラウザ環境で使われる言語であることを全然考えてないため、WebpackとかBabelといった謎の開発環境をシコシコ積み上げている。いつかその塔は爆発し崩れ去ることになるであろう。

jQuery

Javaと同じくJavaScriptから派生した言語Javaとは互換性は無いが、JavaScriptの上位互換があるため、JavaScriptのコードをそのまま実行することができる。

$マークから始まる命令のみで構成されているとても縁起のいいプログラミング言語。おもにパララックスなどを実現するために利用されていて、WardPressなどのドライバとしても使われている。

JavaScriptの改良版であり、現在JavaScriptと言われているプログラム言語の99%はjQueryのことである。そのため現在慣習的にJavaScriptと呼ばれているもののほぼ全てはjQueryである

jQueryを覚えればJavaScriptは覚えなくても良い。などと言われるが、正確にはjQueryを覚えた頃にはJavaScriptも覚えている。というのが正確である

TypeScript

JavajQueryなどと同じくJavaScriptから派生した言語Microsoftが開発した関数型言語。開発時はF#(エフシャープ)というコードネームだった。

型に特化した言語であり、Microsoft製のVSCodeというIDE環境しか開発、実行が出来ない。(ただしMacLinux上でも動作可能)

TypeScriptを動かすにはサーバーVSCodeインストールする必要があり、言語IDEバージョンアップも多いため、メンテナスンスが困難である

Swift

iOSを作るために開発された言語関数型言語

前進となるObjectiv-Cという言語が、気持ち悪い構文であったため開発者が不足しており、このままではOSメンテナンスもままならない、という理由最初バージョンわずか14日間で作られた言語

Apple製品の上でしか動作しない。ビルドが非常に遅く一日に60回が限度である

LISP

((最強の言語。全ては関数であり、値であり、式である。)

(制御構文も、(一種の式であり、値である。)))

2019-10-25

数年前に卒業したHAL東京の話

こんな記事話題になっていた。

暇だからゲーム専門学校時代を振り返る - 昆布がないと開発できない。 http://donnpema6.hatenablog.com/entry/2019/10/23/004918

HAL東京は私の母校でもある。読んでいてとても懐かしくなった。

この記事を書かれた方と同じように自分卒業して思う事や学生時代を振り返ってみたくなったので書く。駄文ですが入学検討している高校生、在学中の方にこれからの参考になればと思う。

まずは私の情報について。

高校卒業上京HAL東京

学科ゲーム制作学科

現在大手ITにてモバイルゲームエンジニア(Unityメイン)

まず私はゲーム業界志望で入学してゲーム業界就職したパターン人間である

HAL東京ゲーム学科なんだからゲーム業界に行くのは当然ではと思われる方もいるかもしれないが残念ながら半数近く、またはそれ以上の人数がゲーム以外の業界に行く。

入学してから卒業までを簡単に紹介しよう

1年目

・冒頭で紹介した記事にもあった通り、HAL東京では前期・後期に別れて授業を行う。1年目は基礎を学ぶ。

・この基礎だが、プログラミング以外にもデザインコンピュータサイエンスなども行う。これは1年目の後期に改めて学科選択の機会があるからだ。実際にプログラミングやってみて自分に合ってないと考えた人はデザイン学科にも行けるというわけだ(最も、最初希望とは違う学科に入ってちゃんとその業界就職した人を私は知らない)

プログラミングの授業ではC言語を学ぶ。私は高校時代プログラミングなんて一切やっていなかったので初めて触れたのがCだった。printfHelloWorldしたりscanfでメモリ領域ぶっ壊したりしつつもプログラミングの基礎を学ぶ。 IDEVisualStudioだった。

コンピュータサイエンス系の授業では、基本情報技術者試験合格を目指し皆勉強する。HAL東京では基本情報技術者試験を取得していない場合、この授業が卒業まで続く。就職において資格を見る会社一定数いるのでこのカリキュラムは良いと思う。取得している場合Android開発やコンシューマゲーム機での開発授業などが選択できるようになっている。私は初の試験で無事合格したが卒業時でも取れてない人は一定数いた。馬鹿なんじゃないのか。

・1年目の後期から学科に別れた授業+コンピュータサイエンス系の授業といった感じで進む。

C言語コンソール文字を表示させてゲームを作るというのを1年目はやる。独自ライブラリが渡される。

文字だけで表現するのにこの時点で出来るやつと出来ない奴がはっきりとわかる。 優秀な人間自分でバックバッファ概念を構築したり、滑らかなアニメーションなどを実装している。凄い。当然彼らは誰もが知っているような大手ゲーム会社に今はいるはずだ。

・1年目の最後学内での制作物の展示イベントがある。そこで作ったゲームを展示するのだ。ここで出来ていない人はおそらく翌年には退学している。私は完成はしたものの拙い出来だった。反面、負けてられないなとは思った。

2年目

・2年目からDirectX使用した本格的なゲーム開発の授業がスタートする。またそれと並行してコンシューマゲーム開発の授業が始まる。私の世代ではNintendoWiiだった。

C言語の授業もC++の授業になり、クラス化などについて学ぶ。

コンシューマ開発の授業は基本的情報がない中やる。渡されるのはWii関数リファレンスの本だけ。あとは授業で教官から教えられつつ実装していく。

DirectXでは9を使用していた。Xライブラリのようなものは一切使わず、直でDirectXを触る。描画の仕組みなども学べるのでこの授業はとてもよかった。確か前期は2Dゲーム、後期は3Dゲームだった気がする。それぞれ個人開発で1本づつ作る。私はこの時に作った3Dゲーム結構面白く出来て自信がついた。

・2年目の後期ではWiiの開発でチーム制作を行う。チームは勝手に決められるが基本的に優秀な人がリーダーになる。チームによっては崩壊しているチームやギスギスしているところもあり、プログラミングできる人と出来ない人の差が露骨に出る。何人かはここで脱落し、退学する。

3年目

・3年目ではいよいよ就活に向けた準備とインターンが始まる

DirectXの授業は継続しておりCで作ってたものからC++で作るようになる。ここらあたりからかなり複雑なアルゴリズム(地面の起伏に応じた高度計算や正確な当たり判定の実装など)も学ぶ。

DirectXとは違うものとして、OpenGLの授業も始まった。OpenGLDirectXマルチプラットフォームを目指してゲームの開発を行う。またネットワークを使ったゲームOpenGLで開発したりもする。この授業では基本的自分で調べて進めていく。調べる力をつける。今思うと一番エンジニアとして大切なことが学べる授業だったと思う。

・先ほど書いた、基本情報合格していると選択授業でAndroidプログラミングなどもできる。

就活に備えたビジネスマナーなどの授業も始まる。その日はスーツを着て通学する。私はこの時点でスーツ着て働くのは論外だと強く感じるようになった。

・3年生のビッグイベントとして10月にインターンがある。これはHALゲーム会社IT企業に依頼する形で生徒を会社インターンとして参加させるというものである。当然ながらこれも出席率などに問題がある場合は参加できない。

インターンは1ヶ月間あり、ゲーム会社にいく人もいればデバッグ会社にいく人、IT企業にいく人様々である。どこにいくかは教官が決める。私はゲーム会社だったがかなり勉強にはなったしゲーム会社で働く雰囲気というものを知れたのでよかったかなと思う。

・3年後半からDirectX就職作品を作り始める。就職作品はいわゆる企業の人に見せる作品の事である。これは完全に個人で作るので人によって完成度はかなり違ってくる。中には商業作品のようなクオリティのものを完成させる人も出てくる。実力社会である

4年目

・4年目は卒業制作展と就職活動、産学連携の三つがメインとなる。

・私は4年になる頃には就活終わっていたのだが基本的に全てにおいて就活を優先する様になる。内定出るまではスーツで通学など、それ意味あるのか?

HALには学内企業説明会というシステムがあり、様々な会社が来校し企業説明特別選考の案内をしてくれる(任意参加だが就活中の人は実質強制参加である

・4年中盤くらいにはもうほとんどの人が就活を終えているが一部の終えていない人たちは延々と説明会に参加してはエントリーシートを書いていた。大変だなぁ。このくらいの時期になるともう学内企業説明会ゲーム会社はほぼ無い。自分で動け。

産学連携卒業制作ではチームを組み制作するのだが使用するグラフィックライブラリなどに指定はなく、プラットフォーム自由となる。そのため、DirectXOpenGLを学んでいても大抵のチームはUnityやUnrealEngineを使うことになる。

・4年目後半は卒業制作展にひたすら取り組む、この制作はとても私の中にも印象に残っている。正直楽しかった。好き勝手にみんなで面白ものを作れる。

さて、ここまで1〜4年の流れをざっくりと書いた。

次にHALについてよく聞く話、課題が多いという話にもついて触れておこう。

HAL東京では課題がまぁまぁな数が出る。

1科目年間20くらいは少なくとも出てる気がする。(規模はまちまちだが)

この課題だが課題一定数達成(承認という)していないと科目留年となってしまう。とはいえ教官自分がわかるまでサポートしてくれるので主体的に動けば落とすことは無いだろう。(私は4年間で1度も落とさなかった)

また出席率も見られる。確か80%切ったらアウトだった。

毎日しっかり通学して、出された課題をしっかりこなせれば基本的に力はつく様になっていたと思う。就活失敗していた人はハッキリ言ってこれが出来てない人が多かったイメージがある。

また授業は1コマ90分で最大1日5コマある

そのため1回休むだけで内容についていけなくなる恐れがある。しっかり授業は受けよう。

次に私の就活についても触れておこうと思う。

私は3年の中旬くらいから早く就活を終わらせたいと思っていた。また、コンシューマ業界は色々と魅力はあるが第一給料が安いところが多いし働く環境として良いとも思えない面が多かったので最初仕事モバイルゲーム業界がいいなと思っていた。

そのため早い段階で逆求人サイト登録したり、1on1面談イベント勉強会などにも参加する様になった。

個人的に今思うのが3年の中旬くらいの時期から動き出せたのが一番良かったなと思っている。勉強会などで大学生で同じ様にゲーム業界目指している人たちとも多く会ったりしているうちに、自分結構出来る方の人間なんだなと思う様になる。

正直HAL東京カリキュラムは異常で、普通にゲーム作りたいという人はOpenGLDirectXもやらない。直でそれらが扱える様になっているHAL生は業界的に結構貴重な人材になりうると思う。

描画の仕組みをわかった上でゲームエンジン使うのとそうじゃ無いのとでは全然違うんだなとこの時気づいた。HALの基礎から教える理念はとても大切だった。

私は趣味で別でDirectXゲーム作ってたりもしてたので、それを企業の人に見せたりもしていた。何かしら物を作りきるという経験を何回も積んでいるHAL生の評価は高い。(ちゃんと授業出てれば1本は作りきれるはず)

何社か逆求人で声がかかり、そのうち一番気になっていた会社と話しているうちにどんどん選考が進み、特に苦戦せずに2月くらいには内定が出ていた。私の就活はかなりあっさりと終わった。

モバイルゲーム業界IT業界は今かなり盛り上がってるのもあり年収もかなり良く、この結果にはかなり満足している。

最後に、私がHAL東京入学して良かったかどうか、という点について触れてこの駄文を終わらせようと思う。

結論から言うと私は入学して良かった。

もともと、ゲームは作りたいと思っていたが、何から始めたらいいのかわからなかった。

そんな中、専門学校で学ぶことで0→1が出来る様になったのはやはり大きかったと思う。

一度作り方を学べばあとはそこからどんどん自分から学んでいけた。

逆に、そう言う学び方が出来ない人はやめておいた方が良いと思う。

HAL東京在学中ずっと思っていたのが、学生間のレベルの差がとても激しいのだ。 無能か出来る奴のどっちかになるのだ。

自分積極的に学んでいける!出来る奴に絶対なってやる!と言うくらいの気合いがないとダメだと思う。

入学時にプログラミング経験がある人も一定数いるのだが卒業する頃には自分の方が書ける様になっていたし、結局のところ本人の努力次第である。決して入ればゲーム業界にいけるとか、そんな甘い話はない。

生半可な気持ち入学するのは出来る人たちの迷惑になるとハッキリ言っておこう。チーム制作の足手まといになってしまうだけである

自分自身が出来る奴になれればこんなに楽しい環境は無い。とても優秀な仲間と切磋琢磨できるのだから

2018-11-18

anond:20181117114626

2018-10-13

ふと昔を思い出して

今は全然関係ないことに従事していて、それが大して面白くもないのだが。

たまにはラズベリーパイを弄ったり組版ソフト面白ものを見つけて弄っている。

そんな私が何年か前に30日でできるOS本とDIrectX9入門の本を買って触っていた。昔話だ。

こういうのは、いわゆる御呪いオンパレードだ。

Cを最初にやるときののヘッダーファイル、あるいはwindowsプログラミングウィンドウを表示するときの様な「おまじない」だ。

ロクな説明もされないまま、写経しているうちにコードが増えて行き、なんかサンプルに毛が生えた様なものができて満足するが釈然としない。

分かった気がしない。

OpenGL/GLUTを後年マニュアルを参照しながら一生懸命やったときの方が理解できた気がしたし、オリジナリティのあるコードとなった。

やはりこういう根幹部分の知識悪戦苦闘しなければ、身につけないのだろうかと少し思う。

昨今大量に溢れるラッパーやフックを見て様々な機能が便利になったと感心する。

プログラマとして働いたことはないが、車輪の再発明学習以外においては悪だと学んできたので、それは大変結構だと思う。

ライブラリ再利用は良い。だが、その便利さがかえって学習者の成長を妨げるのではないか

OS本やDirectXを訳も分からず触っていた私の様なコピペキディ(又は写経坊主)が増えないことを願う。

(もう少し時間があれば、pychamかnvimのhaskell pluginが書きたい。)

2018-05-08

Windows3.1の思い出

https://anond.hatelabo.jp/20180508004011

まだまだDOSの全盛期

コンベンショナルメモリ640KBの壁があった時代

起動

DOSで起動してからwinコマンドで実行

autoexec.batに書き込んだら自動で実行するようになる

デバイスドライバを読み込みすぎるとメモリが足りなくて動作しなくなるので

LAN Managerを使ってネットワーク接続するときCD-ROMドライバを外すとかしてた思い出

※余談だが、ゲームにはゲーム起動用のconfig.sysを書いてた

ソフトウェア

シェルプログラムマネージャ

壁紙が見えなくなるので透過させるフリーソフトを入れたりしてた。

ファイルマネージャランチャー代わりにつかってた

エディタ

秀丸4000円

Win32s

32ビットアプリも動くんだぜ?といってもNTから持ってきたピンボールぐらいしか動かさないけどな!

グラフィックス

WinGをインストールして高速化!

OpenGL?あれは重くてなあ...パイプうごスクリーンセーバーぐらいしか動かないし...

動画

Video for WindowsとQuickTimeインストール

2017-11-19

anond:20171119185952

いや、JavaFXゲーム作るのやめてAndroidにしたいって話なんだから、日の目は見てないんじゃね

基本はビジネス用だけど、OpenGLとか不要Canvas描きだけで済むカジュアルゲームならありなんだけどねアレ

まあゲーム製作用途的には先はないわな

2016-04-12

フロントエンドと言う名の壮大な俺俺ライブラリ

変化が激しいとかそれっぽいこと言ってるけど、要は誰かの作った俺俺ライブラリ採用してますって話でしかない。

最終的にはね、一番泥臭い技術からちゃんと身につけるのが強いんですよ。その上で、その便利な俺俺ライブラリがどのような仕組みで動いているのかを理解すればそれで十分。そいつの使い方を覚えるんじゃなくて、そいつが何をしているのかを追う事。それがちゃんとできてれば、今後どんなものが台頭してきても迷わず理解する事ができるようになってるから

具体例で言うとね Unity やら Unreal Engine やら、そいつらの使い方を覚える前に、その後ろにある OpenGL やら DirectX がどのように動いているのか知る事、そしてその背後にある数学世界を知る事。

派手な空中戦も便利だし見てて気持ちいいし非常にパワフルなのだけど、最後まで生き残れるのはちゃんと地面に足を付けて戦う事のできる人だよ。(そういう意味で、英語技術文書を読み慣れるというのは堅い技術だね)

2016-03-09

http://anond.hatelabo.jp/20160308141345

ゲームプログラミングは難しい。

先ずどの環境で作るかを考える。

AndroidならJavaiOSならSwiftブラウザならJavaScriptMacWindowsもある。

どれにしても習得するのはそこそこ難しい。

ゲームはらさに3Dグラフィックス必要だろう。

これは基礎的には、OpenGL ES2、WebGLを使う。

難しい。頂点シェーダー・フラグメントシェーダーも書く必要がある。

AndroidiOSライブラリに余りいいものはないかもしれない。

WebGLならThree.jsメジャーシェーダーも自分で書かなくてもいい)。もっと小さいライブラリもある。

JavaScriptプログラムAndroidiOSパソコンで動かす事もできる。

勉強している内にUnityを使ったほうがいいかなとか色々思うだろう。

そうで無くても、GUIプログラミングは全てが一つのプログラムに入り複雑。

ここまで認識するようになるのに1年ほどかかるだろう。

(何か環境を一つに決めて初心者用の本の通りにすれば短期間でできるが。)

一方、コマンド用のプログラムはなかなか手軽に作れるし、

処理ごとにファイル出力して(メモリより時間がかかるが)分離しやす場合も多い。

Rなどでのプログラムも案外手軽にできる。

もちろん一つのプログラムで全部する事もできる。

コマンドプログラムGUIを使うのは色々な方法が有る。Javaなら問題ない。

JavaからPythonなどの)コマンドプログラムを呼び出したりすることも多い。

2014-01-31

話題の記事読んで思ったこと

未明の2時間半。一心不乱にコードに集中 ──中島聡流プログラミングの流儀 #OpenGL|CodeIQ MAGAZINE

日本エンジニアはなぜアメリカに勝てないか

──16歳でプログラミングに触れてから現在までずっとコードを書いているわけでが、その持続力には驚きます会社に入って数年もするとマネジメントをやるようになって、現場から離れてしまプログラマも多いと思いますが。

これがまさに僕が一番問題視していることなんです。世界的に活躍しているIT企業GoogleAppleMicrosoftFacebook……みんなアメリカ会社ですよね。なぜ日本はだめなのか。個々の能力では日本人が劣るところはない。勤勉な性格だし……。

根本の違いは、優秀な技術者いつまでもプログラムを書いているかどうか、ということなんです。

特に理工系修士号取得者。日本では大学を出て大手企業に入ると、そこではほとんどプログラムを書かない。仕様書は作り、ドキュメントも書くけど、実際のコードを書くのは子会社外注やその下請けの人たち。僕はこういうのを「ゼネコンスタイル」と呼んでいます

それに比べると、アメリカソフトウェア企業は、バリバリ理系修士号博士号の人を採用して、その人たちを一生プログラマとして使い続ける。プログラマとして優秀であれば、ゼネラリストよりも高給を弾んでくれる。生涯プログラマでもリスペクトされる。 マネジメントはそれなりの専門職から、それが得意な人に任せればいいという考え方。プログラマは一般に人の管理をするより、コードを書いていたほうが幸せから

ほんとこの文章を、大手SIerの糞馬鹿社員と、3年前に自分のいたチームの糞リーダーに読ませたい。

仕事を人に振ってばかりで楽していると無能になるぞ、と。周りに聞いてばかりいないで、たまには自分で調べて、考えて仕事しろ、と。

なんで皆管理側を目指すのかねぇ、、って上の記事のまま、使われる側だと評価されない、金くれないからだな。要は、日本経営者とか幹部クラスが致命的にアホすぎるんだな。

2013-05-27

Unityに興味の無い奴らに語らせるな


山本一郎氏はプロジェクト管理の話しかしておらず、せいぜいUnityは(他のどんなミドルウェア・またはプラットフォームと同じように)銀の弾丸ではない、という内容である

Unityしか使えない新人が増えるとか

それがどんな技術であったとしても "〜しか使えない" って言う奴はお荷物しかなく、仮にそういう現象が起きているとするなら、その発見が早まっているだけである

Unityではハードウェアの性能ギリギリまで迫れないとか

この時代において、ハードウェア性能をフルに使わないと完成しないゲーム移植性に乏しいどん詰まりプロダクツなので、Unity採用するような、お金に余裕の無い人達がすることではないよ、それ。

技術的な部分においてUnity依存してしまうとか

UnityOpenGL/DirectXの単なるwrapperでしかないので、脱Unityしたいなら、それってそんな難しい話ではないはずよ。Unity程度のモデルに対して"依存"とか言う人達は、本当に技術力が無いことの証明に過ぎないので遅かれ早かれ破綻する。

Unity2Dゲームが作れないとか

スプライトとVRAMの時代はとっくに終わっている。2Dを作ろうとしても3D無視できないのよ。

Unityゲーム民主化であるとか

今まで面倒だった部分を視覚化してるだけのツールでしかないので、今まで歩いていた人がより快適に歩けるようになることはあっても、歩いたことのないやつを歩かせることはできない。

結局の所、3Dに対する作法をちゃんと学べない人は最終的に死ぬ

2013-05-08

http://anond.hatelabo.jp/20130508180828

MSXスラッシュドット2chしか

聞いたことがない若輩者だが、

話を楽しく聞かせてもらいました。

OpenGLDirectX下りとか。

から、なんだけど魂の叫びとして

自死はやめてください。

コーダーゲームワナビーとして

自分未来のようで、怖いから。

重いよ、死なないで。

年相応の熟練した技術を、作るために磨いたはずなのに

磨いても磨いても肝心の作りたいものが見えないって苦しい状況を

ずっと続けてこられたのではないですか?

その結果、今どん底にあるのだろうけど、

Unityちょっとしたゲームにはうざ過ぎると言った貴方だ。

確かな技術はそこにあるはず。

モノを作れない人間に、軽く作ってみれば?っていう残酷さを

私は知ってるからその辺は何も言えないけど、

でもただただ技術必要とされる案件は転がってる……オフショアの進撃がやばいけど。

から、ご活躍ができるきっかけはあると思う。

モニターから離れて、プログラムとは関係ないことを考えてみればどうでしょうか。

ハッカーなら誰しも経験ある、どん詰まりの時に

から解決法が降りてくるあの感覚を蘇らせることが今は必要だと思いますよ。

2013-02-23

ぼくのかんがえたPS4分析 - SONY製造業としての業から解き放たれたPS4

http://anond.hatelabo.jp/20130223090512

に触発されて俺なりのPS4分析をしてみた。

ハードウエア製造業の夢より、ソフトウエアクリエイタの夢 - ハードからソフトへと言う現実

一言で言うと↑これがPS4だと思う。

三行でまとめると

PSのビジネスモデルを振り返ってみるのだが、この切り口から行くとPSはSONY半導体戦略、そしてSONY製造業と言う性質とと切っても切れない関係がある。

利用上の注意

なおすべて妄想となっておりますので、これを真に受けて被った損害などについては一切責任を取れません。皆様におかれましてはその旨ご了解のうえご覧いただけますよう、よろしくお願いいたします。ご協力頂けない場合につきましては、いい歳こいたアラフォーの髭ヅラ男が涙目になると言う非常にウザイ状況が発生することとなり、誰も得をしません。ご理解とご協力をお願いいたします。

PSの歴史SONY戦略について

初代PSとそれがもたらしたもの

SONYゲーム機を一緒につくろうと言って任天堂に近づいたものの交渉が決裂してできあがったのがPSであったわけだがこれが大ヒット。

さらにPSでは、内部で使われている半導体を自社設計・自社かそれに近いFabで作る事によって

など副次的な効果もあり、さらに「SONYの旗艦」といったイメージを作り上げることができた。この他に、CD-ROMを手がける部門や、SONYのCDプレス工場部門等々、PS景気により、直接的なPSによって生み出される効果以外に、PSという揺るぎない需要存在する事で、設備投資などに積極的になれたといった効果がうまれた。

PS2では完璧芸術品であったDreamcastを殺すほど大成功

初代は始めどこまで意図されいたかは不明だが2台目ではそれらの経験が生かされる事となりより強化された。まず一番は半導体工場で有り、旺盛なその需要と、それによって得られた利益投資に回し新プロセスを開発、シュリンクすることによって最終的な黒字を目指すことで赤字で販売をスタートすることとなる。

ゲームハード赤字でも、ソフトが売れれば黒字。こんなの当たり前だろ、と言う話であるが、総合情報機器メーカであるSONYでは少し事情が異なる。これは、ソフトウエアライセンス事業による利益によって、間接的に半導体生産設備投資を補填すると言う形を意味する。もちろんそれ以外にもSONYの製造部門にもPS2赤字でも販売すると言う行為によってもたらされる間接的な利益が流れた。

ご存じの通り、PSは我が愛する芸術品たる至高のゲーム機Dreamcastを完膚なきまで叩きのめし世界最高の企業セガプラットフォームから引きずり卸しパチンコ屋に買われる所まで追い込む等大成功をとげた。そしてゲーム機生産により、SONY製造業部門を引っ張っていくという当初の見込みは大成功した。

それをさらに強化したのがPS3、そしてCellであった。

PS3Cell BE が見た夢

PS3時代になると、パソコンの旺盛な需要の元、急速に進化した集積回路は、プロセッサの新規開発コストさら半導体プロセス開発に必要な資金が膨大に膨らむという現実に、様々な企業が立ち向かうよう時代が来ていた。世界の巨人たるIntelと、それ以外という構図が生まれ、世界中でFabの統廃合が進んでいた。

その中で目をつけられたのがゲーム機という存在であるパソコンに対抗できるほどの膨大な需要を生むゲーム機は、薄利という性質を持ちながらも数が出るため、生産設備を拡大しやすプロセス開発の資金を捻出する事に有利であった。さらSONYは、ゲームハードウエアが、当時のパソコンなどに比べて圧倒的に高い性能を持っていなければ存在価値が無い、と言う観念を持っていた。これはかつて任天堂がもっていた思想であった。

さらIBMなどの思惑とも一致、開発がされたのがCell B.E.であり、この存在PS3を生んだ。そう、ここまで来てSONYは、半導体のためにゲーム機デザインしたのである

もちろんこの説にはいろいろな異論はある。しかし俺は順序としては、ソニーグループ全体の長期的な戦略にPSが生む半導体工場の増設という戦略が大規模に組み込まれていたのは間違いないのでは無いかとみている。そこで完成したマシンは、化け物であった。現在まで続く潮流であるGPGPU的な動作もこなCell B.Eがもたらす高性能と、高い拡張性を備え、既にゲーム機では無いとまで言わしめるものができた。この性能は当時の最新鋭コンピュータを大幅に上回るものであった。

しかし……。GPGPU概念は早すぎた。性能を引き出すことが、当人であるSONYでも難しかったのである。そしてこれはミドルウエアや開発ツールの乏しさにも繋がる。そのためスタートアップに失敗した。この失敗は、PSがゲーム機として優れていなかった、あるいは、他者装置に負けた、と言う意味で失敗では無い。製造業としてのSONYが、自社の思惑通りに事を運べなかったと言う事での失敗である

ハードウエアの夢、ソフトウエアの夢

結果SONYは、PS3需要を当て込んだ生産設備リストラ・売却するなどの対処をを迫られる。さら韓国勢などの追い上げ、AV市場の急速な変化、SONY本体の体力の低下、パソコン高速化などにも影響を受けることになる。

PS3のものは、OSの改良、ミドルウエアや開発ツールの向上などにゆっくりではあるが立ち上がってきたが、製造業としてのSONYPS3に期待した効果は得られず、ハードウエア屋、製造業がみた夢はここに破れた。

さら時代は動き、集積回路は、Intelプロセスで1世代以上先を行き、それ以外はすべて後から追うという構図が完全に定着してしまった。SONYも、SONY半導体と言えば、集積回路ではなく画像素子、と言う時代が来て久しい。世界中半導体製造業者の統廃合は進み、国内半導体産業は衰退した。新プロセス開発の難易度や、集積回路の大規模化から来る開発コストの上昇はいかんともしがたくなっていた。

ゲーム必要とするスペックはもはや飽和している。少しでもリアルに、少しでも高性能にと言う方面はすでにマニアのものだけになってしまい、それら需要だけで、そのとき販売されているパソコンを上回る高性能チップを開発、載せるコストを満たすことはできなくなっていた。具体的に言えば、ウルトラハイスペックの、GeForece GTX SLIクラスにも勝ちうるGPUを、専用設計オーバーヘッドを極力少なくすることができるとはいえ新規設計することが難しくなっていたのであるさらにはゲーム機業界ではスペック競争を離れた任天堂Wii、あるいはDSを生み出し、ケータイ、そしてスマフォとと言う存在カジュアルゲーム市場をかっさらうようになった。特に日本では据え置きゲーム機リビングルームに置かれ、パーソナルな空間に置いてゲーム機携帯ゲーム機になったのである

そして決定的だったのが、ゲームエンジンの躍進と越境であろう。従来はゲームエンジン製作環境ゲーム会社門外不出のものであった。しかしそれらが会社を通じて流通し始め、さらには専門業者も現れるようになったのである

家庭用ゲーム機と言えば、ゲーム機の性能を引き出すためにソフトごとにアセンブラ最適化チューニングを施す。それを行っても常に動作が一定になることがメリットとして、パソコンに比べてゲームは常に一定の動作をすることが担保できるためにゲーム製作に専念することができた。しかし、パソコンは十分に高性能になった。家庭用ゲーム機も十分に高性能になった。その結果、チューニングを行わなくてもそこそこの画面が作れるようになってきたのである。そこで余った能力ゲームエンジンオーバーヘッドを許容するようになり、ゲームエンジンの躍進に繋がった。さらゲームエンジンプラットフォーム間の差異すら吸収し始めた。あるゲームエンジン採用すれば、あまり手間をかけること無く、パソコン版、PS版、XBOX版、Wii版と複数プラットフォームで出せるようになったのである。これは、ゲームエンジンが新たなるゲーミングプラットフォームとして君臨する可能性を示唆していた。

しかし、チューニングなどといった、ユーザとは直接関係の無い部分に手間をかける必要が無く、作ったゲームがどこでも動く。これはクリエイタとしては非常にありがたい事なのでは無いか

ビジネス書に出てくる例えがある。ユーザねじ回しが欲しいのでは無い。ねじを回したいのである。同じように、客はゲームがしたい、もっといえば楽しいことがしたいのであって、別にゲーム機が欲しいわけでは無いのであるクリエイタはゲームを作りたいのであって、ゲームハードウエアを使いたいわけでは無いのである。ここに合致したのがクロスプラットフォームゲームエンジンであり、そしてこれらはクリエイタに作りやす環境提供し始めた。さらゲームエンジンは新たに現れたライバルであるタブレット/スマートフォンにも対応している。

しかゲームエンジンの躍進は、プラットフォームビジネス崩壊意味したし、PS3は性能を引き出すには高いレベルの専門的チューニング必要であった。しかゲームエンジンはそこにコストを払う事を選択せず、PS3は高い性能を持ちながらも、それ以外のあまり高性能ではないプラットフォームとほぼ同等、せいぜい高解像度テクスチャーに入れ替えられた程度のゲームしか提供されない、と言った事が発生するようになっていた。

ソフトウエアの夢が花開くのがPS4,PSVita

そしてPS4が出た。

PS4は有り体に言って、x86-64アーキテクチャコンピュータに、OpenGL/CL対応GPUを搭載した、本質的にはそこらのパソコンと変わらない構成である

さらに言えば、最新のCorei7+GeForce GTX…と行かなくとも、そこらのパソコンに較べ、性能は高くない。しかし、根本的にゲーム専用機が持つ、汎用パソコンには無い特徴

を備えている。さらには、GPUを扱いにくくする要因の一つとして上げられる、GPUCPUメモリ転送をほぼ考えなくて良いと言う仕様を打ち出してきた。これはCellCPUプログラミングが分断され、非常に開発を困難にしていたPS3反省ダイレクトに生かしてきたと考えられる。これはAMDが出していたコンセプトだ、と話題に上がるが、あくまでもパソコンの話であって、ゲーム機の分野では少なくとも、PS2プログラミングが困難な部分を、高速なバスで繋ぐことで隠蔽するよな仕様であったように記憶している。

さらx86-64アーキテクチャにしたことで、ゲームエンジンがPC向けエンジンの次に、素早くPSにも対応できる素地を整えた。Power向けに施す必要のあるチューニング不要にしたのである。従来はパソコンで開発されたクロスプラットフォームゲームは、パソコン向けと、家庭用ゲーム機向けの2種類作られた。そして家庭用ゲーム機向けは往々にして、ターゲットとなるハードウエアの中で一番性能の低いところに合わせたデータで作られた。平たく言えばPS3の方がXBOX360よりもはるか映像表現は優れているのに(※ただし使いこなせれば) XBOX360との差異はテクスチャムービー解像度程度の違いだけになってしまう事を意味していた。しかx86-64にしたことで、家庭用ゲーム機向けに統一してダウングレードされたデータからPS版を生成させるのではなく、パソコン向けのデータから生成させた方が早いと言う状況を作り出し、他の家庭用ゲーム機にくらべてアドバンテージを得ようとしているのでは無いだろうか。これはPS VitaARM採用したことも同じ事である

さらに、SONYは、PSVitaから進めてきた戦略として、自社による強力にプラットフォーム感の差異を吸収するミドルウエア群…これはゲームエンジンと読んでも良いのかも知れないが…を提供してくるだろう。x86ならば従来の資産を生かすこともできるし、世の中に出ているコンピュータ向けのライブラリも利用できる。急速に開発しやす環境を立ち上げているのではないだろうか。これはゲームエンジンにより脅かされる、プラットフォームビジネスへの対抗措置でもあるだろう。

これにより「雑事に捕らわれること無く、ゲームの楽しさ・表現のものに専念する」と言うクリエイタの夢を叶えるハードウエア、それがPS4であろうと思う。

平たく行ってしまうと、自社の半導体商売が死んだことにより、その死絡みから解き放たれたPSは、クリエイタ主導でゲームを作ると言う根本に立ち返って作ったのがPS4だ、と言う話である

しかしこれだとハードウエア製造業の夢はどうなってしまうのだろうか?そしてユーザ別にクリエイタの夢などはどうでもいい。下手をすると高性能なハードウエアを所有していると言う欲を満たせなくなる分だけこちらの方がまずいかも知れない。それをどうカバーするのか?と言う話になる。

「夢」PS4

ハードウエア/製造業の夢はどうなるのか

SONYは、次世代戦略として明らかにソフトウエア重視に舵を切っている。SONYは今、収支から見ると製造業では無く金融業であるが、その次に利益を生み出しているのは音楽映像ソフト部門とゲーム部門である

まずはここを潰してしまっては会社として立ち行かなくなる。それはまずい。ではどうするかというと、従来の「製造業としてのSONYを強くするために、PSの需要を利用する」のではなく「コンテンツ・製造複合体としてのSONYの核にPSを据え、関連商品を生み出す形で恩恵を得る」と言う形に舵を切ってくることになる。PS3でも一部行われているが、たとえばPSのリモートプレイを可能にするパソコンタブレット、PSを再生装置としてコンテンツ供給できるメディアサーバといった具合である

しかしこれらに対応させるために大切なPS本体の魅力を失わせては困ると言う事は強く意識されなければならないし、意識されていくだろうと思う。

ユーザの夢はどうなるのか

ユーザの夢は、将来的には作りやすゲームプラットフォームが生み出す新しいコンテンツという形で満たされることになるだろうが、直近では、ソーシャルへの展開という形で示されていると思う。将来的にはいかにコンテンツを集められるかと言う事にかかっている。が、ぶっちゃけていうとユーザから見たら、これほど夢の無い話は無いと言わざるをえない。

今回発表されたタイトルデモなどは実際にはチャンピオンで有り、実際にプレイして得られるのはPS3とそれほど感覚的に、革新的に良くなったと感じる部分は薄いと思う。この点で、PS4は、PS3と実働コンテンツはそれほど変わらないと思っている。マイナーバージョンアップ程度。パソコンWindows XPで評価が固まったようなものである。これはおそらく次に発表される新型Xboxでも同じだ。任天堂は少し別格の応えを出したが苦戦している。

結論 またしてもセガは早すぎた

かつてセガが出した芸術品とも言える至高のゲーム機DreamcastOSWindows CEを搭載した。プロセッサこそ独自であったがそれは当時のWIndows CEではあたりまえであり、むしろそこにWindowsと言う汎用のソフトウエアを利用したことで非常にゲームが開発しやすく、PCゲーム移植やす環境を作り上げた。それらはアーケードのnaomiプラットフォームや、ワンチップで埋め込まれたパチンコなどで今でも生き続ける。

任天堂WiiUコントローラに画面をつけDreamcastに追いついたように、SONYは、PS4で作りやすゲーム機という点で追いついたと言える。

またしてもセガは早すぎた。時代セガに追いついていなかったのであるDreamcastはその名の通り「夢を投げる」存在であったのだ。

PlayStation4は夢が無い」という幻想をぶち壊す

最初に言っておくと、増田SCEが嫌いな方でPS3Vitaも持っていない。

PSPスパロボの新作が出るまで持っていなかったほどだ。

そんな増田だが、PlayStation4発表でのハードウェアに対する誤解の数々を見てちょっとばかり怒りを覚えたので少し書いておく

x86」ではなく「AMD64

いきなり「何が違うんだ?」と思う人や「何も違わないだろ?」と言う人も居るかも知れない。

だが後半を語る上でもこれは重要な話なので省略しないでおく。

最近PCは当たり前のように64bitのメモリ空間を扱えるようになった。

この増田を読んでる人でも64bit OSを使っている人は少なくないはずだ。

これをもたらしたのは、x86 CPUを作ったIntelではなくx86互換CPUを作っていたAMDである

じゃあIntelは何をしていたのかと言うと、64bit CPUを作っていた。x86を完全に捨てて。

Intelは「IA-64」という64bit CPUを開発して商品も出していたが、これは現在ではほぼ完全に消えている。

何故かと言うと、x86が動かなかったからだ。

確かにIA-64は64bitをネイティブで扱えて「x86の古臭い負債」が全く無かった。しかし、現実世界x86で作られた既存ソフトウェアを求めたのだ。ゲーム業界でも似たような話を聞いた気もする。

それに対して、AMDは「64bitを扱えるx86」を作ってしまった。これが「AMD64」であり、現在業界標準としてx86-64と呼ばれているものである

知っての通り、x86-64現在Intel CPUでも対応している。AMDが作った命令を使わされる事になったIntelは何を思っただろうか。逆に、これまでIntelの命令を使ってきたAMDは何を思っていたのだろう。

Cellが目指した「理想的」なヘテロジニアスコンピューティングGPUが実現した「現実的」なヘテロジニアスコンピューティング

PS3に搭載されていたCellは、非x86スカラプロセッサPowerPC CPU(PPE)と、複数のベクトルプロセッサSPEを組み合わせたヘテロジニアス(非対称)プロセッサだった。(スカラベクトルについてはググろう)

スカラプロセッサが得意な処理、ベクトルプロセッサが得意な処理を両方とも高速に実行できる。それがCellの目指した「夢」だった。

しかし、知っての通りCellが目指した夢は破れた。

スカラプロセッサベクトルプロセッサプログラム最適化は全く別の概念で、プログラマーにとっては野球サッカーを同時にやらされるような物である

しかも、スカラプロセッサベクトルプロセッサの間でデータの交換もある。野球サッカーキャッチボールて。

スーパーコンピュータ「京」スカラベクトルの合わせ業で池田某氏に何度も叩かれるほどの超絶難産だった事は記憶に新し…いっけ?

それが原因でPS3の性能を最大限に引き出したソフトほとんど存在せず、こともあろうにXbox360とのマルチソフトが溢れる結果となった。(ちなみに増田360も持ってないのでエルシャダイプレイ出来ていない、問題だ)

それに対し、PC世界ではPS3360が発売してしばらく後に新たなヘテロジニアスコンピューティングが生まれていた。

CPUに比べて進化が止まらないGPUベクトルプロセッサの代わりとして使う試みだ。

GPUスパコン用のベクトルプロセッサCellSPEと違い、最近のどのPCにも搭載されているので量産効果で割安というメリットがある。

DirectXバージョンも2桁に突入機能が増えるにつれて、「もうこれで計算すれば良いんじゃね?」となったわけだ。

結論から言うとこの試みは無茶苦茶ヒットした。近年開発されたTOP500スパコンGPUが使われていないものを探すのが難しくなってきたし、

最近Photoshopなんかの比較的身近なツールもGPUコンピューティング対応してきてヌルヌル動くようになっている。

しかし、そんなGPUにも欠点はある。「CPUメモリから絶望的に遠い」のだ。

IBM発明MS-DOSWindowsが動くことで爆発的に普及した今のPCは、GPUを外付けにすること前提で設計されていた。

DirectXOpenGLのような例外を除いて、基本的に現代OSCPUとメインメモリソフトを動かすように出来ている。

GPUも、一旦メインメモリ上でGPURAMに載せるためのデータを生成し、CPUからGPU動かすよー」という命令を出さなければ動かせないのだ。

これはGPUにとって致命的すぎる欠点だった。これが原因で、遅さを跳ね返せる最新のミドルレンジハイエンドGPUでなければ逆にCPUより遅くなってしまうケースばかりだ。

現実的な理由で始まったGPUコンピューティングがぶち当たった現実的な壁である

CPUGPUAPU(加速するプロセッサ)の夢

このGPU欠点を克服する方法について、AMDはかなり前(少なくともGPUコンピューティング流行るより前の2007年以前)から取り組んでいた。

GPUコンピューティングが遅いのはCPUから物理的に遠いため命令を送る時間が掛かり、メモリの扱いも異なるせいである。

なら同じ場所に載せてしまえば良いのだ。

CPUからGPUに命令を送る遅延を無くし、CPUメモリGPUメモリを交換する時間も減らせばGPUコンピューティングデメリットは消え失せる。

夢のある話だ。

しかし、AMDには発想と設計技術はあったがカネと製造技術Intelと比べて絶望的に劣っていたため、

初めてのCPUGPU統合したプロセッサIntelに先を越されてしまった。(IntelGPU絶望的に遅いからって実質出てないなんて言っちゃダメだ)

これにはAMDもかなり堪えただろう。けれどもAMD戦略を曲げなかった。

IntelGPU絶望的に遅いのでほとんど意味は無かったが、少なくとも前世代のIntel GPUに比べると格段に実効性能が上がっていたのだ。CPUGPUを近付ける統合には間違いなく意味があったということである

AMDCPUGPUを同じチップにするだけでは無く、メモリアドレス空間」も一緒にする道を目指した。

こうなるとCPUの使っているメモリGPUから直接扱え、GPUの使っているメモリCPUから直接扱えるようになる。

これが実現するとCPUGPUが完全なヘテロジニアスコンピュータに一歩近付くのだ。

しかし、そんな夢のあるCPU+GPUの開発は当然難航した。

半導体工場部門を分社化して売り払ってもまだ開発は遅れた。

2011年にやっとAMD初めてのCPUGPUであるAPUを出せたが、メモリアドレス空間はまだ別々だった。

2012年になってもメモリ空間は別々のままだったが、AMDARMiPhoneAndroidWindows Phoneに載っているARMである)と合同でHSA(ヘテロジニアスシステムアーキテクチャ)を推進すると発表した。

世の中の現実的な人々は笑った。「アーキテクチャだけを作ってもハードソフトが出てこないんじゃ話になりませんよ」と。

同じ2012年AMD2013年中にHSAの第1世代製品を出すとだけ発表し2012年は終わった。

ぼくのかんがえたヘテロジニアスコンピューティングマシン

そして2013年2月21日米国時間20日)、Sony Computer EntertainmentPlayStation 4を発表した。

Cellコケしまったので載らない事は誰もが知っていたが、載っているハードウェア一部の人が驚いた。

―HSAであるPC用のHSA対応APUがまだ正式発表されていない中で、なんとHSAを載せてきた。(2013年末発売だから当たり前だというツッコミは止めろ!)

CPUx86-64Jaguar 8コア(ちなみにPC向けJaguarは4コアまでだ)、GPURadeon HD 7800相当でPS3と違いガチで1.8TFLOPS(理論上1秒間に計1.8兆個の小数点を含む計算を実行可能)のスペックを持つ代物だ。

このCPUGPUは8GBのGDDR5メモリを共有して動作する。8GBと聞くと最近PCから考えると少なく聞こえるかも知れないが、(わたしのメモリは16GBです)

GDDR5とはGPUの描画計算を速く済ませるために作られた超高速メモリであり、ご家庭のDDR3メモリとは比べ物にならない速さが出せる。

実際の所PS4がHSA対応かは正式発表されていないのだが、PC向けJaguarはHSA対応と発表されており、SCEPS4APUCPUGPU)と呼んでいてこの変態メモリ構成とすると、発売までにクッタリスペックダウンしない限りHSA確定と見て良いはずだ。

また、PlayStationはこれまで一度もx86CPU採用した事が無く、これが最初(で最g)のx86採用機となる。

Intelが初代XboxCeleron搭載)であっさり諦めたx86ゲーム機市場制圧の夢を、AMDが思いもよらぬ形で果たしたのだ。

これまでPCしか発売されてこなかったDiabloが、x86-64PS4向けに初めてコンシューマ版を発表した事もx86-64採用が決してつまらない事ではなかった証だろう。(Diabloと戦うハメになるサードの方々にとっては非常につまらないが)

CPUGPUの”フュージョン”…(HSAは以前はFusionと呼ばれていた。そういえばドラゴンボール映画も今年やな…)

AMDが長年の間見てきた夢が、PS4で初めて現実世界に現れることになる。(※ただし次世代XboxもHSA採用PS4より先に発売したりしない世界線に限る)

こんな馬鹿らしいほど夢が詰まったマシンを「x86搭載だからPCみたいで夢が無い」という一言で切り捨ててしまう人に増田絶望した。

なおこの増田Core i7GeForceで書かれた模様


追記

予想以上に反響が大きくてビビったので

でも、それってユーザーの夢にどう繋がるの?

という趣旨感想についてだけ補足。

性能の引き出し易さがPS3と比べて格段に良くなるのでPS3ラストレムナント人喰いの大鷲トリコのような非情現実が減る。以上。

2012-12-09

http://anond.hatelabo.jp/20121209055355

WebGLOpenGLオフセットじゃん。

……サブセットだよな?

ちょっと前にOCamlマンセー流行ってたけど、

(中略)

あいつら最初からCやってればこんな情弱にならずに済んだのにな。

OCaml触っててC使えない奴がそうそういるとは思えんが。

http://anond.hatelabo.jp/20121208222828

想像ひとつも合ってないのが笑える。

まあ、そういう言い分は言語マニアにとっては都合が良いから無条件で真実とされてるわけだが

そういう嘘だらけな世界になってるのもウンザリしてる理由だな、

俺に言わせりゃお前らこそ「かじってる」だけだからからないんだと思ってるが。

つーか、プログラムで「何を」やったことあってそんなこと言ってんの?

俺のこと古い人間とか言ってる奴いるけど、

「最新技術」を使えば使うほどCやるしか無いって痛感するよw

からすりゃクソ言語愛好家は全員情弱から

WebGLOpenGLオフセットじゃん。今更何年も前に話題になった機能の入門記事が溢れてるのが笑えるwww、とか

ちょっと前にOCamlマンセー流行ってたけど、あれだけ賛美推奨しておいてF#(.NetOcaml)をどいつもこいつも無視してるはありえんだろwwwとか

クソ言語マニアブログ、記事、Twitterはこんな情弱ばっか。

あいつら最初からCやってればこんな情弱にならずに済んだのにな。言語以外の知識も今頃豊富だったろうに。

こういう言語仕様調べてるだけの役立たず情弱ばっかになったのもむかついてしょうがないわ。

2012-10-24

http://anond.hatelabo.jp/20121024113536

■頭の中でCを簡単なアセンブラに変換できるのが大事

http://anond.hatelabo.jp/20121024004748

こんにちはこんにちは

以前、"he doesn't use struct or union?"と書いて、ここの住民に糞味噌に言われた人です。

#が、この一言で何が言いたいかからなければ、プログラマーとしては最低ランクだと思うよ。

俺の場合は、

1. C勉強開始

2. PC-9801スプライト動かした段階で息が絶える...orz

3. 放置

4. C++勉強開始

5. OOよくわからんC++むずい...orz

6. アセンブラとかZ80、8086、386、486の勉強開始

7. すげぇよくわかった!CASLとかも試験のためにやった

8. Javaアルファー版をダイアルアップでダウソ

7. 英語マニュアルしかないので仕方なく読む

8. OOの何がいいのか理解できたヽ( ゚∀゚)/

9. Javaで書いたソフト雑誌で紹介されたり、賞を取ったりした

10. JVMとかクラスファイルフォーマット勉強開始

11. C、C++勉強OpenGLゲームとか作る

12. 振り返ってみると、全ての知識が有機的に結合されている!!!頭の中でCを簡単なアセンブラに(Java場合バイトコードに)変換できるのが大事だったんだね!!!

13. 就職

14. 転職

15. 就職

16. 転職

17. 病欠

18. 転職

19. 離職

20. 無職

現場ゴミみたいなコードを書く人とかゴミみたいな設計をする人で精神を痛められます

ITは辞めた方がいいよ。

#これも後で消す。

#あと、文章を消すのは鼻から議論する気がないかdeath。これはチラシの裏

2012-06-25

http://anond.hatelabo.jp/20120625011135

いや、MP3に使うフーリエ級数展開 ってちゃんと書いたよね私。

CGにつかう球面調和関数いいんじゃない別に

知りたければ、調べて普通にわかるだろうから、使うよ。

もっとOpenGLシェーダーも、必要な範囲では使うけど ゲーム屋じゃないので、そこまで、やらんけど。

 

単に球面調和関数って持ちだしてきて、知らないならバカにしてやろうっていうそ精神が、嫌だって話だろ。

それこそ、知りたければ勉強すればいいじゃん。

 

知りたければ勉強するって範囲において、文系理系もないだろ。それは常識

 

だけど、一般的な採用において、 文系に球面調和関数を求めたり、理系経営学を求めたり するのは おかしいよね。

って話だろ。 どっちにも それぞれ できるやつがいる というのは当たり前。

 

でも、どっちもできなければおかしい。というのなら文系理系も 分ける意味ないだろ。

 

分かれているのは、平均的に期待していいか?だめか?って話で

CS系なら まぁ、期待できる確率が高い。 文系だと 低い。ってだけで。

それをいうなら、CS系に  文系の専門知識を求めて いいか?ってはなしは。 できる奴もいるが、一般的ではない。って話だろ。

 

同じ事じゃん。 正直、それ被害妄想だよ。 文系数学的なことはできなくても、それが一般像という奴。

理系文学的なことができなくても それが一般像というやつ。

できる奴がすごいんであって、 できて当たり前 ではなかろ。

 

おれは、数学も出きる文系だ! って そういうのは できる奴もいる って 書いてあるじゃねーか。

 

2012-05-12

http://anond.hatelabo.jp/20120511000235

元増田です。書くのは初めてなんだけど、たくさん反応があって嬉しい。

なぜ、プログラムやりたくてSEに応募するのかわからん・・・

プロ野球選手になりたくて、バットメーカー就職するようなもんだよね?

というかゲームプログラマーになりたいのになぜSEなのか。

卒研に集中したかったのと、就職率が低い事で焦ってた。

内定が出た時は宝くじが当たったような気持ちだった。本当に無知だった。

 

卒研ではC++OpenGLで朝から夜までプログラムを書いてて楽しかった。

VimGit等の使い方を学んだりもした。

ゲームプログラマに興味があったのは、そういう事ができそうな気がしたからだと思う(実際どうなのかは知らないが)

 

研修が終わり待ち受けていたのは、前回書いたような環境の中

VBソフト機能追加や改修をして、データベースを弄り、Excelテスト結果を書く日々。

他にも諸々の書き物があり、Excelを使っている時間の方が長い。

全く楽しくない。辛い。上司や近くの人も黙々と同じ事やってる。

 

半年、1年、3年とエピソードや意見を貰ったが、自分は1年が精一杯だと思った。

ログイン ユーザー登録
ようこそ ゲスト さん