サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
中東情勢
www.infiniteloop.co.jp
今年も開催!!Sapporo Game Camp 2024!! こんにちは、horikawaです! 2024/10/11(金)、12(土)、13(日)に、Sapporo Game Campが開催されることが決定しました!今年は場所をサッポロファクトリーに変えての開催となります! 開催期間の3日間は、札幌で活躍するクリエイター達によるトークセッション、小中高生向けのプログラミング講座と3DCG体験。そしてプロと一緒にチームを作り、2日間でゲーム制作を行うゲームジャムと、同時並行的に様々なイベントが開催されます! 札幌のゲーム会社が一同に集うこのお祭りに、ぜひお越しください! インフィニットループは、このイベントに全面協力していますので、トークイベントや ゲームジャムにももちろん参加しますよ! 下記の公式ページで、情報が順次公開されますのでお楽しみに! Sapporo Game Camp 公式
【D3D12】頂点バッファを品質そのまま1/3にサイズ削減 メッシュアセットは頂点数分なんらかの情報を持っています。 Unityのようなゲームエンジンでは頂点のレイアウトを意識せずにメッシュを描画に利用できるように整えられていることが多いですが、その結果一頂点あたりのデータがそれなりに大きくなっているような場合があります。これは配信データの肥大化や、VRAMの圧迫、ランタイムのパフォーマンスの低下を招くリスクがあります。 以下のようなフォーマットは、一般的な描画上の要件を満たしますが、ムダでしょう。今日の商用ゲームでこのようなフォーマットが採用されることはまずありえないはずです。 そこで、次のようにしてみるとどうでしょうか? 24bytesまで削げました。半分のサイズですね。 さらに踏み込んで、座標をバウンディングボックスのサイズに合わせた分割的取扱いにして8byteにするかどうか少し考え
IL 社員の日々の学び 仙台支社のいがらしです。 現在 IL では、社員が日々の学びを積み重ねていくのを助けるよう、各自が帰る前に「今日の学び」を slack へ投稿する、という取り組みをしています。投稿内容はバッチ処理により匿名化された上、決まった slack チャンネルへ集約されて、次の画像のような感じで流れてきます。 内容はなんでもよく、特にない日は「特にない」と書けばよい、というゆるめのルールです。「最近あまり新しく学んだことがないなー」ということ自体が何かを学ぶきっかけになるかもしれませんし、特筆することのない日が続いたってよいのです。日々の振り返りが大事です。 「他の人が日々どんなことを学んでいるか」を知るのも学びのきっかけになることから共有用のチャンネルも設けていますが、「こんなことも知らなかったのか、と思われたら怖い」のように萎縮する人が出てしまうと本末転倒なので、念のため
ホーム 技術ブログ 愛されて23万View!新卒向け研修資料「テスト文字列に”うんこ”と入れるな(2024年版)」を公開しました 愛されて23万View!新卒向け研修資料「テスト文字列に”うんこ”と入れるな(2024年版)」を公開しました こんにちは松井です。今は会長になりました。 遡ること3年前、2021年の新卒研修向けに「テスト文字列に”うんこ”と入れるな」という資料を作成しました。 おかげさまで多くの方に読んでいただいたようで、SlideShareのView数は「23.6万View(2024年4月現在)」にまで達しました。 わたし的にはもうこれで満足していたのですが、 「会長、今年も例のうんこの話をしていただけませんか」 というオファーがあり、またこのクソみたいな話をすることになったという次第です。 せっかく話をするならばということで、事例やTIPSのページを新たに加え、「2024年
【C++】マクロ入門。ループで任意数の変数を持ったクラスを生成しよう!【ゲーム開発】 前に一度データ駆動開発とドメイン的な概念の扱いを混ぜてやろうとしてみた時に、キャラクターなどのドメイン的定義からデータ駆動的な基盤でのデータ定義につなげる層で、いくぶんか冗長な記述が表れた経験がありました。また別件ですが、マスターデータの定義からそれに関連するデータ関連のコードを生成する仕組みを見たことがあります。 C#には、最近はSource Generatorだったか、ボイラープレート的なクラスを宣言するための親密な戦略があります。昔はT4とかいう、よく分からんやつがいた気がします。 C++はテンプレートによって言語機能内でC#と比べてアグレッシブに静的な事前コード生成による結合を行えますが、クラスの定義そのものを自由度高く行うようなことは出来ません。テンプレートでは型や値の注入は出来ますが、宣言され
Redisの隠れた落とし穴:単純なハッシュ操作で大きなトラブルに! Redis にはハッシュというデータタイプがあり、 1 つの key に対して複数の field / value を保存することができます。 PHP / Laravel で Redis のハッシュに複数のデータを書き込んだ時に、意図しない挙動となってしまったことがあったので、紹介します。 以下のコードの前提 $this->redis は PhpRedisConnection のインスタンスです 1 つの key に対して 3 つの field / value を保存する set 関数を定義します BAD public function set(string $key, string $data1, string $data2, string $data3): void { $this->redis->hSet($key,
ホーム 技術ブログ 自宅や会社の PC が ChatGPT に!llamafile と Swallow ではじめる日本語 LLM 自宅や会社の PC が ChatGPT に!llamafile と Swallow ではじめる日本語 LLM 最近 AI 関係のソフトウェアに触れる機会が増えてきたインフラエンジニアの波多野です。 AI といえば大規模言語モデル (LLM) で、日本語を扱えるサービスも ChatGPT や GitHub Copilot などいくつか出ています。いずれも「もうチューリングテストに合格しているのではないか?」くらいの性能で、今後のことを考えるとワクワクしています! ところで、PC にちょっと変わった Linux をインストールしてみたり、いつもと違うデータベースやプログラミング言語入れるなど、スタンドアローンなソフトウェアを使うことにはそれでしか味わえない楽しみがあ
フィンランド発祥の極寒ピッチコンテスト「Polar Bear Pitching Hokkaido」観覧レポート matsuiです。 インフィニットループは、2024/1/31(水)に開催されたフィンランドのオウル市発祥の極寒ピッチコンテスト「Polar Bear Pitching Hokkaido(ポーラーベアピッチング北海道)」にグッズ協賛として関わらせていただいており、開催当日もオウル市にゆかりのあるメンバーで参加者を応援してきましたので、そのレポートをご紹介したいと思います。 Polar Bear Pitchingとは、寒空の下で氷水に入り、我慢できなくなるまでピッチができるという、フィンランドのオウル市で始まったビジネスピッチイベントで、今回札幌市でも初開催されました。 我々インフィニットループは、数年前からフィンランドのオウル市とビジネスをはじめとした交流があり、定期的に互いに行
家庭事情により今回、急遽すぐ後ろに4歳児がいてタブレットで子供向け動画を見ている状況で登壇することとなったのですが、2 回くらい音量を上げてきたのを「もうちょっと音小さくできます?」と振り返ってやるくらいで済みました。配信を見ていた方や会場の後ろのほうの席の方は「なんでこいつ急に笑いながらトークを中断して後ろを向き始めたんだ?」と不思議に思われたかもしれません。配信を見返すと実際はさほど大きな音でもなかったようです。ご参加いただいた皆様、急な子連れ参加にも柔軟にご対応くださったスタッフやコミュニティの皆様、ありがとうございました。 視聴して頂いた方々は、ぜひぜひフィードバックをよろしくお願いします! やまゆ: 「DI」と仲良くなる 今回は Dependency Inversion(発音に気を付ける) にあえて絞り込んでお話しました。そうすると、「この辺ごちゃごちゃしてて(SOLID全体と混
テキスト読み上げソフト『VOICEVOX』に「あいえるたん」が登場! 本日10月6日、テキスト読み上げソフトウェア VOICEVOX(ボイスボックス)から、弊社のマスコットキャラクター「あいえるたん」の音声ライブラリがリリースされました! VOICEVOXとは https://voicevox.hiroshiba.jp/ VOICEVOX は、無料で使える中品質なテキスト読み上げソフトウェアです。Windows / Mac / Linux 対応で、イントネーションの詳細な調整ができます。 今回 VOICEVOX に追加されたキャラクターは、あいえるたんを含めて4名。現在、30名のキャラクターボイスを使うことができます。 あいえるたんボイスサンプル VOICEVOX を使って、あいえるたんに自己紹介をしてもらいました。話速や抑揚などのパラメーターを変えると、声の雰囲気が変わります。あいえるた
インフィニットループ人事異動 2023年10月1日付 当社はこれまで、主にモバイルゲームのサーバーサイド開発とVRアプリ開発を主軸に事業を育んできました。加えてグループ企業も増えたことによりサーバーサイドが得意という特徴は活かしたまま、グループ総合力の引き上げも着々と狙い、現にいくつものプロジェクトをグループ請けさせていただいております。 グループ企業 株式会社pixydaAuto VR株式会社株式会社ピコラ(資本業務提携のお知らせ)その他3社 対応可能になったゲーム制作の領域 Unityをはじめとしたクライアント開発2D/3Dグラフィックデザイン新規・運営のプランニング 今回の人事異動によりこれら主力事業に更に磨きがかかることはもちろん、xRやAIに関して進行中の各種新規事業の幅もググっと拡がります、これからのインフィニットループにどうぞご期待ください! ツイート
MySQL のインデックスと EXPLAIN の社内講習会しました! みなさんMySQL使っていますか? インフラエンジニアの nobuh こと波多野です。 弊社はサーバー開発に携わることが多く、サーバー開発の言語としては PHP をはじめ C# などいろいろな言語を使っています。そのサーバーと合わせて必須となるデータベースについては MySQL ないし AWS RDS Aurora など MySQL 互換データベースを含め、ほぼ 100% MySQL を使っています。 そして、どんなサービスやプロダクトでもデータを管理し提供するデータベースは、性能でも重要な部分になります。 今回そんな MySQL の性能で重要となるインデックスについて、またクエリをチューニングする場合に必要となる EXPLAIN についての社内講習会を「新卒講義」の場を借りて実施いたしました。その内容について紹介したい
【Unity SRP】3Dテクスチャを利用したボリューメトリックフォグの実装 仙台で3Dゲームクライアント開発を行っております、にしきんです。 ここ十年のハードウェア進化を身をもって体感する機会はモバイルゲーム上ではあまりないかもしれません。しかし数字で見てみると明らかで、例えば前世代の据え置きゲーム機であるPS4のGPU(GCN)はFP32について約1.84TFLOPS、そしてXbox OneのGPU(GCN)はFP32について約1.31TFLOPSですが、今日これは一部のスマホ向けGPUで、しっかりとFP32で達成できているようなものです。ぼちぼち前世代黎明期の描画トピックは抑えておくべきでしょう。 ということで今回は、Unity向けの独自レンダリングパイプライン(SRP)で、3Dテクスチャを使ったボリューメトリックフォグの実装をしてみたので、その話を共有します。 ボリューメトリックフ
ホーム 技術ブログ 【Unity】BlendShapeを倍速化!GPU処理を自分で書いて、Unity公式BlendShapeのパフォーマンスに勝ってみよう! 【Unity】BlendShapeを倍速化!GPU処理を自分で書いて、Unity公式BlendShapeのパフォーマンスに勝ってみよう! 宮城県仙台市の3Dゲームエンジニア、にしきんです。 前回、AnimatorやPlayableGraphからも卒業!?スキニング・スケルタルアニメーションの独自実装をして全局面で勝つ・前編という記事を公開しました。後編をお見せする前に、具体的なトピックでGPU向けの処理を書く話を挟むことにします。 前編でスキニングのGPU処理時間は10%ほどの改善に留まっており、パフォーマンス改善の主な部分はJob/BurstによるCPU部分についてでした。実際、私が挙げていた問題は殆どすべてがAnimatorに絡む
ホーム 技術ブログ 【Unity】AnimatorやPlayableGraphからも卒業!?スキニング・スケルタルアニメーションの独自実装をして全局面で勝つ・前編【中級者向け】 【Unity】AnimatorやPlayableGraphからも卒業!?スキニング・スケルタルアニメーションの独自実装をして全局面で勝つ・前編【中級者向け】 仙台の3Dゲームエンジニア、にしきんです。 BRGによる描画についてと、AnimationCurveのBurst化についてをこれまでお話してきました。今回はそれらを踏まえて、独自でスケルタルアニメーション・スキニングをUnity内で実装していくお話をいたします。ちなみにただ動くことを目的にしているわけではありません。実用的に、パフォーマンスや取り扱いやすさなどでビルトインソリューションに勝利できる(!!)ことを示していきたいと思います。 なお本トピックは少々複
育休とってみました shimizuです。男性です。 昨年11月に長女が誕生し、育児休業を2ヶ月弱取得してみました。社内ナレッジ共有をと思いまして、記事を書いてみます。 なお、以下は私個人の感想であり、個人や環境、法改正によって色々変わると思います。 育休取得と取得期間の理由 会社から 上長へ妻が妊娠したことを報告すると、育児休暇取得することを『強く』勧められました。また、プロジェクト的にはゆっくり取ってくださいという雰囲気でありました。お陰で気楽に取得する気持ちが強くなりました。 夫婦間で話した 妻と育児休暇取得をどうするか相談したときに、どうなるかわからないから取得できるなら取得してほしいという話になりました。生まれてすぐの子育てに参加できる機会は今後あるか分からないため、子どもと接する時間が増えるなら取ってみようと思いました。 取得期間の理由 取得期間を2ヶ月弱にしたのは、単に暦の上で
ホーム 技術ブログ 【Unity】Mesh Rendererから卒業して爆速パフォーマンスをゲットしよう。BatchRendererGroup 2022の詳解 【Unity】Mesh Rendererから卒業して爆速パフォーマンスをゲットしよう。BatchRendererGroup 2022の詳解 仙台で3Dゲームクライアント開発を行っております、にしきんです。 メッシュの描画発行も例によってPS4世代から活発に動いたトピックだと思います。GPU駆動なMDIが有名でしょうか。現在では、カオス化したジオメトリパイプラインを再定義するメッシュシェーダーというものまで登場しました。 ここまでの話だけでUnityのMeshRendererが処理時間的に遅い理由は十分に説明できて、単一の描画対象の情報のみをバインドする、「レガシーな」とでもいうべきDrawCallと対応しているからです。個人的には、
【ILの部活動】 GitHu 部(仮)の近況(2023年6月) こんにちは。 GitHu 部(仮)(名前負けしてる)のやまゆです。 GitHu 部(仮)より半年ぶりに近況をお届けします。なお、部の名前は真面目に決めようという熱量のある人がいなかったため、仮名のままです。 前回お伝えしたとおり、この部のウリは「業務外になにか作るという活動でさえあれば何をやってもよい」という無限のゆるさにあるのですが、このまとまりのなさゆえにけっこう重大な弱点があります。 みんなやりたいことが違うので部費の使途決めに困る!!! IL の公認部活動、所属人数に応じて会社からある程度活動費用を出してもらえるのが非公認のサークル活動との大きな違いなわけですが(詳細は漫画部のエントリを参照)、個人に支給するのと区別がつかないような形になってしまうと健全でないので、やりたいことがバラバラの中でもまずまず得する人がいる、
Reli を使った PHP 7.x/8.x サービスの計測 こんにちは。やまゆです。 サービスをリリースするにあたり、事前のシナリオテスト・負荷試験はなくてはならない項目です。 そこで主に API ごとの成功率、レイテンシ(リクエストしてからレスポンスが返ってくるまでの時間)、レスポンスサイズなどを計測し、想定されるユーザー数でも快適に遊べることを保証できるように改善を加えていきます。 改善の際、重くない部分をチューニングしてもほとんど効果が出ないので、「この API のどの部分(関数)に時間がかかっているのか?」を知ることが重要です。 それらを実際に動作している環境で計測し、可視化することを「プロファイリング」と呼ぶことがあります。 これは、ターゲットとする機能の実行時間について、「このメソッドに何秒かかった」や「全体の x % がこのメソッドで消費されている」などを確認するための仕組み
ADR – アーキテクチャ上の設計判断を記録しよう はじめに 昨年、2022 年に「ソフトウェアアーキテクチャの基礎」[1] という書籍が出版されました。 これは今年、2023 年の 1 月 16 日に発表された「IT エンジニア本大賞2023」技術書部門ベスト10 に選ばれるなど、ソフトウェアエンジニアからの注目が多かった書籍であると言えるでしょう。 そこで紹介された アーキテクチャディシジョンレコード (Architectural Decision Records; ADR) という方法は、この書籍の評判が浸透するにつれ、目に耳にすることが多くなった印象があります。 本記事では、この ADR とはどのような方法であるのか、またそれに対する個人的な考察や雑感について、記述しています。 なお本記事における「判断」「決定」いずれの用語も、Decision の訳語であると解釈していただいて差し
今年度も PHP Foundation に寄付をしました こんにちは、仙台支社のいがらしです。インフィニットループは今年度も会社として、The PHP Foundation に前年度と同額の寄付をしました。アイコンのテンションがやたらとアゲアゲになっているのは、実際に支払いの手続きをした弊社のえらい人の犯行みたいです。いいぞもっとやれ。 TL;DR この記事では以下について述べています。 The PHP Foundation は PHP そのものの開発を支援する団体です 弊社を含め、日本でも何社もの企業が支援を行っています PHP の存続と発展のため、みなさんの会社でもぜひ寄付を検討してみてください 今回の寄付について 前回寄付時からの繰り返しとなりますが、弊社インフィニットループはかねてより PHP を業務で使用してきており、PHP の言語としての発展と継続にその利益をある程度依存してい
ソースコードで なんでも 生み出す。 なんでもない記号から、とんでもないモノを生み出す。 インフィニットループは日々技術を磨き続け あらゆる難題に応えていくエンジニア集団です。
不定期刊行 PHP ニュース 2023年2月10日号 インフィニットループ仙台支社のプログラマー、いがらしです。 PHP 界隈の気になったことをまとめ、不定期に宮城県仙台市からお送りします。前回出したのは昨年 11 月 29 日でした。 ※ なお、画像のPHP ロゴは作者の Colin Viebrock さんによってリリースされ、CC BY-SA 4.0 でライセンスされているものです。 php-src / internals PHP 8.2 Released! PHP 8.2 がリリース現在は 8.2.2 まで出ている All PHP 7.x versions are now EOL PHP 7.4 のサポートが終了 PHP RFC: Readonly amendments PHP 8.2 で入った readonly class の修正提案の投票が終了非 readonly で継承可能にす
Slim Framework と Docker を使って本格的にアプリを作ってみよう はじめに Web アプリケーションの開発をするにあたっては勉強しなければならないことは多く、どう勉強すれば良いかはなかなか難しい問題です。初心者向けの解説は比較的たくさんあるのでとりあえずやってみるくらいは何とかなるものの、実戦的な開発がどうなっているかという総合的な話は実務を経験しないとわからないことが多いことでしょう。 ということで、本記事では最近流行の Docker と、そこそこ名前は見かける PHP のマイクロフレームワークの Slim Framework を使って実戦的な Web アプリの開発をしてみる(開発環境を作ってみる)こととします。実装的には、ドメイン実装としてユーザー登録、ログイン、ユーザー情報取得の3つのAPIを実装するところまでを取り扱います。また、静的解析を最大限活用してユニット
Global Game Jam Sapporo 2023 が開催されます! こんにちは、GGJ札幌会場・運営スタッフのササキングスペシャルです。 2023年2月3日(金)~2月5日(日) 札幌市産業振興センターで、Global Game Jam Sapporo 2023が開催されます! Global Game Jam とは Global Game Jam (GGJ)は、実際に会場で行われるゲームジャムの中では世界でもっとも大きなイベントで、ゲーム製作に特化したハッカソンです。 全世界、いろいろな会場にて同日程で行われます。 48時間という限られた時間でゲーム制作をするのが特徴です。 2012年には世界最大のゲーム製作イベントとしてギネス世界記録として認定されたそうです。 Global Game Jam Sapporo (GGJSap) そんなGGJですが、札幌では2011から開催しており、
PHPとSDLで始めるコンピューターグラフィックス – 回転と極座標 こんにちは nobuh です。前々回と前回の2回にわたり PHP と SDL でのプリミティブな操作を使ってコンピューターグラフィックスを楽しんでいるこのシリーズ。3回目は移動や視点の操作で必須となる座標の回転と極座標表示について取り組みます! ここまでの振り返り 第 1 回 基本的な画像描画方法の説明 PHPとSDLで始めるコンピューターグラフィックス 第 2 回 透視投影による 3D 表示 PHPとSDLで始めるコンピューターグラフィックス – 透視投影で3D 少し改良 第 2 回までの 3D 表示の機能のまま、プログラムを少し改良してみました。 まずは 3D データを準備するときに形状と位置がごちゃまぜになっていたのを形状の情報と位置の情報に分離しました。加えてオブジェクト指向っぽく構造を整理しました。具体的には
PHP開発者がC#でDIを使った時のハマリポイント こんにちは、バックエンドの開発を担当しているなごちん、こと名古屋です。 札幌はすっかり雪化粧になってしまいまして 例年初雪は一度溶けてしまう事が多いんですが今年は一回も溶けずに年を迎えそうです。 そんな今日はPHP開発者がC#(.NET)で実装した時のDIのハマりポイントについて書きたいと思います。 .NETのバージョンは5でASP.NET Coreでのお話になります。 DIとは 依存性の注入の事を指し、Wikipediaでは以下の形で説明されています。 依存性の注入(いぞんせいのちゅうにゅう、英: Dependency injection)とは、あるオブジェクトや関数が、依存する他のオブジェクトや関数を受け取るデザインパターンである。英語の頭文字からDIと略される。DIは制御の反転の一種で、オブジェクトの作成と利用について関心の分離を行
PHPとSDLで始めるコンピューターグラフィックス – 透視投影で3D こんにちは、普段はインフラや情シスをお仕事にしていますが、グラフィックスも趣味にしている nobuh です。前回の記事 PHPとSDLで始めるコンピューターグラフィックス に続きまして、今回は PHP での SDL を使った 3D グラフィックスに挑戦したいと思います! 前回までのおさらい 前回の記事 では PHP と php-sdl のインストール方法SDL のウインドウを出してグラフィックスを描画する方法フレーム毎にキー入力を処理し、多数の四角を描画する という 2D グラフィックスの基本的なところを紹介いたしました。今回は 線を引く という原始的な機能を使って 3D のワイヤーフレームで物体を描画して動かすところまで挑戦してみます! 3D を 2D に描画する透視投影 3次元の立体を2次元の平面上に書く手法として
【2022年12月】『ゼロから学ぶWebサーバー構築1dayインターン』を開催しました こんにちは!vjsigsigです(`・ω・´)ゞ 2022年12月12日(月)『ゼロから学ぶWebサーバー構築1dayインターン 〜サーバーアプリを知らないけど、1dayインターンでサーバー構築知識を知ってアプリを動かす体験をしたらサーバーエンジニアになっていた件〜』を開催しました! 毎年ご好評の8月開催5dayサーバーサイドインターンではガチャの抽選ロジックを実装頂いておりましたが、今回はガチャ抽選ロジック作成部分をスキップし、サーバー初期構築体験に課題を絞りました。 アプリ側の改修については既に実装されているガチャロジックを使って10連ガチャを組み上げるという簡略化した課題を用意。 また、学習コストが比較的高めなGitを廃止しツールの使い方に振り回される事無く実装に集中する事で1dayでの完結を実現
次のページ
このページを最初にブックマークしてみませんか?
『株式会社インフィニットループ』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く