さくらんぼのlambda日記

lambdaちっくなことからゲーム開発までいろいろ書きます。

2010-01-01から1年間の記事一覧

blackthorn-game-engineの2D描画部分を読んでみた!

blackthornというCommon Lisp向けのゲームエンジンの存在を最近知りました。MOONGIFTさんの紹介記事。 http://www.moongift.jp/2010/11/20101101100/これの内部を最近読んでいます。今回は2D描画をどうやって実現してるのかなと思って読んでみました…

コミケ受かった!!

わーい。さくらんぼ亭の公式サイトでも告知してますが冬コミ合格しました!! 参加日は12/30(2日目) 木曜日、スペースは「東地区 "R" ブロック 22a (R-22a)」です。さて、気合を入れて製作作業に取りかからねば……。 そろそろ、逆引きCommonLispの続きやりたく…

実家に帰還 / Facebookも始めてみた。

最近何故か一気に広まってるFacebook。自分も流れにのって始めてみました。 http://www.facebook.com/profile.php?id=100001689460198それは置いておいて。 実家に帰ってきた! 連休と会社を休んで実家に帰ってきました。ちょっと悲しいこととうれしいことが…

LispでWindows用バイナリを作ったログ

はい。表題の通りです。 ゲームはいくらなんでもExe形式で配布したいので、Lispでバイナリを生成する方法について調べてみました。ただし、Windows 7 64bit環境でです。色々試しました。 CLISP in 32bit SBCL in 32bit CLISP in 64bit SBCL in 64bit Clozure…

Why Lisp for Game Development?

自分のためにどうしてゲーム開発にLispを選んでいるのかというのをまとめておこうと思ったのでまとめてみます。 前提 自分の場合であるので、他のひとに聞くと全然違う意見が返ってくると思います。 前提としてゲーム開発向けであることにも注意してください…

CLOS雑感

最近、Lispでゲーム作っています。それにCLOSを使ってみています。 理由はいくつかあるのですが、大体以下の通り。 CLOSを利用するとデザインパターンが使える 状態遷移マシンの表現が楽 ガチガチにLisperな人だったらどっちも不要なのかもしれませんが、自…

気がついたこと

話題が全部インドア!!!!!えー、外に出ましょう自分。ほら今年コミケにも出てないから、マジ外行ってないよ?死ぬよ?

ごくごく普通の日記

久しぶりに、普通の日記を書いてみようと思った。 とりとめなく書こうと思う。 アニメとか 最近、ストライクウィッチにはまりました。ペリーヌさんとリーネさんが好きです。問題は流行に相当遅れているせいで、第一期みてないことですね。時間見つけて借りる…

分かった

ジェネリック関数を定義するばあいには引数に互換性がないと困るようです。 on lispにもそんな感じの事が載っていました。 CLOSは名前が同じ全てのメソッドの引数リストが合同でなければならないと要求する.引数リストが合同なのは,同数の必須引数とオプシ…

CLOSの同名メソッドの扱いがよく分からない...

余りそういう使い方を想定していないのだと思いますが、自分の用途では必要になったのでメモがてら。C++だと同名のメソッドで引数が違うものを定義できます。 void funcA(int var1); void funcA(int var1 , int var2); こんなの。 まぁ、キーワード引数とか…

色々インストール

emacs sbcl slime subversion vim あたりはapt-getでとりあえずインストールしておく Emacsのフォントがでかい これは仮想マシンのバグというか仕様? 少しだけ調べてみたDPIを取得できないとこうなってしまうらしい? http://ubuntuforums.org/showthread.p…

Ubuntu 64bitでも環境構築したよ!

さながらインストール厨のごとくインストールと設定ばっかりしてます...。さてUbuntuの64bit版を開発環境として構築してみました。とりあえず目標の環境 日本語化 Emacs + Slime + SBCL lispbuilder-sdl インストールの問題 特に問題なくインストールできま…

Windows環境構築メモ

前の記事の通りゲーム開発的なクロス環境を逐次仮想環境に移行するつもりです。 今回はとりあえずWindowsの移行のログです。 Windowsのインストール完了後行なった作業 とりあえず、以下の環境を構築しました ckw + nyacusのインストール MinGW + MSYS GnuWi…

Parallels買っちゃった!

Ubuntu環境を刷新をしようとしたら見事に環境を破壊して、Windows/Macしか起動できなくしてしまいました。復旧がんばるかなぁとも思ったのですが、色々考えて仮想環境の整備をしたほうが良い気がしてきました。なぜかというと、Ubuntuの環境整備を始めた理由…

半年くらいに触った言語のまとめ

なんか、Blog更新しない間に色々な言語と遊んでました。それらを一度纏めておこうと思ったので纏めます。 Clojure Scala jQuery + JavaScript Python こんな感じで色々と遊んでました。 結局いまいち自分のなかにしっくりきてない感じ。 一番使い道がありそ…

Shibuya.lisp Hackathon #1参加するよ!

なんか楽しそうだったので、Shibuya.lisp Hackathon #1に参加しようかと思います。ATND: http://atnd.org/events/7595Lispで何かつくろうとするモチベーションが最近下がりつつあるので、こういう場を有効に利用させて頂けたらなと思って参加希望してみまし…

もう疲れた

なんか、色々頑張ったんだけど。疲れたので辞めます。無駄な事にエネルギー使っても仕方がないです。なので、Blog頑張って更新するモードに突入しようと思います。

ちなみに

lispbuilder-sdlは最近Mac用のバイナリがアップされているので、Macユーザにも親切になったみたいですね。

少し悲しかったこと

最近ゲーム開発の環境をLispに移行したのですが、その環境というのは以下のような環境です。 SBCL lispbuilder-sdl lispbuilder-sdl-mixer lispbuilder-sdl-image lispbuilder-sdl-gfx という非常にLispbuilder-sdlに依存した環境です。まぁ、それは良いので…

作業環境について

基本的にLispbuilder-sdlをつかって作業してます。この環境構築が意外と面倒でした。とくにMac OSXの環境に関してはどうもSDL自体の整備が今ひとつな感じなせいもあって苦労しました。 SDL.framework SDL_gfx.framework SDL_image.framework SDL_ttf.framewo…

最近やってること

最近は仕事もそんなに緊急なタスクとかはない時期だったので粛々とお勉強する日々です。最近はScalaがおもしろいと思ったり、Clojureがおもしろかったりと並列プログラムを視野にいれているプログラミング言語の勉強してることが多いです。あと、Lispでゲー…

コミケについて

なんか、残念なことにコミケ落選してしまったので夏に向けて作成していたゲームは冬合わせに変更となりました。頑張って作ってたのに残念です。

近況報告

最近はワールドカップ見てて更新放置していました。ダメですねもっとしっかりしないと。

slimeのインストール

slime公式サイトからslime最新版を取ってくる。 http://common-lisp.net/project/slime/snapshots/slime-current.tgzslimeを、"~/site-lisp/slime"に展開しておく。.emacsに以下の内容を追加する。 ;; lisp (setq inferior-lisp-program "C:/SBCL/sbcl.exe")…

Meadow のインストール

Meadowの最新版をダウンロードしてくる。 http://www.meadowy.org/meadow/dists/3.00/setup-ja.exe最低限のものをインストールすれば良い。 インストール途中でImageMagickのインストールが始まるので、一緒にインストールする。

SBCLのインストール

公式から1.0.29のインストーラをダウンロードしてくる。 http://jaist.dl.sourceforge.net/project/sbcl/sbcl/1.0.29/sbcl-1.0.29-x86-windows-binary.msi インストールするときは"C:\SBCL"のようにスペースを含まない場所にインストールする必要がある。~/.…

Cygwinのインストール

Msysでも良いが、情報仕入れやすい&色々便利なのでCygwinをインストールしておく。

整数と浮動小数点を相互変換する(精度の変換)

これは先ほど紹介したfloor、ffloorなどで変換できますね。

乱数を生成する

randaomで! CL-USER> (random 10) 5 CL-USER> (random 10) 9 CL-USER> (random 10) 5

平方根を求める

sqrt関数で! (sqrt 9) 3.0