AIプログラムとかUnityゲーム開発について

探索や学習などを活用したAI系ゲームを作りたいと思います。

2015-06-01から1ヶ月間の記事一覧

NPCの感情表現をコントロールするアセットがセール中

AI

Love/Hate キャラクター達の感情や人間関係、個性をシミュレーション - Unity AssetStoreまとめassetsale.hateblo.jp こちらで紹介されてましたが、こんなアセットあったんですね。 特定のキャラクターとコミュニケーションを行い感情パラメーターが変動。話…

Unityゲーム開発の本のプログラムを動かしてみる

kindle本50%オフの時に買った「Unityゲーム開発」の本を読んでいます。Amazon.co.jp: Unityゲーム開発 オンライン3Dアクションゲームの作り方: 竹内 大五郎, 石黒 赳彦, 高橋 誠史, 香川 寛和, 河本 健太郎: 本www.amazon.co.jp なお本持ってなくても、ソフ…

一番近い部屋に廊下をつなげる

ダンジョンですが、廊下をつなげる方法を、今までは、一つ前に作った部屋と2つ前に作った部屋につないでいましたが、領域分割の状況によっては、かなり離れた部屋に廊下をつなげてしまう場合があったので、以下のようにリストを調べて、一番近い部屋に廊下を…

プロシージャル技術

AI

2009年の連載ですが、すごい面白いテーマだったので読んでいます。 人工知性でコンテンツを生成するプロシージャル技術(1)3Dグラフィックス・マニアックス (77) 人工知性でコンテンツを生成するプロシージャル技術(1)news.mynavi.jpコンテンツを手動ではなく…

oneliner Rogue のソースを読む

こちらで紹介されていた一次元のローグのソースをダウンロードさせてもらったので、ソースを読んでおります。ターン制のローグ系RPG、One Liner Rogueソースコードが一部公開 - テラシュールブログtsubakit1.hateblo.jpこれまでゾンビと戦うゲームとかドルア…

export packageでtagとLayerは出力されない

前に作っていたクイズゲームが読み込むとFatalErrorになって読めなくなって困ったんですが 結局librayフォルダーを削除して読み込み直したら読めました。 どうも、Projectの中にProjectがあるような状態になっていた模様。同じproject内で、新しいゲームを作…

プレイヤーの周辺だけ明るくする

自動生成したダンジョン内を移動できるようにしましたが、 次は主人公周辺だけ明るくするやつをやってみました。 これは、いわゆるライトは使ってません。 SpriteRendererのcolorを距離で調整して実現しています。 予想以上に良い感じになって驚きました(ゝ…

ローグのダンジョンを自動生成する(3)

経路生成を見なおしたらだいぶマシになった。 一つ前の部屋と必ず繋がっていれば、必ずすべての部屋がつながっていることが保証されるはず。 つながってないなら、ツルハシで壊せば行けるので、隠し部屋ということで(ゝω・) void makeRoadH(int x1,int y1,…

ローグのダンジョンを自動生成する(2)

部屋を分割する時に、水平分割して失敗したら、垂直分割してみる を入れたら、部屋数が増えました。 (逆の垂直分割失敗で、水平分割やってみるも、やっている)前回生成した部屋情報だけ覚えておいて、新しく部屋作った時に 前回の部屋とを道でつなげるだけ…

ローグのダンジョンを自動生成する(1)

再帰的な領域分割での部屋生成まで あとは部屋と部屋を通路で結ぶ必要がある(ここがなかなか難しい) mapは100x100で、縦または横に分割しながら再帰呼び出しして 領域が狭くなったら部屋を作って、親に戻るって感じの動き。 public int[,] map; for(int y=…

ネクロダンサーっぽいのを作ってみる(4)

【Unity2D】Spriteを左右反転する方法 - Qiitaspriteって左右反転できないのかな?と思ってぐぐったら、 localScale.xをマイナスにすると左右反転するらしい。 ということで早速実装左右反転したSpriteを用意しようとかと思っていたので楽できましたwアルゴ…

ネクロダンサーっぽいのを作ってみる(3)

コイン取得したら、30coinsみたいなテキストが表示されて上に動く奴追加。 よくあるやつ。 ただ、Layerで手前を指定しないと表示されないのね(^^; なんかデフォルトの表示順って先に表示されたものが手前みたい?松明は石壁より手前に表示して欲しいので、 s…

ネクロダンサーっぽいのを作ってみる(2)

敵に対して攻撃できるようになりました。 攻撃するとコインに変わるので拾うとcoinが増えます。 ただ、作り方で問題が。Raycastしないで配列でやってるんですが、敵を攻撃とかコインを拾う場合、対象のGameObjectを特定する必要があります。 Raycast飛ばせな…

ネクロダンサーっぽいのを作ってみる(1)

ドルアーガの塔のスクリプトを改造して ネクロダンサーっぽいのを作ってみようと思います。 ドルアーガの塔のは2D RogueLikeみたいにRaycastで移動判定してましたが、ネクロダンサーは普通に配列で判定にしましたが、断然こっちが簡単! Layerとかも考えない…

敵が炎を放つ

敵を追加 グリーンスライム ブラックスライム ブルーナイト メイジ あとテストで炎を放つようにしました(壁に当たるまで移動します)。 ギルは、動いているスライムに当たると一発で死ぬんですが、 あくまでギルにむかってくる動きの場合の話で、 例えば、…

Spriteの色を置き換える

ブラックスライムの画像を用意するのが面倒なので(おい) グリーンスライムの色を書き換えて、ブラックスライムにしたいんですが、 float changeRed = 1.0f; float changeGreen = 0f; float cahngeBlue = 1.0f; float cahngeAlpha = 1.0f; gSlime.GetCompon…

SpriteでMapを動的に表示する(7)

フォントは2D RogueLike同梱のやつを使用(昔のアーケードゲームっぽい) フロア開始前に、Floor数字を表示 スライムを3匹倒すと宝箱出現 鍵をとって出口に行くと、次のフロアに行く シングルトンは使わずに、シーン永続 基本的なところはできました。あと…

2D系Asset購入

2D系セール中なので、Assetを一つ買ってみました(ゝω・)Isometric Tile Bundle https://www.assetstore.unity3d.com/jp/#!/content/27944半額なので$7.5入ってるのはSpriteだけで、Scriptは付いてきません。 なにかEditor系で並べることを想定しているのか…

SpriteでMapを動的に表示する(6)

鍵と出口と宝箱表示 プレイヤーとスライムは、BlockingLayerで、表示はUnits 鍵は、表示はItemsで、BlockingLayerはなし、2d RogueLike Tutorialだと、Player.csの中で、アイテムの当り判定してるけど、 同じように次のように判定する。 アイテムには、2Dcol…

SpriteでMapを動的に表示する(5)

スライムを増やして、プレイヤーも追加。 プレイヤーはカーソルキーで移動。 キーを押すと、24dot移動しますが、移動自体はコルーチンを使って、スムーズに移動。 コルーチンで移動中に、キー入力を見てると斜めに移動できるので、 コルーチンで移動中はキー…

SpriteでMapを動的に表示する(4)

グリーンスライムを表示してみました。3つの形態があるので、multipleにしてSpriteEditorでsliceして slice結果を複数選択して、sceneに貼り付けると自動的にアニメーションが作成されます。このへんを参考にしました。 【Unity開発】2Dアニメーションまと…

SpriteでMapを動的に表示する(3)

いちおう以下のサイトで紹介されてるアルゴリズムにそって壁を設置 せっき~のゲーム屋さん ドルアーガの塔 乱数の工夫の正体 まだなんかルール上おかしい配置があるので、バグがある感じですがSearchAndBuild()を呼んで、 壁の無い柱が無くなったら1を返す…

SpriteでMapを動的に表示する(2)

外壁を表示して、柱と柱の間に壁をランダムに配置 本当にランダムに配置しただけなので、迷路になってません(´・ω・`) こちらで紹介されているようなアルゴリズムで壁を作る必要があります せっき~のゲーム屋さん ドルアーガの塔 乱数の工夫の正体 大きさが違…

SpriteでMapを動的に表示する

ドルアーガの塔みたいなMAPを動的に表示しようと思ってやってみましたが、 意外にやってみるとよくわからない orz 基本的によくあるサンプルは手動で予めマップを配置している奴が多いので、 すべてスクリプトでやろうと思うとなかなかうまくいきませんでし…