Advanced Search
Search Results
65 total results found
3Dモデルの仕組み(その2)
模様を付けましょう:UV座標 今までのモデルはすべて白い色で表示してきたが、実際にゲームで使うものは一定色ではない。前回作成した「MyCube」をベースにし、複雑な模様(テクスチャ)を付けてみましょう。具体的に、以下のようなサイコロを作ってみましょう この効果を再現するため、2次元の画像を3次元の立方体に貼らないといけないが、そのためなんとかして、「ペーパークラフト」のように3Dのオブジェクトを真っ平にし、2Dに展開しなければならない。 3Dモデルの場合、このプロセスは「UV展開」という。「U...
シェーダー
シェーダーはGPU(グラフィックスカード)で実行する特別なプログラムである。シェーダーを使うことにより、3Dモデルの「見せ方」(描画)などを自由に変えることができる。ただし、GPUで実行するプログラムは普通のCPUのプログラムと異なり、使い方を学ばないといけない。 GPUとCPUの違い CPUは「多目的のプロセッサー」で、タスクを切り替えるのは得意な要素である。例えば、Chromeでネットを調べ、見つけたソースコードをVisual Studioに貼り付けたい。プログラムを切り替えるときに、CPUは一旦Chromeを...
Shader Graph
プロジェクト設定 ShaderLabの自由度が高く、とてもパワフルなシェーダの作り方であるが、やや難しいところもある。複雑で高速なシェーダが必要なら、ShaderLabの方が良いと思われるが、単純なシェーダなら、Shader Graphの方が楽で、作るのも速くなる。 Shader Graphは言語ではなく、「ノード」というブロックを紐でつなげることにより、視覚的にシェーダを作成ができる。 まず、Shader Graphをインストールしましょう。Unityの Package Manger から Shader Gr...
スマホでのゲーム開発
今まで学んだUnityの知識を拡張し、スマホに関する特別な開発方法を新しく勉強しましょう。
ミニゲーム①:Egg Race!
スマホの傾きセンサーとタッチで3Dパズルゲームを作ってみましょう。
ミニゲーム②:ドラゴンレーダー
プロジェクト仕組みの理解
ゲームの目的 スマホを傾いて、卵を転げて、巣まで届かせましょう!ただ、強くぶつかると、卵が割れてしまうので、優しくね!生まれたひよこちゃんが邪魔するので、ドアをうまく使って、移動制限させましょう! ゲームシーン Scenesフォルダーの中にある「EggRace」を開いてください ヒエラルキーを見ると: Main Camera:ゲームのカメラで、上から真下見るようにしちます: Directional Light:光源 Black:見せたくないステージの一部を黒いバーで隠すためのオブジェクト Stage:ステ...
スマホ機能のまとめ
卵の操作
これからスクリプトを作成し、卵の動き処理を実装しましょう。 シーン設定 迷路の左上に Prefabs の中にある Egg を入れてください: キーボードによる卵の動き スマホで遊ぶ前に、まずUnityで動作を確認したいので、キーボードを使い、重力の向きを変えて、卵が転がるようにしましょう。 重力を変えるには2つの方法がある: プロジェクト設定で重力を変える 1回だけ重力を変え、後がずっと変わらないなら、プロジェクト設定で重力ベクトルを変えることができる。「Edit ⇒ Project Settings」を開き「...
Unityを使用するスマホの開発
Unityでのスマホ開発:何が異なる? No input Several screen sizes Low power / low CPU iOSの場合は Require mac Require dev credetials Require device credentials Androidスマホの設定、Unityとの接続 Enable Developer mode, enable USB debugging Connect, allow permissions Project settings, Android...
扉の操作
画面のタッチ機能を使い、指のスライドで、扉を動かしてみましょう。 タッチ機能 加速度センサーと同様に、タッチ機能を使う前には、機能の有効化をしないといけない。Unityでは: // タッチ機能を有効化 EnhancedTouchSupport.Enable(); その次に、タッチのイベントに登録しなければならない: // 画面を触れ始めたとき Touch.onFingerDown += 処理メソッド; // 指は移動中のとき Touch.onFingerMove += 処理メソッド; // 指が画面から放したと...