タグ

ブックマーク / kataho.hatenadiary.org (9)

  • C++インスタンス関数を呼び出すSquirrelインスタンス関数(マイフェイバリットな) - 作業記録

    SQPlusはC++のインスタンスをinstanceupへ、関数ポインタをfunctionのfree variableへいれてる。free variable分はいらなくないか?と思ったので。自分はこんなふうに書いた。テンプレートってホント融通きくなあ。 inline static void mysq_register_function(HSQUIRRELVM v, const char* name, SQFUNCTION func, int numparams, const char* paramtype, SQBool bstatic = SQFalse) { sq_pushstring(v,name,-1); sq_newclosure(v,func,0); if(paramtype) sq_setparamscheck(v,numparams,paramtype); sq_setna

    C++インスタンス関数を呼び出すSquirrelインスタンス関数(マイフェイバリットな) - 作業記録
  • RoAバージョン3をリリースしました - 作業記録

    これが来の意味での作業記録だな。一応公開しました。来あるべき迷宮探検での光源問題にスポットをあてた新感覚RPG!というような煽り文句をつけられるかもしれない。立体交差のほとんど無い2.5次元マップだからこそできたpixel shaderを使った数量制限のないダイナミックポイントライト。物理的にはおかしいけど割と違和感がなく臨場感のある自分中心影。そして悶々としてる間に思い至った企画としての方針変更を一部適用。少しずつ個々が力をだしあって、みたいなネトゲはもう流行らない、というかそもそも流行ってないし。だからちょっとオーバー気味につけてた枷をはずす方向へ舵を切りました。

    RoAバージョン3をリリースしました - 作業記録
  • 描画でさえももはや構造化できない - 作業記録

    極限まで抽象化された概念であるところのゲームオブジェクトはおそらくもともとは画面への描画の最小単位として使われることで意義をもっていたのではなかろうか。要するに昔はオブジェクトがそれぞれ単純に自分自身を自分自身に基づいて描画するだけで画面が描画でき、単純明快な一部品として扱えていた。しかし、例えば最近のシャドウマッピングなどのマルチパスレンダリングが主流になってくると、自分自身を描画するときに自身や他のオブジェクトがすでに描かれたテクスチャがあることを前提としなくてはならない場合もある。描画するだけでも他のオブジェクトの描画結果に依存する必要がでてきてしまった。また、テクスチャを参照する必要がなかったり、透明度を無視してもよかったり、描画する内容も複数の描画指示のあいだで全く異なる。スーパークラスのポインタを渡してのんきに描画命令がとどくのを待つだけというわけにはいかない。描画処理の全体の

    描画でさえももはや構造化できない - 作業記録
  • 構造化世界律を乱すもの - 作業記録

    大抵の構造物はコンポジション構造で表現できるのだろう、車一台はどんどん分解していってネジ一個にすることができる。そしてそれはネジ一個がもつ属性とは無関係な設計図によってもとの車に戻ってくることができる。 なかなかそうはいかない場合もあって、設計図がつくれないとき、例えば複数のプラグインが参加して全体構造を形成する場合。これはジグソーパズルを一枚絵に切り目を入れて作るんじゃなくて、ピースひとつひとつから作っていくようなものだ。どうあがいてもピースにあたる同階層のオブジェクトが連絡しあわなくてはならくなり、構造化プログラミング原理主義者はここではまることになる。 これは独自のIDなど言語が来持ってる型とは別の識別子を導入することで解決が図られる。これは動的で汚い。こういったIDを持つものは、IDの対象に依存している。依存しているがIDが当に必要な対象を指しているという保証はない。なぜかとい

    構造化世界律を乱すもの - 作業記録
  • ゲームオブジェクトを一般化して管理しないことの妥当性について - 作業記録

    なぜわざわざゲームオブジェクトクラスなんてつくって下方へ特殊化するクラスヒエラルキーをつくるんだろう。オブジェクト同士の連絡では、オブジェクトリストを持つ方は信号を伝達するだけで、ダウンキャストなりの特殊化はオブジェクト群のそれぞれの内側で行われるような運用をされる。か、もっと無茶をやる。なんでそういうことをやるのか。自然言語的にそうだから?慣習?リストを保持する方はゲームオブジェクトに新たなタイプが追加されても依存がないので編集する必要がない?こうすることでオブジェクト群から上をそっくり挿げ替えることも依存がないために可能になる? しかし実際はオブジェクト生成部分が特殊化されたクラスに依存するし、群を走査する部分だけを挿げ替えるなんてありえない。そっちの反論はどうでもいいとして、ゲームルールはゲームオブジェクト同士の交互のやりとりを全体として眺めた状態を完全に規定する。プラグイン系のよう

    ゲームオブジェクトを一般化して管理しないことの妥当性について - 作業記録
  • Mount&Blade - 作業記録

    http://www.taleworlds.com/ チャンバラに持ち込む前に槍や斧や石を投げたり、騎兵で集団からはぐれた歩兵を蹂躙したり、罪のない一村落に徴発を迫ったり焼き払ったり、戦果として人質をとって奴隷として売り払ったり、敗走する敵を夜通し追いかけ続けたり、レーダーじゃなくて鬨の声のあがってる方角から戦闘の起きている位置を知って駆けつけたり、馬に乗ってグズグズしてるところを歩兵に囲まれて引き摺り下ろされてリンチされたり、重税にあえぐ村民の蜂起を武力で鎮圧したり、人の借金に首をつっこんだり、 そういうガリア戦記のような鬼畜な体験ができるよいゲームだ。

    Mount&Blade - 作業記録
    saz_go
    saz_go 2008/04/08
    「ガリア戦記のような鬼畜な体験ができるよいゲームだ。」
  • 新訳 - 作業記録

    <新訳>ガリア戦記 作者: ユリウス・カエサル,中倉玄喜出版社/メーカー: PHP研究所発売日: 2008/02/14メディア: 単行購入: 1人 クリック: 17回この商品を含むブログ (16件) を見る今このタイミングでわざわざ新訳が出版されてるからガリア戦記はあなどれない。早速借りてきてみた。一から書き起こされた解説の量がわりとあって、簡潔で詳しいのはいいんだけど、なぜか振り仮名ついていてこれが邪魔で、さらにいちいち漢字使えばいいところがひらがなになってて読みにくい。こんな残酷な遠征記録を小学生に読ませてどうするんだと。手元においとくなら岩波のがいいみたいだ。やはり機能美。 もしかして振り仮名とひらがな多用は他の言語への翻訳元となることを想定してる・・・とか?いや知りませんけどね。

    新訳 - 作業記録
  • 京アニフィルタ最適化成功 - 作業記録

    完全に60fpsでます。思ったとおりだった。 1パス目 - 3.5分の1小さなテクスチャへ元絵をコピー + トーンカーブを調整 2パス目 - 小さなテクスチャ内で横方向にブラー サンプル点 7 3パス目 - 小さなテクスチャ内で縦方向にブラー サンプル点 7 4パス目 - 元絵と比べて明るい方をback bufferへ ところでレンダーターゲットと使うテクスチャが同一の場合はpixel shader内でいったいどういうことが起こるのだろう? ↑(追記) 参照する方はキャッシュにコピーされるから参照するのと書き込むのは実際には別の領域ということになるのですね

    京アニフィルタ最適化成功 - 作業記録
    saz_go
    saz_go 2008/01/12
    京アニフィルタ
  • 作業記録

    http://d.hatena.ne.jp/kataho/20071009/p1 ここの関連で。 プロバイダの利用を止めたので消えたコンテンツがいろいろありますが、メタセコのプラグインについてはコメントもあり、githubで公開すればタダで置けるしということで移動しました。 ここにあります。 https://github.com/kataho/N-Move-Metasequoia-Plugin https://github.com/kataho/UVPressExpand-Metasequoia-Plugin Downloadsのでっかいボタンででてくるダイアログの中のDownloadPackagesの項の下にzipアーカイブへのリンクがあります。 シャドウマップのaliasing problemというのがある。光源方向と面の角度が近い部分に生じる影の例のギザギザであるが、これはカメラ近傍

    作業記録
  • 1