Technology

https://www.klab.com/jp/blog/tech/

KLab株式会社が配信したKLablogの記事一覧です。

フィード

記事のアイキャッチ画像
Falcoホワイトリスト型カスタムルールの検討
Technology
はじめにFalcoはLinux OS向けのランタイムセキュリティツールであり、システム上での異常なアクティビティや潜在的なセキュリティリスクをリアルタイムで検知し、警告するように設計されています。 Kubernetesとシームレスに統合できるため、クラウド上のWebアプリケーションのセキュリティモニタリングに非常に適しています。 前回の記事で、Falcoの概要、デプロイ方法、実際の検出例について詳しく紹介しました。 Falcoプロジェクトでは、異常検知のためのデフォルトルールセットが提供されており、開発者によってメンテナンスされています。ユーザーは必要に応じてこれらのルールを選択し、利用することが可能です。Falcoのデフォルトルールセットは強力ですが、前回の記事で指摘した通り、未知のセキュリティリスクを検知できないケースが存在します。 攻撃者は既知の攻撃パターンに加え、常に新たな方法で脆弱性を探り、侵入を試みます。 この記事では、そうした脅威に対抗するために、ホワイトリスト型カスタムルールの活用を検討しましたので、それについて紹介したいと思います。前回記事のおさらいFalcoの仕組みと特徴FalcoはLinux OS向けのランタイムセキュリティツールで、 システム上で発生する異常なアクティビティや潜在的なセキュリティリスクをリアルタイムで検知し、警告するよう設計されています。 このツールの核となるのは、カーネルレベルでのシステムコールを監視するモジュール、異常なイベントを検知するための監視ルールに基づくエージェント、そして外部に通知を行うFalcosidekickエージェントです。Falcoシステム構成Falcoの監視ルールは、開発元が提供するデフォルトセットを利用することも、組織のセキュリティポリシーに合わせてカスタマイズすることも可能です。Falcoインシデント検知の例前回の記事では、シンプルなnginx podを起動し、以下の3つの操作を実施した際のFalcoによる検知能力を検証しました。検知結果はWeb UIで確認し、さらにjsonログファイルをダウンロードして詳細に分析しました。試したケースbashシェル実行: kubectl execコマンドでコンテナに接続し、bashシェルを起動します。viインストール実行: kubectl execコマンドでコンテ
2ヶ月前
記事のアイキャッチ画像
FalcoでKubernetesのセキュリティモニタリング
Technology
はじめに最近のWEBアプリケーションは、クラウド環境上にLinuxコンテナクラスタとしてデプロイすることが多くなってきました。 Linuxコンテナクラスタを管理するツールとして、Kubernetesが大変人気があります。 Kubernetesを使うと、設定ファイルの記述通りにコンテナクラスタが生成され、その状態が維持されるので、WEBアプリケーションの管理が容易になります。 その一方で、このような環境では数多くのコンテナが動的に生成、破棄されるので、セキュリティのモニタリングやインシデント検知が非常に難しくなってしまいます。オープンソースのセキュリティ監視ツールであるFalcoは、Kubernetesとシームレスに統合できるため、クラウド上のWEBアプリケーションのセキュリティモニタリングに非常に適しています。 FalcoはLinuxカーネルのシステムコールを監視し、あらかじめ定義したルールに基づき、不正なアクティビティを検知します。 Falcoの監視と通知は、リアルタイムで行われるため、セキュリティインシデントに対する迅速な対応が可能となり、攻撃や侵入の検出に役立ちます。今回、Falcoの仕組みやデプロイ方法、どのようなアクティビティが検出可能かなどについて調査を行いましたので、このブログで紹介したいと思います。Falcoの概要Falcoの仕組みと特徴FalcoはLinux OS向けのランタイムセキュリティツールです。 システム上での異常なアクティビティや潜在的なセキュリティリスクをリアルタイムで検知し、警告するように設計されています。 その中核は、カーネル内でのシステムコール監視モジュールと、監視ルールに基づいて異常なイベントを検知するエージェント、さらに外部への通知を行うFalcosidekickエージェントからなっています。以下がその仕組みと特徴です。Falcoは、Linuxカーネルモジュールまたはebpfモジュールを用い、カーネル内でシステムコール監視します。Falcoエージェントプログラムは、事前に定義された監視ルールに一致するアクティビティを検知します。Falcosidekickエージェントは、事前に設定した方法(ログ出力、電子メール通知、Slack通知など)でリアルタイムに通知を行います。Falcoの監視ルールは開発元が用意したものをそのまま利用して
4ヶ月前
記事のアイキャッチ画像
CEDEC+KYUSHU 2023 「大規模モバイルオンラインゲーム開発における チーム組成とワークフロー最適化」登壇報告
Technology
技術広報グループの山田雅人です。 2023年11月25日に開催された、CEDEC+KYUSHU 2023に登壇しました。本稿では、「大規模モバイルオンラインゲーム開発における チーム組成とワークフロー最適化」のセッションの紹介と資料を公開します。セッション紹介セッションタイトル「大規模モバイルオンラインゲーム開発における チーム組成とワークフロー最適化」講演時間11月25日(土)14:00 〜 15:00 (N201)講演内容スマートフォンの高性能化に伴いモバイルオンラインゲームは劇的に高品質にそして複雑になりました。 高品質で複雑なゲームを作るために KLabが取り組んできたチーム組成やワークフローの改善についてお話しします。 マネジメントでよくある問題を一風変わった方法で対応します。マネジメント経験のない方も参考になると思います。資料スライドへのリンク(Google Slide)スライドへのリンク(SlideShare)セッションページCEDiL
5ヶ月前
記事のアイキャッチ画像
技術書典15で同人誌を頒布します & 既刊PDFダウンロードページ
Technology
こんにちは。 技術書典活動の代表のUMEです。11/11(土) ~ 11/26(日) の期間、技術書オンリーの即売会 技術書典15 が開催されます。 期間中はオンラインにて書籍を購入することができ、 さらに 11/12(日) にはオフラインでも開催されます。 (入場券の発行など、詳しくは公式サイトをご覧ください)KLabは例年新刊を発行しながら参加しており、今回も社内の有志のエンジニアが各自好きな内容で記事を執筆し、最新刊「KLabTechBook Vol.12」を発行します。 既刊のVol.3~11とあわせてオンラインマーケットで頒布します。 (技術書典7以後オフラインでの参加をしていないのですが、たまには会場で頒布したいなとは思っているので、次回以降は頑張りたいです。)技術書典では他にも様々な方が執筆された技術書が多数発行されていますので、ぜひ技術書典オンラインマーケットにお越しください。頒布内容新刊/既刊を問わず、物理本+電子版は500円、電子版のみは無料で頒布します。最新刊KLab Tech Book Vol. 12 - 技術書典マーケット今回収録しているのは以下の5記事です。 内容は章ごとに独立しているので、気になる記事が一つでもあればぜひご一読ください。1. GitHub Actionsをローカル環境で実行する「act」actを使ってみたらたいへん便利だったので、勢いあまって紹介記事を書きました。ぜひ使ってみてください。2. Google Cloud を用いた Serverless な Slack Botの作り方C#でServerlessにSlack Bot を作る方法について書きました。 実行時間の長いBotを作る方法や、新方式の改ざん検証の仕方など、一歩踏み込んだ内容を記載しているのでぜひご覧ください。3. Python の match 文に詳しくなってみましょうPython の match 文。はじめて触ると混乱するものですが、慣れるとその高機能に驚きます。4. アニメーションGIFとファイルサイズの話アニメーションGIFの容量についての話を書きました。道中でPNGやWEBPにも触れつつ掘り下げた話もしていて、意外と知らなかった内容が含まれているかもしれません。5. GPUメモリアロケーター自作入門エンジニアの究極の趣味のひとつとして知られる(サン
6ヶ月前
記事のアイキャッチ画像
PHPカンファレンス 2023 「運用中の大規模オンラインゲームで8年ぶりにPHPバージョンアップをした話」登壇報告
Technology
技術広報グループのyamada-masaです。 2023年10月8日に開催された、PHPカンファレンス 2023にKLabの福田陽介が登壇しました。本稿では、「運用中の大規模オンラインゲームで 8年ぶりにPHPバージョンアップをした話」のセッションの紹介と資料を公開します。セッション紹介セッションタイトル「運用中の大規模オンラインゲームで 8年ぶりにPHPバージョンアップをした話」講演時間10月8日(土)15:55 〜 16:15 (トラック1)講演内容PHP5.5 から PHP8.1へバージョンアップした際の開発方針、移行プロセス、遭遇したトラブル、およびバージョンアップの実績と効果について発表しました。 今回のバージョンアップを通じて、私たちは「ユニットテスト」と「日々バージョンアップを積み重ねること」の重要性を学び、パフォーマンスを大幅に向上させることができました。資料スライドへのリンク(Google Slide)スライドへのリンク(SlideShare)PHPカンファレンス 2023(fortee)
7ヶ月前
記事のアイキャッチ画像
AWS Startup Loft Tokyo AIは最高のパートナー!? ゲームづくりの新しいカタチを考える「生成AIが切り拓く新しいゲームの創り方・遊び方」登壇報告
Technology
技術広報グループのyamada-masaです。 2023年7月23日に開催された、AWS Startup Loft Tokyo AIは最高のパートナー!? ゲームづくりの新しいカタチを考えるにKLabの下斗米と市川が登壇しました。本稿では、「生成AIが切り拓く新しいゲームの創り方・遊び方」のセッションの紹介と資料を公開します。セッション紹介セッションタイトル「生成AIが切り拓く新しいゲームの創り方・遊び方」講演時間7月23日(土)20:05 〜 20:35講演内容第1部:創り方「ゲームでAI/MLって何に使えるの?」事例① 生成AIで制作フローを加速事例② 全社員のAI活用を加速させるAIタスクフォース第2部:遊び方「これからのゲームをどう変えていくの?」事例③ 未来のゲーム体験を開拓するAIチャットゲーム資料スライドへのリンク(Google Slide)スライドへのリンク(SlideShare)AWS Startup Loft Tokyo AIは最高のパートナー!? ゲームづくりの新しいカタチを考える
8ヶ月前
記事のアイキャッチ画像
CEDEC2023「AirLab導入でテストコストの大幅削減と品質向上! 数十台の端末を一斉に全自動テストできる社内DeviceFarmについてご紹介」関係者への御礼と情報共有
Technology
CEDEC2023関係者への御礼と情報共有こんにちは、KLab株式会社の許です。CEDEC2023にて村上、河村、許の三人で「AirLab導入でテストコストの大幅削減と品質向上! 数十台の端末を一斉に全自動テストできる社内DeviceFarmについてご紹介」というタイトルで講演させていただきました。 この度は、暑い中、足を運んでご来場いただいた方々、リモートで講演をお聞きいただいていた方々、そしてイベントを支えてくださったスタッフの皆様に心からの感謝を申し上げます。私たちの講演が皆様の役に立つことができれば幸いです。本日講演資料を公開しました。改めてご覧ください。GoogleSlideSlideShareCEDiLなお、CEDECの会期中にいくつかご質問をいただいたため、フォローアップしたいと思います。Q1ツールやドキュメントやマニュアルは日本語版がありますか?A1NetEase社が準備している最中で、近い将来に公開される予定となっています。Q2障害対応のための出社頻度はどれくらいですか?A2障害対応のための出社は、多くても週に一回程度となります。というのも、出社は基本的に最終手段としての対応です。その前に、DeviceKeeperのGUIを利用して端末に対する操作、例えばUSBの抜き差し、充電のオン/オフ、端末の再起動等の障害回復手段を取ることができます。DeviceHub(端末制御用PC)のサービスをリスタートすることも可能です。それらの手段により障害が回復しない場合のみ、出社して対応いたします。また、月に一度の端末点検が行われ、その際には出社し、端末の棚卸しやバッテリー膨張のチェックを行います。Q3ラック内の端末の温度管理はどのようにしていますか?A3ラックは金属製で、その内部には強力なファンを13個搭載しています。さらに、24時間体制での社内空調とサーキュレーターを使用して温度管理を実施しています。また、ラック内には温度湿度センサーが設置されており、設定された閾値を超えるとメールで警報が通知される機能があります。Q4iOS端末には対応していますか?A4iOS端末の対応について、アプリ関連とテスト関連の2つの側面から説明いたします。アプリ関連では、例としてアプリのインストール、アンインストール、起動、終了などがサポートされています。導入初期には、当社はAPIを
8ヶ月前
記事のアイキャッチ画像
Google Play SDK Index を調べてみた
Technology
Google Play SDK Index を調べてみたこんにちは。Google Play や App Store Connect のサポート業務に取り組んでいる、おおさとです。 Google Play SDK Index というサービスがあり、ちょっと触ってみたところ割と有用そうに見えたのですが、 日本語の記事があまり見当たらなかったので紹介させていただきます。Google Play SDK Index とはサイトはこちら。Google Play SDK Index は、Google Play で幅広く使用されている商用 SDK に関する情報について簡単に確認することができる Google のサービスです。 SDK のカテゴリごとに10~20件程度の SDK が登録されており、Google Play 上で利用状況や導入時に要求する Android の権限、データセーフティセクションのガイダンスリンクなどが記載されています。Google Play SDK Index で確認できるものGoogle Play SDK Index では、登録されている SDK ごとに以下のような情報が確認できます。Google Play SDK Console で登録SDK が Google Play SDK Console の利用規約に同意し、登録されていることが記されています。 この項目がアクティブになっている SDK は「SDK が原因でアプリが Google Play のポリシーに違反することは許されない」という内容に同意しているようです。SDKの詳細Maven ID、Maven リポジトリ、データ セーフティ セクションのガイダンスリンクが確認できます。 ガイダンスリンクは SDK の提供元のサイト等へのリンクとなっています。Android の統合SDKの最新バージョン、対象APIレベル、最小APIレベル、ProGuradルールの指定有無が確認できます。アプリ インストール数別の SDK の導入アプリのインストール数別のSDK導入数が確認できます。 例えば、「インストール数が1000から10万以下のアプリでは、GooglePlayでは1万件以上この SDK が採用されている」というようなグラフが表示されています。バージョン別の SDK 導入率導入されているSDK上位5バージョン
10ヶ月前
記事のアイキャッチ画像
1年の間に開催したゲームジャムコンテストの作品紹介
Technology
こんにちわ。ゲームジャム運営のsuzuki-narです。2022年01月から2023年06月の間に6回のゲームジャムコンテストが実施されました。制作されたゲームについて紹介していきます。ゲームジャムコンテストは?決められた期間の間にゲームを制作してもらうゲームジャムになります。普通のゲームジャムと異なるのは、集まって制作するのではなく、各自の好きなタイミングで作る形式となっておりコンテスト形式のような形で行うため、ゲームジャムコンテストと呼んでいます。リモートワーク用に始めた社内イベントとなります。これまでもゲームジャムコンテストを実施しています。リモートで社内ゲームジャムを開催しました社内ゲームジャムをNintendo Switchの『ナビつき! つくってわかる はじめてゲームプログラミング』を用いて開催しました第16回社内ゲームジャム制作期間:12/20~1/28テーマ: フリーテーマUnityか「はじプロ」を使ってゲームジャムを開催しました。前回、Nintendo Switchの『ナビつき! つくってわかる はじめてゲームプログラミング』でも提出があったのでUnityと合わせて続けてやってみた感じになります制作作品ミジンコヒメ紹介コメント:マウスとキーボードを使用する2D全方位シューティングです抽象的な表現で形作ってみました試遊URLとべ!ノードンくん紹介コメント:ジャンプするだけの簡単なゲームです(Switch) はじプロのゲームID: G 000 1L7 BR5 フェアリータイム紹介コメント:Nintendo SwitchとPC版があります!!!!操作方法PC:ドラッグして移動してください。長く生き残ってください!Nintendo Switch:スティックで移動してください。コーラが降ってくるので拾ってください!なんでコーラにしたんだ!(PC版) 試遊URL(Nintendo Switch版)はじプロのゲームID: G 006 F0G 9Y5もう一つゲームIDが必要です G 001 0XD 6D4第17回社内ゲームジャム制作期間: 04/28〜05/31テーマ: リング今回移行、ゲームエンジンであればなんでもOKなゲームジャムとして開催しました。テーマがリングなのは確か当時、オリンピックが近かったから決めた記憶があります。制作作品バウンドリングアドベンチャ
10ヶ月前
記事のアイキャッチ画像
MasterMemory導入事例 ~大規模プロジェクトで爆速のアウトゲームを作るには!?~
Technology
こんにちわ。luckinです。KLabでは今までデータベース基盤としてSqliteを採用していましたが、パフォーマンス面で問題を抱えることが多くありました。今回はSqliteでのデータベース基盤での課題やそれを解決するために大規模開発プロジェクトにMasterMemoryを導入した際のノウハウや実際に入れてみての使い勝手やMasterMemoryがパフォーマンス、特にメモリサイズにどれくらい影響を及ぼすのかについてご紹介します。Sqliteデータベース基盤の課題KLabでは長らくSqliteでのデータベース基盤を採用し、多くのプロジェクトを支えてきました。しかし、近年ではプロダクトのパフォーマンス向上やゲーム内コンテンツの増加に伴いSqliteがボトルネックの要因になることが増えてきました。Sqlite単体では十分なパフォーマンスを発揮しています。ではどこがボトルネックになるのでしょうか?KLabではレコードを取り出す際のアロケーションが大きな問題となりました。C#は静的型付け言語であり、Sqliteの柔軟なデータ構造に適していません。レコードを取り出すにはBoxingを覚悟した柔軟なオブジェクトで取り出すか、テーブルスキーマに準じた型定義を行ったオブジェクトで取り出す必要があります。KLabでは後者を選択しており、このオブジェクトのアロケーションがレコード毎に発生します。またレコード内の情報が全て利用される訳ではなく、一部分の情報のみが利用されることが多くあります。このC#とSqliteの相性の悪さによるアロケーションを回避するため以下の条件を満たすデータベース基盤を模索しました。データベース基盤要件現状のデータベース基盤を超えるパフォーマンスを発揮できることメンバーへの学習コストが低いこと暗号化(難読化)が検討できることコード上で十分な可読性があること型が明確である(objectを使わない特定カラムにアクセスする際にカラム名でアクセスできること(SQLクエリを使ってDictionaryで返すような構造にはしないSqliteの課題を解決するMasterMemoryとはC#でおなじみneueccさんこと河合 宜文さんが実装に携わっているオープンソースのオンメモリマスタデータ基盤となります。ファイルのフォーマットとしてはmsgpackになっており仕組みは非常にシンプル
10ヶ月前
記事のアイキャッチ画像
技術書典14で同人誌を頒布します & 既刊PDFダウンロードページ
Technology
こんにちは。 技術書典活動の代表のUMEです。5/20(土) ~ 6/4(日) の期間、技術書オンリーの即売会 技術書典14 が開催されます。 期間中はオンラインにて書籍を購入ことができ、 さらに 5/21(日) にはオフラインでも開催されます。 (入場券の発行など、詳しくは公式サイトをご覧ください)KLabは例年新刊を発行しながら参加しており、今回も社内の有志のエンジニアが各自好きな内容で記事を執筆し、最新刊「KLabTechBook Vol.11」を頒布します。KLab Tech Book Vol. 11 - 技術書典マーケット今回収録されるのは以下の5記事です。 内容は章ごとに独立しているので、気になる記事が一つでもあればぜひご一読ください。1. Docker を使うなら当然 userns-remap してるよね!Dockerで生成したファイルの所有者がrootになって困ったことはありませんか?これをuserns-remapという機能でスマートに解決する方法を紹介します。2. Python の with 文に詳しくなってみましょうPython の with 文についてまとめました。使ったことはあってもどう動いているのかまではわからない、そんな方の疑問に答えます。3. Rust で Unity のネイティブプラグインを開発しようUnity のネイティブプラグインを Rust で記述するという、奇妙すぎる開発体験について紹介します。Unity 関係なく Rust で動的ライブラリを生成して使いたい方にもおすすめです。4. UIToolkitでUnityのブックマークツールを作るUIToolkit や新しい EditorTool の API を使ったオリジナルブックマークツールの作り方を解説します。5. PHPのARM向け最適化の中身を見てみたPHP7.4で採用されたARM向けの最適化の中身とその背景知識を紹介します。ARMのアセンブリ命令レベルの細かい話が好きな人にオススメです。頒布内容オンラインのみの参加のため、 5/21(日) のオフライン開催日には出展せず、オンラインマーケットのみで頒布します。 新刊/既刊を問わず、物理本+電子版は500円、電子版のみは無料で頒布します。最新刊KLab Tech Book Vol. 11 - 技術書典マーケット既刊KLab
1年前
記事のアイキャッチ画像
連載:モバイルゲームのアドベンチャーパート開発 Vol.3
Technology
前回の解説ではアドベンチャーパートをどのように見せるべきか、他社ではどのような工夫をしているか、またユーザーの意識とそれに対してどのように見せていくかを記載しました。 今回はこのユーザーの意識とそれを受け取る際にどのようなバイアスがかかっていて、それをどのように生かすのかをより詳しく記載していこうと思います。アドベンチャーパートでの表現 - 2ユーザーは作り手が思っているよりもよく見ている 誰もが無料で手軽に遊べるソーシャルゲームによって、多くのアドベンチャーパートが世に溢れるにつれ、ユーザーの目も肥えていっています。たくさんのゲームをプレイし、それらを比較することで、工夫が凝らされた独自性のあるものか、これまで通りの工数削減だけを主軸に置いたいわゆる手抜きのものか、無意識的に良し悪しの判断ができるようになります。 それによって、特に意識的な取り組みをしないで作ったり、工数ばかりを気にして作ったりしたアドベンチャーパートは、ユーザーから体裁を整えるために作っているだけで力を入れていないと気づかれてしまい、すぐにスキップされてしまうようになります。 そうなってしまえば、シナリオがどれだけ面白くても、意味がなくなってしまいます。 一般的に「シナリオが良い」「ストーリーが良い」と評されるゲームは、シナリオ自体が優れているというだけではなく、アドベンチャーパートにおいても、シナリオを最後まで読ませるための工夫が凝らされています。 なぜなら、シナリオやストーリーがよかったとユーザーが判断するのは、最後まで読み切った後だからです。 小説を読んでいるのではないのですから、ただシナリオがいいというだけでは、最後まで読んではもらえません。 最初からアドベンチャーパートはおまけと割り切って、工数を削減するというのも開発においては一つの手段です。ですが、物語性をコンテンツの軸の一つとする場合は、工数の削減だけではなく、読ませるための工夫も合わせて考えなければ、思っていた通りの結果が得られなくなる可能性が極めて高くなることを覚悟しなければなりません。簡単であり、難しくもある アドベンチャーパートを作るのは、難しいのでしょうか? 答えは、イエスであり、ノーです。 例えば、アクションのように、キャラクターが激しく動き回り、派手なエフェクトなどが画面を彩るような画面を作ろうと思ったら、多くの人は
1年前
記事のアイキャッチ画像
連載:モバイルゲームのアドベンチャーパート開発 Vol.2
Technology
前回は、アドベンチャーパートの概要について触れてきましたが、今回は、アドベンチャーパートで用いられる表現について、解説していこうと思います。アドベンチャーパートでの表現 - 1 アドベンチャーパートは現在各社が創意工夫を行っており、話題にも上がりやすい一つの強みとしてプレイヤーに認識されています。 各社がそれぞれの見せ方をしている今現在では、昔のような立ち絵と背景をただ表示するだけの単純なアドベンチャーパートは、余程シナリオが秀逸なものでなければプレイヤーに読んでもらうことも難しいというのが現状です。 では、なぜ昔のようなテンプレートなアドベンチャーパートが減っているのでしょうか。アドベンチャーパートと認知バイアス アドベンチャーパートの利点といえば、工数の節約であったり、手軽にシナリオをユーザーに伝える事が出来るという点ですが、実はそれらはただの副産物です。というのも、工数を節約できるというただそれだけの利点であれば、そもそもこのアドベンチャーパートという形式は、ここまで長期間生き残ってはいないでしょう。 では、なぜ、アドベンチャーパートは現在まで存続しているのでしょうか? それは、アドベンチャーパートが真にプレイヤーに影響を与えるのは、認知バイアスの誘導にあるのだと考えられます。 バイアスが働く事象は様々ですが、例えば、知名度がある有名人と無名の一般人が同じ商品をPRしたとしましょう。そうした場合、前者のほうが商品の購買に結びつく確率が高くなるのは、想像に難くないでしょう。 商品は同じもので差はないはずなのに、なぜ、そのような違いが生まれるのか。それは、商品の評価がPRを行った人物の評価に引きずられるためです。 こうした思い込みや周囲の環境などの要因によって、非合理的な判断をしてしまう心理現象をバイアスと呼びますが、この中でも、特に無意識下で持つ先入観や固定観念によるバイアスを認知バイアスと呼びます。 アドベンチャーパートにおける認知バイアスが働く状況は、アドベンチャーパートで最も単純な背景に立ち絵を出すシーンで考えてみるとわかりやすいでしょう。 まず、このように背景が表示されている状態から、そこに、キャラクターの立ち絵が新たに表示されることになります。 ゲーム慣れした人は、何の説明もしなくても、「そのキャラクターがその場所にいる」と認識することでしょう。 しか
1年前
記事のアイキャッチ画像
CEDEC+KYUSHU 2022 登壇報告【2/2】 「モバイルオンラインゲームでの大規模観戦とチート対策〜自社製リアルタイム通信システム「WSNet2」の事例〜」
Technology
技術広報グループのyamada-masaです。 2022年11月12日に開催された、CEDEC+KYUSHU 2022に、KLabから2セッション5名が登壇しました。本稿では、「モバイルオンラインゲームでの大規模観戦とチート対策〜自社製リアルタイム通信システム「WSNet2」の事例〜」のセッションの紹介と資料を公開します。セッション紹介セッションタイトル「モバイルオンラインゲームでの大規模観戦とチート対策〜自社製リアルタイム通信システム「WSNet2」の事例〜」講演時間11月12日(土)17:05 〜 18:05講演内容オンライン対戦やマルチプレイのような常時接続型の通信要素は、昨今のスマートフォンゲームにおいても一般的になっています。スマートフォン特有の事情として、通信中にモバイル回線やWiFiの切り替わりが発生することや、端末スペックが様々であることが課題となります。また、通信内容やゲームロジックの改ざんによるチートも対策が必要です。加えてeスポーツのように数万人規模の観戦といった要求も出てきました。KLabではこれらの課題に対処するため、WebSocketをベースとした通信システム「WSNet2」を開発し、OSSとして公開します。本セッションでは、これらの課題にどの様に対応したのか紹介します。資料スライドへのリンク(Google Slide)スライドへのリンク(SlideShare)CEDECセッション情報ページCEDiLページ
1年前
記事のアイキャッチ画像
CEDEC+KYUSHU 2022 登壇報告 【1/2】「表も裏もすべて見せます!KLab謹製大規模オンラインゲームのリアルタイムチャットマイクロサービス」
Technology
技術広報グループのyamada-masaです。 2022年11月12日に開催された、CEDEC+KYUSHU 2022に、KLabから2セッション5名が登壇しました。本稿では、「表も裏もすべて見せます!KLab謹製大規模オンラインゲームのリアルタイムチャットマイクロサービス」のセッションの紹介と資料を公開します。セッション紹介セッションタイトル「表も裏もすべて見せます!KLab謹製大規模オンラインゲームのリアルタイムチャットマイクロサービス」講演時間11月12日(土)15:45 〜 16:45講演内容本セッションではKLabの最新ゲームに組み込まれたチャットシステムの全容についてお話します。今やオンラインゲームの要素として欠かせなくなったゲーム内チャット。その舞台裏には色々な工夫と苦労があります。ゲーム内のチャットUIでは、AndroidとiOSにて絵文字の互換性を持たせるためにWebViewを使っています。オフラインのユーザのためにはPush通知も必要になります。サーバサイドでは、大量のサーバを効率よく管理するためにKubernetesを採用しています。またいろいろなゲームにチャットを組み込みやすくするため、ゲーム本体とは切り離してマイクロサービスとして設計・運用しています。このようなチャットシステムの表と裏について、たっぷりお話します。資料スライドへのリンク(Google Slide)スライドへのリンク(SlideShare)CEDECセッション情報ページCEDiLページ
1年前