タグ

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

  • リアルタイム・ランキングを考える | GREE Engineering

    はじめに こんにちは。プラットフォーム開発部のsp1rytusと申します。 先日、私もついに30歳のおっさんになってしまいました。加齢臭が出ないようにがんばります! ランキングって? ランキングは誰でもわかる、何らかの得点をソートして順位位置を決定する凄く簡単でシンプルなものです。しかし、ゲームを扱うコンテンツ・サービスにおいては、得点を通算/日別に順位付けされたものが直ぐに目に入るように、他人と自分を比較する非常に重要な役割を果たしています。そこで、この記事では次の3つ要件を満たすようなランキング・システムの難しさと、それを解決するための一例を簡単に説明させて頂きます。 順位付けはリアルタイムに行い、集計時間を必要としない。 100万件以上の得点データが扱える。 すべてのデータが正しい順位付けで取得できる(線形補完などで順位を概算しない)。 リアルタイムによる正確な順位付けは、データ件数

    リアルタイム・ランキングを考える | GREE Engineering
    gin0606
    gin0606 2016/10/06
  • Cocos2d-x で 3Dフライトアクションゲームを作ってみた - アメリカでの研修を通して | GREE Engineering

    GREE Advent Calendar 2015, 13日目です! whoami はじめまして、奥畑と申します。 新卒入社からの2年半で、プラットフォームの運用、Webゲームの新規開発・運用に1年ずつ携わり、現在は北米支社と共同で Nativeゲームの運用に携わっています。 私はこの夏、グリーが資業務提携している米Make School社によるアプリ開発者養成講座に、新卒1~4年目の社員8人で参加してきました。世界中から300人ほどの高校生・大学生が集まり、2ヶ月間のカリキュラムの中で、前半3週間は iOSアプリやゲームの作り方を学び、 後半5週間で各々オリジナルのアプリやゲームを作り App Store にリリースするというもので、我々はグリー専用コースとして Cocos2d-x によるゲーム制作を行いました。 その中で私は 3Dフライトアクションゲームを作りました。iOS (ついで

    Cocos2d-x で 3Dフライトアクションゲームを作ってみた - アメリカでの研修を通して | GREE Engineering
    gin0606
    gin0606 2015/12/15
  • GREEのUserAgent比率を公開します(2015/07) | GREE Engineering

    開発企画室の佐島です。 今月もGREEを利用して頂いているクライアントのUA比率を公開します。 グラフは以下のデータを元に作成しています。 { "os": { "Android": 64.8, "iOS": 35.2 }, "version": { "Android": [ { "percent": 41.4, "name": "4.4" }, { "percent": 23.6, "name": "4.2" }, { "percent": 10.9, "name": "4" }, { "percent": 10.8, "name": "4.1" }, { "percent": 6.7, "name": "2.3" }, { "percent": 6.7, "name": "other" } ], "iOS": [ { "percent": 35.9, "name": "8_4" }, {

    GREEのUserAgent比率を公開します(2015/07) | GREE Engineering
    gin0606
    gin0606 2015/07/22
    iOS9出たらiOS7即切っても良さそう
  • 64bit環境におけるObjective-Cのポインタ | GREE Engineering

    はじめに こんにちは、GREE Platform部の柳村(@yana_3)です。 iOSエンジニアのみなさまにおかれましてはXcode6以降の使用と64bit対応が必須になりますが、対応すすんでいますか? 64-bit and iOS 8 Requirements for New Apps 64-bit and iOS 8 Requirements for App Updates GREE Platformでは、64bit対応の検証をする中でポインタ周りでJSONKit1がクラッシュするという事態が発生し、そこから64bit時のポインタについて調べたのですが、 あまりこの内容に関して詳しく記載されているところがなかったようなので共有したいと思います。 ただ普通にiOSで開発するぶんには全く役に立たない内容になっておりますのであらかじめご了承くださいmm 調べるきっかけ 64bit環境でのみ

    64bit環境におけるObjective-Cのポインタ | GREE Engineering
    gin0606
    gin0606 2015/01/20
  • 開発チームから激モテ!ネイティブゲーム時代の愛されQA | GREE Engineering

    はじめまして、Quality Assurance部ネイティブゲームQAチームの13新卒トリオ、 @haruna_nishi・@fujiemon_828・@hujuu ※注1です。 このエントリーは「GREE Advent Calendar 2014」21日目の記事です。 「GREE Advent Calendar 2014」13日目の山さんの記事で弊社のQA体制についてご紹介したばかりですが、そちらの記事はテストエンジニアリングチームの取り組みが主なテーマだったので、当記事ではネイティブゲームQAチームの体制や取り組みについてもう少し踏み込んでご紹介したいと思います。 激モテ!愛されQAと題したからには、開発チームからモテるためにどのようなQAを行っているのかを主眼に置いてレポート致します。 表舞台には出ることが少ない部署ですが、当記事で少しでも雰囲気をつかんでいただければ嬉しく思います

    開発チームから激モテ!ネイティブゲーム時代の愛されQA | GREE Engineering
    gin0606
    gin0606 2014/12/22
  • ネイティブゲームクライアントの幸せな設計図 | 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
    gin0606
    gin0606 2014/12/18
  • 男性エンジニアリングマネージャが長期育休を取った話 | GREE Engineering

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

    男性エンジニアリングマネージャが長期育休を取った話 | GREE Engineering
    gin0606
    gin0606 2014/12/09
  • Scalaコードでわかった気になるDDD | GREE Engineering

    みなさん、こんにちは。グリーのかとじゅん(@j5ik2o)です。 このエントリは GREE Advent Calendar 2013 の 18日目の記事です。よろしくお願いします。 私がグリーに入社してやっていることは、プログラミング言語 Scalaとドメイン駆動設計(以下、DDD)の布教活動です。布教活動といっても宣伝するだけでは具体性に欠けるので、実際に開発チームに入ってScalaやDDDの技術支援を行っています。エントリでは、Scalaを用いたDDDの設計と実装をどのように行っているかを、DDDを知らない人でもできるだけわかりやすく説明したいと思います(Scalaわかっていると読みやすいですが、あんまり複雑なコードは出てこないのでなんとなく読めるのではないかと思います)。なお、DDDの実践例は他にもあります。一例だと思って読んでいただければ幸いです(先日のSNSチームでのドメイン駆

    Scalaコードでわかった気になるDDD | GREE Engineering
    gin0606
    gin0606 2014/12/03
  • GREEのUserAgent比率を公開します(2014/07) | GREE Engineering

    このアイコン使い始めてそろそろ7年になります。ago(@kyo_ago)です。 今月もGREEを利用して頂いているクライアントのUA比率を公開します。 グラフは以下のデータを元に作成しています。 { "os": { "Android": 66.3, "iOS": 33.7 }, "version": { "Android": [ { "percent": 37.1, "name": "4.2" }, { "percent": 21.1, "name": "4.0" }, { "percent": 20.3, "name": "4.1" }, { "percent": 13.6, "name": "2.3" }, { "percent": 4.3, "name": "4.3" }, { "percent": 3.6, "name": "other" } ], "iOS": [ { "perc

    GREEのUserAgent比率を公開します(2014/07) | GREE Engineering
    gin0606
    gin0606 2014/07/18
  • GREEのUserAgent比率を公開します(2014/06) | GREE Engineering

    人をダメにするソファとゴロ寝deスクを買ってしまったago(@kyo_ago)です。 これから定期的にGREEを利用して頂いているクライアントのUA比率を公開していきたいと思います。 OS Android iOS グラフは以下のデータを元に作成しています。 { "os":{ "Android":66.4, "iOS":33.5 }, "version":{ "Android":[ { "percent":35.8, "name":"4.2" }, { "percent":22.3, "name":"4.0" }, { "percent":21, "name":"4.1" }, { "percent":14.7, "name":"2.3" }, { "percent":4.2, "name":"4.3" }, { "percent":2, "name":"other" } ], "iOS":

    GREEのUserAgent比率を公開します(2014/06) | GREE Engineering
    gin0606
    gin0606 2014/06/13
  • CTOとはなんなのか、あるいはエンジニアの生存戦略 | GREE Engineering

    Merry Christmas! GREE Advent Calendar もいよいよ最終日、25日目はグリー株式会社でCTOをしておりますふじもとがお送りします。 今日まで24人のGREE Engineersなみなさまにエントリを書いていただいたわけですが、思ったよりも多種多様な内容で、あらためていろいろな方面で素敵なエンジニアがいるなー、としみじみしてしまいました。いやしかしgitとchefの記事人気ですね、そして、「当然CTOはすごい記事書くんですよね」とプレッシャーをかけて楽しむ仲間たちに囲まれてぼくは幸せです、あーすごい幸せー。そんなプレッシャーの中、今までのエントリとはちょっと方向性を変えて、CTOの話でも書いてみようかと思います。なお、ぼくの趣味は多分問題解決です。 そんなわたくしふじもとは来年で、CTOっていう肩書きでお仕事をはじめて10年とかになるんですが、なかなか先輩と

    CTOとはなんなのか、あるいはエンジニアの生存戦略 | GREE Engineering
    gin0606
    gin0606 2013/12/25
  • イケててヤバいGit入門 | GREE Engineering

    この投稿はGREE Advent Calendar 2013 20日目の記事です。 プロデューサーの皆さん、みりっほー。進捗どうですか?私はダメです。ごめんなさい。(´・ω・`) WG事業部の二宮です。今日はアイマス駆動開発の話をしようかと思ったのですが、急遽Gitの使い方の話に変更しました(Inspired by 堀口先生)。 アイマス駆動開発の話が気になる方は、是非一緒に飲みに行きましょうw ※この記事では、ツールにGitGitHubを利用することを想定しております。 Gitをスマートに使いたい グリーでは、基的にA successful Git branching model(有志の方による日語訳)にのっとって開発しています。 Gitについて基的な考え方の部分は堀口さんの記事で言及されているので、私は現場で具体的にどのような使い方をしているのかについて書きたいと思います。 と

    イケててヤバいGit入門 | GREE Engineering
    gin0606
    gin0606 2013/12/21
  • 社内Haskellチュートリアルのススメ | GREE Engineering

    こんにちは。インフラストラクチャ部の竹辺(@beketa)です。 このエントリはGREE Advent Calendar 2013 12日目の記事です。 1. グリーでのHaskellプログラマ採用 Haskellを導入する企業が増えているようです。最近国内のメディアで紹介された事例だけでも Tsuru Capital様: http://itpro.nikkeibp.co.jp/article/Watcher/20131003/508622/ NTTデータ様: http://itpro.nikkeibp.co.jp/article/NEWS/20131126/520642/ の複数があり、すっかり実用的なプログラミングとして定着した感があります。 弊社でも2012年の中ごろから複数のプロジェクトでHaskellを使い始めており、昨年からは一部の商用サービスでもHaskellで開発したミド

    社内Haskellチュートリアルのススメ | GREE Engineering
    gin0606
    gin0606 2013/12/12
  • なめらかに動作するUITableViewのつくりかた

    矢口裕也です。 Advent Calendar 10日目はiOSのUITableViewの話をします。 ぼやき iOSアプリを開発していると70%くらいの時間はUITableViewに費やしている気がしてきます。 UITableViewは非常にめんどうなものですが、パフォーマンスがシビアでかつユーザーの快適さに直結するものなので大いに手間をかける価値があります。 この記事ではガクガク処理落ちするUITableViewを例として改善していきながら快適なUITableViewのつくりかたを解説します。 目的 以下のケーススタディでは次の目的でコードを改善していきます なめらかに動くようにする ここでのポイントは実際速くなくてもユーザが快適に感じればOKである、ということです。処理速度が高速である必要はありません。 戦略 UITableViewでのパフォーマンス問題は次の2点であることが多いです

    なめらかに動作するUITableViewのつくりかた
    gin0606
    gin0606 2013/12/10
  • GREE Platform SDK for Cocos2dx now supports iOS. | GREE Engineering

    Hi everyone, I'm Kazuma from GREE. First of all, i'm sorry for the long blank since my previous article below. http://labs.gree.jp/blog/2012/12/6846/ I was fortunate to have my article featured on the Cocos2d-x main project page. http://www.cocos2d-x.org/news/91 As promised in my previous article, I have added iOS support to my library. So now you can use my GREE Platform SDK for Cocos2d-x on both

    GREE Platform SDK for Cocos2dx now supports iOS. | GREE Engineering
    gin0606
    gin0606 2013/04/02
    GREE Platform SDK がcocos2dxのiOSに対応 "GREE Platform SDK for Cocos2dx now supports iOS. | GREE Engineers' Blog"
  • Unity用BitmapFontRendererを公開します! | GREE Engineering

    こんにちわ。エンジニアの坂 一樹(@splhack)です。 4月12日/13日、ユニティ・テクノロジーズ・ジャパン合同会社様によりUnityアプリ開発者を対象としたイベント、「Unity アジア・ブートキャンプ・ツアー:東京」が開催されました。弊社も協賛させていただきました。 Unity、「Unity アジア・ブートキャンプ・ツアー:東京」を開催。「三国志コンクエスト」や「GREE」の事例から学ぶ開発のコツ この記事では、事例紹介のみ取り上げていただいたのですが、それ以外にも、GREEでのUnityアプリケーション開発環境、Unity in Depthといった内容をしゃべらせていただきました。 この内容についても、いずれこのBlogにて公開していきたいと考えていますが、 まずはセッションでの予告通り、Unity用BitmapFontRendererを公開いたします! https://gi

    Unity用BitmapFontRendererを公開します! | GREE Engineering
    gin0606
    gin0606 2012/11/08
    "Unity用BitmapFontRendererを公開します! | GREE Engineers' Blog"
  • GREEにおけるJenkins, その1 | GREE Engineering

    はじめまして。エンジニアの岡崎(@watermint)です。今回はGREEにおけるJenkinsの利用について紹介します。 Jenkinsは継続的インテグレーションの代表的なツールです。JenkinsがどういうものかはJenkinsコミュニティーの説明をみると良く分かります。 一言で言えば、Jenkinsは、容易ないわゆる「継続インテグレーションシステム」を提供し、開発者が変更をプロジェクトに統合でき、ユーザーがより新しいビルドを容易に取得できるようにします。自動化された継続的なビルドは、生産性を向上させます。 Meet Jenkinsより 継続的インテグレーションという言葉について耳慣れないというかたは、JenkinsならびにJenkinsの前身であるHudson開発者である川口さんによる解説をご覧ください。 Hudsonを使ったアジャイルな開発入門 GREEにおけるJenkinsの導入

    GREEにおけるJenkins, その1 | GREE Engineering
    gin0606
    gin0606 2012/07/17
    "GREEにおけるJenkins, その1 | GREE Engineers' Blog"
  • 多人数開発で Git を使う場合の環境構築 | GREE Engineering

    こんにちは、インフラやってる sotarok です。最近、社内でも「sotarok は そーたろっくと読む」という誤解が広がっていましたので改めて自己紹介しますと、sotarok と書いて「そーたろー」または「そーたろー・けー」と読みます。ロックしてないのでよろしくお願いします。 今日は、Git の話です。 GREE ではずっと Subversion を使っているという話を、以前開発環境の話をしたときに少し触れたことがあります。Subversion での運用方法も、GREE では割と面白い運用をしているのでその話もどこかでしたいのですが、まあ、それは今回は置いておきましょう。どこかで聞いてください。 GREE もその昔 CVS から Subversion に移ったのですが、時代は流れるもので、いよいよ Git 化という流れがきています。Subversion と Git の違いを今更あえて挙

    多人数開発で Git を使う場合の環境構築 | GREE Engineering
    gin0606
    gin0606 2012/07/16
    "多人数開発で Git を使う場合の環境構築 | GREE Engineers' Blog"
  • 1