花烏風月の日記帳


※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

徒然日記


2010.01.18(Mon.)

CastleGuard -InfiniteErrors-
祝、サブタイトル決定!

…今、死刑台の十三階段の十二段目辺りにいるの自覚してる?
FFとかタルタロスやってる場合じゃないぞ!後々、そんなの後よ~、特に蔵班!!
学生最後の作品が「未完成&動きません」なんて御免だね!

言うまでもなくキャッスルガードはロストエデンを超越したクソゲーかもしれない。
でも、サービス終了前の一週間くらいなら廃プレイしたっていいじゃない。
んで、さっさとゲームクリアしようぜ☆

以下、いくつか報告。
①ライトの不具合、ひょっとしたらオーダリングテーブルの問題かもしれん。
②矢の軌跡の表示できてるけど、スプライトを寝かせたいです(XY->ZX)。どうにかならんですかね?
③名前を表示する準備OKです。3D座標を2D座標に変換する処理を書いた担当者。…誰でしょう?^^

名前:
コメント:

2009.12.20(Sun.)

~衝撃の幕切れ~

もうご存知の方おられると存じますが、
私、花烏は先日、インターンシップから戦線離脱しました。
ぶっちゃけて書いてしまうと、ある種の精神病です。
不眠症まで再発しているので、完全に薬物漬け…(´・ω・`)
だから、たまにラリった発言しても気にしないように!
まぁ、万一突然発狂しても生暖かい目で見守ってください( ^ω^)

というわけで、シバイとてふぇりさんと薪けーきさんあたりかな?
と組んで見栄え良くなるように作業しますんで、よろしゅう。
とりあえず、マスター版仕様に素材を改修していきます。

追記:
今のところ作った素材
  • EXEアイコン
  • エレガントな起動ロゴ
  • JoinWindow全般
  • ResultWindow
  • ロビーで表示されるボタン類
その他必要な素材あったら、オブジェクトシートに記入して、
僕に投げつけてください。

追々記:
ライトの不具合についてなんですが、
黒ウサギさんの呟きから、法線の疑いが浮上しました。
僕は、maxでXファイルのエクスポートなんて知らんので、
分かる人そのへん確認してみてください。


名前:
コメント:

2009.11.24(Tues.)

でばっぐ殺し☆ばーじょん1.2.0

シバイには試作品渡してあるんですが、
VisualStudioが生成するゴミを抹殺するバッチを作りました。
こんなもん、フリーソフトでいくらでも転がってると思いますが、
聞きかじった知識をろくに鍛錬もせず云々と言われないために自作というわけ。
だがしかし、そこらへんのフリーソフトには負ける気がしません。
なぜなら、そこらへんのフリーソフトそのまんまなのですから!



はい、本題。
VisualStudioがいつの間にか吐き出し、
しかも無駄に容量を食うゴミファイル、具体的には、
Debugフォルダやら
Releaseフォルダやら
なんたら.ncb
なんたら.user
をまとめて排除できます。
ただし、見方を変えれば、
DebugとかReleaseってフォルダがあったらどんな大事なものが保存してあろうと
容赦なく吹き飛ばすデンジャラスなプログラムなので、
間違ってもプロジェクトフォルダ以外の場所で発動させないように!
あ、出力ディレクトリ弄ってるとうまくいかないかも。

[使い方]
ソリューションと同じディレクトリに置いて発動させると、
妖精さんがきれいに掃除してくれます。

…分からなかったらシバイに聞いてw


欲しい人はうぷろだから落とすか、54鯖から拾うか、
下のソースコピペして作ってね。

@echo off
rem ま、適当に作ってみた. by花烏風月
title でばっぐ殺し Designed by 花烏.

set SUCCESS="FALSE"

:DEBUG
echo [Debug]
if not exist Debug goto RELEASE
cd Debug
dir *.*/b/a-d
set SUCCESS="TRUE"
cd..
del /f/q Debug
rem echo.
rd Debug
echo. 

:RELEASE
echo [Release]
if not exist Release goto FILE
cd Release
dir *.*/b/a-d
set SUCCESS="TRUE"
cd..
del /f/q Release
rem echo.
rd Release
echo. 

:FILE
echo [VisualStudioが生成したゴミ]
:NCB
if not exist *.ncb goto USER
dir *.ncb/b/a-d
del *.ncb
set SUCCESS="TRUE"
:USER
if not exist *.user goto RESULT
dir *.user/b/a-d
del *.user
set SUCCESS="TRUE"

:RESULT 
echo.
if %SUCCESS%=="FALSE" echo 削除対象ナシ. 
if %SUCCESS%=="TRUE" echo 上のヤツら始末した.
echo おしまい.
echo.
pause

名前:
コメント:

2009.11.08(Sun.)

ご無沙汰。
申し訳ない。ほとんど1ヶ月間、作業できていないですね。
早く帰る努力はしているつもりですが、
最近では終電すら逃す日が出ている上、土日も残務処理なので、

実質、不可能です。

…と、それではいくらなんでも無責任なので、
今週の火曜日・金曜日・土曜日に休みを取りました。
先ほど会社で宣言してしまったので、もう後には退けません。
僕の納期は18日。僕がくたばろうとそれは動かないので、デスマーチ確定です。

…さぁ、これで状況は似たようなもんです。
火曜日、金曜日でスパートかけましょう…。

名前:
コメント:

2009.10.02(Fri.)

凶悪なバグに遭遇した故、行けんかった。すまん!
一応業務連絡。
[今作っているマップオブジェクトについて]
大きく分けて2種類。
  • 共通オブジェクト...樽とか柵とか井戸とか棺桶とか
  • 派生オブジェクト...建物とか壁とか窓とか

共通オブジェクトは、文字通り共通の部品で、テクスチャも同じ。
派生オブジェクトは、城の設定(地方風土)をテクスチャを書き換えて表現する部品。ただし形状とかUVは変わらない。
モデルとテクスチャは用意しておくので、マップに配置する仕事を回すつもり(場合によってはUV展開も頼むかもしれないけど)。
たぶんTeferiさんに投げると思うのでよろしく~。

名前:
コメント:

2009.09.29(Tues.)

久しぶりに学校へ来た…。

[モデル作成]
Rayさんが持ってきた首(笑)を萌ちゃんの体に乗せた。
おー新キャラ。
でもこれじゃあまり意味なくて、肝心なのはテクスチャでバリエーションを出せることなので、
さっさと汎用の衣装作ろう。
それと、城のモデル作っています。
が、ぶっちゃけまだ全然です。
インターンの納期というギロチンの刃が迫っているので作業しようにもできないという…ねorz
…というわけで、水~金でもし「最後まで残る」日があれば連絡お願いします。
19時で退けるので向かいます。最速19時30分着!

ま、完成部分を書いておくと、
shibaiから投げられた設計図を元に建造物(ただの箱)仮配置のマップとその床メッシュ。
スケール値を微調整すれば使えるはず。

で、当面の計画ですが、時間を見つけて建造物とか構造物をパーツとしてうpしていくので、
それをアシさんに配置してもらおうと画策しています。
マヂで作業なので白羽の矢が立った方は覚悟してくださいね。
パーツのテクスチャに関してですが、デフォルトとして、
白亜の宮殿のようなイメージ(世界観(花烏版)における「アスール共和国」)で作っておくので、
後はそのテクスチャを書き換えて派生させてください。
その関係でループテクスチャふんだんに使うのでメモリ食い荒らします。
異論??断る(笑)

名前:
コメント:
  • あ、連絡はケータイにお願い! -- 花烏風月 (2009-09-29 23:05:07)


2009.09.23(Wed.)

ご無沙汰。花烏です。空気ですね、百も承知です。はい。
仕事終わった後に学校寄ろうと考えていたんですが、
見事に読みが外れまして…
実質会社出れるの20時とか残酷な現実が待ち構えておりましたorz
おぼろげな記憶を引っ張り出すと、「学校のある時間外(18時以降)は残業扱いになる」
って規定があったようななかったような気がするので、この辺りは要相談。
先方も残業代なんて出したくないだろうし、こっちも早く上がれるなら円満てやつでしょう。

それと、業務過程で有用な情報を入手したので紹介。

WinMerge日本語版
簡単にいうと、2つのソースを見比べて違う部分を指摘してくれるステキなソフト。
無意味なスペースとか全部すっ飛ばして比較してくれるのでかなり賢いです。
実際使ってみたけど、レヴォリューションでした、はい。
今までよくもバグの修正を反故にしてくれましたね…

絶対、導入するように。

@Toシバイ
グラフィック班、そろそろ本気でやらないと詰むので1~2人ください。

名前:
コメント:
  • 誰でもいいや。ほとんど"作業"だから(笑) -- エレガントな 花烏風月 (2009-09-24 01:20:20)
  • おそらく Teferi さん。 -- Shibai (2009-09-23 20:53:07)
  • プログラム、サーバ班も人が足りない状態だから、1人だけだけどグラフィックやってもらうね~。 -- Shibai (2009-09-23 20:50:02)


2009.09.11(Fri)

若干進捗あったので更新。
~本日の作業~
  • 当たり判定のアルゴリズム考察

[当たり判定]
攻撃側のクライアントで判定する方式に変更します。
また、クラスと通信関数を分離する方針でいきます。
通信関数をSceneに固めてしまえば、#if(ONLINE)~#elseでの切り替えが楽になるはず。


名前:
コメント:

2009.09.07(Mon)

 ~お知らせ~
  • わからない部分があったら花烏まで連絡を(僕のソース勝手にいぢるなぁぁぁぁ!!)
  • ルームの数っていくつくらい予定してる?世界観考えてたんだけど、3勢力に各人数制限の城で6つくらいでどうよ?

 ~きょうのさぎょう☆~
  • がい(字が出てこない…)要をまとめる(世界設定とかの)
  • シバイ族等の設定を追加(用語集)
  • なかなか進まなかった当たり判定がついに完成
  • インデックスと引数が合致しない不具合を発見(Out of Lengthエラー吐いた…)

[概要まとめ]
 今まで漠然としすぎていたので、
 すこしずつ世界観を固めていこうと思っています。
 で、用語集を作ったので暇な人編集手伝ってくださいね☆
 にわかに厨二が薫る…。

[用語集に設定を追加]
 シバイ族とかの設定をリーダーの過去の発言から考えました。
 亡国の理由が"究極破壊魔法"とか、我ながらいい仕事した(笑)

[当たり判定処理完成]
 フッ( ̄ー+ ̄)

[Out of Lengthエラー発見]
 ランタイムエラー吐いて発覚…。
 ぐっじょぶ、自分。対処は明日考える。

\(^o^)/

P.S.
いろんな意味で乙…ね、にゃんこさん。

名前:
コメント:

2009.09.05(Sat.)

伊勢市で開催された景観シンポジウムに行ってきました。
歴史や文化の保存や継承といったテーマでした。
ちょっと畑違いだったかも~…。
歴史を重んじることに異論はないけど、それに囚われて時間を止めてしまうのもいかがなものかな。
まぁ、詳しくは明日辺りブログに書くんで暇な人見てくだしあ。

~本日の作業~
  • マネジメントクラス改修

[続・マネジメントクラス改修]
かかし・拠点に関しては、ポインタからインスタンスを格納する方式に変更。
せっかくのSTLにわざわざポインタで格納するのもナンセンスだし…。
ただし、飛行物体やエフェクトは派生クラスを格納する都合上、無理でした。(当たり前だぁな…)
代替処理として叙述関数をenableからNULLチェックに変えました。
直前にenable == falseの要素にSAFE_DELETE()掛けて、その後erase()という寸法。
エフェクトは動作確認してないけど、飛行物体は大丈夫っぽい。
ただ、通信のカットインが入った場合にNULL参照して吹っ飛ばないか一抹の不安が…。

名前:
コメント:

2009.09.04(Fri.)

~本日の作業記録~
  • 通信会議
  • 当たり判定テストクライアント
  • マネジメントクラス改修

[通信会議]
敵鯖作ればええやん~、と思っていましたが一筋縄ではいかない模様。
僕としては敵とボスのアルゴリズムは統一した方がいいと思う。
ボスをサーバーに置くなら敵も置こうよ、と。
クライアントに置くのなら、ルームマスターが敵を制御して鯖を中継して他のプレイヤーと同期取るのが通信量抑えられるような気がする~。

[当たり判定テストクライアント]
一応完成。カメラ操作できるようにしようかな~。
テストしていたら200本の矢が描画限界と判明した。
さらに、リストからの削除が失敗(後述)していたことも…。
そーいえばDirectXに頂点数を減らしたメッシュ(プログレッシブメッシュだっけ?)を生成するってステキな関数なかったっけ?
気のせいかな…。

[マネジメントクラス改修]
リストの削除が上手くいっていないことが発覚したのでチェック。
erase()で排除しているはずだけど、メモリからの解放に失敗してるっぽい。
よーく考えたら動的に生成するためにあるSTLにポインタのコンテナ作るのもナンセンスかなー。
というわけで、ポインタのリストにするのやめます。そうすればerase()一発で解決する…たぶん。

あ、今日から課題のNPC配置ツール作り始めるので空気になります。働きません、終わるまで。
名前:
コメント:

2009.09.03(Thurs.)

今日は四日市で散髪してきた。懐が吹雪いてきた(´・ω・`)
~本日の作業記録~
  • 当たり判定テストをTeferiさんに投げる
  • マネジメントクラス修正
  • 戦闘フィールド作成

[当たり判定テスト]
Teferiさんが判定チェックまでやってくれたので、今日中にテスト環境を仕上げとく。

[マネジメントクラス修正]
BaseManager
FlyingObjectManager
EffectManager
更新しました。
従来はGetInstance()を呼ばれた際にnewして作っていましたが、
昨日のヒープエラー解消によりstatic領域の使用が解禁されたため、
GetInstance()でstatic定義する方式に変更しました。
これにより、解放に必要だったDestroy()は要らない子に。(・_・)ノシ

[戦闘フィールド作成]
いつまでもぬるいAIを使っているわけにいかないので、
本ちゃん用の戦闘フィールド(4人前)を作り始めました。
シバイ君がブラマンテのサン=サーティロ聖堂(拾ってきたPDF資料)顔負けのだまし絵のキープを
作ってくれるようなので期待しましょう^^

名前:
コメント:

2009.09.02(Wed.)

曇り空でしたが、雨降らなくてよかったぁ~(*´∇`*;△
ってなわけで…
~今日の作業記録~
  • ヒープエラー解消 →お疲れ自分
  • かかしクラス作成 →ヒープエラー解消したので使用可能に
  • 当たり判定(通信) →破綻\(^o^)/
  • 当たり判定テスト用クライアント →今作ってるお(´・ω・`)

[謎のヒープエラー 解決篇]
I先生が殺虫剤を持っていたので、割とあっさり(でもないけど)バグ退治。
原因はオーバーロードされた new & delete 演算子でした。
メモリーを管理しているクラスが抹殺された後(CWindowクラスのデストラクタで天に召される)にSTLのデストラクタ(内部でdelete演算子が呼ばれる)が発動した場合、
すでに死んでいるメモリー管理クラスを参照するため吹っ飛ぶ、というのが事件の真相。
動的に確保するのをやめ、メモリー管理クラスを静的メンバ変数にして解決(static領域の解放がSTLのデストラクタの後に行われるため)

OG_Window.cpp & OG_Window.h を更新してください!!

[かかしクラス]
早い話がCMeshModelのリスト配列。
スケール合わせとか当たり判定のチェックに使えるかなー

[当たり判定]
従来の 「点と線の当たり判定」 は矢の出現を以って破綻しました(合掌)
僕は優しいから、「納得できん!」というカタブツの為にヒントをあげよう。
①オブジェクトの原点は接地面にある。
②矢の原点は鏃(先端)にある。
③「点と線の当たり判定」とは、2つのオブジェクトの原点をつないだ線の長さで判定すること。
もう分かったね??(^_^)
で、いろいろと考えた結果、独断と偏見で 「レイ&超ローポリモデルによる判定」 に政権交代します。

[当たり判定テスト用クライアント]
上記の当たり判定をテストするために作ってます。
明日までにどうにかする…つもり。

名前:
コメント:

2009.09.01(Tues.)

にゃんこさんの真似をして日記を始めてみた。

~今日の作業記録~
  • 謎のヒープエラーの解明 →努力はした。
  • 飛行物体の当たり判定&通信 →たぶんできた。

[謎のヒープエラーに関して]
OGLibの中枢に未知のバグが生息している可能性あり。
OGLibは、new演算子で確保する領域をメモリープールから割り当てているらしく(OG_Memory.cppでnew演算子をオーバーロードしている)、
そいつがかなり怪しい。これまでに確認された意味不明なヒープエラーもここに起因するかもしれない。
…が、記述からして相当気色悪いので、僕は投げる。

[飛行物体の通信関連]
敵クラスの操作がいまいち分からんのでテキトーにやった。
当たり判定のアルゴリズムはもう少し洗練できるかも。
それでも通信量はかなり軽減されるハズなので、随時当たり判定を切り替えていく方向でよろ~。


今日インターンシップ先の社長さんに直談判した結果、あっさりと快諾いただけました。
よって、この先火曜日はゼミに参加します。ご安心を。

名前:
コメント:
  • _|\○_ヒャッ ε=\_○ノ ホーウ!! -- 花烏風月 (2009-09-02 00:16:00)


テンプレ


名前:
コメント: