gihyo
gihyo.jp にて連載をはじめました。この連載ではFrocessingの基本を紹介していく予定です。お絵かきプログラムの楽しさが伝わるとよいなぁ、と思っております。しかし文章を書くというのはなんとも難しい。正直苦手です。言葉をうまく編み込める文筆家の方々に羨望なんです。今回は初回ということで概要的な内容ですが、次回からは個別の説明を書いていく予定です。読んでいただけるとうれしいです。
gihyo.jp にて連載をはじめました。この連載ではFrocessingの基本を紹介していく予定です。お絵かきプログラムの楽しさが伝わるとよいなぁ、と思っております。しかし文章を書くというのはなんとも難しい。正直苦手です。言葉をうまく編み込める文筆家の方々に羨望なんです。今回は初回ということで概要的な内容ですが、次回からは個別の説明を書いていく予定です。読んでいただけるとうれしいです。
5月の連休で寝過ぎていて生活は日常に戻っても身体の睡眠欲が中々抜けません。これ五月やまいですかね。惰眠駄文惰眠駄文…。といったこの頃、円弧でなにおか試し中です。番号が5になっていますが抜けはFlickrに置いたりしてます。なんとなくFlickrにも慣れてきたような。
とりあえず Flickr のアカウントをとってみました。使い方があんまわからんのですが、やってみるということで。お勧めのGroup的な何かがあったら教えていただけるとうれしいです。Groupのノリもよくわからないんですが。
ADCの記事のサンプルデータに入っているバージョンの frocessing では 3D に描画した際にパーツごとでZソートされて前後関係が崩れていたのですが、Shapeで定義されたパス群をグループ化して前後関係を保持するよう更新しました。僕の用途としてはバラでもよかったのですが、しておいたほうがよいかなぁと思いまして…。といった具合で、ちょこちょこ更新しています。
いりようの方はSparkProjectからお願いしますです。
http://www.libspark.org/wiki/nutsu/Frocessing
Adobe Developer Connection に記事を書きました。SparkProject 勉強会で話したSVG的なことです。拙い記事ですが、興味のある方読んでいただけるとうれしいです。
http://www.adobe.com/jp/devnet/flash/articles/spark_project_svg.html
もう二ヶ月も前になりますが、2月のSparkProject勉強会#7 で発表させていただいたときのスライドをアップしておきます。上げようと思いながら二ヶ月…。堕落してますね…。
発表内容はSVGのことでした。SVGのこと、というより Frocessing 内にあるSVGのパーサー的なことです。発表のとき「SVG使ったことある方いますか?」と聞いてみたところ40人ぐらいの内で1人だったような。やはりマイナーなんですかね。スライドは以下のPDFです。
ActionScriptでグラデーションの塗りを行う場合、graphics.beginGradientFill() あるいは graphics.lineGradientStyle() で塗りの指定を行うわけだけど、グラデーションの位置などは Matrix で指定する。この Matrix は、matrix.createGradientBox() メソッドで作成できるのだけど、イマイチ使いにくい感がある。なんか気持ち悪い。
てなわけで、グラデーション的な Matrix をもう少し分かりやすく作りたいなぁ、というエントリーです。
最近、Tween系のライブラリは群雄割拠の様相を呈しているけど、僕は相変わらずTweenerです。慣れてるし量的な感じになると自前実装だし。 てなわけで、Tweenerの拡張をひとつ。Tweenerにはベジェ曲線上をTweenさせる「_bezier」があるのだけど、それのスプライン曲線版 「SplineModifiers」 です。
えー、AdobeMAXでちらっとSaqooshaさんのFLARToolkitにものっかります的な話をしたんですが以下がそれです。Saqooshaさんが「FLARToolkitスタートガイド」を用意してくださっていたので、Frocessing版をつくってみました。つくったと言ってもほとんど変えてないですけど。カメラんとことか、計算結果の行列アテぐらいです。
発表した後に、「アレ、発表してましたっけ?」と言われるほど存在感がナニでアレな僕ですが、無事に発表終えましたです。聞いてくださった方々ありがとうございます。なにより、こんな場を提供いただいたyossyさんに感謝多。こちらに顔がちら見してます。
「AdobeMAX 2009」自体で言えば、一日目の FITC でおなかいっぱいです。特に、Joshua Davis、Eric Natzke 両大先生に大満足でした。やっぱこういうの好きなんだなぁと再確認な一日でした。
Frocessingを地味にアップデートしました。できることあんま変わってないけど、裏方はいろいろリストラ(統廃合)してみました。微妙に速くなったところはある。気持ちスッキリした気もする。asdoc も前よか見やすいんでないかと。多分。気分的に0.5です。
当初、描画系のクラスたちをProcessing的に編集したこともあってflash的な文化とProcessing的な文化が混在してたり、個別クラスを使うのを想定していて結果散漫な印象だったり。その辺を気持ちスッキリさせたかったこともあり。他にも理由あるんですが基礎を取り替え、散漫だったクラス群をある程度整理した。といってもつくった本人しかよぉわからん部分だとは思いますが。
あるいはマニュアルを書きやすくした。とも言えるんですがマニュアル書いてないし…。
相変わらずデバッグは十分でないのですが、時間切れということでコミットしてみました。
http://www.libspark.org/wiki/nutsu/Frocessing
週末は「AdobeMAX」です。前回はじめて参加して、今年は話す側になってしまったです。お世話になってる「Spark Project」のセッションで、5分ほど時間をいただいたわけです。
人前で話すのは、勉強会で発表して以来2度目です。2度目でAdobeMAXってちょっと気持ちフワっとしてしまいます。当日はニュルっと見えるかもですが僕なりにがんばっていると思います。多分。
追伸:wonderflに入ってるバージョンはbranchにしたです。
話題の「wonderfl」がおもしろいです。ブラウザでActionScriptを記述すると、あたりまえのようにSWFが再生される。すごいです。最近、25Line-ActionScript とか、小品的なものはやっぱりいいなぁと感じていたので、さらにほえぇと。
エディタはHTMLのフォームでコード補完とかお便利な機能はないですが、シンプルなエディタとプロンプトでプログラムを勉強(遊んで)いた頃の感覚があって僕は好きです。
で、ありがたいことに「frocessing」が使えるのです。他に利用できるライブラリが実案件などで十分安定化しているのに対して、オレオレリブ的なものをパスに加えていただけるとは懐深いです。(でも普段やらないような書き方したらバグ発見してもうた…やっぱ脆い)
せっかくなので、frocessingのサンプルなどつらつら書きながら、僕なりに楽しみたいですねぇ。僕の場所はここです。
というか、mrdoob氏にびびった。
先日Adobeから発表された、C/C++のコードをActionScriptで利用できるという Alchemy。いろいろと情報が揃ってからぼちぼち触ってみようと思っていたけど、ついついちょっとだけってことで。
全然わからんことばかりなので、試しやすそうな疑似乱数 MersenneTwister を錬金してみることにしました。
Alchemyを動かすには、Adobe の Get Start を見ればすんなりといった。amachangさんの「C/C++ のコードを Flash Player で動かす! Alchemy を速攻試してみる。」も非常にわかりやすい。僕の場合は、Windows で Cygwin 環境でしたが同じような感じです。FlexSDK は Gumbo 使ってます。
Mersenne Twister については「Mersenne Twister with improved initialization (2002)」 のソース(mt19937ar.c)を利用しています。
比較する為に用意したクラスは、Onegameさんの記事を参考にさせていただきました。
フラットシェーディングぐらいできたらええんやろなぁ。と思いながらぼちぼちやってます。そんなんPV3DとかAway3Dとか使えば早いんですが…。まぁプラモ好きに完成品かえいうてるもんで。
FlashPlayer10が公開されてしばらく、そろそろFP10向けの勉強を初めてみようかと思ってます。とりあえずはGraphics辺りから始めようと思いますが、公開されたらテストしてみようと思ってたMatrix辺りから。
環境はなんとなく Flex4 Gumbo の Nightly Builds で(flashパッケージしか使わないけど)。
>> Flex4 Gumbo Downloads
>> flashplayer10 reference( 070208 )
>> Gumbo Language Reference
随分むかしのこと、当時MacはPowerMacで、ThinkCを使ってプログラムをしていたことがある。C言語は覚えたばかりで、シンタックスは理解できたけど、Appleのライブラリ?であるToolboxを利用する部分が意味わからんかった思い出がある。
プログラム自体は画像ファイルを読み込んで、GUIの操作によって解析するというシンプルなものだったけど、PICTデータを使えるデータに変えたり、GUI周りのプログラムに苦労したような。というより、何かの本を丸写ししたような。WindowsのVisualCを少し書いたことがあるけど、同じような感じで、しばらく大文字に拒否反応が出るくらいだった。大文字で書いてあるやつ意味わからんみたいな。
その後登場したJavaは、それらに比べて遙かに見通しがよいと感じた。呪文ではなくロジックを組んでいる感覚。ActionScriptはAPIも少なめなので、やはり見通しがいいと感じた。
最近、iPhoneなんかのMacのプログラムとか遊びたいなぁとか思うけど、やっぱりそんな感じなんかなぁと。Toolboxよりか全然わかりやすくなった、とのことだけど。まぁでも、ThinkCも楽しかったなぁ、とか。