サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
中東情勢
synamon.hatenablog.com
エンジニアの岡村です。 自分はサーバーがメインではなく、あまり業務でガッツリ触るわけでもないのですが、最近それなりに活用するようになってきました。しかし、ネット上の日本語情報を読んでいるだけではこれの書き方が正しいのかよく分からない、と悩むことが結構あったため、色々情報を漁ってみました。 この記事は、特に自分が気になった部分の調べた結果を記事に纏めてみたものです。対象読者はdocker-composeを雰囲気でupやdownは叩けるけどComposeファイルの書き方がよく分からんとなってる人です。 Docker Composeの概要とcompose.yaml、Compose Specの関係 compose.yamlの書き方は Compose Specに準拠すればOK Compose Specの場所 推奨のファイル名はcompose.yaml compose.yaml内にバージョンを記述する
こんにちは、エンジニアリングマネージャーの渡辺(@mochi_neko_7)です。 少し前にTwitterで、GitHub CopilotがLGPLライセンスのコードをライセンス表記なしに出力する、という話が話題になったのをご存じですか? @github copilot, with "public code" blocked, emits large chunks of my copyrighted code, with no attribution, no LGPL license. For example, the simple prompt "sparse matrix transpose, cs_" produces my cs_transpose in CSparse. My code on left, github on right. Not OK. pic.twitter.c
こんにちは。 株式会社 Synamon でエンジニアをしております、渡辺匡城(@mochi_neko_7)と申します。 今回はソフトウェアの開発チームの生産性・健全性を可視化できる gilot というツールを触ってみたのでレポートします。 ツールの作者の広木大地さん(@hiroki_daichi)は エンジニアリング組織論への招待 の著者であり、EM.FM などでも開発組織の話を発信されています。 そんな広木さんがツールを作成したと目にしたので、実際に触ってみて、弊社のプロダクトに適用してみました。 日本語での使い方やグラフ、指標の解説は Qiita にもまとめられていますので、こちらも参照ください。 qiita.com 上記の内容の補足として、環境のセットアップや Windows 環境ではまったところ、弊社のプロダクトの簡単な解析結果の紹介をします。 gilot gilot(ジロー)は
こんにちは。株式会社Synamonでエンジニアをしております、岡村(@Sokuhatiku)と申します。 ついに本日5/21に、Oculus Questが発売されましたね!弊社にもまだ届いておりません!2019年6月2日追記:先週届きました!! Questはスタンドアロンデバイスでありながら、デスクトップPCを要求するOculus Riftと同等レベルの操作が可能なデバイスです。VRを始めるための初期投資も少なく使う手間も少ないことから、多くの人がQuestを購入することを予測し、新たなユーザーを迎え入れるためにRiftで展開しているコンテンツをOculus Questに移植したい!という気持ちになったり、そういう要望を受ける方も多い事かと思います。幸いOculus Quest実機が無くてもGoと全く同じ環境で開発は出来るので、作業自体は今からでも始められるのですが、問題になってくるのが、
こんにちは。 株式会社Synamonでエンジニアをしております、渡辺(@mochi_neko_7)と申します。 VRでは自分の好きなアバターになれるというのは大きな魅力の一つではないかと思いますが、せっかくのアバターも固い表情のままではちょっともったいないですよね。 そこで今回はアバターに表情を付ける一つの方法として、プレイヤーの話している声からアバターの口を動かすリップシンクとよばれる手法についてご紹介したいと思います。 今日では、リップシンクを手軽に利用できる環境もいくつかありますが、その中でこのお話をさせていただくのは、ブラックボックスをあまり使いたくないという想いと、パフォーマンスなどの要求から自分で実装したい場合があるのではないかと思ったからです。 ネットにも技術的な部分を詳しく解説している記事があまり見つからず、筆者自身未知の領域で苦労した経験から、初心者の方にも分かりやすく説
こんにちは。株式会社Synamonで開発責任者(CDO)をしている西口([@nishiguchi3d])です。 みなさんはVRでCADのデータを見たいと思ったことはありませんか? Unityにインポートして表示させるだけなら大して難しくないですがやはり問題になるのがそのポリゴン数と質感付けの部分じゃないでしょうか? 今回は実際に使用したデータをもとにVRに適したデータを作成しUnityで表示するところまで解説してみたいと思います。 ポリゴン数を削る こちらが今回使用するBECKHOFFのEPCのCADデータです。細部まで作り込んであるのでこの段階で1,150,374ポリゴンあります。 ポリゴン数もさることながらこのディティールの3角ポリゴンのデータをUV展開するのかと思うとゾッとしますね!なのでこれをリトポ(リトポロジー)して可能な限りポリゴン数を削減していきます。 ↓ そしてこれがリトポ
こんにちは、エンジニアリングマネージャーの渡辺(@mochi_neko_7)です。 本記事では、Unity/C#からC/C++で作られたネイティブプラグインを呼び出す、いわゆるC# Bridgeなどを作成する際に知っておくべきこと、注意すべきことを紹介します。 ネイティブプラグインを自分で触っているとUnityをクラッシュさせてしまうことも多いと思いますが、通常のように分かりやすいログが出るわけではないため何が原因なのか分かりにくいことも多いのではないでしょうか? 最近はUnityはC#のIL2CPPビルドでパフォーマンスも改善されていますし、そこまでC/C++を触るケースが多くないのかネットにあまり情報も多くはない印象ですが、知らないとデバッグ自体しづらいことも多いです。 自分が雰囲気でコードを書いていたらすぐにUnityをクラッシュさせてしまったので、そのデバッグ過程で得られた理解を整
こんにちは、株式会社Synamonのエンジニアの岡村(@Sokuhatiku)です。 前回、任意のフォルダにPackage.jsonを定義することで、ローカルパス参照でUnityPackageManagerに載せることが出来る方法を書きました。 ただし、その方法はローカルのファイルパスを直接指定してパッケージとして扱うというもので、バージョン管理やチーム内での共有のしやすさに難がありました。 今回、その部分の解決策を見つけました。それと近いタイミングで、@kohki_nakajiさんに前回の記事を紹介して頂けて、さらに、今回の記事にも興味があると言って頂けたため、手順を纏めてみました。 記事ちょっと興味あります👀 https://t.co/ZjLbYNPL9M— Nakaji Kohki (@kohki_nakaji) 2018年8月14日 おことわり ※今回はUnityとnpmの狭間に
Unity2018で、パッケージマネージャという仕組みが新しく搭載されました。後々、AssetStoreで販売されているアセットが全てパッケージマネージャに対応するという展望がUnite2018にて語られています。詳しい仕様を調べてみた所、カスタムパッケージの読み込みが可能であるようなので、新規プロジェクトを作成してパッケージ化し、やり方をまとめてみました。 Package Managerとは? 今まで、外製のAssetをプロジェクトに取り込む際は、.unitypackage形式のパッケージファイルをプロジェクトにドラッグ&ドロップする方法が一般的でした。Assetをファイルとして扱え、展開が自動で行われる為、共有の利便性が高いのが特徴です。 一方で、バージョン管理の難しさや、AssetStoreから入手したAssetがProjectビューを散らかし、どれがどのパッケージのファイルなのか分
こんにちは、フロントエンドエンジニアの堀江(@nandemo_3_)です。 2023年6月22、23日にAWS Dev Day 2023が開催されましたが、 「モダンフロントエンド デザインパターン〜優れたUXを実現するには〜」というフロントエンドの最新動向に関するセッションがありました。 speakerdeck.com そこで、Serverless Next.jsとそれをAWSで実現するインフラストラクチャーが紹介されており、 今回は、それを具体的に実現する方法をまとめました。 はじめに まず、今回Serverless Next.jsを実現するために、AWS Lambda Web Adapterを使います。 Lambdaは、主にAPIなどのサーバサイド処理をサーバレスで実現するために使われますが、 AWS Lambda Web Adapterを用いることで、Lambda関数をWebアプリ
はじめに こんにちは Synamonでエンジニアをしている庭山です。 Unityでの開発では主に.NET(ドットネット)という環境下、C#というプログラミング言語を使用しています。 また、次世代の .NET 6 というバージョンが近く正式リリース予定(2021年11月)となっています。 そんな .NET ですが、色々とWebを検索や記事を読んでいると .NET .NET Framework .NET Core .NET 5 .NET Standard .NET ●●●という色々な種類があったり Mono Xamarin .NET という単語すら含んでいなかったりで、初見だと正直「わからん...」な状況になりませんか? 私も実務でUnityを触リ始めるタイミングで本格的に C#を触り始めて、あまり気にしていなかったのですが、改めて調べ整理してみました。 TL;DR .NET ●●● はランタ
技術選定、してますか? こんにちは!エンジニアリングマネージャーの佐藤(@unsoluble_sugar)です! 今回は開発関連のライブラリやアセットを導入する際に、個人的に見ている技術選定過程のポイントについて書き残してみることにしました。 エンジニアであれば様々な場面で技術選定の判断を求められるかと思います。フロントエンドやサーバサイド、ネットワーク・インフラ構築、CI/CDといった開発領域。OS、言語、フレームワーク、開発ツール、SaaS、プラットフォームetc... 挙げだすとキリがないですよね。 個人開発等でユーザーの母数が小さかったり、運用期間が短く影響範囲が軽微な場合はそれほど気にしなくて良いかもしれません。一方で、企業としてシステム・アプリ開発をする上では、開発して終わりではなく中長期での運用保守が前提となりますので、サービス継続のための様々な点に注意しなければなりません。
こんにちは、エンジニアの渡辺(@mochi_neko_7)です。 先日Unity 2022 LTSがリリースされたので触っていたのですが、ふとPackageをチェックしていたところ、 Unity公式のLoggingパッケージが存在することに初めて気が付きました。 しかもドキュメントやAPIを見てみる感じでは「こういうのが欲しかった」という印象で期待が持てそうでした。 自分でも少し触ってみたので、本記事ではこのUnity公式のLoggingパッケージを簡単に紹介します。 環境 Unity公式のLoggingパッケージ 導入方法 使用方法 まとめ 他のLoggingライブラリ おわりに ※2023/07/03追記 環境 Unity 2022.3.0f1 Unity Logging 1.0.11 Unity公式のLoggingパッケージ いつの間にかUnity公式からLoggingのパッケージが
こんにちは、エンジニアリングマネージャーの渡辺(@mochi_neko_7)です。 唐突ですが、自分は「WebAssembly(Wasm)」という技術はほとんどよく知らずに「Webブラウザ上でJavaScript以外のコードが高パフォーマンスで動かせる」くらいのものだと勝手に想像していて、UnityやC#でアプリケーションの開発をしている自分とは関わりが薄いだろうと思っていました。 ところが、たまたま別の調べ物をしていた際に次の記事を見つけ、Unityのアプリケーション上でWasmのコードを動かすことができることに衝撃を受けました。 zenn.dev 特に驚いたポイントは下記でした。 Wasmがブラウザだけではなくアプリの上でも動作すること Wasmの作成は様々な言語で可能なこと WasmのバイナリはOSやCPUアーキテクチャ別に用意する必要がないこと*1 通常のソフトウェア開発ではこれら
こんにちは、エンジニアリングマネージャーの渡辺(@mochi_neko_7)です。 現在Synamonが開発しているサービスのSYNMNでは、2DUI(uGUI)のScrollerの実装にはUnity標準のScrollRectではなく、有料アセットのEnhanced Scrollerを使用しています。*1 Scrollerはサーバーから可変長の要素を取得して表示する際など割と高頻度で使うUIです。 Enhanced Scrollerは便利なアセットなのですが、意外と日本語の記事などが少ない印象です。 ちょうど最近自分がEnhanced Scrollerを色々触っていたので、意識すべき設計の一例としてMVPパターン、UniRxを組み合わせた高機能なScrollerの快適な実装例を紹介します。 こんな方におすすめの記事となります。 高機能なScrollerのアセットの導入を検討している方 En
エンジニアの小松(@vtuber_watch)です。Synamon Advent Calendar 2021の21日目です。 UnityのAddressable Asset Systemの入門記事になります。Addressablesの紹介記事は多くありますが情報が古かったり必要な説明が抜けていたりするので最新のバージョンにおける情報をまとめています。 この記事では基本的な使い方を紹介します。アセットバンドルをビルドしてローカルからロードするまでをやります。これだけでもAddressablesの恩恵を受けられます。記事が長くなりすぎたのでアセットバンドルをサーバに配置する使い方は別記事に分割します。 目次 この記事はUnity 2021.2.6f1、Addressables 1.19.14における説明になります。 目次 Addressable Asset Systemとは メリット1. メモ
皆さん、あけましておめでとうございます! エンジニアの岡村です。 今年もSynamon's Engineer blogでは皆様の開発の参考になることを願って情報を発信していきます! GitHub Actions GITHUB_STEP_SUMMARYに、後から確認出来るようにワークフローのパラメータを書き出しておく ツールを動かすときはProblem Matchersを設定して、エラーの詳細をSummaryに出力するようにする workflow_callでトリガーと処理を分割する サンプル トリガー用ワークフロー 処理用ワークフロー 以上 GitHub Actions 弊社ではマルチプラットフォーム向けのアプリをビルドすることが多いため、CIは重要です。以前はJenkinsを使っていましたが、SYNMNの開発にあたりGitHub Actionsへの移行を行いました。 開発もある程度軌道に乗
Synamon採用担当の熊谷(@spirea_xxx)です! なんと、弊社のテックブログが週1回・連続1年更新を達成しました~!!! 弊社のテックブログ記事や1年更新のことををSNSで皆さんに紹介する中で「テックブログの週1回更新を1年間続けるって、相当すごいんじゃないか?」と思い立ち、せっかくなのでテックブログにてその運用の仕組みやコツを極力シンプルな形(3ステップ!)にして、公開することとしました。 弊社エンジニアへのヒアリング&校閲を経ての公開ですので、人事が理想論交じりに好き勝手書いた記事ではないことを最初に申し添えておきます。人事が代筆した、弊社エンジニアの汗と涙の結晶です。 どこまで汎用性がある仕組みかはわかりませんが、この記事が技術広報に前向きな皆さんの手助けとなることを願います。 STEP1 : 全体ヒアリング テックブログ更新が定着する前のSynamon(2018~202
はじめに エンジニアの松原です。運よくQuestProの発売日の直後(10/26)に届き、Quest2で積みっぱなしになっていた釣りゲームを週末やっていました。 ふと、最近Unity上でHMDを使った開発をしていないことに気づき、この機会にQuest Proの新機能に触れる目的で、久しぶりにOculus Integrationを利用しました。Unityの空のプロジェクトファイルから、視線追従機能を利用するまでの手続きを記事にしてみました。 今回利用した環境(+パッケージ)は以下の通りです。 Unity 2022.1.21f1 XR Plugin Management 4.2.1 Oculus XR Plugin 3.2.1 Oculus Integration 46 Windows Platformで実行 Quest Proを開発者モードにする 今回は直接UnityEditor上で動作して
はじめに こんにちは。 株式会社Synamonでエンジニアをしております、渡辺(@mochi_neko_7)と申します。 本記事のテーマは、UnityのEditor拡張のひとつである、「Reorderable List」になります。 通常の配列やリストのUnityEditor上でのGUIは、以下のように要素の順番が固定されています。 一方でReorderableListでは、GUIでリストの要素の順番を自由に入れ替えられるのが大きな特徴です。 Unityには以前からある機能で、とても便利なものなのですが、あまり知られていないのではないでしょうか? 本記事では、 ReorderableList Editor拡張による開発環境の向上 を知ってもらうことを目的としています。 概要は以下のとおりです。 ReorderableListとは Simple Reorderable List Editor
はじめに こんにちは、エンジニアのクロ(@kro96_xr)です。普段は主にサーバサイドエンジニアを担当しています。 今回は、Building Blocksという機能を使ってサクッとMetaQuest3上で動くMRアプリを開発してみたいと思います。 日本語に翻訳すると「積み木」ですが、積み木を積んでいくような感じで機能が実装できます。 開発開始 それでは開発していきましょう! なお、Unityのインストールは済んでいる前提で、今回はUnity2022.3.10f1を使用していきます。 Questを開発者モードにする まず、初期設定では自作アプリをQuest上で動かすことが出来ないため、Questの開発者モードをONにする必要があります。 スマホのMeta Questアプリからデバイスを選択して、ヘッドセットの設定>開発者モードの進むとONにできます。 プロジェクトの作成、設定 続いてプロジ
はじめに こんにちは、フロントエンドエンジニアの堀江(@nandemo_3_)です。 最近、Figmaに生成AIプラグインが多くあることを知り、デザイン制作からサイト公開まで生成AIにやらせることができるのでは?と思い、 さらに、ノーコードでWebサイトが制作できるSTUDIOというサービスがあるのですが、 これもFigmaからSTUDIOに移行が行えるプラグインがあるということで、 生成AIで作成したデザインをSTUDIOに乗せ替え、公開までしてみようと思います。 使用したプラグイン Builder.io www.builder.io Magician magician.design AI image generator www.freepik.com Figma To STUDIO studio.design デザイン作成 Figmaのデザインを生成するAIはいくつかあります。(ワイヤ
続かないテックブログ エンジニアリングマネージャーの佐藤(@unsoluble_sugar)です! 「テックブログ(技術ブログ)は続かない」という話は、エンジニア界隈で定期的に話題になりますよね(唐突 なんとなく技術広報面で有益である認識はあるものの「運用がうまく回らない」という企業は多いのではないでしょうか。 6年半のテックブログ運用を振り返って気づいたメリットと長く続けるコツ - ZOZO TECH BLOG 2020年エンジニア採用活動ふりかえり-採用広報編 - Tbpgr Blog テックブログは続かない - 何サイトか潰した後にブログが有名な企業に転職しての気づきと反省|久松剛/IT百物語の蒐集家|note テックブログを続ける試行錯誤―5年目の平日毎日更新テックブログ運営者の視点から|TechRacho by BPS株式会社 CTOがテックブログなんとかしてって言って一ヶ月が過
概要 EditorWindowのUI Elementsのセットアップ UI Elements一連ファイルについて スクリプト(cs) UI Document(uxml) スタイルシート(uss) 各種Component ToolbarMenu ToolbarToggle ScrollView Foldout Dropdown RadioButtonGroup Progress bar レイアウトについて少し GroupBox 最後に 概要 UnityでEditor WindowをUI Elementsで試してみました。 従来のIMGUIだとUIの配置などもスクリプトでやっていると地味に時間が取られてしまうものでした。 EditorのUIはある程度楽に実装したいですよね。 EditorWindowのUI Elementsのセットアップ EditorWindowの場合、一式をメニューから生成し
はじめに エンジニアの松原です。先日社内でVarjo XR-3が導入され、今後はハイエンドなXRコンテンツが作っていけそうです。最近はAR/MR関連も業界で活発化しているのを見かけており、さらに楽しみが増えました。 それに関連して、先日Oculus Integration SDKがアップグレードされたのですが、ついに実験的機能としてパススルーモードが追加されました! 早速試してみたのですが、ビルドの際に気を付ける箇所があったので、備忘録的に記事としてまとめました。 Oculus Integration v31について 2021/08/12にリリースされたOculus Integration SDK v31には大きな変更がありました。 Passthrough APIが実験的機能に追加された (Quest/Quest2のOSに)Vulkan検証レイヤが利用できるようになり、今後のアプリケーショ
はじめに エンジニアの松原です。最近社内ではXRのハイスペックデバイスを使ったビジネス展開について営業や開発活動が活発になっております。以前に紹介された記事のように、Varjo XR-3には様々な可能性があり、社内では日々様々なエンジニアがこのデバイスに新たなユースケースの開拓にチャレンジしています。 Varjo XR-3以外にも、様々なデバイスを用いたビジネス検討は毎週のようにディスカッションされており、VRのみならず、AR/MR方面での技術検証やビジネス活用についての取り組みも活発化しています。 さて、これらのデバイスを用いてアプリケーションを作る際には、デバイスを動作させるためのソフトウェアライブラリであったり、サポートアプリケーション(SteamVRやOculus、上記のVarjo XR-3では別途Varjo Baseなどのアプリ)などが必要です。 ソフトウェアライブラリについては
はじめに エンジニアの松原です。今年6月にHTTP/3がRFC 9114として標準化されましたが、主要なWebフレームワークで対応するのはまだ時間がかかりそうなイメージがあります。 この背景にHTTP/3ではQUICという新しいプロトコルを利用すること、HTTP/3で通信するためにはTLSのバージョン1.3が必要など、大幅な変更を取り込む必要があるため、実開発にHTTP/3を用いるにはもう少し先になりそうです。 今回の記事ではとりあえずHTTP/3を触ってみるということを優先して、quic-goを利用してHTTP/3が試せるGoのサーバーを構築してみました。今回はGoでサーバーとクライアントのアプリケーションを簡易的に作って試してみます。 github.com 以下の記事では、go version 1.18 以降が入っていることを前提に書いています。 簡易HTTP/3サーバーを作る まずは
この記事はSynamon Advent Calendar 2021の7日目の記事になります。 構成と注意点 準備 Unityのインストール プロジェクトの新規作成 Nreal Light用のSDK(NRSDK)のインポート Nreal Light用のカメラとコントローラーの配置 Nreal Light用のapkファイルを作成(ビルド) Android端末へのインストール 実機での確認 おまけ.1 実行時の動画キャプチャ機能追加 おまけ.2 コントローラーをハンドトラッキングに変更 参考にさせて頂いたサイト様 Nreal Lightは個人が使用できる数少ないARグラスで、非常に扱いやすくSynamonでも日々モック作りなどに活用しています。 そんなNrealLightについて他社様と勉強会を行った際に「開発について話をして欲しい」とオーダーを受けたものの参加者全体のスキルセットが分からなく、
こんにちは、エンジニアの渡辺(@mochi_neko_7)です。 今回は Rust における Stream の基本的な取り回しを紹介します。 Anthropic の Claude API の Rust Client を書いていた際に Streaming API の対応をしていたところ、自身が Rust の Stream をちゃんと理解していなかったことに気づき勉強し直していました。 ところが日本語で解説している記事をあまり見かけなかったため、本記事で自分の理解している範囲で基礎的な内容を整理して紹介したいと思います。 もし間違った記述等ありましたらご指摘いただけますと幸いです。 環境 Rust の Stream 1. 非同期版 Iterator としての Stream 2. Poll の扱い Stream の周辺 crate 1. futures_core 2. async_stream
次のページ
このページを最初にブックマークしてみませんか?
『synamon.hatenablog.com』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く