“Ability proceeds from a fusion of skills, knowledge, understanding and imagination, consolidated by experience.”
MICHAEL KLARKE
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce ornare porttitor ipsum a mollis. Pellentesque sagittis enim ac libero luctus, at vulputate ante lobortis. Praesent lacinia, leo sit amet congue malesuada.
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor ins.
RECENT ARTCLES
lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua ets unsers.
Unityでのシーン間のデータの受け渡し方法6選
Unityで複数のシーン間でデータの受け渡しをする方法を調べました。 staticな変数に保持しておく シングルトンを利用 (非推奨)DontDestroyOnLoadを利用 マルチシーンを利用 ScriptableObjectを利用 ストレージに値を保存 おすすめ書籍 staticな変数に保持しておく staticな変数に保存するのが、一番単純な方法です。シーンを跨いでも消えることはなく利用できます。例 public static int count = 0; シングルトンを利用 staticな領域に値を保存する発展系として、シングルトンパターンを適用したクラスにデータを保存しておく方法もあります。シングルトンとは、全体を通してインスタンスが一つになる性質がある物のことをさします。シングルトンパターンの例 using System; public sealed class ExClass { private static ExClass c = new ExClass(); private ExClass() // [...]
【コードが織りなす複雑系な世界】UnityのコーディングとWebのコーディングの違い
こんにちは、のすけです。Unity(ユニティ)デビューして2ヶ月くらい。作った物は2つくらいですが。 だんだんWebのコーディングとUnityコーディング(ゲームコーディング)の違いが分かってきたのでメモ Unityとは? HTML的なコードはない! そこに表示されているのは全部GameObject!! メッシュという三角形の集合体 マテリアルはCSSっぽい コーディングは生態系?? UnityでもWebで出力できる Webでできる、その他もろもろはできるのかな? ゲームエンジンなのでPS4でも実行できるらしい 終わりに: ゲームエンジンってつまり現実世界の物理シミュレーションってことは・・・ Unityとは? 誰でも作れるゲーム!とゲームの民主化をはかった最強のゲーム制作ツール。それがUnity。(主観入ってます)youtu.be HTML的なコードはない! Unityは全て、GUI(グラフィカルユーザインタフェース)で作っていく。 ゆえに、使うのはキーボードというよりかは[マウス]や[トラックパッド]。なので、全体の構成を記述するHTML的な物はなく [Sceneビュー]と呼ばれる3D空間ないしは2D空間上に配置される。 だから、このキャラクターも、Sceneビュー上にマウスで配置した。ただ、x,y,zの絶対座標はあるので、キーボード入力で位置を微調整できる。 HTMLを積み上げ的に書くのではなくposition:absoluteを使いまくって実装していた人はUnityでも近い感覚で作ることができる。(relative的な相対座標はおそらく無いっぽい) そこに表示されているのは全部GameObject!! [Sceneビュー]上に表示されている物は全て[GameObject]という型で定義されている。 Webでいうならば全てDivみたいな感じだ。(DOMと言ってもいいかもしれない)だから、、、キャラクターもGameObject四角い箱もGameObject地面もGameObject光源(太陽的な)もGameObject さらには、我々が見ている、この世界を覗き込む[カメラ]ですらGameObject GameObjectには[座標と大きさ]などだけがある。 そこに様々な機能をAddComponet(コンポーネントを追加)していくことで、あらゆるものに変身できる この箱は、ただのGameObjectに[箱型のメッシュ]と[箱型のメッシュレンダラー]、そして[箱型のマテリアル]の3つを付与することで表現できる。 コンポーネントを切り替えることで、箱にも球体にも、ボタンにも、光にもなれる。 メッシュという三角形の集合体 あらゆるGameObjectにはメッシュやマテリアルを設定できる。 メッシュとは言わば装飾だ。メッシュがあるから、僕らはそこに物があると認識できる。 厳密にいうとメッシュとは三角形(ポリゴン)の集合体だ。 例えば、この箱は六面体だが、1つの面に対して2つの三角形(ポリゴン)を使っている。だから、三角形の数(ポリゴン数)は面の2倍なので12個だ。 マテリアルはCSSっぽい [...]
UnityのVisual Studio Codeセッティングメモ
こんにちは、のすけです。 Unityねたです。 前置き 必須設定 おすすめ設定 最後にOmniSharpe設定 終わりに 前置き 今まで、nuxt.jsにtyrano scriptを入れてハイブリッドwebシナリオゲーム開発なんかやっていました。 ↓↓↓ 2039アナ民キャンパス が、そろそろwebの表現力に限界を感じており、スマホアプリへ全てシフトするべく、勉強をはじめている今日この頃です。 Three.jsやbabylon.jsなんかも触り、webでもいろいろ出来て良いのですが、やはり「ゲームの民主化」を図ったUnityは素晴らしくもうその恩恵に授かろうといういう気持ちです。 次はなんだかんだUnityは避けてきたんですが、もう避けきれなくなってきたので、潔くドップリつかります。 巷では、ゲーム以外のアプリ開発の事例はあんまり出てこないUnityですが、もう切り開いていくしかないですね。 取り急ぎ、Firebase接続してwebっぽく使えるように整備中です。ただ、なにぶんゲーム開発が素人なもので、フォルダ構成やら構造造りから手探り状態です。 長くなってしまいましたが、今回のメモはUnityでのコーディングの味方Vsual Studio Codeのセッティングメモです!! 必須設定 素のままいじっていて、全然インテリセンス効かなくて辛いな〜と思っていたので調べました。 まず、Unity側の設定としてVisual Studio Code Editorというのをインストールされている必要があるようです上のバーの[Asset]-[Package Manager]にあります 次に上のバーの[Unity]か[File]あたりにある[Preferences]を開いてExternalToolsのExternal Script Editorの設定をVisual Studio Codeにしますこれで、UnityからC#プログラムを開いた時のエディターがVSCodeになります。 続いてインテリセンスを効かせるためには2つツールをPCにインストールします Monoインストール https://www.mono-project.com/download/stable/ [...]
Nuxt.js をPM2でデーモン化しながら起動する方法 最新版
Nuxt.js2系にリプレースして、PM2での起動方法が変わったため紹介しておきます。 PM2のインストール $ npm install pm2 -g 次にecosystem.config.jsに以下のように記述 module.exports = { apps: [ { name: 'NuxtAppName', exec_mode: 'cluster', instances: 'max', // Or a number of instances script: './node_modules/nuxt/bin/nuxt.js', args: 'start' } ] } ここのscriptを呼び出す部分がキモですね script: [...]
Nuxt.jsで大規模なサイトをSPAで作って大丈夫?→やめた方がいいと思う
こんにちは、のすけです。Nuxt.jsチップスのお時間です。 Nuxt.jsはSPA・Universalモード(SSR&SPA)を選択できるのだけど SPA(Single Page Application) シングルページアプリケーション全てのページ1つのHTML上に展開し、ページ遷移はクライアントサイドのJSでガシガシ書き換えることで夢のような高速なサイト作成ができる!! SSR(Server Side Rendering) サーバーサイドレンダリング( Universalモード)Nuxt.jsはSSRとか行っておきながら、どちらもいいとこ取りする(どっちも実装しなくてはいけなくて辛い!?)Universalモードというのがあります。 HTMLをサーバーサイドでレンダリングするので、SEOに強いと言われている(詳細は不明。もはやGoogleが追いついている気もするので気にする必要もないかも) 従来のサーバーサイドコーディング&Vueを合わせた実装になり、かなり面倒。 サーバーサイドでHTMLをレンダリングするので貧弱なWebサーバーや回線だとSPAほどの速度は出ないが Nuxt-linkを踏む場合のみ高速で画面遷移できる。 問い 「Nuxt.jsで大規模なサイトをSPAで作って大丈夫?」 最初よく分からなくて、まぁSPAでいいしょ!と思って作っていたのですが、、、SPAで1年間運用し、その間に機能拡張をしまくって盛り盛りになったプロジェクトはどうなったのでしょうか?? 結論:やめた方がいいよ 規模が大きくなるにつれ、初期訪問者のjsコードのロード時間が長くなり「なかなかページが表示されない!」という結果になりました。 そこで、Universalモードに切り替えたわけですが全てのページをSSR対応に書き換える必要があり、大変に面倒でした。特にクライアントサイドで動くコードとサーバーサイドで動くコードは違うので、それに頭を悩ませました。 なので、プロジェクトが一定以上大きくなるページ数が30ページ越えるくらい??の場合には潔く Universalアプリケーションを選択してSSRした方が良いです。 SSR時の注意点 SSRモードの挙動はかなり複雑です。 Nuxt.jsのSSR/CSR処理について - 株式会社Japonline こちらの記事が参考になったのですが、クライアントサイドレンダリング(CSR)とサーバーサイドレンダリング(SSR)のライフサイクルが 「初回アクセス、リロード時」・・・URLを直接叩いたりaタグで遷移した際 「内部アクセス時」・・・nuxt-linkやrouterで遷移した際 で違う!!というとても複雑な動きをするので、どちらにも対応したコーディングが求められたりします。 ここんところを熟読しつつ、行ける!と思った方はNuxt.js適性があると思います。
Nuxt.js環境でGSAPプラグインを登録する方法
Nuxt.jsにてGSAPのプラグインを使おうとする場合Docs - GreenSock このページの通りにやってもUnexpected token {とか色々出て動きません。 色々調べた結果、このようにgsap/dist/のパス指定してあげると動きます! import { gsap } from "gsap"; import { MotionPathPlugin } from "gsap/dist/MotionPathPlugin"; gsap.registerPlugin(MotionPathPlugin);参考: Problem with Razzle and GSAP - GSAP - GreenSock