いろいろ実験したいこともあり、WordPressでブログを作りました。新しく作った方は、個人的な軽い話題をメインにする予定ですが、よろしければどうぞお越し下さい m(_ _)m Y.FUJITA::NOTEPAD
Mac App StoreでPinball Tristanが承認されたのでpromo codeでダウンロードしてテスト。すると・・・ xpchelper reply message validation: sandbox creation failed: 1002 Code identity not in ACL for container ~/Library/Containers/com.littlewingpinb…
Snow Leopardを入れていたドライブが飛びました ( ̄〜 ̄;) 新しいOSを入れてしばらくすると古いOSが飛ぶことが多いようなっていうのは気のせいでしょうかw 久しぶりに復旧作業をしたのでメモに残しておきます1. まずインストールディスクで起動してディスク…
http://ja.wikipedia.org/wiki/リソースフォークWindows 2000 Serverの中のAppleShareボーリュームの中のDiskCopy 6.0フォーマットの.imgファイルの中にある天然記念物級に古いファイルをMac OS X 10.7 Lionに持ってこようとしたのだが・・・「次のディスク…
開発機にMac OS X Lionをインストールしました。Xcode 4.1を使うにはLionが必須なのですよ・・・パーテションを分けてSnow Leopardとdual bootにしていますが、なかなか安定している印象です。
テスト用のプログラムですが、描画速度の変化が見やすいように動くようにしてみました :D モデルを動かすには座標変換を行うための行列を使うことになるのですが、OpenGL ES2では行列関連のAPIがごっそり消えていますので必要なものはアプリで用意する必要が…
まずは簡単にトライアングルを1万枚ほどレンダリングするサンプルプログラムを作ってみましょう :D Xcode4のOpenGL ES Applicationテンプレートに以下の変更を行います。 == EAGLView.h @interface EAGLView : UIView { @private // The pixel dimensions of…
さて、OpenGL ES2の性能テストをすることにしたわけですが、まずテスト用のモデルを用意しないといけません。ここでは、あまり深く考えずに「ジーラ君」を採用しました:)「ジーラ君」とはこんなモデルですhttp://lwpinball.wordpress.com/2010/12/08/iphone/…
Pinball Tristanの開発過程を思い出しながらiOSのゲーム開発について少し書いてみようと思います。まず最初に行ったのがOpenGL ES2の性能テストです。ピンボールゲームの場合は60FPSの維持が最優先ですので、そのために3Dモデルの最適化が必要になるのですが…
ここ半年ほど本業のピンボールゲームのiOS版を作っておりました。これは20年ほど前に開発したピンボールゲームを全面的に書き直したものです。 当時のコードもちゃんとありましたよ ;^) といっても使えそうなものは一行もないわけなのですが・・・これだけ時…
MAD DAEDALUSリリース開始しました。どんなゲームなのかは、下記のURLでみられますよ :) http://www.littlewingpinball.com/doc/ja/special/index.htmlちなみにMAD DAEDALUSはC++で35,000行ほどです :Dとりあえずはご案内まで!
ここしばらく本体となるピンボールゲームの開発に忙しくイプシロン関連の更新が滞っております :( 新タイトル「MAD DAEDALUS(仮称)」が完成しましたら、その成果をイプシロンにフィードバックいたします、どうぞしばらくお待ち下さい m(_ _)m
Shibuya Lisp TT#2の発表の時に使った"JelloBench"です :)テクスチャマッピングされたポリゴンをSDL/OpenGLで描画しています。プログラムはすべてSchemeで書かれていますが、Intel Core2 2.4GHzのLinuxで3500フレーム/秒以上の表示が可能です。JelloBenchの…
野田 開さんのご厚意によりPS3をSSH経由で提供して頂きました m(_ _)m32bit/64bit対応でFFIもサポート済みですよ。 :)libspe2を使ったテストプログラムを作ってみました。svn trunkのイプシロンをPS3に入れると動きます^^b #!/usr/bin/env ypsilon #!r6rs …
example/sdl-ttf-demo.scmの表示です :)
やっぱりハッシュテーブルだけだとキツイです・・・で、餅は餅屋ということでMySQL 5.1 C APIのバインディングを追加しました。 $ ypsilon Ypsilon 0.9.6-trunk/r443 Copyright (c) 2009 Y.Fujita, LittleWing Company Limited. > (import (ypsilon mysql)) …
Digammaに使うJITアセンブラをtrunkにコミットしました。必要な分の小さな命令セットだけを扱うので名前は"nanoasm"です :) テストでは1000万命令以上をアセンブルしてyasmの結果と比較しています。数時間かかって面倒なのですが・・・ミスアセンブルで地獄…
ディガンマはバグと戦ってこれを倒した。 ディガンマは経験値とJITアセンブラという名前の武器を手に入れた :) Schemeのアセンブラだけだとブートストラップが面倒なのでC++だけで使えるものを作っちゃいました。IA32とAMD64(Intel64)の基本的な命令だけをサ…
id:kazuya_aさんにSDLをMac OSXで使う方法を教えて頂きました :D ypsilon+SDL+Mac OSX! SDLMain.mをスタティックリンクしなくても良いというのは素晴らしいですね!
ネイティブコード生成についていろいろと考えていましたが、Tracing JITと呼ばれるものを試してみることにしました。Tracing JITでポイントとなるのはインタープリタとコンパイル済みのコードの切り替えに起因するオーバヘッドかと思います。またYpsilonでは…
こんな風に使えます :D > (import (ypsilon ffi)) > (define libc (load-shared-object "libc.so.6")) > (define printf (c-function libc "libc" int printf (char* ...))) > (printf "test %d %f %s %e\n" 100 100.0 "こんにちは" 0.0001) test 100 100.00…
Glib, GObjectの一部も作っています。全部で4000個くらい関数があって、Gtkだけでも1万行を越えています@@。あんまりなので、現在はWidgetごとに細かくライブラリファイルを分けた状態にしています。もちろんCのヘッダーファイルから定義をぶっこ抜くスク…
SDLとCairoのバインディングをライブラリに追加しました。WindowsもOKですよ:D
Shibuya.lisp テクニカルトーク #2に参加してきました。素晴らしいイベントでとても楽しい時間を過ごさせていただきました。お世話になった皆様にとても感謝いたしております。m(_ _)m今回のトークでは簡単なゲームを作ってデモを行いました。*1 ゲームはす…
SRFI-48を追加したのですが、そのテストの過程でR5RSで不思議に思っていた'#'をPetite Chez Schemeが出力するのを目撃しました :)
R6RSのBase LibraryとStandard Libraryの一覧表を作成しました。各キーワードからr6rs.orgのhtmlページに飛べるようになっています。飛び先の一覧は逆引きSchemeチームから頂きました。感謝感謝です :)http://www.littlewing.co.jp/ypsilon/doc-draft/r6rs.h…
ソケット関係のドラフトを追加しました。 http://www.littlewing.co.jp/ypsilon/doc-draft/ドキュメントは仕様の再検討とテストも行いながら書くので時間がかかりますね。でも、これは貴重なリファクタリングの機会にもなりますので少しづつ進めるつもりです…
Socket関連のドキュメントを書くにあたりhttpを試していました。lighttpdと簡単なCGIを書いてテストしていたのですが、CGIではイプシロンの起動の遅さが気になりました。そこでFastCGIというのを試してみることにしました。
さて、いまイプシロンのドキュメントを書いているわけなのですが、そうすると何か新しいことを試したくなってきます。これは本能なのでしょうか :p
バグの方も落ち着いてきたので、APIを整理しながらドキュメントを書き始めることにしました。最初に手をつけたのは一番面倒そうなFFIとCの構造体の部分で、下記のURLにドラフトをアップロードしています。 http://www.littlewing.co.jp/ypsilon/doc-draft/