最近は、テストとかいろいろと用事があって、
これくらいの時間まで起きていたのは、久しぶりだな。
さて、今日は、他のソフトのステージセレクト画面を作ってました。
まず、他のシーンとの結合を考えて、骨組みを作って
(まだ、シーン管理の部分は作成していないので、
今までのゲームシーンの部分をそのまま継承)
次に、ボタンオブジェクトを作成。
んで、イベントを受け取れるようにして(というか、
これはC#の言語機能としてある)
それに応じての処理を書いて・・・と、これで4時間ほど。
んまぁ、何か適切なイベントが呼び出されて無かったりとか、
変な部分があるけど、あんまり集中できていなさそうなので、
とりあえずは、寝ます。
ぁ、そういや、サーバーをネットワークから
はずすとか言って、結局作業してないや。
まぁ、明日にでも、暇があったらやるとしよう。
あと、何か、ログを見てると、Vectorに登録したものを
経由してのアクセスが、若干だけどあるので、
どんなソフトかわかりやすいように、
スクリーンショットを載せようかな。
それも、早めにやるようにしとかないと。
さてと、早く寝ないと、そろそろ母親のほうが起きてくる・・・。
父親のほうはすでに起きてるけど、さすがに、
母にばれるのはまずい・・・。
とはいえない現状 orz
昨日の日記に書いたとおり、保健のテストが
延期になって、そのテストが月曜日にやるそうで・・・。
あるいみ、得点源となるから、手を抜けないのもまた事実。
あと、保健のテスト云々かかわらず、
おそらく、この期末テストは、これからを考えると、
終わりではなく、始まりの点となるのではないだろうか、と思う。
さて、明日は午前中部活なので、
あんまり、だらだらもしてられなかったり。
とりあえず、明日の帰りにWebMoney購入して、
ラグナロクをできるようにしないと名・・・。
あと、明日の午後あたり、サーバーを一度
ネットワークからはずすかもしれません。
さて、今日は、昨日の日記に書いたとおり、
古典、保健、化学のテストがあったわけですが、
とんでもない、様な事件が起こりました。
それは、2時間目の保健のテストのとき。
まぁ、簡潔にいっちゃうと、解答用紙に
答えだけが書いてあって、それが配られました orz
もちろん、名前を書くところもあるし、
テストの名称が書いてあるところにも、
「期末考査 保健 解答用紙」と書いてあるわけですよ、
ですが、本来、解答番号(1,2,3・・・)が書いてあると
思われるところに、明らかにおかしな数字(9,3,7・・・)
という風に書かれているわけです。
仮に、これであってるとしても、どうみても、
解答番号が重複してて解答できるわけがない、という状況でした。
んでまぁ、配っているうちにみんな気づき始めて、
とりあえずは、そのまま静かにテストやってろ、って
ことになりましたが、普通に解いてっても、解答用紙の
解答と思われるものと一致するわけです orz
結局、15分ほど経過して、テスト用紙回収されて、
そこでテストは終了しました。
まぁ、別に、作った先生をせめるとか、そういうわけじゃないんですがね、
こういう、明らかにミスをしないだろう、というところこそ、
ありえなさそうなミスが存在しているのかもしれない、というのが、
客観的に見た、感想。
以前に、推薦入試の作文用紙で、500文字の作文用紙を用意したはずが、
先頭数行を間違って消してしまっていて、400文字ちょっとしかなかった、
という事故と、似たような感じではないかと思う。
#しかし、感情的になって言うとしたら、
#どう考えても、印刷してるときに、一貫性がないような
#数字に気づくだろう、と。
さて、今日はというと、帰ってきてからは、
3D表示で、マウスを使ってカメラを移動できるようにしていました。
まずは、対象点を固定にして、カメラの位置を球状に動かすのを実装。
普通に、水平の角と、垂直の角、半径を定義して、やっていたわけですが、
今まで、図形問題というと、大概、平面状でやっていたので、
X = cos、Y = sinとかで、できるだろうな、とか、
変なことを考えていましたが、よくよく見てみると、
当たり前のことだけど、要素一つ増えてるから、
違う式でやらないとまずいんですね・・・。
んで、テスト勉強とか言って、紙に図形を書いて
解いた結果。
X = 半径 × cos(水平角) × cos(垂直角)
Y = 半径 × sin(垂直角)
Z = 半径 × cos(垂直角) × sin(水平角)
ということで、ネット上で調べた結果と一致しました。
ただ、これだと、それぞれの角が0のときに、
カメラの位置をこれそのままで適用すると、
カメラの位置が(0,0,0)になってしまうので、
それぞれ要素を入れ替えました。
次に、対称点をずらして、カメラを移動できるようにする。
これについては、多分こうなるだろうなぁ、という予想の範囲で、
カメラの行列に対して、Rotationさせたローカルの行列を
かけてやることで、何とか実装できました。
で、最後に、ズーム処理。
マウスホイールを使ってのズーム処理で、
まぁ、これは、先に書いたやつの半径をいじくるだけです。
これで以上完了。
んで、ここ3日あたりやってきたことを録画した動画。
http://yasuharu.net/admin/diary/img/managed.mpg
再生速度がおかしいですが、それは仕様です orz
あと、中で映し出されてる動画に写ってるのは、
水族館で撮ったペンギンの様子です。
(これぐらいしか、著作権問題が大丈夫そうなのがなかった orz)
まぁ、あと、数式とか説明の日本語が、
どう考えてもおかしそうな点とかは、
すいません orz
(一箇所、日本語としておかしそうなところが・・・。)
#それにしても、今日の日記は長いな...
ぇー、昨日も書いたとおり、まだ、2年生なので
自分が卒業したわけではありm(略
んでまぁ、3年生が卒業してったわけですが、
式の最中は、特にやることもないし、来賓の方の
話とか聞いていたわけですが、校長の話のときに、
まぁ、よくあるパターンで卒業生に詩を朗
読したりするわけですが、それが、
去年と同じでなんかなぁ、とも思ってたけど、
よくよく考えたら、今年で今の校長が
退職するそうで、自分たちのときは、
聞けないと思うと、それはそれでまた、
なんかなぁ、と。
さて、今日は、昨日の続きで、カメラをいじってみたり、
テクスチャに動画を表示するというのをやってみたわけですが、
カメラのほうは、まぁ、なんとなく感覚がつかめて、
対称点に対して、90度の位置になると、ポリゴンが表示されないとか。
多分、数学的な問題だと思うけど、ここら辺はあまり理解できていないので、
具体的な理由はわからず。
んで、テクスチャに画像を表示するのは、思ったより簡単に出きて、
ビデオ側から、描画イベントを受け取って、そのときに描画しないと、
正常に描画ができないっぽい。
あと、テクスチャに画像を表示するときは、
ライトをきっておかないと、黒で塗りつぶされてしまう。
さて、明日のテストは、化学と、古典、保健。
なんか、いろいろとやってたら、時間が遅くなってしまったので、
早いうちに、化学を覚えてしまわないとまずい・・・。
有機のところとか、覚えるのが多くて面倒だ(==
自分は、2年生なので、まだあと1年ありますが、
明日は、3年生の卒業式です。
まぁ、なんというか、今年の人は明日雨が振るそうなので、
何か、かわいそうだなぁ、とも思っちゃいますが。
さて、明日は卒業式なので、テストが中休みということで、
3Dのオブジェクトのデータとかをダウンロードしてきて、
そこから、加工→ソフトウェア上で操作→録画、ここまでやってました。
まず、加工は、ダウンロードしてきた、Shadeのファイルを
体験版を使って、メタセコで読み込める形式に変更。
確か、Wavefront Objだったか、そんな形式だったと思う。
(dxfファイルでもできないことないけど、
後からの操作でちょっと面倒になってくる)
んで、このときになぜか色情報が落ちてしまうので、
メタセコのほうでもう一度色を付け直して、
そこからXファイルへ出力。
で、先に述べたとおり、Wavefront Objだったかというファイル形式だと、
材質の情報は記録されているので、まとめて色をつけることが可能なわけです。
この作業で、およそ1時間半ほど。
んで、次に、C# + Managed DirectXを使って、
3Dオブジェクトを表示して、移動させたりとかさせる作業。
まず、前日にライトを表示したりとか、
ある程度の基礎は出来ていたので、問題は、座標管理の部分。
んで、このとき行列の知識が必要になってくるわけですが、
いろいろと試行錯誤してるうちに、行列の掛け算を行うことで、
自分のやろうとしてることが出来ることを確認。
んで、まぁ、アニメーションっぽいものをつけて完了。
この作業が、1時間ほど。
最後に、出来たプログラムを録画する作業。
これが一番面倒だったかもしれない。
まず、一番有名どころのソフトを使ってみるも、
どうにも、フレーム数が足りず、ぱらぱら漫画状態。
んで、いろいろとほかのソフト使ってるうちに、
CPUが占有されるのが問題か、プログラムを起動してる間だけ、
何か、タイマーの調子がおかしいような錯覚に襲われる。
(本当のところは何なのか不明)
んで、仕方ないから、プログラム側の方の処理を、
10分の1の速度に下げて、録画したら、
ちょうど自分が望んでいる速度になった orz
この作業で、2時間半ほど。
ということで、テスト週間真っ最中に何やってんだ、っていう話ですが、
まぁ、自分なりにいろいろと収穫があったので良しとします。
今日の世界史と英語Wはかなりやばかった・・・。
まず、英語Wのほうは、問題数確認してゆっくりと解いてたら、
見事に時間がなくて、最後はかなり焦った(==
結局、右側ほとんど書いてないし・・・。
で、世界史のほうはというと、こちらは
時間自体は、そんなに焦ることはなかったです。
ただ、あんまり十分に暗記してなかったせいか、
頭の記憶をたどっても、一文字目はでても、
そっから後が出ない状況に・・・。
記号問題なら、全然問題なく解けるんだけど、
これが、名称を答える問題となると、さっぱり orz
んまぁ、いまさら嘆いても仕方ないので、
明日以降の教科で何とか巻き返すしかないね・・・。
明日のテストはというと、数学2。
範囲は、数学3(単位上は数学2という名称だけど、
実際やってるところは数学3の範囲なわけで、
こういう書き方してます)の微分のところ。
さっき、さっと教科書の例題といた感じだと、
変なミスしなければ、大丈夫かなぁ。
まぁ、とりあえずは、今からはクリアーの
ほうの例題を解いてみるかな。
こっちのほうは、数学的帰納法での証明とか、
平均値の定理で複雑な問題とか、面倒そうだ orz
前々から言っていた、タイピングソフトを
Vectorへ登録する申請を出してきました。
それと同時に、自分のサイトのほうからも最新版を
ダウンロードできるようにしました。
タイピング
http://yasuharu.net/software/typing/
んまぁ、何とか、受験勉強が本格的に始まる前に
公開できてよかったと思います。
さて、明日は世界史と英語W。
どちらも、あんまりやってないから、ちょっとやばいかも。
てか、それ以上にやばいのは、化学のワークだけ、
いまだに終わってないということだろうか。
有機とか、ほんと覚えるの面倒 orz
まぁ、とりあえず、がんばってきます。
タイピングソフトの正式公開まで後ちょっと。
後は、マニュアルとか全体の確認を終わらせて、
それで、Vectorに送付したりとかで、今日の夜あたりには
できそうかなぁ、といったところ。
まぁ、そろそろ眠いし、あんまり変な生活送ってても、
体によくないので、そろそろねます。
さて、起きたら、化学のワーク終わらせないとなぁ。
有機のところってほんと覚えるの面倒なんだよなぁ。
芳香族のあたりだと、慣用名がやたらと
多い(もしかしたら、違うかも)ような気がするし、、、
んまぁ、目標は午前中に終わらせることかな。
んで、午後は英語Wと世界史の暗記をやって、
それが終わったら、また化学、っと。
ゲームデータの読み込みをどう実装するか。。。
まぁ、すでにベース自体はできあがってて、
一応、全体的な骨組みとしては、XMLの仕様ってとこまでは決定済み。
で、問題は、その後。
XMLで上から順番に読み込んでって、データが重複した場合どう処理するかとか、
そのときそのまま処理を続行するのか、とか、細かいところが悩ましい。
あとは、ユーザー定義の定数をどうするかとか、
うまくXMLになじませることができるかが問題だなぁ。
やっぱり、こういうときは紙に書いて、設計するべきかなぁ。
何とか、気分的には正常な状態に戻ったのかな。
それがいいことなのか、はてさて、悪いことなのかは別として。
さて、明日からはとうとう期末テストです。
あんまり、手を抜きすぎると、まずい結果になりますので、
それ相応のものでのぞんでかないとまずいです。
んで、明日は物理、現代文、地理の三点セットです。
問題は、物理かなぁ。
テスト解きながら理解するっていう状況になりそう。
まぁ、何にしても、がんばりましょう、っと。
昨日の日記の続きのようなものです。
何とか、勉強ができる程度には戻ってきたみたい。
しかし、冷静に考えれば考えるほど、なぜ、
こういう状況になるのかってのが、不思議でたまらない。
ある意味で、「パンドラの箱」や「禁断の果実」というたぐいのような、
自分の中での、ふれてはいけないもの、いわば、「禁忌」に
ふれてしまってるのかとも考えてしまう。
さて、そんな中で、そのアニメをもう一度みたいだとか、
そんな考えが浮かんでいるわけですが、そんなことしてたら、
もちろん行動に対する結果はわかり切ってるので・・・。
しかし、何かずっと頭の中から離れないんですよね。
布団に入ったりすると、情景が浮かんできたりするし、
もう、何が何だか。
ついでに、それが原因だろうけど、プログラムを組む気力が
ほとんど無いに等しい・・・。
やらなければならないことはいくらでもあるのにね・・・。
はてさてどうするべきなのか。
とりあえず、今日はそのアニメを見ないにしても、
金曜日から土曜日にかけてでも、再度見てみようかなぁ、という
気がわいてきてしまう。
しかし、それをやったら、自分自身どうなるのか。
好転するか、はたまた、底なし沼にはまるように悪化するのか。
しかし、結局のところ、全く同じものを見るので
あれば、、、と思うが、そうでもないのかなぁ。
さて、まぁ、テスト勉強がんばってくるか・・・。
面倒くさいこと全般に、腰があがらないような気がしてきた・・・。
先週の土日に、友人から借りたアニメのDVDを見ていたのですが、
最初は、こんなものおもしろいのか、と思いつつ見てたら、
何か、見終わってから、ずっと余韻が継続してるのですが、
こういうのはどうしたらいいんでしょうか。。。
現在、テスト週間中で、課題をやろうにも、
課題が手につかないような状況で、ホントまずいです。。。
ホント何なんでしょうかこの気持ち。
ただのアニメなのに、まだ、これが自分自信が直面している
現実世界での出来事(例えば、身近な人との別れとか)であるなら、
それはそれで、運命かということで、流されるままでも
かまわないような気がするけど、これの原因が、
たった一つのアニメだったというのが非常に恐ろしい。
さらに、言ってしまえば、勉強に対する意気込みとか、
部活に対するそれとかが、かなり薄れてしまっている感じまで
抱いているような状況です。。。
何でなんだろう。。。
本当に困った。。。
打上げ予定日 : 平成18年2月21日(火)午前6時28分(日本標準時)
とのことのようです。
まぁ、あくまでも予定ですが、早めに起きてみてみようかと思います。
さて、昨日気になったManaged DirectX Moblieを試してみました。
やってみた感じは、ほんと代わり映えがしないなぁ、って感じです。
やっぱり、昨日見た感じの通り、あまり、Windows版の方と変わらないし、
デバイスを作成するときとか、一部コードをコピーしてきたのだけど、
ちょっと書き換える程度で、動くようになった。
まぁ、実際のハードウェアで動かしてるわけじゃないから、
実際の動作はあまりわからないけど、エミュレータで動かしてるときを
見てる感じだと、.NET特有の起動の遅さをのぞけば、
しっかりと動いてるように見えます。
ぁー、何かこんなことやってたら、ウィルコムの
5.0のやつが欲しくなってきたかも・・・。
まぁ、でも、まだ、今のやつは購入から、
5ヶ月ほどしか経ってないので、買うとしても、
大学に進学してからだろうなぁ。
んで、今回作ったのは、いわゆる定番のHello World。
ソースコードは以下のもの。
使い方は、特に書きませんが、まぁ、わからなかったら
適当に聞いてくれれば、答えるかもしれません。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Microsoft.WindowsMobile.DirectX.Direct3D;
namespace DeviceApplication1
{
public partial class Form1 : Form
{
Device mDevice = null;
Microsoft.WindowsMobile.DirectX.Direct3D.Font mDirectXFont = null;
System.Drawing.Font mFont = new System.Drawing.Font("MS ゴシック", 16, System.Drawing.FontStyle.Bold);
Sprite mSprite = null;
}
何ですか、これ。
MSDNのライブラリ見てみても、どれもこれも、Windows版の
Managed DirectXのクラスと代わり映えがしないような気がするんですが orz
つか、もしかして、Microsoftの中の人、ライブラリが作るのが面倒だから、
Windows版のManage DirectXのマニュアルをコピペしてるんじゃないで(ry
まぁ、その可能性は、サンプルプログラムとかもあるようなので、
おそらく違うと思いますが。
Spriteクラスとかもあるようだし、Draw2D関数は無いけど、
Draw関数はしっかりとあるし・・・TextureLoaderとかもあるし・・・。
(そんなところしか目の付け所がない自分もアレだな orz
てか、よくよく考えてみると、それぐらいしか使ってない orz)
しかし、これは、Pocket PCなんかで動作させることができるんでしょうかね、正直。
ただでさえ不安定なこのOSで、、、こんなもの動かすことができるんでしょうかね。
とりあえず、暇があったら、エミュレーター上で動かしてみようっと。
こんな時間まで起きてたのは久しぶりのような気がする。
さて、今日はというと、計算を行うソフトを作ってみました。
まぁ、要は、電卓のようなものですが、ちょっと違ったりします。
計算自体は、通常の四則演算や余りを求めたり、累乗したり、
平方根を求めたりとか、そこら辺は通常の電卓と同じです。
今回作った電卓の特徴は、これに加えて、
三角関数、対数関数、円周率、e、乱数などに対応していることです。
また、グラフを作成する機能もついていて、
かなりめちゃくちゃなグラフかいても、ほとんどの場合、
描画することができます。
(正確にできてるかどうかは不明 orz
あと、Logの低やルートの中身が負だとまずかったり、
分数関数の分母が0になると、まずかったりするのは、
とくには対策していなかったりする。)
んでまぁ、公開するかどうかについては、
元々、あるプロジェクトの自分が担当したところが
今回のソフトの原型の部分だったので、
そちらの方で、一度許可を取ってからじゃないと面倒なので、
すぐには公開できそうにないです。
あと、動作には、.NET Frameworkが必要です。
ちなみに、Pocket PCで動作することを元に
設計してあるので、Compact Frameworkでも動作します。
(どちらも、Ver1系列)
いろいろとやってたらもう11時だよ。。。
まずいな、、、さっさと寝ないと明日補講だ orz
とりあえず、最低限やらないといけないものだけやって、
さっさと寝るとしよう。
明日は、推薦入試の関係で、学校が休みです。
まぁ、期末まであまり日もないので、結局勉強しないといけないんだけどね。
なんか、疲れた。。。
とりあえず、学期末のテストに向けてかないと、
そろそろまずそうな予感。
最近、自分自身では特に感じていないのですが、
何か、調子がおかしいです。
事の発端は、先日の土曜日の午後。
ちょっと用事があって、自転車で出かけて、
用事を済ませる間は特に問題はなかったわけです。
(とはいっても、話を読んでいけばわかりますが、
このこともあくまでも自分の中でそう思ってるだけで、
実際は違うのかもしれません)
用事が終わって、家に戻ってきて、いつも通り
ガレージ(のようなところ)に自転車を
おいた"つもりだった"わけですが、
その後、妹が帰ってきて、言われたのは
「何で、玄関の前のところに(自分の)自転車がおいてあるの?」
と、一言。
「は?」と思いつつ、玄関を確認してみると、
確かにそこには自分の自転車がおいてある。
もちろん、自分自身にはそんなことをした記憶が
ないわけですから、まず、誰かが勝手に上に上げたのだろうか、と
考えるも、鍵は前と後ろ両方ともかかっているし、
第一、自分の乗っている自転車はとても重くて
(自分で持ってみた感じだとだいたい20キロぐらい)
とても、そんないたずらをするにしても、
面倒な代物なわけで、まずそんなことをする人は
いない、という結論に至ったわけです。
で、いろいろと考えているうちに、自分が無意識で
やったのかなぁ、と考えたわけです。
まぁ、半年前まではそこにおくのが常だったので、
体が覚えているというのは、あり得なくもないのです。
そこで、当時の状況をもいだそうとしました。
しかし、思い返しても、全く思い出せない。
いつもなら、何かしらの記憶の糸口が
導かれるはずなのに、全く持って、
思い出される兆しはない。
逆に、用事を済ます前の、自転車を出すときの
光景は手に取るようにも、見えてくるわけです。
もう何が本当なのかわかりませんでした。
そういうわけで、その場は自分が無意識の
うちにやった、という結論に至りました。
ただ、なぜ今頃になって、無意識的な行動を
起こしたのかがわからないです。
さて、この話には続きがあります。
実際、そんなことが起きたところで、
自分で確認したわけでもないので、
さほど信じていなかったわけです。
しかし、昨日になって、その現象に続く
ようなことが起きていた"よう"なのです。
"よう"というのは、今回も同じく全く記憶にないのです。
それは、昨日、風呂に入った後に、風呂のふたを
閉め忘れていた、ということだそうです。
些細なことと思うかもしれませんが、
全く記憶にないので、怖いんです。
その話自体は、先ほど母に聞かされました。
昨日は、風呂に入ったのが自分が最後で、
朝、母が風呂を見たときに、風呂のふたが開いていた、
ということのようです。
まだ、父が帰ってきていないので、もしかしたら、
父が開け放したままにしていたというのも考えられますが、
現状では、自分が風呂のふたを閉め忘れた、というのしか
考えられないわけです。
今回も、先回と同じように、記憶が全くありません。
なんか、ほんとわかりません。
さて、いろいろとあったわけですが、
これが今後どういう方向に転ぶのか、
もしかしたら、思い過ごしなだけか、
自分自身が全くわかりません。