2020-01-01から1年間の記事一覧
プレイヤオブジェクト - 視点(空オブジェクト) - カメラ の親子関係プレイヤオブジェクトにて、WASD で前進と左右移動と、マウスの左右移動でカメラの左右回転をする。 視点にて、マウスの上下移動でカメラの上下回転をする。 using UnityEngine; public c…
カメラを追従するようにする。 public class PlayerCubeController : MLAPI.NetworkedBehaviour { private Vector3 offsetPosition; private void Start() { if (IsOwner) { offsetPosition = transform.position - Camera.main.transform.position; } } pri…
なんとなくわかってきた。昨日のやつで配慮できてなかったところをやる。 全弾がアクティブだったときに、更にスペースキーを押すと null が返ってきてしまうので、if で囲う。 public class PlayerCubeController : MLAPI.NetworkedBehaviour { [MLAPI.Mess…
非推奨となった UNet のやつを参考に、オブジェクトプールをやってみる。docs.unity3d.com mlapi.network mlapi.network シーン内に SpawnManager オブジェクトを作ってスクリプトをアタッチ。 using System.Collections; using System.Collections.Generic;…
弾が出現したら、前方に直線上に進むようにする。Bullet スクリプトを作って Bullet にアタッチ。 using System.Collections; using System.Collections.Generic; using UnityEngine; public class Bullet : MonoBehaviour { private float speed = 500; voi…
スペースキーを押したら弾がでるようにしたい。Capsule をシーン内に入れて、Bullet という名前にする。 最初はネットワーク同期をやってみたいので、NetworkedObject をアタッチ。 適当にスケールを小さくして、Prefab にして、シーン内から削除。Networkin…
サーバの CPU 使用率がめちゃくちゃ上がっているので、全体の FPS を下げる。 シーン内に SceneManager を作って、Application.targetFrameRate を設定しておく。 using System.Collections; using System.Collections.Generic; using UnityEngine; public c…
Linux サーバ上で、サーバとして実行できるようにする。 前述のとおり、ホスト・サーバ・クライアントの 3 種類があり、ホスト=サーバ+クライアントである。 ローカルでの開発はホストとクライアントで OK だけど、実際に多人数で遊ぶためには、サーバがあ…
カメラがアレなので、上空から映すように位置をいい感じに移動する。プレイヤの Cube に PlayerCubeController のスクリプトを作ってアタッチしておく。 通常の MonoBehaviour クラスではなくて、MLAPI.NetworkedBehaviour を継承しておく。 NetworkedObject…
プレイヤとして Cube を置く。ついでにタグも Player にしておく。サーバ・クライアントで同期が必要なオブジェクト、つまりプレイヤとか、には「NetworkedObject」をアタッチ。 プレイヤは移動させたいから、「NetworkedTransform」もアタッチ。Project ウ…
続き。同じように「Start Client」と「Stop Client」のボタンを右上に設置。 同じようにスクリプトを作ってアタッチ。 using System.Collections; using System.Collections.Generic; using UnityEngine; public class StartClient : MonoBehaviour { public…
mlapi.network Unity でオンラインマルチプレーヤのやつのメモ。Releases · MidLevel/MLAPI · GitHub から「MLAPI.unitypackage」をダウンロードして Unity にインポート。空の GameObject の NetworkingManager を作って、「NetworkingManager」と「Unet Tr…
AWS Lambda を aws コマンドで実行したら、以下のエラーが出た。 $ aws lambda invoke --function-name myfunction:V1 --invocation-type RequestResponse --payload '{"foo":"あいうえお"}' /dev/stdout string argument should contain only ASCII charact…
2018年初めの方に買った HTC VIVE CE を VIVE Cosmos Elite に変えた。www.vive.comRift とか Index とか、新しい VR 機器が出るたびにいいなと思っていたけど、ちょうど最近出た VIVE Cosmos Elite が HMD (ヘッドマウントディスプレイ)だけ単品で売ると…