proce55ing プログラミングアート全般
■ このスレッドは過去ログ倉庫に格納されています
大自然描くのにサインコサインタンジェント 激しく遠回りで面倒なプログラミングアート制作について語ろう 環境てproce55ingぐらいしかマトモには知らないのだが、凄い重かった ベクター生成とかはともかく、Javaでフル解像度リアルタイムピクセル処理はキツいな ネイティブなら何を使うといいのだろう。 SDLとかだろうか。文系にはいきなり敷居が高くなる 物理シミュレートとか描画方法はゲーム系の豊富な資料が非常に参考になりそうだ 参考になるサイト等あれば教えてくれ そんな話をしないか プログラミングの初級教育用にProcessingを使っているところってある? 実行環境のインストールも簡単だし、JavaやCよりとっつきやすそうだし、 簡単にお絵描きができるし、なかなかいいところが多いんだけど。 プログラミングを深く学ぶ学生相手ならもの足りなさ過ぎるだろうし そうじゃないなら汎用性のあるスクリプト言語とかやったほうが便利だし、課題とかも出しやすいし・・・ やはり絵を描くのが目的じゃないと使いにくいのでは・・・ processingでお絵かきして提出する課題が出たのですが、何か参考になるものってありますか? 無難にBuilt with Processingかなぁ >>305 どうもありがとうございます! web上に作品例とタグが掲載されているサイトさんはないですよね…? gglks=「グーグルカス」。Googleって最低だよね。必要な情報が引っかからないよ。 ggrks=「ググれカス」。Googleって最低だけど、それを使いもしない香具師はもっと最低だよね。 ちゃいなって盛んに聞こえるけど 中国がどうしたんだろ? メタセコイアのモデルが読み込みたいのですが ライブラリがダウンロードできません。 http://www.hyde-ysd.com/reco-memo/index.html 他にどこかないでしょうか? 試しにそこの0.4aの部分を0.3にしたらファイルがあった。 入れ忘れ?とりあえず0.3でやってみては processing初心者です。 皆さんはline(nx,ny,nx,ny)でドットちゃんとかけてますか? 自分の環境(1.04)だとなんだか変な感じです。 line(nx,ny,nx+1,ny+1)だとうまく行ってる感じなんですが・・・。 (floatを使用したいため、setは使いたくないのです) 点を描くだけなら、 point(x,y) で十分。 line(nx,ny,nx,ny) でドット書ける。 WinXP, Java 1.6.0_13, Processing 1.0.5。 低レベルですまんが、ellipseの品質ってなんであんなに低いんだ? smooth かけてもサイズが 3px ぐらいの大きさだとかなり低品質でげんなり来ちゃうんだが。 アニメーションしてたら気にならないけど、静止画としてみるときちんと丸になってないのが気になっちゃう。 まじで?てっきりJavaの円の描画品質が良くないからそれをせいかと 思ってたんだけどWindows特有の問題なのかな。一回、Linux入れて試してみようかな。 あと、日本語フォントが P2D, P3D, OPENGL で表示されないんだな。 日本語でタイポグラフィが作りたかったのに残念だ…。 >>321 それじゃラスタ画像だから、拡大したら品質が悪いだろ。 ベクターデータで扱いたいんだよ。 このスレにあった nexttext もベクターデータで扱えるみたいだが、 なんか試してみたら日本語の時は少し変な挙動するしそもそも品質もあまりよくなかったみたいだから駄目ポ。 というわけで TTF→SVG→Processing みたいな変換で何とかできないかちょっと頑張ってみる事にした。 >>317 >>318 レスありがとうございます。 ということは、プログラムが悪いのですね。 あと、もう一点質問があります。 人のプログラムを見て勉強しているのですが、 sin()やcos()のカッコ内にradians(i)を入れないプログラムをたまに見かけます。 radians(i)を入れない場合、sin()やcos()どのような使い方をされているときが多いのでしょうか。 って、これはプログラム全体を見てみないと判断できないですかね。 >>323 radiansは、角度の単位を 度数法(度)から弧度法(ラジアン)へ変換する関数だってのはいいか? >>324 そこはOKです。 radians(180)=3.14ですよね。 自分が読んでいるソースの一部を抜粋します。 いまいち何をやっているのかが不明なんです・・・。 // 一部抜粋 float sens=0.01; float a0 =random(-2.5,2.5)*sens; float a1 =random(-2.5,2.5)*sens; float ox=random(-width/2,width/2); float oy=random(-height/2,height/2); float scal = 200; この括弧の中をdrawでループしてる感じ{ nx=(sin(a0*oy)-cos(a1*ox))*scal; ny=(sin(a2*ox)-cos(a3*oy))*scal;; line(nx,ny,nx,ny); } >>325 乱数にあまり理由を考えてもしょうがないんではないだろうか。 そのぐらいの数でうまく動いたということなんじゃないかな? だな。 俺も追試してあまり有意な意図は読み取れなかった。 変数の説明も足りないしこれ以上は追えないな。 >>326 ,327 わざわざ読んでくれてありがとうございます。 深追いしないようにしておきます! 感謝。 思い通りに動かないとき、皆さんどこで聞いてますか? ここぐらいしか聴くところが無くて困ってます。 外国のフォーラムしかないのでしょうか・・・。 基本Javaなんで、エラー貼り付けてJava初心者スレで聞けばいいかと。 日本で人がいるコミュニティだとこことmixiコミュくらいかな。他にもあるけど、過疎。 このスレはすごく過疎になるときあるけど、たまの質問に反応するからおもしろい。 わざわざ書き込みはしないけど、それなりに見てるってことだな このスレは監視されています videoライブラリが使いたいんですけど quick time for javaってどこでダウンロードできるんでしょうか? quick timeはインストールしたんですがvideoライブラリで エラーが出てしまいます。 >>333 http://developer.apple.com/quicktime/qtjava/installation.html ここじゃダメ? ttp://www.harukit.com/process/sp/applet/index.html 他人様のサイトで恐縮なんだけど、この光らせ方ってどうなってるの? 自分で実行したら動作するものの何故か光らないんで確認出来なかったんですが… >>334 ありがとう。 見つからなかったのでOpenCVでやっちゃいました。 初心者です。 ある程度コードが増えていったりすると、フレームレートを下げても 実行結果がすごい重くなってカクカクになってしまうんですけどなにが原因なんでしょうか? 重くなってしまう書き方があったり、なにかコツがあるのであれば教えてください。 スペックの問題ならしょうがないですが。 軽くなる書き方 →ループ内外での無駄な処理をしない(事前処理・遅延処理・キャッシュ・式の簡略化) 重くなる書き方 →あなたの想像力で無限大! >>337 お前が「軽くなる書き方」の説明で理解できないならコードを晒して駄目な点を指摘してもらうしかない。 OpenGL使った時のジャギはどうにもならんのだろうか。。 うちの環境だとそんなにジャギってる感じがしないんだけど、 ひょっとしたらOSとかグラフィックボードによって違うのかも。 >>342 やっぱりそうかあ〜 うちのは MacBook(Late 2008) 2.1GHz. 2GB OS X 10.5.8 ビデオカードは型番忘れたけどIntel製のなんちゃら3000というもの。 あ〜NVIDIAほしいーなー。。。 質問失礼します。 動画を読み込んで、キー入力によって それぞれ別の動画を表示するようにしているのですが、 キー入力時に「jump(0)」で巻き戻しをしているにもかかわらず、 次にその動画を表示した時、巻き戻す前の状態がチラッと見えてしまうのです。 原因はおそらく、動画の巻き戻しが、 次にその動画を再生し始めてしばらくしてから なされているからだろうと予想しているのですが、 この問題を解決する方法をご存じないでしょうか? // コードを載せておきます。行数制限の関係で空白行を削ってますがご容赦ください。 import processing.video.*; Movie[] mov_arr=new Movie[2]; int index; void setup() { size(640, 480); background(0); mov_arr[0]=new Movie(this, "2.mov"); mov_arr[0].loop(); mov_arr[1]=new Movie(this, "5.mov"); mov_arr[1].loop(); } void draw() { image(mov_arr[index], 0, 0, 640, 480); if(keyPressed){ mov_arr[index].jump(0); switch(key){ case '1': index=0; break; case '2': index=1; break; } } } うまく巻き戻しのとこは消えないね そもそもこのやり方ってビデオの再生が飛んだりProcessingが死んだりしない? import processing.video.*; Movie[] mov = new Movie[2]; int index, nextIndex; float currentTime, changeTime; void setup() { size(640, 480, P2D); frameRate(15); background(0); mov[0]=new Movie(this, "1.mov"); mov[1]=new Movie(this, "2.mov"); index = nextIndex = 0; changeTime = -1; mov[0].loop(); } void draw() { image(mov[index], 0, 0, mov[index].width, mov[index].height); currentTime = mov[index].time(); if (currentTime < changeTime && currentTime > 0.07) { changeTime = -1; mov[index].stop(); index = nextIndex; mov[index].loop(); } } void keyPressed() { changeTime = mov[index].time(); noLoop(); mov[index].jump(0); redraw(); switch (key) { case '1': nextIndex = 0; break; case '2': nextIndex = 1; break; } loop(); } >>347 やっぱそうだよね?videoが動かなくて原因わかんなかったんだ。 で、どうすれば直るんだああああ。フォーラムにトピック上がってないかな。 >>313 のライブラリとNyARtoolkitを使ってマーカーの上にモデルを表示したいんだが、 モデルが半透明にしか表示されない。 なんでだろ? ちゃんとできてる人いる? ttp://ubaa.net/shared/processing/udp/udp.zip このライブラリと、それについてたサンプルをもとにPuredataとProcessingをUDPで通信させるプログラムを作ろうと思ってます。 Puredataからデータを送ってProcessingで受信するのはできたんですが、その逆がうまくいきませんでした。 Puredata同士の通信はできたので、Puredataでの受信プログラムは間違ってないと思うのですが、Processing側の送信プログラムはどのようにして書けばいいのでしょうか? 参考になるサイトが見つからず、サンプルどうりのプログラムではうまくいかなかったので教えていただけないでしょうか? よろしくお願いします。 > ttp://www.harukit.com/process/sp/applet/index.html > 他人様のサイトで恐縮なんだけど、この光らせ方ってどうなってるの? 時空の彼方へレス loop() → draw() drawの先頭でloadPixels()、末尾でupdatePixels() >>354 その質問、光ってるように見える表現方法を知りたいのか 動かし方を知りたいのかわからなかったからスルーした。 Windows上で、メモリマップドファイルを作って HANDLE hMap = CreateFileMapping((HANDLE)0xFFFFFFFF , NULL ,PAGE_READWRITE , 0 , sizeof(float) * 1024*1024*1024*256, MAPNAME); MappedArea = (void *)MapViewOfFile(hMap , FILE_MAP_WRITE , 0 , 0 , 0); どかどかデータを書き込むわけですよ。 で、これを直接Processingで読んでビジュアライズできればちょー楽で最高なんだけど、どうすればいいかな (1) J/Direct買えよ、$400 (2) JNIでOpenFileMapping/MapViewOfFile/memcpy/UnmapViewOfFile/CloseHandle する外部DLL作れば? (3) java.nio.channels でFileMappingは開けないのかな?? JNIってのを使ってみたけど、くそうざったいなこれ! ようやく、バイト値を読めるようになったぜw おい一バイトずつで読むのかよw もっと勉強してenv->Getなんちゃらでint配列とかfloat配列とかどさっと渡せるようにならないとだめだなこれは …とりあえず、intとfloatはひとつずつだけど読めるようになったので良しとする。速度的には別に問題ないし。 JNIとか、EclipseのテンプレートでないとProcessingのライブラリが(コマンドラインで作れても認識しない)とか 超うざすだった しかしこれならC言語側はガリガリ演算して共有メモリに書き込むだけ、 processingは位置指定すればintでもfloatでも読めてすぐビジュアライズできるので、とても便利っぽい。 javacでクラス javahでヘッダ VC++でDLL defファイルでエクスポート 大文字小文字区別有り 以上、コマンドラインベースでサンプル動いたら Eclipseにテンプレート読み込んで書き換え、Antでビルド jarとdllを同じ場所に こんなところかな >>360 配列でどさっと渡せるようになったら夢が広がるんだけどな。 ProcessingからJNA使えるかどうかというのもまた心配があるよ 「終了時処理」ってどうやればいいんでしょう。 ProcessingエディタのSTOPボタン押されたときや、描画ウィンドウを閉じられた時に呼びたいんですが。 画面上に[EXIT] ボタン置いといて、押されたら終了はわかります>< void mouseClicked() { if mouseXとmouseYが範囲 終了処理; exit(); } >>365 やる方法はあるけど・・・。 ざんねんながら、多分あたなの今のLvだと難しすぎるor Java寄り過ぎて 使いこなすのが大変だと思う。 サンプル的な物だけど、詳しくはJavaのThreadとRuntimeをよんでね。 //ここから Runtime R; Thread endCounter; public class EndCounter extends Thread{ public void start(){ System.out.println("now END OF...."); super.start(); } public void run(){} } void setup() { R = Runtime.getRuntime(); endCounter = new EndCounter(); R.addShutdownHook( endCounter ); } void draw() { } //ここまで http://www.openframeworks.cc/about の事だろうね。 まだ、触ってないからちゃんとは知らないけど、 そっちは、C++用だから毎回ビルドとかひつようになるんじゃないかなぁ? また、その分開発スピードは遅れ遅れになっても、 開発後のアプリとしての速度は数倍速かったりするんだろうけどね。 関数的な部分は似てそうだね。さらっとプロモを見た範囲だと。 Processingで弄るならGainerとArduino、どっちがいいかな? 最近、Gainerの話を聞かないような・・・ oF今やってるけどC++のライブラリってだけあって、いろいろできる人ならこっちのが便利かもしれない Processingはお手軽だけど。 oFってもしかしてMacならObjective-C++で Cocoaアプリケーションにそのまま組み込めたりするの? oFってのは知らなかった Winユーザーの私でも満足に遊べるのかしら? え?OpenFrameworksの登場でProcessing終了のお知らせってこと? http://www.primevision.cc/test/processing/01/ WindowsXPで上記のようなProcessingで書かれたプログラムを実行させると 下記のように中央部の画像がちらついてきます http://www.dotup.org/uploda/www.dotup.org784664.png この現象は私のPCだけで起こっているものなのでしょうか? このちらつきをなくすためにはどうすればよいでしょうか? >>378 他のOSでも試した上で「WindowsXPで、」ということなのかな。 たぶんスペックが足らないだけだと思う。 VistaSP2 Processing1.1で実行したけど異常なし。 >>378 うちの環境でも異常なし。(Mac OS10.5) 他のスケッチで多角形のポリゴンが欠ける事はたまにあるよ。 size()のところでレンダラーを違うのにすると解消される事もある。 スペックよりもグラフィックボードの相性の問題じゃないかね。 スペックが足りなければ実行速度が遅くなるだけじゃないの? ProcessingでICMP(ping)を扱いたいのだけど Javaでゴリゴリ書くしかないんですかね?? 具体的には、ICMPを受け取ったら「pingが来ましたよ!」と音とメッセージで 知らせるアプリを作りたいんです。 今日、本屋でOpenFrameworkの書籍みたよ。 パラパラっとみたけど、とっかかりにはよさげかも。 ドット絵とか作れる奴ちょっと来い【風来のブーン】 http://yutori7.2ch.net/test/read.cgi/news4vip/1272478363/l100 VIPで風来のシレンぽいゲームを結構本気で作ってるんだが ドッターとかが足りなくて困ってるんだ、助けて! そのスレは知っているが、なぜここに貼るんだろう。 ここにはそんなドッターが集まっている気はしないんだけど。 >>380 >>379 グラフィックボードのドライバに問題があったようです 更新したら治りました、ありがとうございます openFrameworksのスレがなかったので立てました よろしくね>< 【C++】openFrameworks【processing】 http://pc12.2ch.net/test/read.cgi/tech/1273164542/ しかし過疎ってるな、日本にproce55ing触ってる人ってどのぐらいいるんだろ。 教育用ってことで大学初等に美大のカリキュラムに取り入れるとこはよくある。 ただし、そのため各processingコミュニティには初心者の質問で溢れかえるようになった。 Processingを本格的にやるんだったら、日本じゃなくて海外のフォーラム行った方がいいと思う。 現状、初心者の質問のやりとりさえ少ないような気がするんだ。 わざわざ文献少ないprocessingつかわなきゃできないことなんてないからな 例えばmixi見ると「プログラミング全然わかりません><」みたいな人はいっぱいいて、 それでも大学の授業で使ってるからprocessingしなくちゃいけなくて、 環境もスペックもコードも書いてない質問とか見てると非常に残念に思う。 その点本家のフォーラムは精力的に今でもトピックが更新されてる。 もうprocessing触って4年目になるけど、>>390 の言うとおり、 別にprocessingでやらなくちゃいけないなんてものはどこにもない。 ただ、今でも使われているのは、とっかかりの壁の低さにあるとおもう。 processingに出会う前にOpenGLを授業で扱ったけど、 なんか動かすためにいっぱいコード書いて、 それでもそれぞれ何を指すのか当時の私にとっては難解だった。 それに比べてprocessingは"とりあえず動くもの"だったらすぐに作れる。 結果きっかけとしてはすごくいいんだけど、本腰入れようとすると、 processingは結局通過点でしかなくて、どこまでいっても高度な趣味どまりだと思ってる。 長文すまん。 音楽で言うとプログラミングアートとしてMax/Mspがそれなりに盛り上がってるんだけど 映像、画像になるとそういう大きい盛り上がりはないように見える というかあれか、わざわざその手のソフト使わずに普通にWebプログラミングやりゃいいじゃんってことか そこでopenFrameworksですよ。 p5に比べたらある程度知識いるけどラクチン openframeworksだったらTwitterとかフォーラムのほうが人多いな processingを使ってWMPの視覚エフェクト>バーに似たものを作っています。 なんとか基本形は完成したのですがメインのバーの上の小さいrectの動きの制御がわかりません。 fft.forward(audio.mix); int w = int(fft.specSize()/128); for(int i = 0; i < fft.avgSize(); i++) { x1 = height - 100; x2 = x1 - fft.getAvg(i) *6; // バー部分の表示 stroke(0); fill(0, 0, 10); rect(i*w+1, 0, i * w + w,height - 100); strokeWeight(1); fill(178,99,99); rect(i*w+1, x2, i*w + w, (height - 102 - fft.getAvg(i)*6)); fill(234, 99, 99, 240); rect(i*w+1, x1, i*w + w, x2); } こんな感じで書いているのですがWMPみたくくっついたり離れたり・・・みたいな動きをさせるにはどうしたらいいでしょうか? ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる