募集要項

  • ■ボイスの募集は終了しました。

    非常に沢山のご応募ありがとうございました!

     結果はこちら
2017年12月
          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            

« 2012年12月 | トップページ | 2013年2月 »

2013年1月

2013年1月31日 (木)

【Unity Action】今日の問題?

今日は主にモーションの入れ込み、確認を行ってたんですが、
例によって問題が発生してました。
本日発生していた問題は↓な感じ。
(大体ケアレスミスです( ; ゚Д゚))

・一部動かない箇所がある①
 自動リネーム時にボーン名が合わなくなってました。
 これは、リファレンスを使用してモーションを作成する上で、
 出力時にファイル名のリネームが必要なのですが、
 このリネーム時にマテリアルと名前が重複し、別名で保存されてしまっていました。
 ボーン名をユニークな名前にする事で問題は解決。

・一部動かない箇所がある②
 FBXインポートエラー
 モーションで0スケールを使っている場合に起こる事がある問題のようです。
 0.001等の小さな数値に変えて問題を解決。

・モーションを途中で切って他のモーションに移るとおかしくなる場合があった
 3Dデータ上で動いて無いキーが省略されていました。
 再生時にリセット、という考え方もありますが、
 今回は意図しない症状だったので、3Dツール上でキーが打ってあれば
 出力されるように修正。
 原因としてはFBXの出力をanimationOnlyにしていた為の模様。
 どちらにしてもモデルは吐かないので、animationOnlyをfalseにして問題は解決。
 (ボーン階層のみのデータになるか、グループ階層のみのデータになるかの違い)

一通り正しく出力、確認が終わるまでに結構吐き直しましたょ(;´д`)

これでモーションエクスポーターがらみの問題はおおよそ潰したかなー。

と、いう事で、今ダメージ周りの実装、確認中ですが、
やはり実際に動かすと微妙な部分があるし、もう少し種類がほしい印象・・・
吹っ飛びと叩き付け分けるかー・・・モーション増えるけど;
この辺りの調整がキモですからねー。大事に進めないと。

あ、そういえばザコの着地モーション作って無かった事にも後から気づきましたorz
作らねば・・・っ!

2013年1月30日 (水)

【Unity Action】 とりあえず出してみた

ザコを出力しようとした所、モーションのエクスポーターに不具合が発覚。
今後も使っていく事を考慮し、今日は主にエクスポーターの修正を行ってました。
(これまでのザコはエクスポーターを使わずに手動で出力してた)

で、Unity上にモデルと待機だけですが出してみました。

130130_0

・・・あれ?
どうも眼球のあたりの中身の白い部分が見えてしまっています。
何故だろう、と色々触ってみたところ、
カメラのnearが小さすぎると起こる模様です。
nearの値を少し大きくしたら直りました。

130130_1

やはり色々と問題が起こりますなぁ・・・。

2013年1月29日 (火)

【Unity Action】 ザコ経過2

土日製作休んで?たので、進みが悪いですが、
攻撃エフェクト作ってます。

130129_1

今回は一通りMaya上で動き込みで組んで、
極力ドローコール1になるようにUV、テクスチャ、マテリアルをまとめてみるテストも兼ねてます。
とはいえ、フェードのタイミングとかを変えようとすると分けざるを得ないですねー。
処理を取るか見た目を取るか。このあたりは悩ましいです。
ただ、結局ビルボードのパーツなどもあるので、全てを3Dツール上で、
というのはやはり無理がありそう(´▽`;)

しかしMaya上で加算マテリアルないだろうか・・・このあたりは知識不足。
抜きじゃないから確認しにくいです(;´д`)ゞ
知ってる人いたら教えて下さいw

いよいよ明日は実装調整…タブン!
・・・いろいろ問題出るんだろうなぁ・・・

2013年1月25日 (金)

【Unity Action】ザコ作成経過

なんだかんだで色々やってたら日数が経ってしまったので、
一度現状UP。
こんな風に作られてるんだー程度に流し見して頂ければ(≧∇≦)b

①デザイン
 ・・・というほど大した物でもないですが、
 ザックリと、どういった見た目でどういった行動をするのか書きます。
 重要なモデルであれば、もっと厳密なデザインや2面図等を書いたりした方が良いですが、
 弱い方のザコ予定なので結構適当です…( ;´・ω・`)
 Photo

②モデリング
 イメージを元に3Dツール上でモデリングします。
 スマホ用という事を念頭に置くため、ポリゴン数はあまり多くならないように、
 また、翼に関しては、片面表示のマテリアルで問題無いよう、
 形状で両面作成してます。
 Photo_2
 現状:824ポリゴン

③UV展開
 シンプルなヤツですが、展開しないとテクスチャ貼れないので展開。
 本体は対象なので半分だけです。無駄な空間が結構あるけど…まぁいいか(´▽`*)
 Uv_2

 
④テクスチャ
 ぬりぬりします。
 ボディ?部分は、あまりディティールを入れると翼、尻尾を引っ込めたときに
 生々しくなるのでシンプル目に。
 Photo_3

⑤ボーン入れ
 どう動かすかを意識しつつ、ボーン位置を決めます。
 ↓は全12本。
 Photo_4

⑥ウェイト付け
 実際に動かしながら、ウェイトの設定を行います。
 Photo_5
 

⑦リグ組み
 シンプルな計上なので、
 今回は簡単なコンストレイン程度しかしてません。
 なので省略。

⑧アニメーション
 元々考えていたイメージを元に、モーションをつけて行きます。
  右下に行動内容を表示してます。ビームはまだ出ません ・゚・(つД`)・゚・
 

↓↓↓↓はまた後ほど!↓↓↓↓
・エフェクト
・実装
・調整

自分は2Dスキル(絵、テクスチャ)が明らかに弱いので、
そっちの方重点に勉強した方がよさそうだなー…。
製作とは別に日課に組み込むべきか。。。

2013年1月17日 (木)

【Unity Action】 ザコ作成中

シンプルなヤツですが、
現在ザコモンスターを1匹新規作成中です。
近いうちに一通りまとめてUPできる・・・はず!
なんとなくですが、作業のフロー形式で記事にしてみようかと目論んでます。

・デザイン
・モデリング
・UV展開
・テクスチャ
・ボーン入れ
・ウェイト付け
・リグ組み
・アニメーション(10種くらい)
・エフェクト
・実装
・調整

と、やはりやるべきことは多いですね。
ボスとかだとさらに登場演出等も必要になります。

このあたりは実際の製作現場(企業)では
1人で全ての工程をやることはそうそう無いと思います。
(少なくとも自分は経験無いです)

1人でやると当然慣れてない作業も多く、トータルだと時間もかかります。
まぁそれに慣れるための勉強も兼ねた作業でもあるんですが、
まだまだ己がダメダメなのをイヤでも実感してしまいますね(TдT)マケナイ!

とはいえ、色々と考えさせられますね。
効率重視するとやはり作業分散が正解っ (。・x・)ゝ
でも長期的に見れば・・・!(´-ω-`)遠い目

2013年1月10日 (木)

【Unity Action】ステージ追加ちぅーヽ(○´3`)´

現在アセットを流用しつつステージ追加してます。
そのまま使うには素材が豪華だったので、多少モバイル向けに調整。
ただ、マテリアルは統合してないのでドローコールは若干有り(8くらい)。
この辺は追々必要が出そうなら考えますわー(´▽`;)

130110_1

やはり個人製作だと、こういったゲームを
全部1から作るには時間がかかりすぎるので、
アセットの流用が簡単にできるのはいいシステムですね(≧∇≦)b
最終的にはオリジナル7/アセット流用3 くらいの割合を目指そうかなぁ。

2013年1月 9日 (水)

【Unity Action】はまった。。。(TдT)ボスケテ

前から若干気になってはいたのですが、
実機でゲームを始めてバトル中に
諸々の行動を行った最初の瞬間だけ
数フレームかくつき(読み込み?)が起こる問題が出てます


その後は特に問題無くスムーズにプレイできますが、
見た目的にやや気になるので、今のうちになんとかしたいと思いました。

で、アクション中じゃなければ一瞬固まっても問題無いので、
先行して読んでおけばいいのかなーと以下のような事を試してみました。

--------------------------------------------------------------
■テストデータで検証(Android環境でテスト)

×ダメ:事前に読み込んでおく
 GameObject testObj = (GameObject)Resources.Load("ゲームオブジェクトパス");
 とか参照しているテクスチャだけ先読みとか
 Texture2D testTex = Resources.Load("テクスチャパス")as Texture2D;

×ダメ:事前に見えない場所に一度表示しておく
 GameObject testObj = Instantiate((GameObject)Resources.Load("ゲームオブジェクトパス"), new Vector3(0,-200,0), myTransform.rotation) as GameObject;

OK:事前に見える場所に一度表示しておく
 GameObject testObj = Instantiate((GameObject)Resources.Load("ゲームオブジェクトパス"), new Vector3(0,0,0), myTransform.rotation) as GameObject;

--------------------------------------------------------------

…うぬぅ…これは困った…(;´Д`)
どうやら初回に何かを「カメラに映る範囲で描画」する瞬間に起こってるようなのですが、
良い解決法は見つからず。
Profiler見る限りLoading.LoadFileHeadersが%食っているぽい?けど
ObjectはN/Aになってるので微妙に分からない。。。
暗転してる間に1度表示しておくという最終手段も考えたけど、
かなり力技なので避けたい…。

これは流石に
基本的な見落としがありそうな気がします。メガネメガネ…(頭の上)的な。
分かる人いたらヘルプミー  つД`)・゚・。・゚゚・*:.。

とりあえずいい案が浮かんだら試してみます(;´д`)ゞ

追記:
Twitterにて情報を頂きました。
パーティクルや大きいテクスチャは初回のVRAMへの転送に時間がかかるらしく、
暗転中などにカメラに映してキャッシュ状態にするくらいしか
回避策が無いらしいとの事です。
となるとやはり力技に頼らざるを得ないですかね。。。

2013年1月 8日 (火)

【Unity Action】雷とヒットストップと私。

やってたことをつらつらと。

■雷エフェクト
 と、いう訳で?雷の効果を作ってみました。

130118_0

 エフェクトは初めて作る物ばかりでやってて面白いです。
 構成はただの板ポリ2枚(落雷と地面衝撃に1枚づつ)。
 パーティクルは使わずにテクスチャアニメ+オブジェクトのアニメーションで構成されてます。
 とはいえテクスチャは2枚別なので、Drawcallは2。まぁそのくらいはいいか (。・x・)ゝ
 モーションはあとで専用の物を作った方が良さそう。
 後は焦げ残りとかインパクト表現とか色々要素も付けたいけど負荷がコワイので今は無しで。
 …しかし減色とかちゃんとしないとバンディングが目立つなー。
 止めなければ分からないレベルなので対処に悩む。

■ヒットストップ(スロー)
 ヒットストップ(スロー)の処理を以下のような感じで作ってました。
 ・攻撃が敵に当たった場合に「自分と当たった相手のみ」指定フレームストップ
  (後で攻撃毎にフレームと再生レートを持たせるかも)
 まぁタイムスケール使うと楽なんですが、全てが止まってしまうので、
 見た目的な違和感があります。

 なので、プレイヤーと敵のモーション速度のみを弄ろうかと思ったのですが、
 ピンポイントのモーションのみ調整が難しそうだったので、
 それぞれのモーションすべてのレートを一括で変更する処理にしました。
 ノックバックなども止めないといけないので、
 Update()もヒットストップ中は飛ばしています。

 と、いったところで新たな問題として、
 多段攻撃等で複数回攻撃やエフェクトが発生する技だと、
 ヒットストップでずれたフレーム(時間)分、発生がずれて
 見た目と合わなくなる問題が発生。
 動的に技のスクリプトやリソースは付け替えされるので、
 事前にアニメーションイベントは仕込めないので、事後(プレイ中)に動的に仕込むか、
 ヒットストップでずれた分のフレームを吸収する処理を付けるか・・・という所で、
 現状の他の処理の都合上、ずれを吸収する処理を仕込みました。

 色々問題出るなー。自分のせいだけども( ; ゚Д゚)

■ステージフラグ関連
 そういえば、ステージのクリアフラグ関連の処理は終わってます。
 これでステージをクリアするとクリアマークがついて、
 次のステージが解放されるようになりました。
 ※ステージ数少ないので分からないですが、スクロールバーとかも足してます。

130118_1_2 

 元々仮で入れてた処理が大分足を引っ張って結構作り直しました…orz
 まぁまだ肝心の各ステージの中身がないですが;;

2013年1月 7日 (月)

【Unity Tips】 Mathf(数学関数)に関してのメモ

Mathfは結構使う場合が多い割に
良く忘れるので、Mathfの処理をメモ(一部)。

-----------------------------------------------
Mathf.Floor()         切り捨て
Mathf.Ceil()      切り上げ
Mathf.Round()     より近い整数の値を返す(0.5の場合は偶数になる)
Mathf.FloorToInt()  切り捨て(Int型に変換)
Mathf.CeilToInt()    切り上げ(Int型に変換)
Mathf.RoundToInt() 四捨五入(Int型に変換)
Mathf.Abs()            絶対値
Mathf.Sign()           正負の判別(正を1/負を-1 で返す)
Mathf.Clamp()         最大値の制限
Mathf.Min()            値の比較(小さい方を返す)
Mathf.Max()            値の比較(大きい方を返す)
Mathf.Pow()           指数
Mathf.Exp()            累乗
Mathf.Log()            対数
Mathf.Sqrt()           平方根
Mathf.Repeat()    指定の長さで繰り返す
-----------------------------------------------
※2015/7/8 Mathf.MaxがMinになってたので修正。
※2015/9/14 Mathf.Signの結果が0/1になってたので修正。
※2017/7/19 Mathf.Roundの内容が誤っていたので修正。

と、言いつつ数学はあまり得意では無い! ( ・`ω・´)

…やべぇ英語と数学勉強しないと… il||li _| ̄|○ il||li
みんな、学生の頃の勉強はやっておいて損はないですぞ!

2013年1月 6日 (日)

今年もよろしくお願いします!(≧∇≦)b

今更ですがあけましておめでとうございます。
今年もよろしくお願いしますm( _ _ )m

さて、明日から出社開始な会社も多いのではないでしょうか。
自分は正月はかなりダラけてしまいました…(汗
ドラクエXのアップデートもあったしネ (`・ω・´)

と、いうわけで?開発の方も再開していきます!

とりあえずは現在ステージ選択のスクロールの改善を行い、
ステージの表示状況、クリア状況の反映の処理を作成中です。
(結局年末に出来てなっただけとも言う)

後、製作環境の整備として、ネットワークドライブの設定をしてる途中です。
今まではVisualSVNを使って、PCのローカルでSVNを設定してましたが、
万が一PCに何かがあった時の事を考えると
直接接続のHDDだけでは若干不安なので、
NASを使って開発類の各種データのSVN管理もやってみる予定です。
今、全データコミット開始した所なので終わるまで触れないわ。。。
我が家は非常に回線速度が遅い(未だにADSL)とはいえ、このペースだと朝までかかるかも。
何か良い設定とかあるのかなぁ…。

と、それはともかく、今年もがんばるぞ!!(>Д<)ゝ

« 2012年12月 | トップページ | 2013年2月 »

Twitter等

  • にほんブログ村 ゲームブログ ゲーム制作へ

メールフォーム

  • 直接コンタクト取りたい方はこちらからどうぞ

サイト内検索
ココログ最強検索 by 暴想