top page



プロフィール

Yo./namikaze.org

Namikaze Projectの萌え系プログラマ。ご意見などありましたら、記事にコメントあるいは、twitter(@yo_namikaze)、メール(yo@namikaze.org)にお願い致します。


開発環境など

C++, Blender, Unity, DirectX, Windows7

カレンダー

<   2016年1月
          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            

旧ブログへのリンク

Yo.'s Game Development Diary

購読(RSS)

Powered by Movable Type 5.2.9

Blenderの最近のブログ記事

[Idinaloq] 進捗 2014/12/15

| コメント(0) | トラックバック(0)

3Dオブジェクトを管理するクラスを作り直し中です。もうしばらくかかりそうです。内部設計の変更なので、目に見えるような進捗になりませんが、これが終わらないと色々収拾がつかなくなるので、ここは落ち着いて進めたいと思います。

3Dといえば、旧イディナロークは、オイラー角でオブジェクトをコントロールしていて、しかもDirectX6のDirect3DRMにおんぶにだっこでした。なので、実のところあまり困った記憶が無かったのですが、時を経て改めて作ってみたところ、どうもうまく回転しないな、などと思っていたのでした。パイロット選択画面では、pitch-30度、yaw-80度、rollは少しづつ行います。回転する順序を変えて誤魔化して乗り切っていたのですがw、ローカル座標で任意軸回転させたほうが楽なので、素直にクオーターニオンを導入しました(←いまここ)。過去を振り返ると、イディナロークの様な、動きの少ないw 3Dオブジェクトを使用した2Dシューティングは、ダイナミックな動きが無かったおかげでオイラー角制御でもなんとかなってしまっていたのかなと思います。

ライブラリとかエンジンとかの話。3D描画エンジンであるD3DRMはとうの昔になく、そして後続のD3DXも無くなりましたね。Direct3D Retained Mode(D3DRM)がサポートされなくなった代わりにD3DXがリリースされた時、同じことになるような気はしていましたが、思いのほか長生きしましたね。DirectXの関数にせよ、ライブラリを生で使うのもライブラリに依存するのでマズい、と毎回思うので、今回はしっかりやろうと思います。まあ、ラッパ関数の作成と、ライブラリを作るだけなんですけれどね。これは、D3DRMに依存しすぎ、しかもD3DRMの関数がコードにガチガチに複雑に入り組んでいる為、D3DRMを模擬するライブラリを作るのもキツイ(RMを全部作ることになる)という状況を次に起こさないようにする為でもあります。同じような感覚を、実はUnityにも感じていたりします。ライブラリを使って楽をするならば、やはり、ソースコードがある方が安心できますが、エンジンのソースが無いので、最悪でも、C#やBooで書いて、Unityが無くなってもアプリケーション部分をある程度使いまわせるようなコードにする必要はありそうです。ソースがあるゲームエンジンとしては、Blender+Bullet+Ogre3D+Luaのgamekit(Ogrekit)は開発が明らかに止まっていますし、Blender Game Engineで作るには、広く頒布するには若干のハードルがあったりします。

とまあ、こういう話は楽しいのですが、今はWindowsプラットフォーム向けにWindows依存でガリガリ書いていきます。次回作る際に悩むことにしましょう。

今日はこの辺で。
ではでは。



   

[Idinaloq] 進捗 2014/12/10

| コメント(0) | トラックバック(0)

今回は主に3Dオブジェクトの修正をしていました。見つけ次第対処している状況なのですが、15年前の .X ファイルはファイル形式として怪しい場合があり、テクスチャ等が読めないことがあります。そのため、何をするかと言うと、オリジナルの.X → .3ds にしたファイルを Blenderで読み、UVの確認と調整→ .blend →. mqo と変換して、プログラムに読ませます .X 自体、ファイル形式としては終わった形式なので、最終的には全て .mqo とかにしておく必要があるかもしれませんね。(.blendでも良いですが)

20141210_1.png

さて、3面の要塞の配置を試してみました。今回の動画は15fpsでキャプチャしていますので、雰囲気だけわかってもらえれば良いかなと思います。シーンは旧バージョンと同様、ハードコーディングして作成しています。原始的ですね。512x384の画面で表示していた分には、オブジェクト同士の接続は一切気にならなかったのですが、1024x768の解像度では、オブジェクト同士の隙間が若干気になる感じではありますので、隙間を埋める微調整もしていきます。

スクリーンサイズは縦横倍にしていますが、2Dの部分は昔と相対的な大きさを変えていません。つまり、縦横2倍表示しています。ラスタスクロールする背景も、512x384の画像を拡大した上でラスタスクロールさせているので、若干手間があります。

今日はこの辺で。

ではでは。



   

[Idinaloq] 進捗 2014/11/10

| コメント(2)

未使用のものも含めた現状のリソースを最大限に生かして、イディナローク(Idinaloq)をWindows7以降のPCで動作させるという、ちょっと後ろ向きなプロジェクトをちょっとだけ進めました。初出からこいつもかれこれ14~5年前なので、レトロ化する前に、今の環境に載せておこうかと思って進めています。Unityで作っていたものは大絶賛放置中で、今作っているのはVC++でガリガリ書いています。なので、残念ながら携帯とかタブレットでは動きません(野望は尽きませんが)。しかし、もともと後ろ向きなので、それで良いのです。

さて、まだ途中ですが、プレイヤー選択画面の実装です。現状、Windows7のウィンドウモード、1024x768の解像度で動作させています。3Dオブジェクト以外、見た目が全く変わらないので、512x384で実装しようかとも考えましたが、あんまりなので、とりあえずこれで進めます。おかげで手間は倍以上かかってます...
オープニングムービーもシームレスにウィンドウ内で動作していますし、ラスタスクロールも出来るようになっているので、ほぼ同じもの以上のものは作れそうです。当時とは比べ物にならない位にサクサク動くので、ちょっと怖いです。音楽はMIDIからwavに変換して使用しています。

見た目は変わらないのですが、プログラムは「ほぼ」書き直しになっています。

idn_20141110_1.jpg

.x のモデルも、.Blenderで扱えるフォーマットに変換して、BlenderでNormalや裏表ポリゴンの確認を行い、importerの都合でテクスチャが貼られていないものがあれば貼りなおして、やっと使えるようになります。
この作業がとても面倒なので、いましばらくは放置する(現実逃避する)ことにしました。

idn_20141110_2.png

昔は Lightwave3D 6.0を使ってモデリングして(してもらって)いました。Lightwave3Dでもプラグインを入れて、UVで貼れたはずなのですが、理由は忘れましたが、「でかる」というツールを使ってテクスチャを貼ってもらっていました。当時、これはかなり重宝しました。

idn_20141110_3.png

当時、LW3Dは変態インタフェースで有名でしたが、今振り返ってみても、そんなに変態だとは思いません。Blenderも右クリックで選択という負けず劣らずのド変態なので、今のメインがBlenderなのも何かの因縁を感じます。まあ、慣れればそんなものかと。LW3Dのドングルがパラレルでw 今のPCでは使えない(USBドングルにすれば使える)のですが、今からLW3D 6.x には戻れないなあということで放置中。

今日はこの辺で。



   

[Blender] 赤毛の魔法使いをモデリング中。その2

| コメント(0)

肩はなんとか処理できた。weight map正しそうなんだけれど、肘から手にかけてゆがむ...。
何が原因なんだろう。ボーン入れなおすの面倒。

meru003.jpg



   

[Blender] 赤毛の魔法使いをモデリング中。

| コメント(0)

赤毛の魔法使いのモデリング中。ブラウスとかまだですが。モトネタの一枚絵は5頭身だった。
いまさらながら、Tの字にしなかったのは失敗だが、練習だから良いかというノリ。


meru001.jpg

以下はモトネタのドット絵。3頭身。自分の趣味が大きく反映されている。


meru002.jpg



   

Yo Namikaze Channel

アフィリエイト

Twitter

最近のコメント