「Unity」を含む日記 RSS

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

2017-02-16

[]iTunes Connectでのアプリ提出、激烈面倒くさい

http://anond.hatelabo.jp/20170216163458

Androidアプリリリースをした無職増田@saitamasaitamaです。先ほどやっとのことでiOS版のアプリ公開申請完了いたしました。

Unityを利用しているかiOSアプリ簡単に作れるだろ? と皆さん思いがちですが、実際はiOS上で動作させるまではそれほど難しくなくてもリリースにこぎつけるまでにはすごく面倒くさい道のりがあるのをご存知でしょうか。

して、すごく大変でした。実際半日くらいリリースだけの作業に費やされました…

こんなん手軽ちゃうやん。Appleさん、もうちょい開発者に優しくしてーな。

以上。増田さんたちもiPhoneアプリを作って、ものづくりの面倒くさい部分だけを味わってみましょう! 

いかにしてエンジニアにはそれなりの給料が支払われるのか? なぜならこういうトリックがあったからなんですねえ。クソが。

UnityのCloudBuildでiOSアプリビルドした後そのビルドをiTunesConnectに提出するのどうやんの

Windowsだけで作業完結できるんじゃないの? やっぱMacビルドしなおしとかしないとアカンの?

詳しい人情報求む!

2017-02-14

Tombo Platformについての13歳女子高生感想

iPhoneゲームブラウザで遊べるTombo Platformをリリースしました

http://blog.wktk.co.jp/ja/entry/2017/02/14/tombo-platform-is-released

技術的な詳細とかは英語ブログに書いてます。そちらも見てちょ。」などと書いてありますが、そちらを拝見すると「Emscripten」というCやC++Webで動かす(JavaScriptに変換する)技術Objective-C対応させただけということがわかります英語で書いたと言えばほとんどの人が見ないだろう、という小賢しい意図を勘ぐってしまます(実際、ブコメを見た感じほとんど誰も英語のほうを見ていないようです)。

最近iPhoneゲームほとんどは、Androidにも対応するためUnityやCocos2d-xなどのクロスプラットフォームフレームワークで作られています。この2つで作ったゲームどちらもWebブラウザで動くので※、実はほとんどのスマートフォンゲーム最初からブラウザで動かせる技術で作られているのです。Webブラウザ対応しないのは技術問題ではなく、対応していないだけというのが実際のところです。スマートフォンゲームスマートフォン向けに作られているので、単にPCブラウザ移植しただけでは面白くないというのもありますし、課金や、広告や、集客認証などなど、ゲームプラットフォームに求められる様々な機能を素敵な感じにWebブラウザ提供してくださるものがないから、ビジネスとしては衰退したというのが2017年現在です。何周遅れのことをなさっているのかな、と思ってしまます

※加えてWindowでもMacでも動きますし、Unityはほぼ全ての家庭用ゲーム機にも対応しています。今iOSであえてObjective-Cゲームを作る方は、よほど偏屈でいらっしゃる方だけかと思われます

EmscriptenObjective-C対応させたのはおそらく価値があることなのだと思いますが、現在iPhoneアプリ開発において主流な言語であるSwift対応していらっしゃらないというのも、iPhoneゲーム移植できると主張する上でちょっと誇大広告がすぎるのではないでしょうか。

たぶんこの技術を使ってWebブラウザで動かせるようになるゲームは、素人の方がお作りになったものも含めて単純に数でカウントしたとしてもiPhoneゲーム1020%ぐらい、ビジネスで作られているゲームだとは5%ぐらいではないかと思います

[]Unityって簡単だとか思うじゃん? 簡単からってすぐにゲームが完成できるわけじゃないんだべ?

Unityの素晴らしいところはAssetStoreがあって足りない要素や素材を補完できるところだけれど、だからといってすぐに何かしら作ろうと思ってできるものは無い。

将棋を作ろう! オセロなら簡単だよね? アルゴリズム計算部分は確かにそうだが、UI部分のプログラミングは面倒くさいうえ、おおよそそれらに特化したアセットというものはない。

さらにはUI部分を補完するためのチュートリアル的なもの実装するのにゲーム本編を実装するよりも遥かに手間がかかったりする。

ああ、ゲーム開始ボタンけがあればよかった携帯アプリ時代よ。

人類はいつまでたっても面倒くささと闘い続けなければならないのだ。他人の面倒くささを省くために。

[]転職活動? 頑張ってますよ! でもあんまり予定自体が埋まらないよね!

ブンブンハロー増田さんたち。@saitamasaitamaもしくは無職増田ですよ。転職活動? してます! 仕事ください!

転職活動と称して転職サイトから適宜情報入力したりなんだりして紹介企業への面談予約なんかを入れてるんですが、なかなか相手先の予定が決まらないので毎日フル活動というわけにはいきません。

ってか一日何件もスケジューリングできないので、必然と一日1~2件の面談予約程度しか入れられません。

となると殆ど何もしてないのと一緒だよね!

なので、日がな弊社はUnityエンジニアを気取って自作アプリを作ろうと頑張ってたりします。

昨日はついに長らく放置していたiOS developerアカウントを復帰させました。12799円も取られたよ! 取り返せる当ては全くないっていうのにね…

この記事を見てる偉い経営者増田さんたち、私に仕事をくれたりしないですかね?(チラッ)

2017-02-13

http://anond.hatelabo.jp/20170213143611

一歩間違うと無限ループになるようなメソッド結構作るんだけど、そのメソッド無限ループやらかしちまったのかそうでないのかを判定するのが結構めんどいんだよね。

多分この悩みはどのフレームワークでも一緒だぞ。無限ループを検知してくれるようなプログラミング言語(とかフレームワーク)なんてそう無いだろ。

ただ、一点Unity無限ループを描くと問答無用で落ちる(復帰手段が無い)って処は確かにつらいけどな。

悲報Unity再帰するようなメソッドにDebug.Logを仕込むと固まったように見える

こちとらメモリ32GB+Core i7 6700+GTX1070っていうほぼ最新鋭マシンクソゲー作ってるのになんでそんな下らんところで足引っ張られなならんのや!

しかも万のオーダーならともかく100前後のDebug.Log()呼び出しやぞ。それで30秒固まるってちょっとやりづらすぎやせんか?

2017-02-12

悲報UnityのCloudBuild、Personalプランじゃ使い物にならない

ビルド自体がクソ遅い癖にかなり失敗するので正直役に立たない。レポジトリサイズが無制限ならまだしも、1GB制限でも1ビルドに2時間掛かってさらには失敗するんだぞ。

よほど暇人じゃなきゃこれ使えねえわ。MacPCで両方Unity立ち上げてそれぞれでビルドするしかねえ。

UnityのCloud Buildはレポジトリサイズが大きいとビルドできない

使いもしない素材をプロジェクトの中にたくさん放り込んでるようなのは軒並みビルドできないよ! ふざけんな!

2017-01-09

Ubisoftは定額プランを導入してくれ

年も明けたことだし、家にあるゲームメーカー別に整理してみたら、全ハードUbisoft製のゲームが圧倒的に多かった。ダウンロードを含めてもほぼUbisoftだった。

しかし、こんなにあってもまだ買ってないゲームは山ほどある。アサシンクリードシリーズは3以降買ってない。出るペースが早すぎて追いつけないので。PS4PS3で違うのを同時に出したあたりで諦めた(Unityとなんか)

でもそれは金銭的な理由で諦めただけで、もしOrigin Accessみたいな定額で対象商品を遊び放題とかあれば、是非やりたい。

Ubisoftは据え置きゲーム最後希望

プログラミングの勘所

プログラミングの入門者には伝統的に変数やif文、for文などが教えられてきました。

昨今ではJavaやってGoogle Play Storeでアプリリリースするのが目標になるのかもしれません。

開発環境は年々高級になっており、以前より人の思考に近い感覚コーディングできるようになってきました。

はいえ、かつてWindowsGUIプログラミングがそうであったように、

スマホにはスマホ流儀があり、いくらアイコン右クリックしたいといってもスマホには右クリック概念が無いという、

今までの常識思考の在り方に対する挑戦も数多くあります

様々な流れに翻弄されつつもプロダクトを開発し世にリリースしていくことは、

プログラマ選択できる使命の一つとして今後も世界中で支持されていくと私は信じています



プログラミングとりまく状況はこの30年で大きく変化したと言えます

それでも基本的な部分は変わりがありません……などというのが通例ですが、

からといって基礎練を素直に続けることが正しいとも思いません。

今の新しい世代の人なら、まずはスマホアプリWebアプリWebサイトを目指すべきでしょう。

ハードウェアに興味があるなら、ラズベリーパイやArdinoを組み合わせても面白いですね。



すると、今とっかかりにすべき言語も絞られてきます

アプリならJavaSwift。(Unityを使うならC#ですね)

Web系ならphp。(ruby on railsもいいかと思います)



(15年前だったらC++でかっこいいwincdowsゲームを作りたい若者で溢れていました)



何かを作るにあたり、まずは1ボタン1機能から始めると良いと思います

ボタンを押したら、何かコマンドを実行する。

それはメール送信だったり、画面に文字を表示したり、ショップではがねのつるぎを購入したりと様々です。

技量が上がると、ボタンを増やしたくなります

ボタンを押すとボタンが増えたり減ったり、違う画面に移ったりしたくなります



途端に難しくなります

それらを整理するためにオブジェクト指向とやらを使わないといけなくなります

バグを出しにくくするための工夫が必要になってきます



何かを作る際に、機能が多くなると、それらを整理する手間が発生します。

グローバル変数はやめようとか、goto禁止というのはそういう活動の一環として生み出されてきたハウツーです。

そして自分の作りたいものは往々にして自分の実力を超えた所にあります

そこで挑戦と葛藤が始まります

幾多の困難を乗り越え、今の自分ならどの程度の規模のものを無理なく作れるかということがわかる場合があります。(わからない場合の方が多いんですけど)

するとあることに気づきます

自由に作りたいものを列挙するのは重要ですが、

最終的に何を作るか、何を作れるかというものを見据えながら、本当に必要機能を選別しないといけないのです。

欲しいものは全ては手に入りません。

全部じゃないと意味が無いなら、即座に全てをあきらめるか、考え方を変えなければ生き残れません。



プログラミングをする上で、夢を実現する技術を学ぶわけですが、

それには、何を実現したいと願うか、何を夢とするか、をコントロールする術も含まれます

そしてそれこそが、プログラミング、ひいては

生きていくために大切な希望を見つけるための技術であると気づかされます

2016-12-11

http://anond.hatelabo.jp/20161211050947

なんでいきなり「全部用意して劇場公開用の映画撮る」みたいな話になるのん?飛躍しすぎ。漫画描く人間だってまずは読み切り短編とか四コマからだろう。スマホ移植ミニゲームとかSteam普通に売ってるじゃん。あれ儲かってるかはわからん経験値はたまるだろう。日本人英語完璧主義信奉に似てるけど、とにかく自分ハードル上げて自滅する奴大杉もっと外人みたいにカジュアルに作ってカジュアルに失敗しろって思うわ。ウダウダ悩んでる暇でPDCA回そうぜ。

年寄り水道がある時代の人に「昔は水汲み場まで行って水汲んでたんだよ」みたいな話するのはナンセンスだと思うけど、今なら2万の中古ノート買ってきてUnityダウンロードするだけで出来ることやるのにどれだけ苦労してきたと思ってんのよ。昔は個人コンシューマーライクなゲーム作るには68かTOWNSが必要で50万はかかったし(まあMSXみたいな金かからん代わりに茨の道みたいな選択肢もあったけど)、そんな時代からみんなバイトしながら他の仕事しながら個人自分の作りたいゲーム作ってきたんよ。ゲーム作りたいって理由だけで。

それに比べて今は開発環境基本的技術資料はタダ同然、サンプルコードフリー素材も山盛り、アセットだって買える。形になった後からクラウドソーシングプロ使ってリスキンだってできる。それこそさわりの部分だけ作ってから続き作る金や人を集めることすら可能時代じゃん。ロートルからしたら業界愚痴たれたりもっちもっち理由つけてる暇でとりあえず手え動かして叩き台ぐらい作れって言いたくなるよ。

2016-12-10

http://anond.hatelabo.jp/20161210174831

学生Unityとかガシガシ動かしてる今日

個人制作無理ってもうそセンスないってことじゃね?

2016-11-20

エンジニア立ち居振舞い: 技術的な暴力を振るわない - futoase

http://futoase.hatenablog.com/entry/2016/11/19/155427



例示されている暴力はだいたい頭の悪い暴力なので反論できます


CGIには今の時代PHPを利用するのに、なぜ未だにPerlを使っているのか。処理速度も遅く、表現も難解だ。

では今あるシステム全部PHPリプレイスするとして、○人月工数必要ですがそのような予算はありません。



Go言語のもの表現力が低い。そんなものを利用するならJavaScalaで書くべきだ。ライブラリ豊富にあるだろう。Googleに縛られた環境での開発は恐ろしい。

ところでどうしてWindowsPCを開いてExcel文書作ってるのか教えてください。



Serverlessそのものサーバがなくなるわけではない。自身チューニングなど細かなリソース管理ができないPaaSを使って自身サービスの命運を預けるなんて馬鹿げている。

理屈の上ではオンプレミスIaaSの方が細かな管理できるかもしれませんが、サーバ管理にそこまでコストかけるつもりが無いのに適当なこと言わないでください。

みんな忙しいから結局何もやってないじゃないですか



iOSアプリのものプラットフォームがいつまであるかもわからないし、今後広がるかわからない。Objective Cを覚えたり、そんなもの技術をかけてどうするのか。

Nintendo Switchが大流行するかわからない。コントローラー使いづらいし。あんものはチンケなものだ。そもそもUnityインフラエンジニアが覚えて意味があるのか。

流行前は流行らないと言い、流行った後は将来性が無いと言う、じゃあ一生何も始めないつもりですか?

でも安心してください。すべてはUnity解決してくれます。そう、Unityならね。






とは言っても結局は私も暴力をふるう側の人間

例示された人たちに暴力ふるいたい。

windowsmacフロントエンドインフラ組み込みいう線引きからはみ出してはいけないと思うな。むしろ全部やれ全部だ!誰もお前がカバーしてない部分をサポートなんぞしねえからな!


ECサイト作りたい人 → ヤフオクでやれ(CMSを使うことの大切さ)

iosアプリ作りたいwindows開発者 → くだらないことにこだわってないでmaciphone買え(ios開発は何もかもmacxcode大前提

フロントエンドプログラマgo → goだけ使われても微妙。当然DBとの連携もあるんだよな?ん?(サーバサイドスクリプトDB連携のためにあるようなもの

サーバレスに興味あり組み込みエンジニア → どうでもいいからさっさと作れ。そこ悩むとこじゃねーから!(悩むなら一度サーバ立ち上げから自分でやってみてイメージをつかんだ方がいいかも)

NintendoUnityインフラエンジニア → やればいいと思うがハードルが高すぎて頓挫する可能性が高い。まずはUnityエディタ上で動くくらいを目標にすべきだ。

2016-11-03

なんでruby on rails5の本は出版されないの?人気なくなったの?

普段プログラマーやってるんだけど

暇なときAmazon眺めてるわけです

買う目的以外にも、いま何が流行ってるのかを本の出版の流れから推測してるわけですよ

いやgoogle検索とかQiitaとかgitHubとかほかにもいろんなところから流行りを推測するなんてあるけど

本の出版ってはやりがわかりやすいなって思うんだよね

やっぱり本で勉強するのが一番だと思ってるおじさんからすると、本が出版される=流行ってるってことだと思ってるからねいまだにw



それでみると今は明らかにpythonがキテるわけですよ

あんなに本がなくて困ってたのに、いまや出版ラッシュ

こりゃ本当にデータサイエンスが盛り上がってるんだろうなって感じ

そんで相変わらずのSwiftね。これはもうiPhone開発の必須だもんね。とくに日本じゃiPhone

そんでJavaだ。アンドロイドサーバーもいけるもんね

同じくらいunityがもりあがってるなってのは感じる

地味に本が出版されつづけてるJavascriptPHP存在感あるなって思いながら見てたんだけど



あれ?Rubyは?railsは?って思ったんだよね

最近俺は追いかけてなかったんだけどさ

本が出版されないんだよね

4のときはすさまじい速さでキャッチアップして本が出版されたのにさ

不思議なことにドットインストールも4止まりだし



もうみんな分かり切ってるから出版されないの?ネットで十分じゃい!みたいな

本なんて情弱のもんだろ!PHPやってろ!みたいな?

Rails界隈の人だれか知りませんかね



それとlaravelとか出版されないね海外では人気です!っていうけど

PHPは地味に出版が続いてるけど

cakePHPは2年前までは出版されてたけど今は全然

それからjQuery流行り終わったなって思う

ネットでやたらうるさかったフロントエンド界隈は全く本が出版されないね

ReactとかAngularとか



でもそれでいうならRails4のときの盛り上がりは何だったんだろうってくらいみんな一生懸命だったよね

から5の無風感が怖いんだよね


そもそもWEBアプリオワコンとかそういう話なのかな

2016-10-28

神げー作った。

これみて

https://github.com/unity3d-jp/FirstTutorial/wiki

これ作った

https://unityroom.com/games/testtest/webgl



ルール

銀のカプセルを全部あつめたらくりあ。

赤い壁にぶつかると最初から



アトピーゾンビ友達恋人いたことないので仕方なくunityをいじってみた。

アングリーバードを超えた神げーだ。

ついに非健常者であるアトピーゾンビ時代が来たようだ。うむ。

2016-10-23

Nintendo Switchの狙い

http://n-styles.com/main/archives/2016/10/22-060000.php

任天堂おじさんの記事おもしろかったので自分も考えてみた。


仮想敵PSでもVRでもなくスマートフォン

現在もっとシェアを獲得しているゲームハード言わずもがなスマートフォンである

DSWii期に新規ユーザー獲得を狙い一般層向けのカジュアルゲーム一時的成功したが、その客はスマホの普及でスマホ向けゲームアプリにごっそり取られてしまった。Switchではこの客を取り戻そうとしているのではないだろうか。

任天堂据置型ゲーム機デザインゲームキューブまではいかにも玩具然りとしたデザインだったが、Wiiから一般層・ファミリー向けであるというコンセプトからリビング邪魔にならないデザインを目指していた。そしてSwitchは持ち歩くのに抵抗のない、それこそスマホのようなデザインだ。これは個人的感覚だが、電車の中でスマホで遊ぶのに抵抗はないのに3DSを開くのはなぜか少し抵抗がある。3DSいかにもゲーム機っぽいデザインからかもしれない。そんな心理的な抵抗をデザインから解消しようとしているように思える。またスマホゲーは入力装置タッチパネルオンリーという性質上、操作性に不満があったがJoy-conがそれを解消してくれる。なにより手のひらの中でスカイリムスプラトゥーンを遊べるようになるのは世界的に訴求力がでかい

サードパーティ活性化

任天堂おじさんも触れているがSwitchWiiリモコンヌンチャクWii Uゲームパッド操作対応していないように見える。というか現時点では新たな入力装置操作体系による新鮮なゲーム体験を売りにしていない。

Wii系ではハード開発段階でもろもろ研究済みの任天堂に対して、既存技術知識通用せずいちから研究コストをかけねばならないサードパーティスタートダッシュで出遅れることになった。結果任天堂ソフトけが存在感を示し、サードがほぼ息をしていないラインナップ不足なハードという印象が足を引っ張る形となった。

そこで今回は飛び道具的な新たな体験を切り捨て、デベロッパーフレンドリー環境を用意する事でサードパーティの良質なコンテンツをより多く呼び込もうとしているように思える。UnityUnrealエンジンへの対応もその一環で、それはインディーデベロッパーにも開かれた門戸となる。

弱点

現時点ではリモコン等で示した新たなゲーム体験を切り捨てたように思えるが、それではスマホとの差別化を図れないうえにスマホ新機種発売ペースが速い為、いずれ早い段階でスペックで追い抜かれる可能性がある。Joy-conのアタッチメント方式仕様を見るに実は拡張性が高く後付けで新たな価値提供する用意があるのかもしれないが、カジュアルゲームのお株がスマホに奪われたようにその価値すらパクられる可能性もある。任天堂自身スマホアプリ提供しているので共存する方向で考えているとは思うが、はたしてそれがどんな形のものなのか今はまだ想像できない。

とにかく今は早くゼルダで遊びたい

2016-10-21

サード虐殺任天堂スイッチ

根拠1: PCPS4Xbox oneとのマルチにはほとんど期待できない

スイッチにはarmプロセッサが搭載される。これはPCPS4, xbox oneで使われてるx86系とは大きく異なり、

移植にはコストがかかるのでサードは乗り気にはならないだろう

一応unity対応するらしいが、そもそもスイッチの性能はPS3世代なので、クオリティを下げてまで移植作業をするだろうか?



根拠2: スマホゲーのマルチも期待できない

同じarm系統なので、スマホゲーの移植比較簡単そうである

しかし、多くのスマホゲーで使われている課金体系を、任天堂プラットフォームでも展開できるかは疑問である

そもそもスマホゲーに課金する層と、任天堂ハードを利用する層にどの程度オーバーラップがあるのか?

また、スマホゲーはタッチパネル最適化されているが、スイッチ移植するにはパッド操作対応させる必要がある。



結論

WiiWii U世代と同様、任天堂面白いゲームは出るだろうが、サードのゲームは期待できない

2016-09-03

http://anond.hatelabo.jp/20160902031012

http://anond.hatelabo.jp/20160902031012

はてブ批判してる人たちよりよほど志のある学生さんだと思うので、いろいろ書いてみますおっさんのたわ言ではありますが、元記事の人にすこしでもヒントになればと思って。


大学に行っても実用的なソフトウェアを書けるようにはならない

実務の話!! 実際に「IT系のおしごと」というのがやってるような話で、特にコーディングに直接絡んでくるようなもの

技術実態みたいなやつ。そういうのは学校で教わらないんですよね。

まず、日本大学勉強しても実用的なソフトウェアが書けるようにはなりません。どういうことかというと、「情報系の大学に行けば○○が作れるようになる!」という世間一般の期待と、実際に大学で教えている内容には大きなギャップがあるということです。


これは大学が悪いのではなく、大学はそもそもそういうものであって、それが世間認知されてないというだけです。


具体的に挙げてみましょう。

大学で教えてる内容ってこんな感じなので、ゲームアプリサービスを作ることが目的の人から見ると、役に立たない内容にしか見えませんし、実際たいして役に立ちません。その証拠に、大学情報学科を出ていないのにゲームiOSアプリWebサービスを作っている人はゴマンといるし、逆に日本大学先生ゲームiOSアプリWebサービスを作れる人はほとんどいません。


日本大学先生実用的なアプリサービスを作った経験がない

これは重要ことなのでもう一度書きますが、日本大学先生ゲームアプリサービスを作れる人はほとんどいません。大学先生が得意なのはプログラムを書くことではなく論文を書くことです。論文のためにプログラムを書くことはありますが、あくまでおまけです。


そのため、大学勉強してもゲームアプリサービスが作れるようにはなりません。だって教えている側の先生が、ゲームアプリサービスを作ったこともなければ、作り方も知らないんだから

そういう経験のない人たちばかりですよ、日本大学先生って。そんな人たちの授業を受けて、アプリサービスが作れるようになると思うほうがおかしいでしょう。


ためしに、先生方のTwitterアカウント名でGithub検索してみてください。いまどきGithubアカウントがないとか、あったとしてもTestCaseすらないコードとか、そんなものばかりです。「研究内容をライバルに知られるわけにはいかないかGithubは使わない」という言い訳する人がいそう。けど、本当はGitが使えないだけでしょ?


あるいは、先生方の個人ページや研究室の紹介ページを開いて、HTMLソースを見てみてください。doctype宣言がないとか、viewportの指定がないとか、Pタグの中にULタグを使ってるとか、そんなのばかりです。HTMLすらろくに書けない人が、Webアプリを作れると思いますか?きっとXSSCSRFも知らないですよ。


ですので、そういうことを勉強したいなら、ベンチャーIT系企業に入るべきです。大学でそういうことを勉強しようとしても、教えられる人がいないから無理。
(「大学はそんなことを教える場所ではない!」と怒る人いると思うけど、教えられる先生がいないという事実ごまかすために怒ってるだけだから。)


ジャンルが違う

はいっても、大学先生プログラムがいっさい書けないというわけではないです。彼らが得意なのはコンパイラインタプリタOSやソルバを作ることです。これらも実用的なソフトウェアと言えなくはありませんが、ゲームアプリサービスとはジャンルが大きく違います


そのため、大学情報学科に進めばコンパイラOS機械学習ライブラリを書けるようにはなるかもしれませんが、それはゲームアプリサービスではないので、繰り返しになりますがそれらを作りたい人には大学は向きません。


大学で教えている内容ってムダなのか

じゃあ大学で授業を受けるのってムダなのかというと、必ずしもそうではないです。

大学で教えている内容って、ゲームiOSアプリWebサービスが一通り作れるようになってから、その先を目指すときになって初めて必要になることが多いです。たとえば、

こういうときになって、初めて大学で教わった内容が生きてきます。逆にいうと、そういう状況にならないと、大学で教わった内容は生きてこないと言えます。(情報系の学科で学んでいるなら、ライブラリ言語OSを「使う人」ではなく「作る人」にぜひともなってほしいですね。)


元増田に進めたい進路

元増田は、社会に役立つ実用的なソフトウェアを作りたいようです。しかし残念なことに、大学が教えている内容はその目的には合致していないことを説明しました。


こういう事情なので、元増田には大学ドロップアウトしてIT系会社入社することをお勧めします。ドロップアウトが難しいなら、インターンバイトでなんとしても入り込むことです。


入るべき会社は、教育に力を入れている会社です。20人未満の小さな会社では教育に力を入れている余裕はないので、小さな会社はやめたほうがいいです。簡単にぐぐってみたところ、はてなPixivクックパッドDeNAドワンゴ教育制度確立しているようです(違ってたらごめん)。そういった会社に入ったほうが、大学の授業を受けるよりも、元増田目的にかなうのは間違いありません。


そして何年か働いて、iOSアプリWebサービスが一通り作れるようになったら、大学に入り直すことです。これはとても効果的なので、元増田には強くお勧めします。


上で説明したように、大学というところは、ゲームアプリサービスの作り方は教えてくれず、それらが作れるようになって初めて役に立つことを教えてくれます。そのため、元増田IT系会社に入ってアプリサービスの作り方を勉強し、それらが作れるようになってから再度大学の門をたたくのが、いちばん効率的です。


なお繰り返しますが、入るべき会社は「教育に力を入れている会社」です。今のIT系企業では、インターン生を「格安で使えるバイト君」としか見なしていない会社が多すぎます。そういう会社は、コストが掛かることはいやがるので、教育もろくにはしてくれません。逆に教育に力を入れている会社では、インターン制度を「将来の戦力を選別する期間」と見なしています


残念ながら、そういう会社東京に集中しているようです。例外京都はてなくらいでしょうか。地方大学生にとってはつらい現実なので、はてなPixivドワンゴ地方でのインターン開催をお願いします。あとレベル5は九大と九工大学生を鍛えてあげてください。


余談ですが、学生さんにひとこと:

インターンバイトで潜り込む先の会社を選ぶときは、就活と同じような時間をかけて選んでください。バイトからとかインターンからという軽い気持ち会社を選ぶ大学生が多いから、それを食い物にしている悪質経営者があとを立ちません。インターン生が「格安学生バイト」として使われている現状を是正するために、学生のほうでも注意してください。


大学で授業を受けなくても独学で効率的勉強する方法

ドロップアウトを進めた手前、書こうと思ったけど、長すぎるのでやめた。

リツイートが100超えたら書く。

2016-08-15

unityって

いまさらなんだけどunityを触り始めた。

数年前シェーダーの日本語記事なんて殆どなかったのに

ますげーある。

日本人って流行ものが好きなんだね・・・

2016-07-17

http://anond.hatelabo.jp/20160716010339

今まさにVR界隈でやろうとしてることだから、数年以内には実現するよ。

日本はさほどでもないけど、海の向こうだと大金ガンガン動いてるから(ピクサーも専門の会社作ってる)、実用化がいつになるかはわからんけど、技術としては確立すると思う。

ここまで来るとどっちかというと映像よりもゲーム側の技術なんだけどね。

UnityとかUnRealググると良いかもしれない。

2016-07-13

お前らも早くVRの世界に来い

HTC viveをゲーム目的で購入するのもよいが、ちょっと興味があるなら是非エンジニアではなくてもUnity3Dを試してみていただきたい。

Unity3Dはいわずとも知れたゲームエンジンであり、プログラミング工数を最小限ないしゼロに抑えながらもゲームを作ることが可能フレームワークである

素材はUnity Asset Storeから入手する。フリーの素材も沢山登録してある。

その中でも有名かつ利用例が多い、「Unityちゃん」のアセットを利用する。

そして、SteamVRのプラグインもストアにあるので入れる。

Unityちゃんアセットの中にあるサンプルシーンを開き、SteamVRのアセットからCameraRigのプレハブをシーンにドラッグアンドドロップ

そしてデバッグプレイを開始するだけ。

そこにはもう動き回れる空間と、動き回るUnityちゃんの姿しかない。

Unityちゃんに自分は見えていないが、故に自分透明人間になったつもりでUnityちゃんに接触しようとすることだって出来る。

残念ながら接触しようとしてもすり抜けてしまうのが透明人間たる宿命ではあるが、そこにVR空間の素晴しさを感じることは出来たはずだ。

世の達人Unityエンジニアたちは、今正にこの状態から増田らの夢を実現しようと日夜努力をしている。

その努力はVRがユーザに普及することで実となる。

――だからユーザたる増田たちには。

我々の進む道に誤りが無いことを、人類が正しい方向に進もうとしていることを認めておいて欲しいんだ。

君たちが僕たちを認めてくれているだけで、僕らの開発を妨げるもののいくつかを退けることが出来るのだから――

2016-07-06

コンピュータ言語言語ごとの特徴を俺が教えてやる(異論は認める

コンピュータ言語って世の中に山ほどあるけれど、それぞれの言語ごとに特徴がある(特徴のない言語は廃れていく)。

まり言語に詳しくない人相手に、俺の考えるそれぞれの言語の特徴を書いてみようと思う。

なお、取り上げるのはある程度広く使われている言語に限りたいと思う。

TL;DR

言語 概要
C言語 高速動作するバイナリ生成を目的としたコンパイル言語。だいたいどんな環境でも使えるがバグやす
C++ マニアック言語、高速、習得大変
Java サーバで高速かつ安定に動作するコンパイル言語、大規模でよく使われる
C# 主にWindowsクライアント用のバイナリ生成に使われるコンパイル言語
Perl 広く使われていたが今は若干時代遅れのスプリクト言語。汚い
Python Perlにかわって主流になりつつあるスクリプト言語。綺麗
PHP Web開発にフォーカスされたスクリプト言語一世を風靡した。
Ruby とても綺麗なスクリプト言語
JavaScript ブラウザで実行出来る唯一の言語言語自体はいまいちだが、ブラウザ事情需要あり
Go サーバサイドで安全かつ高速動作するバイナリ生成を目的としたコンパイル言語

詳細

C言語

メモリに直接アクセスして書き換えるといったコンピュータ機械語に近い言語構文を持つため、高速な処理が可能言語

コンパイラ歴史も古く環境も整っており、組み込み系などを含むほぼ全ての環境で利用可能な万能言語

一方で、メモリの確保や解放といった基本的なことも自前で処理する必要があるため、コーディング効率が良くなく、多種多様バグを生みやすい側面も持つ。

ある程度以上のエンジニアであれば常識として知っておきたい言語だが、初めて覚える言語としてはあまり適当ではない。

C++

C言語オブジェクト指向を導入した言語C++言語とはあまり呼ばれず、しーぷらすぷらす、もしくは略してしーぷらぷら、しーたすたす、などと呼ばれる。

C言語の速度を維持したままオブジェクト指向テンプレートなどの効率的記述可能にしようとした意気は真っ当だったのだが、

当時最先端だった色々な技術思想を叩き込んだおかげで、あり得ないほど複雑化した言語としても有名。

C++理解しています」という人はほぼ初級者で、本当に理解していくほど「C++には自信がありません」となっていく。

速度を追求する分野では良く使われている。完全に理解するのは難しいとしても、テンプレートくらいまでは理解しておくと仕事上なんとかなる…かもしれない。

Java

サーバサイドで安全コードを実行する目的でよく使われる言語。長い歴史を持っており、比較的高速に動作する。

当時は画期的だった「バーチャルマシン」や「ガベージコレクション」という機構を備え、CやC++でよく問題になるメモリ解放忘れというバグを生まず、

サーバサイドなどで何千時間動作するソフトウェアに適した言語として受け入れられた。

必然的エンタープライズ用途で利用されることが多く、各種ツールなども豊富人海戦術がしやす言語という側面も出てきた。

一方でブラウザHello Worldを出すだけでも大変な労力を必要とするので、スタートアップなどではあまり使われない。

ガラケーアプリや(ちょっと違うが)Androidなど、クライアントサイドでも使われることがある。

プログラミング言語最初Javaを覚えるという人は結構多いが、仕事としてJavaを使うのは大抵SI系の業務になり、なかなか辛い労働を強いられる可能性が高い。

C#

クライアントサイドで安全コードを実行する目的でよく使われる言語。こちらも比較的高速に動作する。

元々はWindowsクライアント用の言語であり、Javaとは違ってクライアント向きのAPIが多数ある。

マイクロソフトが開発した言語ということもあり、マイクロソフトの優れた開発環境が利用出来るので開発効率は非常に高い。

Unityなどでも利用可能であるが、基本的にはクライアントの実行形式ファイルを生成する目的が大きく、サーバサイドではあまり使われない。

自作ゲーム開発をしたいのであればうってつけの言語。初めて覚える言語としても十分に良いだろうが、C#を使う仕事は近年無くなりつつある。

Perl

ほぼ全てのLinuxディストリビューションに含まれており、ツールや様々な用途で使われていた。

上に紹介したC、C++JavaC#のようなコンパイル言語とは違い、(少し語弊はあるが)1行ずつ実行してエラーがあれば止まるスクリプト言語である

ちょっと開発してすぐに実行ということが出来るのと、コマンドラインでワンラインコードを読み込ませてちょっとした処理が出来るなど応用範囲の広い言語である

20年近く前にWebCGIが普及した時には、ほぼどのようなサーバ環境でも実行可能だったこともあり、Perlを使うことが極めて多かった。

しかし、主に読みづらい言語仕様のせいで、近年新規ではほとんど使われなくなった。既存コードもどんどん別の言語に置き換えられていることが多い。

日本大手Web企業の一部が使っているので、そこに就職するために覚えるのもアリっちゃアリだけど、今からPerlをわざわざ覚えるのは強くオススメしない。

Python

後発のスプリクト言語。こちらもほぼ全てのLinuxディストリビューションに含まれており、それゆえに広く使われている。

インデントまで言語仕様規定することで、誰が書いても読みやすコードになるように考えられている言語である

Perlの代わりに使われることが増えていて、周辺ツールなども充実しており、小規模から大規模までカバーする勢いがある。

ただ、Python2とPython3のバージョン間での非互換性があまり綺麗に設計されていなかったため、そこで混乱を招いていたこともあった。

最近だとマシンラーニング系のライブラリPythonが使われていたり、海外ではPerlに代わる言語として受け入れられつつある。

最初に覚える言語としては良い選択肢だろう。

PHP

Web開発に特化したスクリプト言語CGIの代わりに使われ始め、一世を風靡した。

以前CGIWebに何かを表示するには比較的大変な労力を割かなければいけなかったのが、PHPを使うと誰でも即座にWeb開発が出来たので爆発的に普及した。

またphp.net豊富ドキュメントスニペットのおかげもあり、開発初期の効率が大変に良い言語である

残念なことに、言語API設計がいけていない点が多く、一部の人から蛇蝎の如く嫌われている。

今でも根強い人気があり、海外でも小規模プロジェクト最初の開発にPHPを選ぶのは比較的よくある選択肢であるようだ。

Webアプリを開発をしたいという明確な目的を持つ人が、最初に学ぶ言語としてPHPを選ぶのは理にかなっていると思う。

なおこの言語を本気でディスってる人は大体視野の狭いエンジニアであることが多いので、地雷エンジニアを見分けるのにも役立つ。

Ruby

綺麗なスクリプト言語日本発で世界的に普及している数少ないIT技術の一つ。

言語仕様が美しく、それゆえにファンが多い。Ruby on RailsというWebフレームワークの登場で、Webアプリでの採用例も一気に増えている。

基本的には他のスクリプト言語と同じくサーバサイドでのプログラミングに用いられることがほとんどである

スクリプト言語で何かを作成するのであれば、Rubyを選んでおけばそう失敗することはない万能言語

サーバサイドで何かすることに興味を持っているならば、最初に覚える言語としてはとてもオススメ出来る。

一方で、なぜかRuby採用するWeb側のフレームワーク(具体的にはprototype.jsCoffeeScriptはいつもクソなので、そちらは深入りしないのが吉。

JavaScript

ブラウザで動くスプリクト言語ブラウザ戦争が勃発していた18年前、奇跡のようなめぐり合わせでベンダー間の合意が取れ実装された言語

言語としてはプロトタイプベースオブジェクト指向という少しめずらしい形式を取っているが、実際にはあまりその特徴は利用されていない。

言語仕様イマイチで、大変バグを生みやす言語であり、また関数スタックが深くなる特性もあり、あまり積極的に使うべき言語ではないが

ブラウザで動く言語現在これしかないので、大きなシェアを持っている。

一部の物好きがサーバサイドでこの言語を使おうと(主にnode.jsで)四苦八苦している(とはいえ、1つの言語Webサーバが完結するのは大きなメリットだ)。

ブラウザで動く唯一の言語のくせにとにかく書くのが面倒ということもあり、多数のAltJSと呼ばれるJavaScriptに変換される別言語を生み出されている。

まあJavaScript本体人が手で書く言語ではない…というのがECMAScript5までの印象だったが、新しい規格が順次導入されており、今後に期待。

Web業界で生きていくならば、好むと好まざるとにかかわらず覚えなければいけない言語である

最初に覚える言語としては、ブラウザ上でゲームなども作れるし、node.jsサーバサイドもできるしで、意外とオススメだったりする。

GO

C、C++Javaと同じでコンパイル言語サーバサイドで高速かつ安定なバイナリを出力することを目的とされ設計されたGoogle発の言語

その目的においてはかなり高性能を誇るので、特に速度を要求されるサーバサイドでのプロジェクトでは導入が進んでいる。

それ以外の目的ではあまりこの言語採用するメリットはないが、ニッチ用途ピンポイントで抑えており、これから広く利用されることも期待される。

コミュニティも活発であり、初めて言語を覚える人が参入すれば喜ばれるだろう。言語としても美しい言語なので、サーバ系のプログラムに興味があればオススメである

まとめ

繰り返しだけれど、それぞれの言語ごとに特徴があり、特徴のない言語は廃れていく。

ここに挙げた言語は何らかの特徴があり、何らかの用途必要なので生き残っている。

その背景を知った上で、ここにある言語は全部ある程度読み書きが出来るようになると素晴らしいと思う。

2016-07-05

http://anond.hatelabo.jp/20160705125652

実際問題パフォーマンス的にピーキーものであっても、ビルドオプション変える位で最適化可能unityみたいなのが理想やろ。

いやマジ、ゲームの分野でもネイティヴコードなんてもう出番無いよ?

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