Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

ゲーム開発経営ゲーム

971 views

Published on

大都会会議2016

Published in: Technology
  • Be the first to comment

ゲーム開発経営ゲーム

  1. 1. ゲーム会社社長 株式会社ムラサメ研究所 みやたけ ゆき
  2. 2. 自己紹介 • 岡山市生まれ • 大学は生活費払えず3か月中退 • 東京に出てゲーム会社に飛び込み営業も雇われずフリーランス でシステムプログラマ • DirectXを独学で勉強しゲームプログラム掲示板で回答しまく り、ゲーム開発請ける • 3Dレンダリングエンジンの開発を機に会社設立 • ゲーム開発を主軸に事業展開
  3. 3. フリーランスになった理由 • 社会人になって即フリーランスになり、会社設立までずっとフ リーランスを貫いてきた • 大学中退なので就職活動というのを知らない • 中途のほうが金額が高かったので中途で仕事探したw • フリーランスのほうが金額が高かったので(ry • 会社のルールに縛られるのがいや 自由が欲しかった
  4. 4. 起業したきっかけ • ぶっちゃけ税金対策 • 法人になると大きな案件が請けられる&外注しやすい • 自分の名前ではなく 組織の名前で仕事が来るようになりたい • 若手の育成を行いたい • 事業拡大し 10人規模の会社を作りたかった • 会社の仲間はみんな家族! • 社長とは会社の中のお父さん!
  5. 5. 起業してすぐ • 現在はまだ3期目(一度知人とNPO法人作ったが、利益あげた いので株式会社を設立) • 起業すぐに一部上場企業2社から立て続けに案件がきた(コネ 重要) • フリーランス友に外注できたので、案件かぶっても請けた • スマホゲームが流行り始めた時期に、スマホゲームグループで 質問を光速で回答してたため案件勝手に舞い込んだ • C++、Java、C#等の異言語間のプラグイン等の難易度の高い技 術で勝負
  6. 6. 起業で役に立つこと • 税理士は大事!フリーランスでも税理士にお願いしていた。 専門分野は積極的にアウトソーシング! • 同時期に起業した友達は大切に。意外に仲間意識がうまれる • 友達の成功は喜ぶ。羨んではいけない。 • 取引先の担当者は育てて出世してもらう。 • 交流会は積極的に出る。ごはん目当てのイベントはあまりいい 人いないので時間の無駄
  7. 7. 最近の仕事 • スマホゲーム案件(UNITY、cocos2d-x等)が良く来る • 今後 UnrealEngine案件を主に請負いしたい • WebGL等のグラフィックAPIを直接たたくもの レンダリング、ゲームエンジンの話もよく • マッチング等のリアルタイムゲームサーバ案件も多い • 現在従業員は8名
  8. 8. 社長の仕事?? • まだ技術的に若い従業員が多い • 定期的にコードレビューをする • ゲームプログラムに不慣れなのでフォローする • お客さんとの駆け引きに勝つ事が最も重要! • 精神的にも支える。時々ご飯連れていく。大事。 Tea Timeは大事にしないとネー!
  9. 9. DirectX11 レンダリングサーバ • DirectX11出始めだったので情報がなかった • 開発期間1年 • プロデューサのお気に入り技術者との交代リーダーで入ったので、 最初から圧力強かった • 3Dレンダリングサーバ。CPUx2 GPUx4 • GeometryShader、VertexShader、PixelShader、ComputeShader 等、Shader30個以上作成 • CUDA(GPGPU)、64ビットアセンブラ • OIT(shader内でZソートする 半透明shader) • テクスチャやモーションのGPU,CPUのConcurrency管理 • 通信も高速化し秒間1000描画以上
  10. 10. Android/iOS用ゲームエンジン • DirectX11エンジンを利用して作った。OpenGLES2.0 • OpenGLES2.0端末が海外で出たばかりのタイミング • 開発期間3週間 • C++で書き、JNIでバインディングし Android/iOS両対応 • 流用といってもレンダリングとゲームでは違うので、モデルフォーマット 以外ほぼ作り直し • MatrixやVector、クオータニオンライブラリも自作 • ボーン数が255本でshaderレジスタに入らないのでCPUでボーン計算(当 然 SIMDアセンブラ NEON使用) • もちろん30ボーン以下はShaderで普通に描画 • 2本ほど サンプルゲームを出したものの、社内に3Dできる人おらず プ ロジェクト中止
  11. 11. Androidゲームプラグイン • UNITYやcocos2d-xのプラグインを導入するには言語間を超え る必要がある • Androidは JNIを使い、JavaとC++ あるいはC#の壁を超える • Activityを継承し ActivityイベントをOverrideするプラグインど うしを組み合わせる事が難しい • 複数Activityにイベントを飛ばせるプラグイン作成したり、社内 プラグイン開発したり
  12. 12. Java Playframework ソーシャルサーバ • 当時はゲーム会社はPHPばかり使っていた • Railsは基本的にゲーム会社に人気がない • ので、Javaを使い PHPよりおそらく高速なサーバ作成 • 3タイトルほどに利用した • PlayframeworkはRailsライクで使いやすいが、Scalaのビルド 時間だけが苦痛
  13. 13. Cocos2d-x スクリプトバインディング • 公式ではLuaとJavaScriptバインディングがあった • Pythonバインディングがないのはオカシイ! • のでPythonバインディングを作る&Boost.pythonも使う • その後 サウンド機能がしょぼいので サウンド用のライブラリを作 成しPythonから動かせるように • 音ゲー作成! でも自己満足したので発売せずに終了 • サウンドライブラリだけ発表したが 直後にCRIが スマホ向けの無 料サウンドエンジン提供して 終了 間尺に合わん仕事したのぉ ワシも全財産はたいてしもうて一文無しや
  14. 14. Boost.asio リアルタイム通信サーバ • モンスト等のリアルタイムで対戦するゲーム需要が高まった • C10K問題も有名になったので、シングルプロセス非同期 • C++が最も速いのでC++に • Boost.asioなら 非同期I/OでC10K問題解決! • コールバック地獄は Coroutineで解決 • ゲーム2本に採用 ワシはC++でコード書くんも、スクリプト言語で書くんも 同じことでぇ!
  15. 15. UnrealEngine4 PC/PS4ゲーム • 大手ゲームメーカーのUnrealEngineを使ったゲームの開発 • サーバーのコンサル全般とクライアント開発の管理業 • プロジェクトが崩壊していたので立て直しを行った • 入るまで半年間進捗ゼロでスケジュールもなかったプロジェク トでα版まで作成 • 元々の開発会社社長を神輿にし全てコントロール ワシらが担いどる神輿じゃないの!神輿がかってに歩ける言う んなら歩いてみいや! ささらもさらにしちゃれい!
  16. 16. レンダリングミドルウェア • リアルタイムレンダラー(ゲームエンジン)とオフラインレン ダラー(動画制作)の間を開発中 • フォトリアル、ノンフォトリアル両方に対応 特に、ノンフォトリアルを強化したい • 数年開発が止まっていたが、小規模で再開中 • Unreal、Unityの使用を検討しているが、チームの3D理解のた めに 独自ゲームエンジンをオープンソース展開 このへんでええとこ見せんと、もう舞台は回って来ませんけえ 間尺に合わん仕事かもしれんのお
  17. 17. 現在 • 大手企業の Java+Oracle案件に提案中ですw • ゲーム要素まったくなしです ムラサメ研究所はイモかもしれんがのお、相手の風下に立った ことは一度もないんじゃああああ!!! 来るなら来いや!
  18. 18. 大都会岡山 愛しとんじゃあ 盃は返しますけん、今日以降ワシを岡山県のも んと思わんでつかい! 帰る言うても帰れんぞ!

×