ニートが頑張るブログ

ニートが現実逃避するために創作活動など色々とカオスに頑張ってみる
ニートが頑張るブログ TOP  > 

Unity諦めなかった


unity諦めたといったな、あれは嘘だ。
ということで
これはすぐにでも言っとかないといかんなぁと思った報告です。


前々回、unityのビルドが上手くいかん、やる気が出ないとか、アホが抜かしてましたが、
なんと作業してるパスに日本語が含まれてた、とかいうド素人なミスをしてただけでした。

で、普通にWebGLのビルドが出来るようになりました。


で、unityへのアニマルメーカーの移植も、いくらか、山場を越えてきました。
基礎の基礎、のような部分はなんとかなってきてると思います。


ということで、plicyというサイトに投稿してみました。



ブラウザ上で触れます。


アニマルメーカーからの移植として、
今なんとかなったのが、

・2、3関節、逆関節までの対応、表示。 (関節の回転と長さ調整も)
Z注視、平行移動、
・しゃがみ、しゃがみ移動、
・しゃがみ短押しからのジャンプ


・・・くらいのことです。

(他にも、今は自分しかいじれないけど、「全身の大きさをリアルタイムに変えまくっても歩ける」、というのもやりました)


まぁ、まだまだ全然ですね。

アニマルメーカー全体が持っていた機能の数々から考えると、10分の一も進んでないかもしれません。

四肢切断、再接続、これらのことを考えるだけで頭が痛いし、
そもそも、頭、しっぽ、羽根、ヒレ、という、足以外の体のパーツの挙動についても考えなければいけない。



でも、基礎の基礎の部分、こうやってちゃんと歩けるようになっただけでも、わりと糞嬉しいのです!!


(前は、崖際から落下する、ということすらままならなかったのだ)

諦めかけてたところから、そこそこ動くようになるというのは、死ぬほど嬉しいのです


ここまで来るのも結構たいへんで、内部ではトンデモないことをしてるんだけど、まぁいいや。
 (特に関節の回転の仕組み)


で、これで色々もう試せますね。


でも課題が山盛りなのが分かります。


1つ、足音が変ですね。 これ、exeや自分の手元でテストしてるときはこんな変な音じゃないのに、
なんかWebGLだと凄いピチピチした短い音に聞こえます。 


しゃがみ


一応は、「Cボタンでしゃがみ移動」することで
「普段は頭がつっかえる場所」に入っていくことが出来る、とかのプレイも、既に出来つつあるけど、

ダッシュで突っ込むだけで、地形のなかにめり込むことが出来るし、

そもそも、しゃがみで入ったあとにしゃがみを解除すると、すっごいガクガクする、とかの問題もあります。


ジャンプにも問題あります。

てか、かなり誤魔化してます。 空中でジャンプできる時点で、現状色々誤魔化してるのがバレバレです。
まぁこれ自体はすぐ直せますが。


アニマルメーカーの一番の問題として、「ジャンプの挙動が安定しない」というのがありました。

キャラが同じ量、同じ距離をジャンプしてくれるかどうかがかなりバラつく、という問題があって、
これは謎解きメーカーからもずーっと解決してません。

今回も解決しそうにありません。


まぁそれにしたってね、自分のこの、「1ボタンで、しゃがみ、しゃがみ移動、ジャンプをまとめることが出来る操作感」を、
こっちに移植できたってだけで、滅茶苦茶嬉しいんですよね。


で、今一番酷い問題が、
壁、柱にむかって走り続けると、そのまま壁をよじ登れてしまうことですね。


これ、なぜこうなるかは、半分くらいは理解しています。
図で説明するといいんだろうけど、まぁメンドイからなし。

地形メーカーのときとやり方を変えたから発生した問題だともいえます。
(そのかわり、球の上だろうがなんだろうが自由に歩けるようになったんだけど)


解決方法も、半分くらいは思いついてます。

足から撃った、RAY(ビーム) は、 ぶつかったメッシュの法線(ノーマル)を調べることが出来る。 (凄い機能が使えるもんだ)

これで、「垂直の壁を蹴ったときは、上方にかかる反動に、バイアスをかける」
みたいなことをすれば解決しそうに思えるではないですか。


で、それやったんですよ。

でも、そしたら余計にひどくなって、余計に地面にめり込むようになりました。 わけが分からん!!

全く、こういうところが一番たいへんなんです。


一番酷くて雑な解決の仕方としては、「頭部が持っている衝突判定」を凄くデカくして、
足が壁をけろうとする以前に戻しちゃうみたいなのも考えられますけど。


まぁそんな感じで、

WebGLのビルドできるようになりましたよー、

ブラウザ上で試作品を公開することが出来るようになりましたよー、

触れますよー、

今こんな感じですよー


という事が報告できるようになりましたとさ。

[ 2017/07/12 09:50 ] 自作ゲーム開発 | TB(0) | CM(3)

もしも自分がゴジラをデザインするなら


今回も寝言。

前前前前回くらいで書いてたことは、自分でも引っかかってる。
アニゴジのデザインに文句付けてた奴。


ああいうことを言ってしまった以上、自分で妙に気になることがある。

「そんなこと言ってるお前は、一体、ゴジラのどんな新デザインを生み出せるって言うんだよ!」
「お前がデザインしたらもっとゴミみたいなことになる」

みたいなことを、自分で自分に対して「勝手に」感じてしまうわけだ。



つまり普通に考えて、
「自分だったら
 もしゴジラをデザインするとしたら、どんなゴジラをデザインするだろうか?」

という問題。 大問題。

あの文章を書いて以来、このことがずーっと引っかかってたりします。


で、まぁ実際、落書きをいっぱいこっそり描いてたりしてました。

一分もかかってないような落書きしかないけど。

この落書き自体は、2週間前くらいに描いてたもんです。


そんな落書きと文章をどうしたものか?
こんなモノはどこにも公開せずに闇に葬るべきだろう。
そういうことは重々わかってるんだけど、
やっぱ、「どの口が文句付けてるんだ」ということを自分でも思うので、 よって置いておく。


本当に落書きしかないですよ。

[ 2017/07/07 13:33 ] イラスト | TB(0) | CM(2)

Unityあきらめた。

 
unityあきらめた。


早っ!


いや、完全に諦めたとか 完全に意味が分からんとか、そういうことではないんだけど、
とにかくイチイチ「やってられんこと」が多発する。 一旦中止、そんな感じ。 そういう話です。


まず、
unityにアニマルメーカーのシステムを移植しないと話にならんなぁというところから始まりました。


ユニティちゃんの旋回動作は酷すぎる。 あんなのを動かすアクションゲームなんか作りたくない。

じゃあそれ以外のアセットやらモーションやらをストアから買ってきて、それを組み合わせてゲームでも作るのかというと、
なんかね、そういうゲームの作り方からしても、自分の思う「ゲーム作り」の感覚から違うんだよ。


ストアからこのキャラモデル落としてきます。
このロコモーションシステム入れまーす。
モーションは、ここのモーションを落としてきて、適用します、この背景使います。
銃はこのアセットねー
・・・
・・・
はい、一時間でFPSが作れましたね? 
unity簡単ですね?


・・・
みたいなの、そんなのはゲーム作りじゃない。 そんな感覚がある。

「はい、コイン落としが作れましたね?」


いや、別に素材を自分で全部作れっていいたいわけでもないし、
「全部自分で作れ」ってんなら、そうやってミドルウェアに頼ることすらせずに「無」からゲーム作れってことになるんだろうけど、
そこまで言いたいわけでもない。


でもやはり自分としては、
「根っこの部分」

「このキャラ歩きシステムはどういう仕組みで動いているのか?」

そういう根っこのプログラムの部分を
自分で作ってないくせに、どうやって動いてるのか、自分でコードを理解してないくせに、
そういう「キャラ動かし用」のスクリプトを持ってきて、それで「動いた動いた」とやってる姿勢が、

自分の思うゲーム作りからはかけ離れてるように感じるワケですよ。



というわけで、やはりアニマルメーカーをunityに移植して、
それをキャラクター操作の基礎として始めたい、というのがある。


それ以前にも アニマルメーカーには物凄いメリットや応用性があると思っている。

あらゆる形式の動物を自機としても敵としても配置可能。 リアルタイムにも編集可能。
(unityでは、ヒューマノイド型を基準にしか考えられんであろ?)
(そしてそれ以外の形状の動物やモーションは、イチイチなんか落としてこないといかんであろ?)

そして四肢切断や、びっこ引き、部位破壊なども完璧に実際的に表現できる。
 (擬似的な表現ではなく、本当に足の機能が落ちたことによりびっこを引く、ということを表現できる)

モーションの滑らかさなども段違い。

段差クッション、走り、歩き、ジャンプ、しゃがみ、しゃがみ歩き・・・
それらかける、注視移動、旋回移動、平行移動の組み合わせが、どうきても、対応可能。

それらを、アニメーションコントローラーとか入れなくても、
いやそんなシステムよりもよっぽど滑らかで自然に、色々な挙動を表現することが出来る。




(例えばユニティちゃんがしゃがみながら後方斜め右にすり足しながら切り上げ攻撃をする、みたいなこと、簡単にできるか?)
(アニメーションコントローラーや「アニメーションマスク」とかで頑張れば出来るだろうけど、)
(でも、そもそも「しゃがみ右後ろ斜め歩きのモーション」なんていうニッチなモーションがなければ、作れないだろう)
だが、アニマルメーカーなら、自動的にそういうモーションが出来る!



・・・
とにかく、アニマルメーカーを移植してしまえば最強だろう、そんな感覚があったのです。


で、やってみる前に、
まず、アニマルメーカーが根っこのところで何をやってるのか、というのをちょっとだけ紹介してみよう。



本質は、「伸び縮みする棒」の制御なのです。


↓アニマルメーカーのキャラの足に、「力の元のなる部分」を表示させてみると、こうなってるのです。

アニマルメーカー





この「棒の先端」に注目すると、先端は「楕円」の動きをしていることがわかると思う。 

これ、これを思いついたことが全ての始まりでした。


で、この棒が地面にめり込んだ時、その「めり込んだ量の分の力」が、「逆に全身にかかる」ようにしているのです。

これが、「踏み込みの力の変化」の表現になってる。

アニマルメーカー

地面との最終接点が、実際のかかとの位置となる。 (その分足は縮んだことになる)

そして、「膝の方向ベクトル」というのも計算しておく。

で、足の縮んだ分の量だけ、膝方向を伸ばしていく。 これが、自分が考えた、自作IK(インバートキネマティクス)ということです。
(黄色い矢印が、膝の伸ばすべき量)



つまり、
「地面の下側」としては、変化する足の蹴り込む力の伸びとして、
「地面の上側」としては、足を縮めて戻す動きの先端として、
すべてが「円の動き」に帰結するのです。

これってなんか凄くないですかと。


大体基礎がこんな感じ。
これが基礎となって、アニマルメーカーは動いているのです。

アニマルメーカー

この基礎があるから、この接地感、物凄いなめらかな挙動変化、そういうのが実現できてるのです。

例えば、この円運動のY軸を更に回転させたりすると、平行移動とかも物凄い滑らかに表現できたりする。
そういう機能をどんどん付けていく。


根っこが凄いシンプルだから、壁を這うとかの拡張性もある。

・・・
我ながら、そうとう凄いことしてきたような気がしてきた。


で、これをなんとかunityに移植したいところなんだけど、
これが上手く行かない。
既にできてるんだから、そのまま同じことやりゃいいだろうと思うだろうけど、そうもいかんのです。


てか、どうせやるのなら、さらにさらに拡張性のあることをやりたい。


アニマルメーカーでやってる「地面と足のめり込みの衝突判定」ですが、この段階では凄いシンプルでした。
地面が平面だったので、y=0 より下の量だけ、全身にかかる力とすればいいだけでした。

これを、実際の3Dゲームとしても使えるようにするために
かなり特殊なことをしていました。

自分が「アニマルメーカー」→「地形メーカー」でやったこととして、
地形をある種のパターンに落とし込んで、その地形上に xとzの座標を打ち込めば、そのままyが計算出来るような、
そういう関数のようなシステム
でやってたのです。
ラプトル



ここんところを、どうせunityでやるのなら、
そんな四角いブロックと、数種類の決まりきった板ポリの柱だけで構成されている背景じゃなくて、

坂の柱


もう、普通の背景のポリゴンと、足の棒のめり込み量、それを常に計算できるようにすれば、
物凄い便利だろうと考えたのです。


その辺についてはここでもちょっと書いた。 もう地形との簡易判定モデルとか考えなくていいようにしたい。


で、unityはじめました

unity 最初の歩行システム


最初期はこんなでした。


実際に足を回転させて、その「摩擦」で歩くシステムができないか考えてみました。

リジッドボディの足を回転させたときの反発や摩擦だけで歩けたら、まぁ一番自然だろうと思ったんですが、駄目でした。

全然上手くいきません。



unity 次の歩行システム

次は、足の先端に「コライダー」を付けて、
そのコライダーが地形に衝突したとき、その最後の位置との差を、全身に伝えるようなシステムをやってみました。

4足にも対応できる歩行システム

歩きだしましたね。
これを少しずつ改良していって、
まぁここまで 実際足を自由に増やしたりして、色んな形状の動物も作れそうなとこまではいったのです。

インスペクターで長さ角度管理

パブリックな変数をいじれば、リアルタイムで足の長さや角度をいじったりすところも、できてはいるのです。
こりゃアニマルメーカーです。 いいとこまでは行きました。


でもやっぱり、まだまだ駄目でした。

これ、高い壁際とか崖とかに行くと、とたんにボロが出ます。


最後の歩行システム

最後に、足の根っこから 足の先端に RAYを撃って、そのビームが地形に刺さったとき、
「根っこからその当たった位置までの距離」が 「足の長さ以下」だったとき、「地形に足がめり込んだ」ということだから、
その分の量を全身に伝える
、そういうシステムを作ってみました。


で、もうこの段階で、平行移動操作も導入できてるし、
簡易ながら、IK (膝の位置の計算)とかも始めています。
 (膝のとこにある白い球が、膝の位置)




こうやって、テキトーに配置した「球」だろうがなんだろうが、その上を、問題なく歩けるようになってます。
これが、「背景モデルを組めばそのままその上を歩いていけるシステム」に繋がる筈です。



これが一番上手くいくべきだと思ったんだけど、やはりまだまだ挙動がおかしいのです。


こうやって、上手くいってそうな動画だけgifで貼ってると、なんか着実に進んでるように見えるかもしれませんが、
実際は全くそんな気分にはなりません。


本当に、上手くいかん、なんでこんなに上手くいかんのか、という
やってられんフラストレーションまみれなのです。



まぁそんな感じで、移植が上手くいってません。

どうすればいいのだ。

が、それ以前の問題も発覚しました。


ビルドができないのです!!!

上手くいかないなりに、
そろそろ「WebGLで公開してみるテスト」のほうもやってみようかと考えたのです。


でも、なんか知らんけど、エラーでビルドができません。


「フォルダを選べ」と言われるから、選んで、ビルドしようとする。数分待ってから、なんか終わってるっぽい。
でも見に行くと、フォルダの中身は空っぽ。 「build and run」を選んでも同じく無駄。 意味が分からん。


と に か く webGLでビルドができない。 
(ローカルのexeのビルドなら出来るし、そこではちゃんと動くので、プログラム的には間違ってはなさそうなのに?)


あと自分のunityのバージョン5.6では webプレイヤーとしてのビルドもできない。(これはそもそも選択肢が存在しない)


あんまりにもビルドが上手くいかないので、
なんか調べてたら、

そういうときはunityクラウドでビルドしてもらうのがいいよ、とか書いてあるのを見かけたので、
その通りにビルドしてもらったんだけど、


今度は、そのビルドした奴、自分の思った挙動とは全然違う動きをするのです。 なんかライティングもおかしいです。

・・・
意味が分からん。 さっきも言ったけど、ローカルのexeとしてビルドは出来るし、そこではちゃんと動くのだから、
これはもう unityのwebGLのビルドがおかしいことになっとるとしか思えません。


・・・まぁそんな感じ。


2つの大問題があるのです。


・アニマルメーカーの移植が想像以上に激ムズ!

・webGLのビルドが全く上手くいかなくて試作品すら公開できそうにない



前者は、自分の能力不足です。
「自分のやりたいこと」と「自分の技術・理解度」が釣り合ってないから、こういうことになるのでしょう。
 (もう諦めて簡単な2Dのゲームでも作るか?)


後者は、自分が悪いとは思いたくない。 unity側がなんかおかしい。
そんで、前にも言ったけど、ウェブ上で公開できなきゃゲーム作る意味ね~と思ってるので、これはかなりの問題ですね。
 (こうやってgif動画ばっかり貼ってるのにしたって、自分としては不本意なんですよ)



・・・そんな調子なので、unityやるモチベ、いきなり、かなり無くなって来ました。
ここまで上手くいかないとは・・・


これはもう、ちょっと一旦諦めて、やっぱ放置してるゲーム (いい加減トロッコゲー)に戻ろうかと思いました。


そういう話です。 そういう報告でした。 

やっぱなんだかんだで unity難しいよ。 


なんかこういう、どうしたらいいのかサッパリ分からん壁にぶつかり続けるとさぁ、

誰か、unityのすべてを分かってるような神のような人に、手取り足取り全部教えて貰いたいような気分にもなってくるよ。

そういうのが勉強会なんだろね。 そういうのが出来る人を羨ましくも思うよ。

[ 2017/07/02 11:25 ] 自作ゲーム開発 | TB(0) | CM(5)

最近のDDON事情


結局ゲームばっかダラダラやってしまっているので、ゲームの報告します。

寝言です。

DDONLETITDIEの話。



このブログ定期的にDDONブログになるNE!

[ 2017/06/29 11:09 ] ゲームプレイ話 | TB(0) | CM(0)

Dlifeドロッセルお嬢様(仮)


(それにしても)
「4本生えてるツインテ」というのは何と呼べば良いのだろう)
 (ポニテ→ツインテ→?→??)


超テキトー報告です。


ファイアボールの三期?が始まった?ので?
一応、新ドロッセルお嬢様の3Dモデルを作りました。

ファイアボールの三期



凄いテキトーなんでポーズも付けません。


今回、まだ一話っていうか、10秒くらいのキャッチ?が放送されただけのレベルなので、
色々と分かってないです。


とにかくテクスチャが完成しません。

ドロッセルお嬢様テクスチャ
↑まだこんだけしか分かってない。

チャーミングドロッセルお嬢様テクスチャ

今までのテクスチャの気合の入れようからすると、サッパリ何書いてるか分かってないのが見て取れます。


(でも金属の部分のループ感は多少頑張ったつもりなのだ)

金属の部分 金属の部分


本当になんて書いてあるんだろう。
ツインテの文字

(今よくよく考えてみたら自分これ上下まちがえてる?)
(FLÜGELのことがあるから、これウムラウトだと思いこんでたけど、実はそうじゃない? 実はとか?)


(昔は2chのスレ見ればお嬢様の表面にはなんて書いてあるのか全部調べてる猛者がいたと思うのに、)
(いまではそもそもファイアボールのスレ自体がどこへ行ったのやら・・・)


テクスチャ以外では、関節機構もさっぱり分かってないです。
膝のとこと肘のとこ、テキトーにやっつけてます。


チャーミング

一期のときの関節は、ちょうつがい?的な感じ?

二期のときの関節は、シリンダー?的な感じ?

今回のお嬢様の関節は何て言ったら良いんだろうか、ダンゴムシ?的な感じ?
になってる気がする。




大体、今回のドロッセルお嬢様は、チャーミングの時よりも前なの? 後なの?


お嬢様の見た目はどんどん幼くなってるような気がするんだけど、
 (二期は一期より過去の話だからそれで合ってるんだけど)

でも、お嬢様の関節機構自体は、むしろどんどん進歩していってるような気もするのだ。



はい
そんな感じで、まだ色々とよく分かってないくせに
発作的につくっちまいました、という報告です。


だからこれは仮完成ですね。


次の放送は来月になるので、それまで放置です。


それにしてもドロッセルお嬢様とか、なんか自分の中で「懐かしすぎる存在」になってて、ビビる。
二期がもう6年前ですよ。


6年前の自分が今の自分と同一とは全く思えない。 

(6年前の自分がやったこととか書いたこととかつくったものとか、全部ウソのことのような感覚がある
(現実感が全くない 自分が書いたとか作ったとか。信じられない 実感ゼロ



細胞的な入れ替わりが何年だとかいう話もあるし、
精神的な連続性というのももう全く分からない。

自分で自分のことを連続してると思えないのなら、そんなんはもう完全に
不連続と言い切っていいんじゃないだろうか。

(つまり機械の脳に自分の記憶を移植するときとかに自己連続性とか心配しなくていいのだ)
 (普通に生きてても連続性なんかないのだから)


・・・
といいつつも
こういうタイプのモデリング能力に関しては全く進歩してない気もする。



[ 2017/06/27 13:01 ] 3DCG | TB(0) | CM(2)
月別カレンダー
06 ≪│2017/07│≫ 08
- - - - - - 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 - - - - -