タグ

ブックマーク / qiita.com/divideby_zero (5)

  • Unity2Dのスプライトの描画順をLINQで正規化する - Qiita

    必要性 今カードゲームっぽいものを作っているのですが、Unity2DのSpriteは描画順をレイヤー(Sorting Layer)で管理しつつ、同じレイヤー内ではOrder in Layerの小さい順に描画するのは御存知の通り。 で、カードゲームや、Windowsのウインドウのように、選択したものを一番上に持ってくる操作(レイズ操作)をするにはどうするか。 それは簡単で、Order in Layerの値に1万とか2万とか足しちゃえばとりあえず、一番上に来るはず(よっぽど多かったり、変な数値入れてない限り) ちなみにInspectorだとOrder in Layerですが、スクリプト上ではRendererのメンバのsortingOrderです。 コードにするとこんな感じ(もちろん、SpriteRendererは最初に取っておいた方がいいけれど) public void Raise(int n

    Unity2Dのスプライトの描画順をLINQで正規化する - Qiita
  • UnityでMeshの頂点をムニャムニャする - Qiita

    起 某Unity1weekの題材の夏っぽいゲームを作ろうと思って、ノープランで波の表現とかを調べつつ実装したんですが、結局夏っぽいゲーム作成は断念しました。でももったいないのでここに記します。。。 波の計算方法とかはさておき ともかくMeshの頂点を自由自在に動かしたい。 基として、Meshを描画するのはMeshRenderer Meshを保持しているのはMeshFilter このMeshは自分で作ることができます。 Unityで物理演算ゲームの作り方 でもちょっと書きましたが、Meshを生成するのってそんなに難しくないです。 MeshRendererとMeshFilterがあるGameObjectを作って MyMeshクラスをアタッチして、meshFilterをinspectorでセットしておきます。 MyMeshクラスは以下な感じ。 using System.Collections.

    UnityでMeshの頂点をムニャムニャする - Qiita
  • Unity2017で始めるTask(async~await) - Qiita

    C#6.0時代のUnity の続きとして、書く書く詐欺だったUnityでのTask(async~await)についてになります。 (さすがにUnity2017.1が正式リリース されたので・・。) なお、UnityでTaskを使うにあたっての事前準備はそちら を先に見てください Task まず、前提知識としてTaskってなんぞや? という事なんですが、まんま和訳した「仕事」ってのがしっくりくると思います。 やってほしい仕事=タスク。 スレッドと混同されがちですが、スレッドは仕事をする側で、仕事そのものでは無いんじゃないかなーと(ざっくり) そして、Task(async,await)を扱うにあたって Task.Delay Task.Run SynchronizedContext TaskCompletionSource あたりを分かった気でいる必要があります。 しかし、先に言っておきたいんで

    Unity2017で始めるTask(async~await) - Qiita
  • C#6.0時代のUnity - Qiita

    はじめに Unity2017のベータが公開されましたね!(これを書いている4月13日現在 Unity 2017.1.0b1 https://unity3d.com/jp/unity/beta#downloads) なんといっても目玉は.NET 4.6が正式に対応! 覚えておいて損がないものは損が無いので覚えておきたいですし、今後.NET 4.6対応で書かれたソースコードもバンバン世に出てくるはずなので、使わないまでも読めるようになっておく必要はあるかと思います。 何ができるようになるのか、何に気を付けなくてはいけないのか。 ちょっと調べてみました。 下準備 .Net 4.6対応! とはいっても、まだ試験導入的な立ち位置なので、最初の設定では使えず、PlayerSettingsを変更する必要があります。 まず、Scripting Runtime Version おお。 .NET 4.6 Eq

    C#6.0時代のUnity - Qiita
  • Unity標準UIのInputFieldはScroll出来ないので対処法 - Qiita

    InputFieldの罠 Unity標準UIのInputFieldには微妙なバグ(仕様?)があります。 たとえば、こんな感じで 全画面InputFieldしか無い画面をScrollViewのContentに配置すると スクロールさせようとタップした途端にInputFieldにフォーカスがあたってしまい、スクロールがキャンセルされてしまうのです。 なのでこの画像の例だと、InputField(16)を選択するのがすごく大変になります(ScrollBarでスクロールさせるか、Editor/PCならマウスホイールでできなくもないですが・・・いけてない) なお、同じく標準UIのButtonなんかはスクロールも出来るし、タップも出来るんですよ。おかしくないですか。 あーあ。次のバージョンで修正されるといいなー。 と。そうも言ってられないので今できる事をしましょう。 前述の通りInputFieldはス

    Unity標準UIのInputFieldはScroll出来ないので対処法 - Qiita
  • 1