2012-02-18

Processing 2.0a4: 手軽なGlow / OpenGLを使うとAppletが動かない

 

気分転換にProcessing(Proce55ing)を少し触っています。Processingといえば発光体とかパーティクルのイメージがあるので、まず発光体を作るために簡単にGlowさせられる方法を調べてサンプルを作りました。

  • 手軽なGlow (※要Javaプラグイン。マウスに追従して発光体が動きます)

image

調べた中ではGlowする方法として

  1. ピクセルを全なめして自力で加算合成
  2. blend()でADDを指定
  3. OpenGL(JOGL)で加算合成

の3パターンがあったんですが、この中ではOpenGLを使うのが重くならなくて簡単な感じがしたのでサンプルではOpenGLを使っています(blend()は重かったです…)。3. の方法は上記リンク先にあるソースとコメントを見て下さい。

発光体をもうちょっとどろっとした質感にしたいです。

それと最初はProcessing 1.5.1で作っていたんですが、OpenGLを使うとwidthやmouseXなどを2倍しないと意図したように動かないのと下記の問題の1.5.1での対処がわからなかったので2系にしてしまいました。

OpenGLを使うとAppletが動かない

OpenGLを使ったSketchで「File」 > 「Export Applet」を実行して、生成されたAppletのHTMLをブラウザで開くと「java.io.FileNotFoundException: http://jogamp.org/deployment/webstart/jogl-core.jnlp」と言われてAppletが動きませんでした。

Issue 845 - processing に書いてあった通りAppletのHTMLの<applet>のjogl-core.jnlpのURLを変更してもリンク先の最後のPostと同じように「java.io.IOException: Cannot validate certificate for nativewindow_awt.dll」と言われてしまいます。

いろいろ試してみたんですが http://jogamp.org/deployment/ 以下のファイル構造が変わっているためjogl-core.jnlp + 3つのjar(nativewindow.all.jar, jogl.all.jar, gluegen-rt.jar)のURLを変えないと動かないようでした。

/v2.0-rc2/以下のファイルはAppletのHTMLに書かれているURLと似ているのでAppletのHTMLのソースで「/webstart/」となっている箇所をすべて「/v2.0-rc2/」に一括置換するようにすると動くようになります。例えば「http://jogamp.org/deployment/webstart/nativewindow.all.jar」は「http://jogamp.org/deployment/v2.0-rc2/nativewindow.all.jar」とします。

ただ/v2.0-rc2/配下のファイルがもし消されたらまた動かなくなってしまうのでjogamp.orgのURLを使わずにjarをダウンロードしておく方がいいかもしれません。

2012-02-09

Visual Studio 2008: セットアッププロジェクトで.NET Frameworkを非ネット接続環境でもインストールできるようにする 等

Visual Studio 2008: セットアッププロジェクトで.NET Frameworkを非ネット接続環境でもインストールできるようにする

  1. セットアッププロジェクトのプロパティ画面の「必須コンポーネント」を開く
  2. 必要な.NET Frameworkのバージョンにチェック
  3. 「アプリケーションと同じ場所から必須コンポーネントをダウンロードする」を選択
  4. リビルド

Visual Studio 2008: セットアッププロジェクトのビルド後にautorun.infを出力ディレクトリにコピーする

通常のプロジェクトと違って「出力ディレクトリにコピー」のようなものがないのでPostBuildEventにコピーするコマンドを入れる

例:

copy "$(ProjectDir)autorun.inf" "$(ProjectDir)$(Configuration)\autorun.inf" 

PHP 5.4 (Windows): ビルトインウェブサーバでファイルがあるのにNot foundと表示される

パスに「予」等(ダメ文字)が入ると-tを指定した時にDocumentRootのパスがおかしくなる

例:

...\予定>.\php.exe -t foo
Document root is: ...\予予定\foo

Astah Community 6.5: 図を別ファイルにコピーできない

仕様のようです

2012-02-05

PowerShell: コマンドプロンプトを開いた時にPowerShellを有効にする 等

PowerShell: コマンドプロンプトを開いた時にPowerShellを有効にする

  1. 起動用バッチ(例えばinit.batで保存)を作ってバッチに「powershell」と書きこむ
  2. レジストリのHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor に「AutoRun」という項目を作って作った起動用バッチのパスを指定する

これでコマンドプロンプトが開かれるときはすべて自動的にPowerShellが有効になります。構文を戻したいときはコマンドプロンプト上でcmd /D (や exit)とします。

参考: コマンドプロンプト(Hishidama's DOS-command "cmd" Memo) #初期実行(WindowsXP)

(PowerShellもいつかまとめたいです)

Joomla 1.5: Chronoforms V4 RC3.11 が動かない

  • フォームの保存ができない
    • プラグインの「System - Mootools Upgrade」を有効にしないとJavaScriptでエラーになるみたいです
  • フォームを表示したときに「There is no form with this name or may be the form is unpublished, Please check the form and the url and the form management.」と出る
    • Forms Managerの右側の「Published」にチェックを入れる
  • 表示されない (Powered By ChronoForms - ChronoEngine.com しか出ない)
    • Edit in Easy ModeにあるActionsのOn Loadに「Show html」アクションを入れるまでフォームHTMLが表示されないみたいです
  • Plugin-Mambotを有効にするとページが白紙になる
    • 調査中です…

Windows: FTPサーバを普通のフォルダに似た形で使う

ネットワークプレース(Windows7)の場合」が詳しいです。ネットワークプレースはWebDAVしかできないと思い込んでいましたがFTPでもできるみたいです(ただFTP+ネットワークプレースだとファイルの直接編集はできない)。

Windows: WebDAV + ネットワークプレースでアクセスが遅いとき

Windows 7でWebDAVが遅い時はインターネットオプションのLANの設定で「設定を自動的に検出する」のチェックを外せばOK (https://twitter.com/#!/k_tsj/status/9084918867) でした。

image

image

関係ないですが記録を残すときEvernoteにメモ → たまったらWindows Live Writerにメモをコピペして整形(+ スクリーンショットがいるときはGrenshotでスクリーンショット撮って加工してクリップボードコピー → Live Writerにペースト)すると比較的楽に記録が残せます。