Material.SetTextureOffset()の引数の意味

投稿者: user28203 GetComponent<Renderer>().sharedMaterial.SetTextureOffset(“_MainTex”,offset); の引数の意味を公式リファレンスで調べたのですがその意味がわかりません。 第一引数のname: Property name, for example: “_MainTex”とはどのよう意味なのでしょうか?プロパティの名前例は_maxitexみたいなことが書いてありますがこれはどのような意味なのか知りたいです。 公式リファレンスページ: https://docs.unity3d.com/ja/current/ScriptReference/Material.SetTextureOffset.html public class BackGround : MonoBehaviour { public float speed = 0.1f; // Use this for initialization void Start () { } // Update is called once per frame void Update () { float y = Mathf.Repeat(Time.time * speed,1); Vector2 offset = new Vector2(0,y);…(Continue Reading)

Unity2D マジックナンバーのとある場所を変数に置き換えると値がバグる原因が知りたい

投稿者: user28203 Vector2 x = new Vector2(0.1f,0) 提示コード上部のこのコードなのですが0.1fを最上部に宣言しているspeed変数に置き換えて実行するとキーを押した瞬間座標がバグり動作しません、なぜなのでしょうか?また解決方法をおしえてくれますでしょうか? public class PlayerController : MonoBehaviour { public float speed = 0.1f; // Use this for initialization void Start () { } // Update is called once per frame void Update () { Vector2 x = new Vector2(0.1f,0); if(Input.GetKey(KeyCode.RightArrow)) { transform.Translate(Vector2.right * x); } if (Input.GetKey(KeyCode.LeftArrow)) { transform.Translate(Vector2.left…(Continue Reading)

UnityからAmazon S3にファイルをアップロードし、公開状態にする

投稿者: Anonymous マルチポスト UnityからAmazon S3にファイルをアップロードし、公開状態にする https://qiita.com/arumani/items/a0fd345dd224fb5d05db を参考に同じことをしようとしていますが,S3の処理で失敗します。 using System.IO; using System.Collections; using System.Collections.Generic; using UnityEngine; using Amazon; using Amazon.S3; using Amazon.S3.Model; using Amazon.CognitoIdentity; public class TestS3 : MonoBehaviour { // 以下AWSのテンプレ void Start () { UnityInitializer.AttachToGameObject(this.gameObject); AWSConfigs.HttpClient = AWSConfigs.HttpClientOption.UnityWebRequest; CognitoAWSCredentials credentials = new CognitoAWSCredentials ( “ID プールの ID”, // ID プールの ID RegionEndpoint.APNortheast1 // リージョン…(Continue Reading)

IEnumerator start()の正しい書き方

投稿者: user28203 IEnumeratorは非同期の書き方ですが UnityではStart()は初期化の時に使う関数なのでそれを非同期に関数の名前にしてしまうとStart()を使いたいときに使えなくなるのでほんとはよろしくない書き方だと思うのでIEnumerator e()という関数を作ってそれを非同期したのですがStartを非同期にするのとどう違うのでしょうか? public class Emitter : MonoBehaviour { public GameObject[] waves; private int currentWave; // Use this for initialization /* IEnumerator Start () { if(waves.Length == 0) { yield break; } while(true) { Debug.Log(“コルーチン”); GameObject wave = (GameObject)Instantiate(waves[currentWave], transform.position, Quaternion.identity); wave.transform.parent = transform; while(wave.transform.childCount != 0) { yield return new WaitForEndOfFrame(); } Destroy(wave);…(Continue Reading)

Uso de js y c# en unity. ¿Igual rendimiento?

publicado por: Anonymous Estoy comenzando con unity . Y veo que se pueden usar c# y js para programar. Mi pregunta es si tanto c# como js tendrian el mismo rendimiento. Y si js puede hacer todas las funciones que puede hacer c#. solución Unity utiliza UnityScript, un lenguaje con sintaxis similar a Javacript. Lamentablemente…(Continue Reading)

Visual Studio 2019 no autocompleta como editor para scripts c# de Unity

publicado por: Anonymous Estoy creando Scripts c# en Unity, y los edito con visual studio, que es el programa que se abre por defecto para actualizarlos. Pese a tener las dependencias correctamente, no autocompleta nada de codigo. Como se puede ver en la imagen, ni siquiera marca con colores como suele hacer visual studio normalmente.…(Continue Reading)

Unity2DでuGUI(Imageゲームオブジェクト)の幅をワールド座標で取得したい

投稿者: Anonymous Unity2DでuGUI(Imageゲームオブジェクト)の幅(Width)をワールド座標で取得したくて本ソースコードを書きましたが、 期待しない値が入っているため困っています。 期待した値: Canvas上のImageゲームオブジェクトの幅がワールド座標に変換された(0.9, 0.0, 0.0)くらいの値。 結果:Image のVector3(変数名:oneSquareForward)に(105.3, 0.0, 90.0)が入っていた。 私の行った手順は本ソースコードの通りです。 本ソースコード: ///<summary> ///プレーヤー1をスプライトの大きさぶん右へ表示 ///用途:プレーヤーの指に隠れてキャラクターが見えなくなることを防ぐために使う ///</summary> public static Vector3 oneSquareForward = new Vector3(2.5f, 0.0f, 0.0f); /// <summary> /// 機能:oneSquareForwardにワールド座標でPlayerGameObject()の幅を設定する。 /// /// 引数:なし /// /// 戻り値:なし /// /// 備考:参考サイト: /// ①【Unity】GameObjectの幅と高さを取得・変更する方法(RectTransform):https://techno-monkey.hateblo.jp/entry/2018/05/12/150845 /// ②RectTransformからワールド座標に変換する方法:http://alien-program.hatenablog.com/entry/2017/08/06/164258 /// </summary> private void Set_oneSquareForward() { // ワールド座標の幅を取得したいimageゲームオブジェクト(Player)を取得する GameObject player =…(Continue Reading)

C# クラス型配列変数の初期化について

投稿者: Anonymous はじめまして、一昨日からC#をやり始めました初心者です。 参考書で、クラス型配列変数の初期化について書かれていたのですが void Start() { Person[] parr = { new Person(), new Person() }; parr[0].firstname = “太郎”; parr[0].lastname = “山田”; Debug.Log (parr[0].GetFullName(“★”)); } となっており、2行目のnew Person ()を何故2つ書いているのかがわかりません。 Person[] parr = { new Person() }; でも同様の結果となったのでますます混乱しています。 わかる方がいらっしゃったらご教授頂きたいです、よろしくお願いします。 解決 配列初期化子は指定した値の数と同じ長さの配列を作成し、各値を先頭から順に設定していきます。 ですので値を1個しか書かなかった場合は2番目の要素parr[1]にアクセスすることができず、例外が発生します。またparr.Lengthも当然変化します。 なおparr[0]とparr[1]は同じnew Person()が指定されていますが、参照型では別のオブジェクトになります。 参考書でなぜ先頭しか使っていないのかはわかりません。配列の使用例としては不適切に思えます。 回答者: Anonymous