こんなのがコンパイラを通るんだね

コンパイラとインタプリタの差がよく分からない。 一度全部変換して、それを実行するのがコンパイラ。 一行ずつ実行していくのがインタプリタ だとして、例えばソースを一度全部眺めて関数定義を全部メモしておくけど、コードの実行は一行ずつ読む。なんて場…

気が付いたら1ヶ月も経っていやがる。

お勉強中。 とりあえず 字句解析 構文解析 バーチャルマシン という順序で勉強するべきなのだろうと思います。AS3のArrayクラスは配列としてもQueueとしてもStack的にも使えるので便利だと思うのですが、あえて言うならpeekが欲しい。 var stack:Array = new…

本格的に作るのは難しい

本格的にスクリプトエンジンを組もうとすると再帰下降構文解析やらEBNFやらを覚える必要があるみたい。 ネガティブな話だけどいきなりそういうのは無理っぽいので、もっと単純に考えようと思う。 簡単でグラフィカルに動けばいいという方針で。

放置中だったけど

再開しようと思う。 アウトプットは必要だと思ったので。 技術レベルが低くてもキニシナイ!

C++ 配列 長さ 取得

これでググっても案外出てこない。 C++でこんな風に書きたいと思ってるんだろうけど不思議なもんで出てこない。 int[] ary = new int[10]; system.out.println(ary.length);//10 あいかわらずmelponさんのパクりだけど書いてみよう。 #include <iostream> //配列クラス</iostream>…

Luaさわってみた。

ただ計算するだけ。ここから http://luabinaries.luaforge.net/download.html lua5_1_4_Win32_dll8_lib.zip を解凍して適当なフォルダに置いてインクルードパスを通して、プロジェクトフォルダ内に以下二つを入れれば動く。 lua5.1.dll lua51.dll 難しい使い…

C++クラスの書き方が面倒くさい訳

Cが全然分からないころの話。 javaのように1クラス1ファイルに書かないのはなんで? メンバがポインタばっかりなのはなんで? という疑問を持ちながらコーディングしてるともやもやして嫌でした。 もやもやがいやなのでjava風に書いていたら当然のように詰ま…

ノベルエンジンはおいといてC++のお勉強を始めた

仕事があんまり暇なんでC++をがっつり覚えたいなと。 javaやC#みたいな心やさしい言語をばかり触っていたため、ちょっと前のBrewで泣きそうになったので、Cをもう一度最初から触ってみています。 そんな感じでひと月ちょっと経ちましたのでいくつか思いつい…

ゲームプログラマになる前に覚えておきたい技術

ADVエンジンはだいぶほっぽらかしです。 何となく縦シュー作ってみたりiアプリ用ライブラリ構築してみたりいろいろしています。 昨日本を買いました。 「ゲームプログラマになる前に覚えておきたい技術」 http://d.hatena.ne.jp/akkera102/20081117/p1 プロ…

ギャルゲーってなんでギャルゲーなん?ギャルじゃないじゃん。

でもだいたい絵に描いたような美少女じゃん。美少女ゲームじゃん。 渋谷を舞台にしたらギャルゲーでも良いと思うんだ。 だから428はギャルゲー。 ギャルゲー買うためにwii買わないと。

簡単な文法って難しい

ある程度固まってきたエンジンの文法について友人に意見を聞いた。 俺「どう? XMLならHTMLっぽいし誰でも覚えられそうじゃない?」 友「ない」 だそうです。 どうしたもんか。

ロゴ〜タイトル画面〜ゲーム開始 の流れを作ってみた

ボタンが押されるまで次の処理を呼ばない用にすればいいのだから選択肢と同じ感覚でいいんだよなーと思いながら作った。 一応それっぽくなった。 FlashのノベルエンジンはLemoNovelが頭一つ抜けている格好だけど、他にもそれっぽいことしている人が何人かい…

バックログの実装

マウスホイールを上に回すとバックログします。 ホイールの憑いていないマウスは後でボタンを作って対応しようかと。 ひとまず最低限の機能が揃ったので(セーブも音もタイトル画面すらないですが) ADVエンジンを作るにあたって一本ゲームを作ってみようか…

TIPSを実装 シナリオデータなどを外部に変更

シナリオデータなどを外部読み込みにしました。 中身が気になっている人がいるかどうかは分かりませんが以下に置いてあります。 初期設定ファイル http://www3.ocn.ne.jp/~lime/fla/xml/ini.xml シナリオファイル http://www3.ocn.ne.jp/~lime/fla/xml/Scena…

ADVツール作成 画像の表示、移動などを実装

『明日の君と逢うために』をちょいちょいやってます。 話の内容は良く覚えてないけど、とにかく絵がぐりぐり動くのが気持ちよくてそれだけで楽しい。 ということは話を作る技術がなくても動かしまくれるADVツールなら自分でも面白おかしいADVが作れるかも? …

きーみーだーけーをー きみーだーけをー

言ってみたかっただけ。 クラナドみたいなの作りたかったんだよな。 なのになんでプログラマやってんだろ。

明日の君と逢うために

ノベルエンジンを作るにあたって、システムの凝ってるエロゲはないかと友人に尋ねたところこれを上げてくれました。 実際やってみると確かに凝ってますね。 ズームしたり立ち絵が歩いたり背景がアニメーションしてたり。 自分が最近のエロゲをやってないだけ…

F50fd

先週カメラを買いました。 機種はFujitsu FinePix F50fd 名機と呼ばれたらしいF31fdと最近売れてるらしいF100fdの間の子で評価も良かったり悪かったりいろいろな機種です。 カメラについてはまったくの初心者なので、とりあえず携帯のカメラより綺麗になれば…

XMLまとめ

XMLの構成 XMLは要素(Element)と属性(Attribute)で構成される。 要素値の呼ばれ方はコンテンツとかプロパティとかあるけど、ここでは以下の呼び名で統一する。 要素値を持つもの <要素名 属性名="属性値">要素値</要素名> <ElementName AttributeName="AttributeValue">ElementValue</ElementName> 要素値を持たないもの <要素名 …

ノベルエンジンに変数宣言とか計算とか

そういえばADVといえばフラグを立てなければいけないのだった。 ので変数くらいは必須かなと思う。 実際吉里吉里もNScripterもLemoNovelも変数くらい宣言できてる。 とりあえずこんな実装にしてみた <Expression>hoge = 10 + 5</Expression> 変数hogeに対して10+5の結果を渡す。 hoge…

シナリオデータをXMLにしてみた。

ちょっと更新。 使ってる背景はむきりょくかん。さんの素材 http://mukiryokukan.sakura.ne.jp/ 立ち絵はwikipediaのウィキペたん頁から拝借。 都合良く透過pngだったのでお借りしていますが問題あれば直します。 カンマテキストで適当に入力していたシナリ…

基本だけ

とりあえずメッセージを表示できるだけやってみた。 中はゴリゴリ書いてるけどめちゃくちゃ重いってほどでもないね。

AS3でノベルエンジン作ろうぜ

理由は二つ。 1.割と暇してるので 2.遊ぶ金がないから そんな気になってきた。 探してみるとFlashでノベルゲーム作ってる人は割といるし、既にエンジンもあるんですね。 ・LemoNovel AS2のノベルエンジン http://www.le-mo.jp/lemo/products/LemoNovel/・THE…

FlashDevelopのASファイルテンプレートを変える

FlashDevelopで新規クラスを作成するとこんなコードになる。 package foo.bar { /** * ... * @author DefaultUser (Tools -> Custom Arguments...) */ public class Hoge { public function Hoge() { } } }個人的に public class hoge{派なので毎回これを直…

ARMは未だ来ない

なので今月は他部署がやってたFlashの仕事をしこしこやってた。 既に時間がない状態だと聞いていたから大変なのかと思ったら結構時間にゆとりがあってあれこれ遊べた。 これから結構こういう仕事がアルっぽいのでiアプリで作ったライブラリを移植してみよう…

ARMが来ない来ない来ない

シコシコBREWing どうなってるのかは未だ良く分かりませんがARMコンパイラはまだきません。 締切も伸びたとだけ伝わっていて、具体的にどうなってるのかはわかりません。 とりあえずシミュレータ上で動けばいい的な流れだけど 「さぁ! シミュレータ上で動い…

X3360でエンコ

X3360(Q9550同等)を買ったのでエンコしてみた。 Pentium4 2.4Cだった頃は毎日毎日エンコしてたけどここ数年は離れていたのでどの程度パワーアップしたのか気になっていた。 環境は CPU:X3360(2.83GHz) MEM:DDR800 2GBx2 M/B:P5K PRO HDD:7200回転のやつ 使用…

また一人辞めて行った

消去

アプリを移植してて気がついたこと

アプリを移植してて気がついたこと 他言語の予約語は使わない javaでクラス内を空っぽにする関数にdeleteという名前の関数を使用していたけど、 当然Cに移植する際にぶつかってしまい書き換える必要が出る。 他の言語で予約されている文字列は可能な限り避け…

char*型を関数に渡して文字列を代入する

char*型を普通に渡しても配列を渡すように受け渡し元のデータは変わらない。 //関数側で配列内のデータを書き換える void func1(int num[]){ num[0] = 7; } //関数側で文字列を書き換えたい? void func2(char* c){ c = "new name"; } int main(void){ int n…