はてなキーワード: webGLとは
最近秋葉原の「U Mobile Shop」で開催されたセールで購入したIntel NUCキット(NUC6CAYS)に
ついてのレビューです。
このミニPCは、その小さなボディに秘めた可能性に驚かされることばかりでした。
それでは、購入から設定、そして実際の使用感まで、詳しく見ていきましょう。
NUC6CAYSの画像: https://i.imgur.com/LrfNMrA.jpeg
1. 購入経緯
2024年9月14日、秋葉原の「U Mobile Shop」とそのオンラインストアで中古ミニPCのセールが
開始されました。
オンラインストアは午前0時からスタートし、私はこの機会を逃すまいと注文しました。
Intel製Windows 10ミニPC中古が3,000円でセール!【Intel NUCキット】
https://daily-gadget.net/2024/09/12/post-77177/
セールの目玉商品だったIntel NUCキット(NUC6CAYS)の仕様は以下の通りでした:
- メモリ: 4GB
- ストレージ: 32GB
- OS: Windows 10 Home
https://youtu.be/Q9gM8jAOf_0?si=kr-9lrfr20P0eG-Z
残念ながらWindows11には非対応ですが、そのために価格は3,000円!でした。
2. 開封と初期の印象
商品が届いてすぐに開封しました。外観は予想以上にきれいで、ミニPCとは思えないほど
頑丈そうで加工精度が高い印象を受けました。
手に取ってみると、その小さな筐体からは想像できないほどの重量感があり、
a. まず、HDMIケーブルでモニターに接続し、2.4GHz帯のワイヤレスキーボード
b. 電源を入れると、問題なくモニターに映像が表示され、キーボードとタッチパッドも
c. BIOS画面はIntel独自のデザインで、タッチパッドでスムーズに操作できました。
3-2. Windows 10の起動
そのまま起動すると、内蔵eMMC(32GB)にインストールされていたWindows 10が
立ち上がりました。起動は速く、基本的な操作も問題なくできました。
ただし、機能更新プログラムのバージョンは相当古いものでした。
注目すべき点は、CPUファンが搭載されているにもかかわらず、とても静かだったことです。
デスクトップ環境として使用する上で、この静音性は大きなメリットだと感じました。
ネットで見つけた分解写真: https://i.imgur.com/BXApN8U.png
まず、空きスロットに8GBのDDR3Lのメモリを追加で挿し、12GBに増設しました。
BIOSで問題なく認識され、システムの応答性が向上したように感じました。
次に、2.5インチSATA SSD 1TBを増設しました。内蔵の増設スロットを利用したので、
取り付けは非常に簡単でした。
4-3. eMMCの無効化
搭載されていたeMMCは容量が32GBと限られていたため、BIOSから無効化することにしました。
ただし、元のWindows 10インストールを保険として残しておきたかったので、
完全に消去することはしませんでした。
無効化後、NUC6CAYSを起動すると新しく増設した2.5インチSATA SSDにインストール
されていたWindows 10が問題なく起動しました。
Windows 10も快適に動作しましたが、さらに軽量なOSでの使用感を試すため、
a. インストール自体はスムーズに完了し、特に問題は発生しませんでした。
c. YouTube FHDの60FPS動画も問題なく再生でき、Wi-Fi接続も安定していました。
Chrome OS Flex上でいくつかのベンチマークテストを実行しました:
シングルスコア:約15,000 マルチスコア:約110,000
b. WebGL Aquarium:5,000匹の魚で約35FPS
ベンチマークの画像: https://i.imgur.com/5zmXXbc.jpeg
これらの結果から、高性能とは言えないものの、日常的な使用には耐える性能を
持っていることがわかりました。
特筆すべきは、これらのテスト中もファンの音がほとんど聞こえなかったことです。
天板に直接耳を当てないと音が聞き取れないほどの静音性は驚きでした。
6.総評
Intel NUCキット(NUC6CAYS)は、その小さなボディからは想像できないほどの
可能性を秘めていました。
6-1. 長所:
- 驚くほどの静音性
6-2. 短所:
- 高負荷のタスクには向かない
- 自宅用のChromebox的な使い方
3,000円という破格の価格で手に入れたこのマシンですが、その価値は金額をはるかに
超えています。
拡張性、静音性、そしてある程度の性能を兼ね備えたこのミニPCは、様々な用途に適応
できる素晴らしいマシンだと言えると感じました。
Chrome OS Flexの検証に続いて、Linux開発環境の可能性も探ってみました。結果は予想以上に良好で、
Chrome OS Flex上でLinux(Beta)を有効にし、開発環境をセットアップしました。
Linux開発環境の画像: https://i.imgur.com/8URQQSU.png
Linux環境で、以下のアプリケーションをインストールし、動作を確認しました:
参考サイト:初期設定&日本語入力を使えるようにする方法|ChromebookでLinux
https://catalyst-wakaba.com/linux-on-chrome-os/
最近は最前線から離れててあんまり追えてないけど、現役のときの2008年くらいから10年くらいの間で、仕事のやり方や設計の考え方が大きく変わったIT技術要素で、いまぱっと思い浮かぶのはこんな感じかな。
分野にもよるし、調査して試作した結果自分の業務には採用しなかった技術とかもある。流行ると思って使えるようになったけど流行らなかった技術を入れるとたぶんもっとある。
あと、新機種が出てOSが新しくなったり、ミドルウェアの新バージョン対応、テスト手法の進化もけっこうカロリー高いけどここには書いてない。
「自分はフロントエンド専門でReactしかやらない」みたいに分野を絞れば大分減るけど、その技術が何年持つかわからないから普通はリスクヘッジのために他の技術も齧らざるを得ないし、バックエンドとかの人と議論するのに結局他分野の知識もそれなりに必要。
NoSQL(memcached, Redis, Cassandra)
クラウドアーキテクチャ、XaaS(AWS, Google Cloud, MicrosoftAzure)
CI/CD(Travis CI, CircleCI, Jenkins)
トランスパイラ(Browserify, webpack, CoffeeScript, TypeScript)
型システム(Rust, TypeScript, Haskell)
オーケストレーション(Ansible, Kubernetes, Terraform)
機械学習(Python, MATLAB, 線形代数等数学知識)
SPA(React, AngularJS, Ember.js, Vue.js)
3Dゲームエンジン(Unreal Engine無償化、Unity5)の他分野への普及
GraphQL
機械学習ライブラリ(Tensorflow, PyTorch, Chainer)
Jupyter Notebook
NFT
完成おめでとう。今はまだ遊べてないけど、後でチェックしてみるよ。
匿名ダイアリーに投稿するのはいいと思うんだけど、google driveに入れてダウンロードして実行しろ、はかなりきついな。
itch.ioはゲームを投稿するサイトで、審査もないのでそこ経由でこっちにも投稿する形にしたらいいと思うよ。できたらweb上で実行できるようにビルドすると、遊びやすさが全然変わるので、プレイしてくれる人もかなり増える。遊んでもらえない限り公開してないのと一緒だしね。英語のサイトだけど、日本語のプレイヤーもかなり居るし、ゲーム制作したことのある人の比率も大きいから、良いフィードバックも期待できる。
Unity + Webglの組み合わせなら、unityroomもいいよ。こっちは日本語圏のサービスなので、フィードバックも日本語でもらえるのでいい感じ。
あと個人的に気になったこと。自分のゲームをクソゲーとか呼ばない方が良いよ。というかクソゲーとか自称してるゲームはあんまり遊びたくないよ。そもそもあんまりいい言葉でもないし。
もうひとつ。本命ゲームができるまで匿名で活動したい、という気持ちはわからないでもないけど、同じアカウントで投稿と本命ゲーム制作をするのをおすすめするよ。しょぼいゲーム作ると汚点になる、みたいに思うのかもしれないけど、全然そんなことないし(そんなこと誰も気にしないし、気にしてくれる人が出るほど有名になったら、それはもうすごいことだと思う)、同じアカウントでゲーム作ればフォロワーも増えて結果的に本命のゲームも遊んでもらえる確率が高くなるから。
本命のゲームにめちゃくちゃブランディングが必要なら別だけど(例えば習作はエッチなゲームも投稿するけど、本命は真逆のテンションだときついかもしれない)。その場合は2つのアカウントが必要になるかもね。ともかく頑張ってね。
プログラミングを学ぶと稼ぐに困りにくくなるらしい。
毎月家賃と光熱費と奨学金が口座から引かれるところを見るたびに、GAMEOVERが近づいてきてるような感覚に襲われる、クソ雑魚フリーターからするとすごく羨ましい。
おすすめ本みたいなものから色々探してみて『12歳からはじめるゼロからのPython』というのを手にとって見た。もう2倍以上上回ってるけど、知能と心は12歳みたいなものだから問題ないでしょう、多分。
ちなみにゲームプログラミング系の本だったんだけど、これはゲームが作りたいとかがあったわけじゃなくて、なんとなく面白そうだったから。
今までの人生を振り返って、例えば数学の教科書なんかそうだけど、2次関数がどうのこうのと公式を並べられて、一時的に覚えることはあっても『で、これはなんの役に立つの?』という思いが先行してやる気がでないことが多かった。だからゲーム作りっていう、学んだらこれができるってのがわかりきったものを手に取ってみました。
それで1ヶ月ぐらいやってみて、内容はわかったし、教科書どおりのことをやるぐらいの実力はついたけどここで思ったんですよ。
『で、こっからどうやって稼ぐの?』
考えてみるとゲームの作り方学んだからって、これを活かす方法がわかんないんですよね。
第一、ゲーム作りだったらUnityとかのほうがいいんでしょ?知らないけど。Pythonが良いって話を優先しすぎて足元見えてなかったなぁ。
そこから『Unityの教科書』っていう、なんか猫が書いてある本を買って、猫がひたすらジャンプして上を目指していくゲームみたいなの作れるようになったんですよ。WebGL?っていうのにして、Unityroomってところに上げて、一人で遊んでニヤニヤしてたんですけど、ふと『あれ、一銭も稼げて無くね』っていう。
そもそもUnity使えるようになったからってどうやって稼げば良いんですかね?
そこで立ち返って、そうそうPythonがおすすめだったんだよ。勝手にUnity使い始めてしまった。だから『Pythonによるスクレイピングと機械学習』みたいな本買ったんですよ。
で、読み進めて、なるほどサイトから情報抜き出せるのか~って、やれることわかったんですけどやっぱ『で、どうやって稼ぐの?』ってなるんですよね。
何が言いたいかっていうと、ザコが思うにプログラミングにおいて一番大事なことって発想力とか創造力とか、プログラミング以外の部分なんじゃないかっていう。
スクレイピングと機械学習が使えるようになっても、それを活かして何をやればいいのかわからない。
ゲーム作れるようになっても、イラストもかけないし、どんな物作ったら面白いのかわからない。
テレビで活躍してるお笑い芸人と同じ言語を僕は喋れますけど、だからといって彼らのようにはなれないじゃないですか。同じようにプログラミング言語を使えるようになっても、それを使って何をするかが思いつかなかったり、そこの技術力がなかったり。
そういう人にとってプログラミングって稼ぐ道具として不釣り合いだったりするんですかね?
タイトル通りザコの思うプログラミングの話なんで、はてな見るような上澄みの人からすると見える世界はぜんぜん違うんでしょうけど、ちょっと触った人間からするとプログラミング言語って活かし方が良くわからない代物でした。
全然、強要とかしないんですけど、よかったらプログラミングで副収入得るとしたらどうすればいいのか教えてもらえたら嬉しいです。
検挙に京都府警が関わってなさそうってのは、それなりに理由があるんじゃないの?
鬼の首取ったように「不正指令電磁的記録の罪はそういう行為だ」みたいな認識してる連中がおるが、あれはコンピュータウィルス(PC内の電磁的記録媒体に保存され、動作すると記録の消去や改竄、盗聴させるプログラム)を取り締まる法律を作れって話でこさえた訳じゃん。
「人が電子計算機を使用するに際してその意図に沿うべき動作をさせず,又はその意図に反する動作をさせるべき不正な指令を与える」
を根拠にしてるが、動作が遅くなるだの結果的に電気を使うだのを上記の不正に含めてたら、UXを損ねるパララックスだのWebGLだのFlashだのまで、不正な指令に入るだろ。
ウィルスで動作が遅くなるのは、あくまで破壊・改竄・盗聴の副次的産物であって不正の要件じゃない。
遅くなるだけ、電気を喰うだけってのは、「人が電子計算機を使用するに際してその意図に沿うべき動作をさせず,又はその意図に反する動作をさせるべき不正な指令を与える」に該当しない。
Webでは単純にテキストサイトではない本当に色々なことができるようになってきた。
HTML5になって以降まさに飛ぶ鳥を落とす勢いだ。
ここ5年くらいでデスクトップアプリに負けないレベルのSaasも出てきた。
Slack、Youtubeや生放送、Googleドキュメント、Google mapをカーナビ代わりにしている人もいる。
Javascriptも相変わらず日進月歩でTypescriptやらNodejsやらReactやらVue.js Three.jsなど、もうテキストサイトの付属品ではないことは明らかだ。
個人的にはWebGLでアプレットを使わず3Dの描画ができるようになったのは衝撃的だった。
そんなわけで、Webはどんどん急激に高度化し大規模化してきている。
ここまで大規模化していったシステムはセキュリティ的にもシステム的にもこれまでのような少数のチームがちまちま作るには手に負えない状況に来ているんじゃないかと思う。
それが表面化してしまった事件が今回のコインチェック事件ではないか。
コインチェックはおそらくWeb系のエンジニア主体でイケイケで開発したんだと思われる。
ただセキュリティが甘かった、つまりシステムとしてセキュリティ(内面)に問題があった。
これはまさにWebエンジニアの弱いところを突かれたといっても過言ではない。
それに伴ってWeb企業もSIer化していくんじゃないかというのが私の持論。
全てとは言わないが、これまでのWeb系エンジニアの開発スタイルはどちらかというとイケイケドンドンでできたらいいや使えたらいいやの精神でやってきたんじゃないか。
これでは大規模なシステムになるとセキュリティも保守も難しくなってくるだろう。
大規模なシステムはきちんとオブジェクト指向で作ってテスト駆動でウォーターフォール式で開発するのが筋ってものだ。長期的な目で見れば理にかなっている。
今後高度化していくWebに対応するためにはそうやって作っていくべきだろうし、自然にそうなっていくだろう。
大規模なサービスに関わるWebエンジニアは自然にSIer的になっていくんじゃないか。
Googleスライドとかスプレッドシートはヤバいくらい複雑なシステムだと思うしハイクオリティだとおもうんだけど、どんな開発体制で作られたんだろうか気になる。
門外漢からするとこんな風に聞こえてる。(所々適当に書いてるし書いてる内容は嘘デタラメ)
「gulpでbowerしてsassをgruntでビルドすれば、cssがストリーミング形式でデタッチされるから便利だよ。それにgulpはCoffeScriptとかtypescriptみたいな流行りのサードパーティも従来のJSみたいに変換してくれるしウォータフォールじゃなくてアジャイル的なプロジェクトでも使いやすい。スクラッチから書かなくてもいい感じにアジャストしてくれるよ。あと、OSSとしてgit上に上がってるんだけど、DLなんかもAWSと連携させてWebGLとTensorflowやらchainerやらと組み合わせればブラウザでDQNとかA3CとかDCGANも動かせるスクリプトがリリースされてた、バックエンドではDNNを走らせてフロントで表示する分をNode.jsでカスタマイズしたりタスクランナーでプロセスをマネージメントできるからもはやjsでtensorflowを含めたpythonのラッパーみたいな感じで使えて便利。最近ではbluemixがBitcoinのマインングをサポートしていてブラウザ上でウォレットからマイニングのセットアップまでできるんだって、ブロックチェーンの仕組みを拡張して社内のタスクマネージャーとかNAS上のデータを分散してサーバーに保存できるみたいなこともあるんだって。」
IT業界、特にゲーム業界は、流行りのネタ、ビジネスモデル、技術などはものすごい速さで変わっていってます。
たまたま、あるゲームがヒットし、人を増やし、そのゲームに適応した会社の仕組みを整えたとしても、すぐに時流に乗れなくなっていく、終いにはいつまで同じ昔のを焼き直しているんだ、というのを経験しました。
会社に必要なのは、変化できる、時流に乗っていける、欲を言うならば新しい時流を作り出せる仕組みこそ整えるべきと感じました。
例えばC社が強いのは、ゲーム/非ゲームに限らず、グループ内ですら競争させ、時流に乗れるグループが生き残る仕組みがあるからなのかな、と感じています。
あるいは、時流に関係ない他社を圧倒するノウハウ/コアバリューを持つ会社も強いのか、と感じました。
あと、VR/AR/MRへの予想。一部の会社はよく投資しますが厳しいのではと感じています。
ゲームエンジンの普及のおかげで少しは楽になりましたが、VRには3Dのノウハウがとても必要で、たまたまヒットできたとしても、3Dのノウハウの持っている据置系の会社にネタ/ビジネスモデルだけ拝借されて、すぐに追い越されそうな気がします。
例えばソーシャル系の会社は、据置系の会社が得意でないWebGLとかクラウドとかに投資した方が、いいんじゃないかと思っています。
先ずどの環境で作るかを考える。
AndroidならJava、iOSならSwift、ブラウザならJavaScript、MacやWindowsもある。
どれにしても習得するのはそこそこ難しい。
難しい。頂点シェーダー・フラグメントシェーダーも書く必要がある。
AndroidやiOSのライブラリに余りいいものはないかもしれない。
WebGLならThree.jsがメジャー(シェーダーも自分で書かなくてもいい)。もっと小さいライブラリもある。
JavaScriptプログラムをAndroidやiOSやパソコンで動かす事もできる。
勉強している内にUnityを使ったほうがいいかなとか色々思うだろう。
そうで無くても、GUIプログラミングは全てが一つのプログラムに入り複雑。
ここまで認識するようになるのに1年ほどかかるだろう。
(何か環境を一つに決めて初心者用の本の通りにすれば短期間でできるが。)
処理ごとにファイル出力して(メモリより時間がかかるが)分離しやすい場合も多い。
Rなどでのプログラムも案外手軽にできる。
まあ、そういう言い分は言語マニアにとっては都合が良いから無条件で真実とされてるわけだが
そういう嘘だらけな世界になってるのもウンザリしてる理由だな、
俺に言わせりゃお前らこそ「かじってる」だけだからわからないんだと思ってるが。
つーか、プログラムで「何を」やったことあってそんなこと言ってんの?
俺のこと古い人間とか言ってる奴いるけど、
WebGL?OpenGLのオフセットじゃん。今更何年も前に話題になった機能の入門記事が溢れてるのが笑えるwww、とか
ちょっと前にOCamlマンセーが流行ってたけど、あれだけ賛美推奨しておいてF#(.Net版Ocaml)をどいつもこいつも無視してるはありえんだろwwwとか
クソ言語マニアのブログ、記事、Twitterはこんな情弱ばっか。
なぜ両方使うという選択肢がない。真の技術者はウェブ標準だろうがFlashだろうがネイティブだろうが、その場その場でユーザーの体験を最善にし、クライアントの要求を最高に満たすベストの技術を使う。JavaScriptかFlashかなんて動きさえすればユーザーには関係ないんだから。実際、HTML5スゲEEEEE!!!ってページにFlashタグのブクマが間違ってつけられたりしてるよ?(笑) ウェブ標準の崇高さなんてパンピーにはわからんのです。
そもそも分からないんだけど、HTML5が「投資」するほどたいしたもの? 誰もが基礎教養として身につけているはずの、これまでのHTML+CSS+JavaScriptの延長線上の技術でしょ。今まで普通にやってきたウェブ開発者ならすぐにキャッチアップできるはずだよ。
どうせHTML5の実装の普及には当分かかるし、その時点のブラウザ環境で使用可能なものをゆっくりまったりと導入していけばいいだけ。その意味ではいわゆる遅延評価学習で十分。あわてることはないです。どうせ皆使うことになるんだから。
一応言っておくと、いいものだと思いますよ、HTML5は。現段階で頑張って凝ったものを動かしておられるイノベーターの方々もたいしたものだと思います。敬意を。マリオやらグラディウスやらは著作権的にどーなのかと突っ込みたいが。
それはシナリオのひとつですよね。Googleの甲斐性次第では十分にあり得る。それと、ジョブズが翻意するというシナリオもありますよ。今までに散々あったことですが。どこかでそれをネタにしている記事があったと思いますが。
もしEdgeを見てそう思ったのなら、Flash CSを使って制作したことがありますか? Edgeを実際に使ってみましたか? と問いたい。
他にも、最低でも、
これらにきちんと答えられない人間にHTML5 vs Flashなど語る資格はないです。そもそも対立させる時点でわかってないなー ┐(´д`)┌ って感じなのだけど。
あとFlashへの投資が無駄になると思ってるようですが、俺はFlashは投資判断「Buy」継続だと見てますよ。たとえこのままiOSで動かずともね。AIRもあるし、ブラウザのプラグインとしてのFlashだけ見ていると考えを誤るよ。ブラウザのほうにしても、GPUアクセラレーションつきの3Dが真っ先に使用可能になるのはFlash。プレイヤーの普及が速いから、WebGLと異なり、今後1~2年内に実案件で使用可能になるでしょう。そういった面ではなおカッティングエッジな技術だよ。
まあ、プラットフォームや言語の選択は投機だから、どの銘柄が買いか売りかで紛糾するのはわかる。ただ、それなら分散投資だとか、インデックス投資という考え方もあるのでね。HTML5に惚れ込んで一点買いなんて若いエンジニアがいたら、それはもう相当危なっかしいなと、視野も相当狭くなるだろうなと危惧するよ。
というか、JavaだろうがC++だろうがObjective-CだろうがLLだろうがアセンブリ言語だろうが関数型言語だろうが、一度全部触ってみなよ。いいから。HTML5で手一杯なんてのでは話にならんですよ。