サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
やる気の出し方
hammm.blog21.fc2.com
管理人(はむ!)は最近スクリプト言語Lua(るぁ)に入れ込んでいます。と思ったら「ARカプセル」とかやってます。 ※iPhoneの方は右上の「PC」ボタンでPC用表示のほうが良いと思います。 今まで公開してきたLuaのSJIS版パッケージでは、最近公開されている各種モジュール類との相性が良くない状態でしたので、 LuaBinariesのスタイルに従ったバージョンを作成しました。です。 SJIS対応版ソース + exe + VC++6.0/VC++2005プロジェクト lua5_1_3_Win32_mbenc_a2.zip (2008/6/26 1133892byte) その他Lua関連ダウンロードエリア においてありますので、持っていってください。 基本的には、LuaBinariesのlua5_1_3_Sources.zipのsrc内にSJIS化パッチを当ててビルドしなおしたものです。 た
Lua関係更新していなくてごめんなさい。 Lua5.2のwork(2)(アルファ版もしくはベータ版のようなもの)が出ていますね。根本的なところはそんなに修正がないので一安心。ただグローバルテーブルの入れ替え機能のあたりがかなりいじられている模様。ビット操作ライブラリの標準化などもされています。 公式: http://www.lua.org/work/ 変更点などはドキュメントの下のほうにあります。 バイナリ(SJIS化無し)はこちら: http://luabinaries.sourceforge.net/ それで・・・ここ数カ月、個人で作っていた怪デバイスについて、集大成として、以下の動画を公開しました。 【ARカプセル】ついにモニタから出てきてくれた (5:20) 「存在感」もしくは「そこにいる感」を重視しています。 ARToolkit関連の四角形マーカーを使った素晴らしい動画はたくさん
LuaはC言語で実装されたVMなわけですが、最近は別の言語で実装される例がいくつかでてきています。 ちょっとまとめておきます。 flua 0.1 : Lua VM on Flash(ActionScript) Flashの上で動作するLuaVMです。これを使えば、ブラウザ上で動作するFlashの中で、Luaスクリプト(バイナリ状態のもの)を動作させることができる・・・というわけです。「インストール」せずにクライアントマシン上でLuaスクリプトを動かす唯一の方法といえるかもしれません。 ※実装はまだかなり初期の状態のようです。 Kahlua rev52 : Lua VM on Java(J2ME) Javaの中でも、携帯などで動作可能なJ2ME仕様の上で動作するLua VMです。 Javaといえば、JRuby,Jython,Scalaなどでスクリプト言語関連がにぎわっているところですね。 A
ずいぶん間をあけてしまいましてすみません。昨年前半は主に本を書いていた分、最近はプログラミング仕事モードといった感じです。 ぎりぎりになってしまいましたが告知させて頂きます。 IGDA日本ゲームテクノロジー研究会(SIG-GT)第12回研究会「ゲームにおけるスクリプト言語の現状」 http://www.igda.jp/modules/eguide/event.php?eid=58 ※今現在で予約率が94%、予約締切が13日(火)13:00までとのことですので、もし参加されるならばお早めにどうぞ m(_ _)m 先日Luaスクリプト関連の本を書かせて頂いたわけですが、そもそも、 「ゲームに使えるスクリプト関連の資料とか、経験に基づいた指針となるような情報が(日本語では)得難い」 というような思いから、結局自分で書くという方向で機会を頂きました。 本だけでなく、ゲーム開発系のプログラマーがそう
ソフトバンク・クリエイティブよりお話があり、Luaなどのスクリプト言語を使ってゲーム開発を効率化しよう!という趣旨の本を書かせて頂いています。 Luaの解説書といえば、「入門Luaプログラミング」(上野豊著)があり、最近書店でもよく見かけるところです。Luaの文法やスクリプトの書き方、使い方といった、Luaスクリプトそのものの使い方は、こちらでかなり網羅されているものと思います。 一方、現在書かせて頂いている本では、「C/C++のプログラムにスクリプト言語(Lua)を組み込む」ということに焦点をあて、 ・開発環境の作り方 ・何をスクリプトにするべきか ・スクリプトをもっと活用する方法 ・つまづきやすい点 ・エラー処理の手法 といったポイントを、特にゲーム開発の場合を例として、掘り下げて解説をしています。 また、「なぜ、スクリプト言語を組み込むことで(ゲーム)プログラムの開発を楽に、柔軟にで
管理人(はむ!)は最近スクリプト言語Lua(るぁ)に入れ込んでいます。と思ったら「ARカプセル」とかやってます。 ※iPhoneの方は右上の「PC」ボタンでPC用表示のほうが良いと思います。 Luaスクリプトのデバッグにはどのような方法を使われていますか?スクリプトでは古きよきprintデバッグもかなり有用ですから、printデバッグで済ましてしまっている方も案外多いかと思います。 とはいえ、スクリプトが想定外の動作をした場合などは、いわゆるデバッガが役に立ちます。特に、グラフィカルなデバッガを使うと生産性はかなり向上するといえます。 しかしLuaのグラフィカルなデバッガには、無料・商用含め、優秀なものがほぼ存在しませんでした。 特にLuaの場合、主な用途が他のアプリへの組み込みということもあって、ダイナミックリンクする場合、スタティックリンクする場合、動作をカスタマイズする場合など、使わ
管理人(はむ!)は最近スクリプト言語Lua(るぁ)に入れ込んでいます。と思ったら「ARカプセル」とかやってます。 ※iPhoneの方は右上の「PC」ボタンでPC用表示のほうが良いと思います。 データベースの「設計図」にあたるER図を描いて、さらにMySQLにテーブルの状態を反映させたりするのには、DBDesigner4 がなかなか便利です。 マウス操作でお絵かき感覚でDBモデルをエディットすることができます。 http://fabforce.net/dbdesigner4/ しかしながら、DBDesigner4の本流の開発は既にストップしています。DBDesigner4の開発者はMySQL社にうつって MySQL Workbenchを開発していますが、まだこれはアルファ版で、あまり実使用に堪えるものにはなっていません。いっぽう残されたDBDesigner4のほうも、全体としては十分実用にな
管理人(はむ!)は最近スクリプト言語Lua(るぁ)に入れ込んでいます。と思ったら「ARカプセル」とかやってます。 ※iPhoneの方は右上の「PC」ボタンでPC用表示のほうが良いと思います。 Virtual Dimension(バーチャル・ディメンジョン)とは、いわゆる仮想デスクトップツールのひとつで、デスクトップを何枚も切り替えて、擬似的に広いディスプレイのような環境を実現するツールです。 最近はデスクトップの液晶が大型化しているので、こういったツールの出番も減ってきているのかもしれませんが、 ・モバイル系ノートPC ・仕事と息抜きで気分を変えたい場合 などに威力を発揮するのではないでしょうか。 動作は比較的高速で、非常にすっきりとまとまっているだけでなく、案外高機能です。 特に、今いるデスクトップ上にあるウィンドウ以外はタスクバーに表示しないようになっており、いつもタスクバーが混雑して
管理人(はむ!)は最近スクリプト言語Lua(るぁ)に入れ込んでいます。と思ったら「ARカプセル」とかやってます。 ※iPhoneの方は右上の「PC」ボタンでPC用表示のほうが良いと思います。 あれからいろいろML内を探し回って、 このあたりとか このあたりとかを参考にしましたが・・・ とりあえずこんな感じになりました。 プログラムの最初で use_explicit_globals() とすれば有効になり。 global("変数名",値) または global "変数名" でグローバル変数を定義できます。 定義していないグローバル変数に値を代入したり使ったりすると ランタイムエラーになります。 これで前回書いた「弊害」はほとんどなくなるかなと思います。 あくまでテストは甘いのであまり信用しないように・・・。 ※このコードは自由に使ってもらってかまいません。 追記:このあと少し修正しました。>
管理人(はむ!)は最近スクリプト言語Lua(るぁ)に入れ込んでいます。と思ったら「ARカプセル」とかやってます。 ※iPhoneの方は右上の「PC」ボタンでPC用表示のほうが良いと思います。 Skype 2.6BETAで、Skype APIにオーディオストリームに直接アクセスするAPIができたというので触ってみました。 APIの概要はこちらにあるのですが、正直わかりにくいです。 Skypeからのサウンドストリームのサンプルを得るには、まず、Skype API経由で ALTER CALL 123 SET_OUTPUT PORT="23456" のようなコマンドを送る必要があります。 上記のコマンドだと、音がまったく聞こえなくなるので、以下のようにすれば とりあえず今までの方法で音がスピーカーから聞こえます。 ALTER CALL 123 SET_OUTPUT SOUNDCARD="defau
管理人(はむ!)は最近スクリプト言語Lua(るぁ)に入れ込んでいます。と思ったら「ARカプセル」とかやってます。 ※iPhoneの方は右上の「PC」ボタンでPC用表示のほうが良いと思います。 ちょっと気になったので調べてみました。 Tri Stripper http://users.pandora.be/tfautre/softdev/tristripper/ BSD風ライセンスで使いやすいほか、NVTriStripではクラッシュするようなメッシュにも適用可能で、変換にかかる時間が高速とか。 描画速度ではNVTriStripにやや劣る程度らしい。 NVIDIA NVTriStrip http://developer.nvidia.com/object/nvtristrip_library.html 割合いろんなところで使われているようです。デファクト? ただし古め。 ATI Tootle
管理人(はむ!)は最近スクリプト言語Lua(るぁ)に入れ込んでいます。と思ったら「ARカプセル」とかやってます。 ※iPhoneの方は右上の「PC」ボタンでPC用表示のほうが良いと思います。 eguoさんの日記(無断でアンテナ捕捉させて頂いてます m(_ _;m )でstackless pythonに触れているのを見て、そういえばスタックレスって何だっけな、と思って再度調査。まとめることにしました。 MLなどを見ていると、Lua5.0(5.1)はスタックレス(stackless)であるそうです。Lua4.0はスタックレスではなく、Lua5.0でコルーチンを実装するためにスタックレスにしたのだそうな。参考までに、pythonは公式のものはスタックレスではなく、傍流であるstackless pythonはその名の通りスタックレスのようです。 そんでそんで、スタックレスって結局何よ、というわけで
管理人(はむ!)は最近スクリプト言語Lua(るぁ)に入れ込んでいます。と思ったら「ARカプセル」とかやってます。 ※iPhoneの方は右上の「PC」ボタンでPC用表示のほうが良いと思います。 ご無沙汰してしまいました。 そして突然ですが・・・。 「地図掲示板 宰相マプレカス」 をテスト公開します。 Google Maps を眺め始めるといつのまにか時間が経っていることに気づいて焦ってしまうのですが、しばらくいろいろ眺めたあと、「あ、さっきのアレはどこだったっけ?」と思って探すとなかなか見つからなかったりします。 また、気になる場所を見つけても、「結局あれはなんだったんだろう・・・」と疑問のまま終わってしまうこともよくあります。 そこで、マップ上の名所を簡単に探したり、誰でもコメントがつけられるようなものがあればいいなぁ・・・ということでGoogle Maps APIを使って作ってみました。
管理人(はむ!)は最近スクリプト言語Lua(るぁ)に入れ込んでいます。と思ったら「ARカプセル」とかやってます。 ※iPhoneの方は右上の「PC」ボタンでPC用表示のほうが良いと思います。 たしか2chのLuaスレで見つけたんだったと思いますが、最近squirrelがちょっと気になる存在です。 公式サイトはこちら。 http://www.squirrel-lang.org/ なぜ気になるかというと、LuaからDNAを受け継ぎつつ、ゲーム用の組み込みに関してLuaで問題のある点を綺麗にクリアしているためです。(もしくは、クリアしようとしている・・・かな) squirrelの作者はFarCryでエンジンにLuaを組み込んだ人らしく、Luaについて良い点・悪い点を知り尽くしているということで、期待が持てます。 全体のつくりや言語の基本的な特徴はLuaに非常に類似したものですが、 以下の点でLu
管理人(はむ!)は最近スクリプト言語Lua(るぁ)に入れ込んでいます。と思ったら「ARカプセル」とかやってます。 ※iPhoneの方は右上の「PC」ボタンでPC用表示のほうが良いと思います。 2007/6/15 SciTEの設定はこちらにまとめました>SciTE@空想具現化プログラミング Luaの編集用に良いエディタはないかな・・・ということで、SciTEの最新版をダウンロードして、触ってみました。SciTEというのは、プログラミング用のテキストエディタで、さまざまなプログラミング言語の構文処理に優れています。 SciTE公式サイト http://www.scintilla.org/SciTE.html たぶんSciTEは「サイト」という読みなんだと思うのですが、そうすると上のURLは「サイト公式サイト」・・・げふんげふん 1年ほど前に触ってみた時は日本語処理に難がある印象でしたが、今回触
管理人(はむ!)は最近スクリプト言語Lua(るぁ)に入れ込んでいます。と思ったら「ARカプセル」とかやってます。 ※iPhoneの方は右上の「PC」ボタンでPC用表示のほうが良いと思います。 こないだSquirrelの記事で予告したので、忘れないうちに書くことにします。 Luaの公式メーリングリストでもかなり何度も話題になっている(12)ところですが、 Luaの数値型の精度について、特にDirectX等と一緒に使う場合には注意しなければなりません。 ゲームなどの用途では、色(RGBA)を表すのに32bitの整数で表現することがよくありますが、このような値をLua変数に代入し、演算した場合に化けてしまう場合があります。(ちなみに、Lua5.1からは0xFFのような形式で数値を書けるようになりました) Luaでは変数に数値を入れることができますが、数値を扱うための「数値型」という型がひとつある
管理人(はむ!)は最近スクリプト言語Lua(るぁ)に入れ込んでいます。と思ったら「ARカプセル」とかやってます。 ※iPhoneの方は右上の「PC」ボタンでPC用表示のほうが良いと思います。 先日リリースされたLua5.1ですが、インクリメンタルGCが特徴のひとつとなっています。 GC(ガーベージコレクション)は、不要になったメモリを回収し、解放する機構のことですが、これが結構時間のかかる動作で、最近Luaを使った自作システムのプロファイルをAMD CodeAnalystで取ってみたら実行時間のほとんどがGCにかかっていた・・・ということもありました。基本的には動作の早いLuaだけに、GCがある種のネックともなっています。 Lua5.1では、インクリメンタルGCによって、Lua5.0までは一括で全メモリに対して実行するしかなかったGCを、細切れに実行することができるようになりました。特にゲ
管理人(はむ!)は最近スクリプト言語Lua(るぁ)に入れ込んでいます。と思ったら「ARカプセル」とかやってます。 ※iPhoneの方は右上の「PC」ボタンでPC用表示のほうが良いと思います。 先日のコードを少し修正しました。 とくちょう - 以下のようにグローバル変数を明示的に宣言できます。 global "myvar" 同時に値を入れる機能は削除しました。(空の関数でglobalを代替できなくなるため) - グローバル変数にnilを代入しても「存在」はそのままです。 (暗黙的に宣言されたグローバル変数は、use_explicit_global()時に自動的に「宣言済み」になります) - メインチャンク(=関数の外)での暗黙・明示をuse_explicit_global()の引数で選択できます。 (デフォルトは暗黙のほうです) - use_implicit_globals()でモジュールの
管理人(はむ!)は最近スクリプト言語Lua(るぁ)に入れ込んでいます。と思ったら「ARカプセル」とかやってます。 ※iPhoneの方は右上の「PC」ボタンでPC用表示のほうが良いと思います。 LeafがゲームにXviD(GPLライセンスの動画再生ライブラリ)を使用していることが明らかとなり、ソース公開を余儀なくされたという騒ぎがありましたが・・・ slashdot GPLはGPLで居場所があるとは思うのですが、商用ソフトにまぎれてしまった場合の厄介さはとてつもないもので、ウイルス呼ばわりされても仕方のないところです。 商用ゲーム・アプリ開発メーカーにとってはこういったものはできるだけ・・・というか、会社の意図的にやったのでない限り、絶対に避けたいものですね。 こういったことを防ぐためには、ちゃんとライセンスを見る、というのが求められることではありますが、ライセンスはわかりにくく書いてあるこ
管理人(はむ!)は最近スクリプト言語Lua(るぁ)に入れ込んでいます。と思ったら「ARカプセル」とかやってます。 ※iPhoneの方は右上の「PC」ボタンでPC用表示のほうが良いと思います。 ARカプセル展示します! at Make: Tokyo Meeting 05 明日(5/22)から2日間開催される、Make: Tokyo Meeting 05にて、ARカプセルを展示いたします! 体験型展示になります。長時間の展示は初めてなので、壊れないか心配ですけど。 もし壊れたり、メンテ中の場合はtwitter(@hammmm)のほうでつぶやいておきます。 メイン会場(体育館)ではなく、西9号館2階の暗室のほうですのでお間違えのなきよう。 体育館からは「はす向かい」といった感じの位置にある建物です。 今回のARカプセル展示の特徴 ・3Dキャラクターが円筒の中に存在するような感じのディスプレイデバ
管理人(はむ!)は最近スクリプト言語Lua(るぁ)に入れ込んでいます。と思ったら「ARカプセル」とかやってます。 ※iPhoneの方は右上の「PC」ボタンでPC用表示のほうが良いと思います。 エクストリームプログラミング(XP)といえば、最近はかなり市民権を得ているように思います。 XPとは、べテランプログラマーが本能的に実践しているいくつかの手法を、極限まで進化させたらどうなるか、といった感じの開発スタイルです。 例えば以下のようなことを主な習慣「プラクティス」としています。 ・小さくて頻繁なリリース:多少とも動作する状態を保ち、現在の状態が誰にでもわかりやすいようにする ・ペアプログラミング:2人で1つのPCに向かってプログラミングを行う。ペアの変更も時々行う。 ・テスト駆動:常時プログラムの正しさをチェックする。バグに対してテストを作成する ・リファクタリング:積極的に既存コードに手
このページを最初にブックマークしてみませんか?
『空想具現化プログラミング』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く