タグ

ブックマーク / labs.gree.jp (252)

  • ネイティブゲームクライアントの幸せな設計図 | GREE Engineering

    こんにちは。Wright Flyer Studios部のにしだ(@hosi_mo)です。 部内で、主にcocos2d-xやUnityゲームクライアントの開発をしています。 GREE Advent Calendar 2014の18日目は、 ネイティブゲームクライアントの幸せな設計図という題でお話しします。 Wright  Flyer Studiosで開発するにあたり、 早く、安全に、見通しの良い実装で企画者の実現したいことを具現化するために、気をつけていることをお話しできればと思います。 1 : 後悔しない技術選定 cocos2d-xはC++で…、UnityはC#! と対比させられがちですが、技術選定時点でのエンジニア自身の言語習得能力によって選択肢を狭めることほど悲しいことはないので、純粋に企画との相性とパフォーマンス(チューニングで苦労したくない)で決めます。 また、エンジニアリングを

    ネイティブゲームクライアントの幸せな設計図 | GREE Engineering
  • Varnishでテストコードを書こう!~実践編~+Bodyを読もう! | GREE Engineering

    こんにちは、Service Reliabilityチームのいわなちゃんさん(@xcir)です。 先日、社内で行われたチューニングハッカソンではチームマイナス5500万としてVarnishをいれる簡単なお仕事をしてきました。 このエントリは GREE Advent Calendar 2014 17日目の記事です。 以前とある勉強会で 「varnishtestの使い方がよくわからない」 「別のツールを使ってテストをやっている」 という話を聞きました。 varnishはvarnishtestというテストツールがありますが、あまり利用されていないようです。 原因はいくつかあると思いますが、まずは実際のテストコード(VTC)を見てみましょう。 以下は公式のrollback機能のVTCです。 varnishtest "Test Rollback" server s1 { rxreq expect re

    Varnishでテストコードを書こう!~実践編~+Bodyを読もう! | GREE Engineering
  • GREEのUserAgent比率を公開します(2014/12) | GREE Engineering

    開発企画室の佐島です。 今月もGREEを利用して頂いているクライアントのUA比率を公開します。 グラフは以下のデータを元に作成しています。 { "os": { "Android": 65.5, "iOS": 34.5 }, "version": { "Android": [ { "percent": 30.5, "name": "4.2" }, { "percent": 24.3, "name": "4.4" }, { "percent": 17.4, "name": "4.1" }, { "percent": 15.3, "name": "4.0" }, { "percent": 9.7, "name": "2.3" }, { "percent": 2.8, "name": "other" } ], "iOS": [ { "percent": 35.4, "name": "8_1" },

    GREEのUserAgent比率を公開します(2014/12) | GREE Engineering
  • Cocos2d-xマルチプレイヤーアクションゲーム事始め | GREE Engineering

    こんにちは、ガレージスタジオでネイティブシフト推進を行っている久富木隆一(@ryukbk)です。 エントリは「GREE Advent Calendar 2014」16日目の記事です。今年も忙しい師走となりましたが、皆様いかがお過ごしでしょうか。Advent Calendarなるものが世間で流行っているようですが、宗教的信条の無い者としてはどうなのと思いつつも、お祭りは何だかんだで放っておけない性分でございます。 今回は、オンラインマルチプレイヤーゲーム、中でもアクションゲームの作り方について考えてみます。その過程で マルチプレイヤーアクションゲームが克服すべき課題と、発展の歴史 Cocos2d-x 3.3、Cocos Studio 2による、C++11を用いた開発 について触れた上で、Cocos2d-x  & node.jsによるオンラインマルチプレイヤーアクションゲームのサンプルコード

    Cocos2d-xマルチプレイヤーアクションゲーム事始め | GREE Engineering
  • 初めてのHTTP/2サーバプッシュ | GREE Engineering

    前回はWebサイトをHTTP/2に対応するためにリバースプロキシを検証した記事を書かせていただきました(HTTP2を試してみる)。 あれから幾つかの議論を経てHTTP/2の仕様も大分安定してきており、HTTP/2を実装したクライアントや実験的にHTTP/2を有効にしているサービスもあるので実際に試すことも出来ます。 そこで今回は応用編としてHTTP/2のサーバプッシュについて、その仕組と実際に試したことについて書かせていただきます。 余談ですが、 現在の仕様では "HTTP2.0" ではなく "HTTP/2" もしくは "HTTP2" が正しい名称になります。 HTTP/2概要 まず、軽くHTTP/2の概要に触れておきます。 HTTP/2は2012年の末頃より、HTTP/1のセマンティクスを維持したままパフォーマンスを改善する目的で議論が開始されました。 Googleの考案したSPDYと言

    初めてのHTTP/2サーバプッシュ | GREE Engineering
  • A year of using Presto in production | GREE Engineering

    I'm Yuyang Lan @ Data Infrastructure team. Here is the 14th entry of GREE Advent Calendar 2014. Please enjoy it! Presto (distributed SQL query engine for Big Data open sourced by Facebook) has already been used in GREE's production environment for more than 1 year, and is now an indispensable part to our Big Data toolbox. In this article, I will present you how we use presto and hope that would be

    A year of using Presto in production | GREE Engineering
  • グリーのQAチームとテストエンジニアリングへの取り組み | GREE Engineering

    こんにちは、やまもと@テスト番長です。 このエントリーは「GREE Advent Calendar 2014」13日目の記事です。 最近はグリーのQuality Assurance部のテストエンジニアリングチームを担当しています。 品質管理を行う部署のため、エンジニアブログに顔を出すのは初めてなのですが、 今回はグリーのQA体制のご紹介および、テストエンジニアリング面からの 取り組みをご紹介させて頂きたいと思います。 グリーのQA体制について QAチームは、2011年の夏にカスタマーサポートチームから派生する形で組織されました。 2012年に起きたカード複製の不具合や未成年課金の問題など、多くのトラブルを経験・奔走しつつも徐々に体制を整え、現在は社員20名・協力会社の方々も加えると50名ほどのグループとなっています。 ネイティブゲーム、ウェブゲーム、ガレージスタジオ&プラットフォーム、テス

    グリーのQAチームとテストエンジニアリングへの取り組み | GREE Engineering
  • GREE Tuning Hackathonを12月5(金)に開催しました! | GREE Engineering

    チューニングに与えられた時間は6時間。 13:30からの開催ということで完全に業務時間中に行われたため、緊急対応や業務上の障害などとも戦わなければならないという過酷な環境でした。 当日の模様 13:30 ハッカソン会場でお題を聞く参加者たち 他拠点とはビデオチャットで繋ぎます 13:40 ハッカソン開始 早速EC2へ、と思いきやアカウントの準備が間に合わず。。。 はやる気持ちを抑えvagrant+ansibleイメージの方で動作確認を開始。 床でやる人 テーブルを準備する人など様々です 見ての通り、会場の椅子は結構辛い仕様なので 気がつけば会場はガラガラ(大半の方は自席へ) 関連会社のポケラボさんは自席へ戻れないのでちゃんとした椅子がある別室をご用意 せっかく椅子用意したのに。。 13:50 アカウント準備完了 これでようやく、と思いきや、他チームにインスタンスをいじられる、EC2からベン

    GREE Tuning Hackathonを12月5(金)に開催しました! | GREE Engineering
  • HaskellのPersistentライブラリのZooKeeperバックエンドの開発 | GREE Engineering

    こんにちは!インフラストラクチャ部の橋です。 このエントリは GREE Advent Calendar 2014 12日目の記事です。 読者のみなさまの一助となる知見が少しでも提供できれば幸いです。 はじめに HaskellのO/RマッパーであるPersistentのZooKeeperバックエンドを開発しました。 Persistentのいいところは以下のようになります。 HaskellのデータとDBのデータの変換が自動(O/Rマッパなので当たり前ですね。) 型安全に加えて、構造的に安定(DB["user"]とか文字列でDBから値をとってくることはできません。クエリでも同様です。) コネクションがプールされます SQLだけでなくNoSQLも扱えます よく使われています(Yesodのフレームワークに組み込まれていることが大きいと思います。) 開発の動機は、以下の通りです。 GreeではKV

    HaskellのPersistentライブラリのZooKeeperバックエンドの開発 | GREE Engineering
  • RPKIはじめました(少し) | GREE Engineering

    インフラストラクチャ部の黒河内です。 グリーでゲームのプラットフォームのネットワークの設計・構築・運用を主 に担当しております。 ※この記事はGREE Advent Calender 11日目の記事になります。 今回はRPKIについてお話をしたいと思います。 RPKIとは”Resource Public-Key Infrastructure”の略で、いまインターネットの経路交換の 信頼性を向上させる観点で注目されている技術の一つです。 ※詳細は以下のJPNIC様のページに詳しく記載されております。 https://www.nic.ad.jp/ja/rpki/ そもそもインターネットとは インターネットでは自身が管理しているネットワークをインターネット上で認 識させるために 各々個別にグループ化させるAS(autonomous system)番号というのを持っております。 ちなみにグリーは

    RPKIはじめました(少し) | GREE Engineering
  • JMeterとJUnitとMavenで独自プロトコルサーバーの負荷テストを自動化するぞ | GREE Engineering

    こんにちは、インフラストラクチャ部の@nagaseyasuhitoです。このエントリは GREE Advent Calendar 2014 10日目の記事です。昨日はイケメンmoritaさんによる男性エンジニアリングマネージャが長期育休を取った話でした。 エンジニアブログのアカウントは2年くらい前からあるのですが、これが初エントリになります。グリーでは比較的珍しいJavaEEを始めとしたサーバーサイドJavaアプリケーションの開発、SolrやHadoopといったミドルウェアの周辺機能開発や運用などを行っています。どうぞよろしくお願いします。 最近はPvE/PvP/GvGなどユーザー同士がリアルタイムに協調プレイする際、クライアント-サーバー間を常時接続通信で行うゲームが増加しています。このような場合はHTTPのREST APIなど慣れ親しんだプロトコルでは要件を満たしきれないため、Web

    JMeterとJUnitとMavenで独自プロトコルサーバーの負荷テストを自動化するぞ | GREE Engineering
  • 男性エンジニアリングマネージャが長期育休を取った話 | GREE Engineering

    こんにちは、Data Engineering Groupマネージャのmoritaです。 このエントリはGREE Advent Calendar 2014 9日目の記事になります。 今日は、今年前半に半年間の育児休業を頂いたので、そこで感じた事を書こうと思います。会社に育休制度はあるし家族も育休取得に好意的、だけど周囲の眼や復帰後のキャリアが気になる、という方の背中を少しでも押すことができればいいなと思っています。 エンジニアブログなので、エンジニアの視点から見た育休、特に育休エンジニアキャリア/エンジニア組織の関係性についても書ければと思います。 育児休業のあらまし まず始めに育児休業の概要を説明します。 育児休業は育児・介護休業法により定められています。法律により、従業員は労使協定で定められた条件(典型的には勤続1年以上という条件が付くようです)を満たす場合に育児休業を取得できることに

    男性エンジニアリングマネージャが長期育休を取った話 | GREE Engineering
  • 【Unity4.6】新UIエディタ入門 | GREE Engineering

    こんにちは! ガレージスタジオ部の岩間です。 『GREE Advent Calendar 2014』8日目の記事を書かせていただくのですが、実は私はエンジニアではありません! 12/1の記事で紹介していますが、私の所属するガレージスタジオ部では3ヶ月でNativeタイトルをリリースをするというプログラムを社内で行っています。 『Lv.2』は、プランナーとエンジニアがチームを組んで2か月でオリジナルタイトルをリリースするというプログラムなのですが、私の場合はタイミングなどの都合上、企画から実装までプランナーの私1人でチャレンジすることになりました。 今回の記事は、その2か月間に躓いた部分を中心にUnity4.6で実装された新UIエディタのことを書かせていただきます。 ◇目次 Unity4.6で実装された新UIエディタとは? ガレージ部で作ったゲームの紹介(新UIエディタ使用例) 開発環境 新

    【Unity4.6】新UIエディタ入門 | GREE Engineering
  • GREEを支えるテキスト情報可視化ツールのご紹介 | GREE Engineering

    こんにちは、マーケティング部の戸井田明俊と情報システム部の亀井利光です。 Advent Calendarの7日目(今日でグリー創立10周年!)は、ユーザーの皆様から頂いたご意見・ご感想などのテキスト情報を可視化するツール、UserText Dashboard(以下UTD)を開発した話です。 背景・目的 グリーでは、ユーザーの皆様から頂いたお問い合わせなどのテキスト情報を管理しています。 それらは今までデータの種類によって別々のストレージで管理されており、管理ツールも様々なものが混在していました。 またテキスト情報とユーザー様の属性情報が紐付けられていなかったため、ユーザーセグメントごとの分析が不十分でした。 そこでユーザーの皆様のご意見・ご感想をもれなくくみとり、より多くの方に安心してご利用していただけるサービス運用の実現をめざし、テキスト情報を一括で管理できる社内BIツールを開発しました

    GREEを支えるテキスト情報可視化ツールのご紹介 | GREE Engineering
  • rejs - Vanilla JS Module Builderの紹介 | GREE Engineering

    このエントリは GREE Advent Calendar 2014 6日目の記事です。 皆さんこんにちは!Reflowしてますか? 13卒でArt部の和智(@watilde)です。業務では、GREE Platformで使われている内製 JS/CSS FrameWorkのコミッターとかしてます。 まえがき 弊社は、スマートフォンの黎明期よりブラウザ向けのアプリを開発してきました。環境の変化への追従や、度重なる機能追加でJavaScriptのコードの規模は肥大化していきました。 役割ごとにモジュール化をしてファイル分割を行わないと可読性が落ち、じわじわと保守コストが上がっていきます。しかし、古くからある秘伝のソースはAMDやCommonJSで書かれていないVanillaなJSです。r.js、Browserify、Webpack などのツールでモジュール化するにも、書き換えが大量に発生して導入す

    rejs - Vanilla JS Module Builderの紹介 | GREE Engineering
  • GREE (Internal) Tech Summitを11月21(金)に開催しました! | GREE Engineering

    こんにちは、開発企画室の佐島です。 最初に大切なことを言わないといけないのですが、こちらはAdvent Calendar のエントリーではございません。 先日、開催されたGREE (Internal) Tech Summitという社内限定のイベントのご紹介となります。 GREE (Internal) Tech Summitとは もともとグリーでは四半期に一回、それぞれの部署に散らばっているエンジニアを集めて各部門の振り返りと今後の方向性などを共有する会というものを運営していました。 GREE (Internal) Tech Summitは、来の目的である情報共有という部分を残しつつ、もっと楽しく学べるような場を目指し「みんながつくる」をコンセプトとしてゼロから企画したイベントです。 セッションの模様 今回は、米国のGREE International、ポケラボからもスピーカーをお呼びし幅

    GREE (Internal) Tech Summitを11月21(金)に開催しました! | GREE Engineering
  • Blender エンジニアでも出来るキャラクタ3Dモデリング | GREE Engineering

    はじめに こんにちは。情報システム部の山田幸司です。GREE Advent Calendar 2014 5日目の記事を担当させて頂きます。 今回のテーマは「Blender」です。 ゲームづくりに携わっているエンジニアの方々の中にも、素材を自前で用意して動かしたいと思っている方が多いと思います。僕も2年前から趣味Unityを触り始め、3Dモデルを自作して動かしたいと思い始めていました。ただ3Dのモデルデータをどうやって作ればいいのか悩む方がいると思います。モデリングのためにMayaやLightWaveなどのモデリングソフトの購入も検討できますが、高価で手を出しにくい。そんな時にBlenderをお勧めします。 Blenderとは Blenderはオープンソースのモデリングソフトです。最新バージョンは2.72b(2014/12/5現在)。フリーのモデリングソフトならばメタセコイアが有名だと思い

    Blender エンジニアでも出来るキャラクタ3Dモデリング | GREE Engineering
  • 「Garage Weekend」(11/7-8) 開催レポート | GREE Engineering

    開発PRチームの三木です。 11/7(金)~8(土)の2日間にかけて、グリー社内で「Garage Weekend」というハッカソンlikeなイベントを開催しましたので、記事にてその模様をレポートさせて頂きます。 最後までお付き合いください。 Garage Weekendとは グリーでは、CIP(Creative Innovation Program)という活動の一環として「アイデアスプリント」という問題解決型のアイデアソンを開催しています。 (CIPについては12/1から始まるGREE Advent Calenderの中で誰かが詳しく説明してくれると思います) 3か月ほど前にその一環として、Jawbone様のウェアラブルデバイス『UP』とのコラボで、健康増進に役立つゲームアイデアを企画する、という試みを実施しました。 当日はJawboneのジェネラルマネージャーにも審査員としてご参加いた

    「Garage Weekend」(11/7-8) 開催レポート | GREE Engineering
  • OpenStack Swiftによる画像ストレージの運用 | GREE Engineering

    こんにちは。インフラストラクチャ部の竹辺です。このエントリはGREE Advent Calendar 2014 4日目の記事です。 GREESNSでは、ユーザのみなさまが投稿した画像を保存するためのストレージを運用しています。2年ほど前から、この画像のストレージにOpenStack Swift(以下Swift)を使い始めました。その後、既存のストレージからのデータ移行やユーザのみなさまからの投稿などにより、現在では9億ファイルを超える画像が格納されています。 日最大のメッセージングサービスでは一日の130億件のメッセージがやりとりされているという時代に9億などというとププッと笑われてしまうかもしれませんが、Swiftに大量の画像ファイルを格納するにはいくつかの性能上の問題を解決する必要があり、9億ファイルを格納するのもそれほど簡単ではありませんでした。この記事では、弊社の画像ストレー

    OpenStack Swiftによる画像ストレージの運用 | GREE Engineering
  • サービスを支えるプライベートクラウド基盤 OpenStack の舞台裏 | GREE Engineering

    こんにちは!インフラストラクチャ部の松橋です。このエントリは GREE Advent Calendar 2014 3日目の記事です。日より 2日間 OpenStack の記事がつづきます。 私からは、グリーのサービスを支えるプライベートクラウド基盤として OpenStack を導入し、運用、改善を続けてきた日々の奮闘についてご紹介させていただきます。振り返ればちょうど 2年前のクリスマスシーズンに腰を入れて仕掛かり、今では運用も安定してきたので良い節目でもあります。読者のみなさまの一助となる知見が少しでも提供できれば幸いです。 はじめに パブリッククラウドの台頭により、オンプレミスを基盤にサービスを展開してきたグリーにおいてもクラウドが有用な選択肢となるなかで、運用ノウハウが蓄積されたオンプレミスの資産を活用してインフラストラクチャを最適化するニーズもまた高まりました。 サーバー仮想

    サービスを支えるプライベートクラウド基盤 OpenStack の舞台裏 | GREE Engineering