Unityでスクリプトを使って、ゲームを制作する第一歩として必ず知っておかねばならない”リファレンスの読み方”を簡単に説明します。残念ながらスクリプト言語のお話はしませんので、あしからず。 C#を知らない人へ C#を解説するのは本ページの趣旨から離れますので割愛します。が、やはりそれでは不親切なので、以下のスライドが非常によくできていますので、参考までにどうぞ。ただし、プログラミング経験者である必要があります。 生成されたスクリプトを理解する UnityのAssetにスクリプトファイルを生成すると、すでに雛型が用意されています。この雛型が何をしているのかがスクリプティングの第一歩です。以下が生成したスクリプトです。今回は「ExampleScript」というスクリプトファイルを生成した結果です。 using UnityEngine; using System.Collections; pub
はじめに 前回はUnityちゃんを単に表示しただけでした。 今回は、キー操作でUnityちゃんをモーション付きで動かしてみることにします。 Stepとしては以下のようになります。 床を置く Animatorを設定する 動きを制御するScriptを付ける 床を置く 今回は重力の設定とかはしないので、別に床が無くても良いんですが、雰囲気を出すために一応作っておきます。 メニューから GameObject -> Create Other -> Plane を選びます。 するとUnityちゃんの胴体を真っ二つにする位置に表示されるので、位置を変更しておきます。 position=(0,0,0) が良いでしょう。 こんな感じになります。 Animatorを設定する 次に、キャラクターとMotionを関連付けます。UnityちゃんのPackageには色々Motionが付属しているので簡単に使えるのです
Unity初心者の かなで がネットで調べて、実践できた知識の覚書。 基本的に自分用備忘録の為、説明不備はご了承くださいm(_ _)m 黒字:デフォルト 赤字:今回追加 青字:自己解釈(一般解釈とはかけ離れてる事に注意!) 目標:Vector3という型の変数aaaに代入する方法(aaa=0,0,0みたいなのはNG) using System.Collections; using System.Collections.Generic; using UnityEngine; public class sample : MonoBehaviour { Vector3 aaa; //aaaをVector3という型にしておく。 // Use this for initialization void Start () { } // Update is called once per frame voi
クリック(タップ)入力で何をどうするか良く迷うので覚書。OnMouseDown / OnMouseDrag / OnMouseUpCollider または GUIElementのマウスクリック/タップに反応するオブ... using UnityEngine; using System.Collections; public class ObjCtrl : MonoBehaviour { public GameObject obj; //回転用 Vector2 sPos; //タッチした座標 Quaternion sRot;//タッチしたときの回転 float wid,hei,diag; //スクリーンサイズ float tx,ty; //変数 //ピンチイン ピンチアウト用 float vMin = 0.5f , vMax = 2.0f; //倍率制限 float sDist = 0.0f
前置き クオータービューゲームってご存知ですか? 自分はあんまり最近のゲーム知らなくて、古い例しか出てきませんが、「A列車で行こう4」とか「SimCity 2000」のような、等角投影図風に描いたドット絵を配置したゲームのことです。見下ろし型とか、2.5Dとか、鳥瞰図なんて言われる場合もありますね(これらは必ずしもクオータービューだけを指す言葉じゃないですが)。英語だと isometric view と呼ぶようです。 3Dのような奥行きのある絵ですが、実体は二次元(Sprite)なので描画順(z-オーダー)で重なりを制御する必要があります。 唐突ですがここで問題。 上に挙げた緑、橙、紫のドット絵それぞれから3つの Sprite を作って、下の画像を作るにはどういう描画順で描画すればいいでしょうか? 答えは、「(※この問題の前提では)不可能」です。 それぞれの重なってる部分を見てください。橙
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? Unity臭さとは これ 非常にいい感じの画面ですね。こういう雰囲気の画面を見たとき、一目で「あーUnityだなー」と感じるような体験をしたことがある方は多いのではないでしょうか。今回はこの画面をどうにかしていきます。 数が多いうえに基本的なテクニックが多いので、この記事ではそれぞれの手段についてそこまで詳細に説明してません。キーワードをもとに適宜ググればいくらでも記事がヒットしますので、そっちに丸投げすることにします。 あらかじめことわっておきますが、別に「Unity臭い作品は悪」というわけではなく、私が「いい作品なのにUnity臭さ
こんにちは、Unityエンジニアのオオバです。 Unityアセットストアには2013年頃から存在するTouchScript。 手軽にタップやドラッグ、ピンチインアウトなどの特にモバイルデバイスではよく必要とされるが、実装するのは少し面倒くさい、これらの機能をお手軽に追加することが出来るヘルパーアセットです。 TouchScript | Input Management | Unity Asset Store オオバが最後に触ったのは2014年頃。 久々にTouchScriptを導入する機会があり、その際にハマったポイントがあったので共有しておきます。 👉DOTweenの教科書を読んでUnityアニメーションをプログラミングしてみよう! 実機ビルドでコケるヌルヌルとUnityエディタ上では気持ちよく動く状態まで実装しました。 ただ、ピンチインアウトなどは2本の指で実際に触ってみないと良さは
1、空のGameObjectを作成し、名前を「TouchManager」に変更(なんでもいいけど一応)
はじめに このチュートリアルでは、全方位シューティングのゲームを Unity で作る手順を紹介していきます ※ 2022/7/6 にこのチュートリアルを Unity 2022 に対応しました ※ 2020/12/6 にこのチュートリアルを Unity 2020 に対応しました このチュートリアルで作成するゲームの説明 プレイヤーは WASD キーや矢印キーで移動し、 マウスカーソルの方向に弾を自動で発射します 敵を倒すと宝石を落とし、宝石を拾うと経験値が増えます 経験値が増えるとレベルが上がり、プレイヤーは強くなります また、レベルが上がると自動でボムが発動し、周囲の敵を一掃します 敵にぶつかるとダメージを受け、HP が 0 になるとゲームオーバーです このチュートリアルの目標 このチュートリアルは、Unity や C# を学ぶことではなく、 Unity や C# の入門書を読み終えた U
現在カードゲームを開発しているので、 それを例に。 Text Mesh Proを使ってカード名を表示させたいが、カードの種類毎に表示内容が変わるので スクリプトでカード名の表示を管理しています。 using TMPro; public class Card : MonoBehaviour { [SerializeField] private TextMeshProUGUI cardNameText; void Start() { cardNameText.text = "表示させたい文字列"; } } ポイントまず始めに using TMPro; と記載。 TextMeshProUGUI型の変数を用意することで インスペクタからText Mesh Proのテキストを登録するができるようになります。 あとは思いのままに。 //文字を表示 cardNameText.text = "表示させたい
Photoshopには「グラデーションマップ」という機能が標準で用意されています。 一言で説明すると、画像の色を別の色に置き換えるというエフェクトをかけることができます。 今回はこのグラデーションマップをUnity上で再現してみたいな、という好奇心からグラデーションマップをUnity上で再現してみたのでそのご紹介。 環境 グラデーションテクスチャを用意して色を置き換えてみる STEP1. テクスチャの用意 STEP2. シェーダーを書く STEP3. 動かす グラデーションテクスチャを動的に作成する グラデーションマップを実現するスクリプト 動かす シェーダーについて 環境 Windows 10 Unity5.6.1f1 グラデーションテクスチャを用意して色を置き換えてみる 元画像の各ピクセルのRGB値をインデックスとして、グラデーション用のテクスチャをから色をとってくれば グラデーション
はじめに 現代では多くの人々がスマートフォンやタブレットを所持し、ゲームを楽しんでいることと思います。 モバイル向けのゲーム市場は大きく、世界では今も多くの開発者たちが iOS / Android 向けの商用ゲームを作っています。 さて、モバイルゲームの開発には、多くの開発者を悩ませるちょっと困った事情があります。 それは ディスプレイが非常に多くの多様性を持っている ことです。 正方形に近い形のタブレットもあれば細長い端末もあり、カメラがディスプレイの中に割り込んでいたり、 OS が専有する領域があったりと様々です。物理的な大きさもバラバラですね。 そのくせモバイル端末はタッチパネルで、ディスプレイに触れる UI になっているのです。 ゲーム開発を生業とする多くのエンジニア / アーティスト / ゲームデザイナーは、 これまでに何度も頭を抱えてきたことでしょう。 本稿では、2019 年現
画面写真をクリックするとサンプルのWebGLビルドに飛びます。 こんにちは。技術部平山です。 今日はシェーダでの精度指定について、地味なお話をいたします。 詳しいことに興味がなければ、 非常に簡潔にまとめられた記事 をLIGHT11さんが書いてらっしゃいますので、それを読めば足ります。 なお、この記事の結論を一言で言えば、「UVと位置にhalfを使うな」 です。 速度や電力も大事ですが、下手に攻めてバグる方が問題です。 サンプルのソースコードはgithubに置いてありますが、 今回に関してはサンプルを動かしていただけば十分かなと思います。 より詳細を知りたい方はご覧ください。 冒頭の写真について 冒頭の写真は、仮にシェーダでの浮動小数点数の精度が低かったらどんなことが起こるか? をシミュレートしたものです。 絵の左下がテクスチャ座標(UV)が(0,0)で、右上がだいたい(5,5)です。 右
Unityをこれから始めるデザイナーや逆に教える方はガワ替えからやってみるのがおすすめ...
はじめに 墨っぽい感じの竜巻エフェクトを作ってみました。 今回の記事では、このエフェクトをどうやって作ったのかを軽くをご紹介したいと思います。 墨の竜巻 STEP1. モデルの準備 (Houdini) 今回の竜巻エフェクトでは、以下のようなモデルを使用しました。 今回使用した竜巻モデル 今回のモデルはHoudiniを使って作成しています。 Houdiniで作成する竜巻モデル 以下のようなノード構成でモデルを作成しました。 円柱(Tube)をBendでひねっています。 ノード構成 STEP2 . シェーダーグラフ作成 今回の竜巻エフェクトでは、以下のようなシェーダーグラフを作成しました。 シェーダーグラフを作成 シェーダーパラメータ シェーダーパラメータ 頂点シェーダー(動きを作る部分) 周期や振幅が異なる2種類のサイン波を加算合成(Add)しています。 動きに複雑さを出すために2種類のサイ
uGUI Unity4.6から搭載されたuGUIの使い方を解説します。uGUIはUnity Editorに統合された非常にパワフルなUIシステムです。ボタンやテキスト、スライダーなど多くのUIが用意されておりそれらのUIを3Dオブジェクトと同様にシーンへの配置や、Sceneビュー上での操作、Inspectorビューでのプロパティの設定をすることができます。またAsset Storeで販売されている類似GUIシステムより高速です。従来のUIを使用している方は早めにuGUIに乗り換えることをお勧めします。 セクション まずはCanvasからはじめましょう Canvas 画面解像度とスケーリング UIの操作 イメージエレメント テキストの表示 ボタンとクリック時の処理
はじめに なんかShaderでエモい感じのできてBOOTHで配ったら興味ある人がいたので適当に解説します。 BOOTHはここからどうぞ→[Galaxy Shader - Voxel Gummi - BOOTH](https://voxelgummi.booth.pm/items/1397408) ぶっちゃけShurikenとか使えば良さそうな気がしますがテッセレーションの勉強がてら座標操作の練習がしたかったんでゴニョゴニョした次第です。 まずはコード全文をペタリ // Copyright (c) 2019 @Feyris77 // Released under the MIT license // https://opensource.org/licenses/mit-license.php Shader "Unlit/Galaxy Shader" { Properties { [IntR
リングが上昇する、パワーアップエフェクト風のものを作るシェーダーグラフです。 ノード全体 以下のようなノードを組みます。 Unlitノードは以下のように設定して、半透明かつ両面が描画されるようにします。 円柱に張り付ける(完成) 上記のシェーダーグラフを円柱に張り付けると、パワーアップエフェクト風の見た目になります。 おまけ : Blenderを使って底面・上面が無い円柱を作る 今回のパワーアップエフェクトは底面と上面がない円柱にシェーダーグラフを適用して作っています。 底面・上面がない円柱 今回はBlenderを使って底面・上面がない円柱を作る手順をメモ書き程度に紹介したいと思います OSはWindows 10を想定しています。 STEP1 : Blenderインストール Blender公式サイトからBlender2.8 をダウンロードしてインストールします。 blender.org -
はじめに 「UnityShaderCheatsheet」はシェーダのチートシートです チートシート(引用)
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く