1 名前:Now_loading...774KB mailto:sage [2008/07/16(水) 04:46:58 ID:ahpJufac.net] FlashのAS3などの総合開発環境。 質問スレなどで結構出ているがスレがないので立てた。 基本英語だが、日本語化できる補助みたいなのもあるらしい。 【必要なソフト】 Flex 3 SDK ttp://opensource.adobe.com/wiki/display/flexsdk/Download+Flex+3 JRE1.6 ttp://cowscorpion.com/Library/JREforWindows.html FlashDevelop ttp://www.flashdevelop.org/community/viewforum.php?f=11
135 名前:ひきプロ ◆HIRO2ZQ2Xo mailto:sage [2009/08/07(金) 20:34:16 ID:kF/vEctb.net BE:704773499-2BP(123)] >>132-133 ぼくもこないだマニュアル見てたら偶然見つけました。 でもあんまり有効な使い道って思い浮かばないですよねw >>134 ProgressEvent の1回目で取れるかもしれません。 たぶん HTTP の Content-Length パラメータを見てるのかなと。 でも Web サーバの種類とか、場合によっては Content-Length が入らない場合もありそうですね。 もう一歩先に確認する方法として、PHP とかで GET パラメータに 渡されたファイル名を確認してサイズを調べるというような 簡単なスクリプトを書いたりするのも良いかもしれません。 これだと Loader のほかに URLLoader も使わないといけないので若干面倒ですね。
136 名前:Now_loading...774KB mailto:sage [2009/08/07(金) 20:45:05 ID:u2+EPbai.net] >>134 出来そうで出来ない事の一つのような。 LoaderInfo.bytesTotal は読み込んだサイズだったと思うから、0なのは当たり前だった気がする。 HTTPヘッダでも読めれば行けるような気もするけど、Content-Lengthはイコールでファイルサイズじゃなかった気もする Socketで接続して実験してみるとか
137 名前:Now_loading...774KB mailto:sage [2009/08/08(土) 03:36:22 ID:Xf8YSrUw.net] やっぱり多少トリッキーなことをしないと難しそうだね。 ちゃんと作るなら >>135 の通りサーバサイドのプログラムに頼るのが一番信頼できそう。 俺のはちゃんとしてないので、ひとまずロードが完了した画像数を出しておいた。 数が多すぎなければ画像の数だけプログレスバーを出してもいいかも。 ProgressEvent.PROGRESS の時点なら利用できることは確認したけど、 ここから合計プログレスバーを作ると読み込み中に分母が変わっていきそうで微妙かなと。 合計サイズが揃うまで読み込み待機とか器用なことができたらいいけど ASのイベントモデルをちゃんと理解してないので週末使って調べてみる。 でも close() しか見あたらないので難しそうな予感(他に使い道ないし)
138 名前:Now_loading...774KB mailto:sage [2009/08/08(土) 16:37:19 ID:e1CUMyK1.net] あいつ生きてたのか
139 名前:Now_loading...774KB [2009/08/09(日) 09:01:10 ID:VHnq37kK.net] 質問させてください 以下のように、2つ以上のファイルを使ってオブジェクトを生成する場合、 実行画面に何も表示されません。階層などの問題なのでしょうか? Main.as package { import flash.display.Sprite; import flash.events.Event; public class Main extends Sprite { public function Main():void { var tokei:DigitalClock = new DigitalClock(); } } } 続く
140 名前:Now_loading...774KB [2009/08/09(日) 09:15:04 ID:VHnq37kK.net] 続き DigitalClock.as package { import flash.display.*; import flash.events.*; import flash.text.*; import flash.utils.*; public class DigitalClock extends Sprite { private var clockTimer:Timer = new Timer(1000); private var clock:TextField = new TextField(); public function DigitalClock():void { clockTimer.addEventListener(TimerEvent.TIMER, clockShowTimer); clock.defaultTextFormat = new TextFormat("arial", 20, 0x000000); clock.autoSize = TextFieldAutoSize.LEFT; clock.selectable = false; clock.embedFonts = false; addChild(clock); //ここが問題だと思う clockTimer.start(); } private function clockShowTimer(event:TimerEvent):void { 省略 } } }
141 名前:139 [2009/08/09(日) 09:26:53 ID:VHnq37kK.net] ちなみに、「DigitalClock.as」の中身は、 「Main.as」の中に組み込めば普通に実行できたので 一部省略しました。 階層の問題でしょうか?
142 名前:ひきプロ ◆HIRO2ZQ2Xo mailto:sage [2009/08/09(日) 09:58:19 ID:KDLSuSt/.net BE:52206023-2BP(123)] >>137 ロードした画像数を表示するのが一番作りやすそうな形ですね。 ProgressEvent.PROGRESS でファイルサイズ取れましたかー。 途中でロード処理を一時停止することはきっとできないと思うので、 複数のファイルをロードする時は、ProgressEvent では 容量を割り出してから というわけにはいかなさそうですね。 なにかわかったら教えてくださいっ! 僕も興味あります。 >>139-141 たぶん、>>139 で書かれたコードを、 var tokei:DigitalClock = new DigitalClock(); addChild(tokei); と 1 行足すと画面に表示されると思います。 Main の画面に addChild しないと画面に出てこないんですよねw 僕も最初詰まりましたw
143 名前:139 [2009/08/09(日) 11:15:01 ID:VHnq37kK.net] >>142 できました! ありがとうございます!! 具体的には、 「addChild(tokei);」 をちょっと変更して、 「addChild(tokei.getClock());」 としたらできました。もちろんDigitalClock.as でゲッターを用意しました。 Mainに書き込まないといけないんですね、勉強になりました。
144 名前:139 [2009/08/10(月) 08:17:07 ID:B1VXl5B1.net]
145 名前:ひきプロ ◆HIRO2ZQ2Xo mailto:sage [2009/08/11(火) 20:43:06 ID:mz96ONGl.net BE:548157479-2BP(123)] >>143 DigitalClock は Sprite を継承しているので、 addChild(tokei.getClock()); とせずに、 addChild(tokei); というコードで時計の画像が扱える方がよりスマートな設計になると思います。 tokei.getClock() は、たぶん DigitalClock の内部にもう一つ画面表示要素を作って それを Main に渡す構造になっていると思うのですが、 その場合、 DigitalClock は Sprite を継承しない設計にすることができますね。 tokei を addChild 、 removeChild するだけで表示したり消したりできる方が コードが読みやすくなるし、間違いも起こりにくくなると僕は思います。 とここまで書いて、好みの問題な気もしてきましたw
146 名前:Now_loading...774KB mailto:sage [2009/08/14(金) 01:11:18 ID:w4LLHFJe.net] もう解決したが、謎仕様にハメられた・・・ 例) [SWF (width=800, height=600, backgroundColor=0xffffff, frameRate=20)] public class Main extends Sprite public function Main():void { if (stage) init(); else addEventListener(Event.ADDED_TO_STAGE, init); } private function init(e:Event = null):void { // ここで stage.stageWidth と stage.stageHeight // を取った時・・・ ローカルで直接swfを叩くと 設定値がちゃんと取れる // しかし WebServer上に上げて hogehoge/huga.swf のようにして実行するとなんと 0 が返る // 挙動が変わるとはこれいかに } }
147 名前:Now_loading...774KB mailto:sage [2009/08/14(金) 01:14:43 ID:w4LLHFJe.net] >>146 の解決策 例) [SWF (width=800, height=600, backgroundColor=0xffffff, frameRate=20)] public class Main extends Sprite { public function Main():void { if (stage) init(); else addEventListener(Event.ADDED_TO_STAGE, init); } private function init(e:Event = null):void { removeEventListener(Event.ADDED_TO_STAGE, init); addEventListener(Event.ENTER_FRAME, ent); } private function ent(e:Event = null):void { removeEventListener(Event.ENTER_FRAME, ent); // EnterFrameを一段カマせば、ブラウザ越しでもローカル実行でも取れる // ※サイズはその時のステージのサイズ } }
148 名前:Now_loading...774KB mailto:sage [2009/08/14(金) 01:17:51 ID:w4LLHFJe.net] ちなみに、謎仕様と言うか動きから察するに、win32で言う所の、 WM_PAINT が実行されたタイミングでサイズ決定してるんだろうなぁという感想 stage.stageWidth と stage.width の違いも知らないと多分間違うし、結構罠が多い… 無駄に時間食ってしまった
149 名前:ひきプロ ◆HIRO2ZQ2Xo mailto:sage [2009/08/14(金) 14:25:46 ID:H3Ft1e6v.net BE:348036285-2BP(123)] Web ページに配置すると init イベントで stageWidth 取れないんですか。 なぜか 0 になってしまう時があるなーと思ってたんですよねw 詳しい内容載せていただいてありがとうございました。 勉強になります。
150 名前:Now_loading...774KB mailto:sage [2009/08/14(金) 21:08:05 ID:w4LLHFJe.net] あとこういう謎仕様と言うか、Flashの中の動きを想像して予想しないと 一見何でも無いような事すら書けないってのはちょっと苦痛な気もする・・・ 理由わかる? 例1) var w:int = 200; var h:int = 50; var sp:Sprite = addChild(new Sprite()) as Sprite; sp.graphics.beginGradientFill(GradientType.LINEAR, [0xffffff, 0x000000], [1.0, 1.0], [200, 255]); sp.graphics.drawRoundRect(0, 0, w, h, 8, 8); sp.graphics.endFill(); 例2) 〜例1と同じ前略〜 var sp:Sprite = addChild(new Sprite()) as Sprite; sp.width = w; sp.height = h; 〜例1と同じ後略〜 空の Sprite の width/height を設定するかしないかで描画の内容が変わるって一体・・・
151 名前:Now_loading...774KB mailto:sage [2009/08/14(金) 21:15:46 ID:w4LLHFJe.net] あ、ちなみに誤解の無いように言っておくと、不満色々書いてても 俺根本的にFlash好きだからなww ブツブツ文句言いながら追いかけて楽しんでる
152 名前:ひきプロ ◆HIRO2ZQ2Xo mailto:sage [2009/08/14(金) 23:21:08 ID:H3Ft1e6v.net BE:182719837-2BP(123)] >>150 この問題はなんで起こるんでしょうねw ぼくも疑問に思っていました。 width・height への値の代入は、 「描き始める前に領域を確保する」 という効果が出ないようですね。 これは直感と反する動作なので謎の仕様に見えてしまいます。 試しに、図形を描き終わった後から width・height を再設定してみると、 scaleX, scaleY に値を代入したかのように拡大縮小されますね。 「後からサイズを変える」 という効果はあるようです。 trace(sp.scaleX); を表示してみると、再設定されていることが確認できました。 ということは、最初に width・height に値を代入すると、 scaleX、scaleY が 0 に設定されてしまうことになり、 その後の描画内容が画面に出ないという動作になってしまいます。 以上のことから想像すると、width・height のセッターの動作が、 function set width(value:Number):void { this.scaleX = this.width / value; } というようになっているのではないかなと。 width の初期値は 0 なので、何か値を掛けたとしても 0 になってしまいます。
153 名前:ひきプロ ◆HIRO2ZQ2Xo mailto:sage [2009/08/14(金) 23:24:27 ID:H3Ft1e6v.net BE:469848896-2BP(123)] 最後の行の書き方がおかしかったですね。 0 / value; というような式だと、結果は常に 0 になるので、 最初に width・height を設定すると、その段階で scaleX、scaleY が 0 になってしまうと考えられます。
154 名前:Now_loading...774KB mailto:sage [2009/08/15(土) 14:53:11 ID:srGxDtlq.net] >>152-153 ああなるほど。確かにそうかも。・・ってか、こういう風に利用者側が動きを想像しないと 動作の正解が見えないってのはどうなんだろうな・・ww 困るわ、モヤモヤがいつまでも晴れなくて。 色々と
155 名前:Now_loading...774KB mailto:sage [2009/08/15(土) 15:04:29 ID:srGxDtlq.net] あと、スレが過疎なので話のネタと一つの心配事を書いとく。 ネタ: ただし誰でも知ってるような話) 良くあるAS他の説明で、「これはオブジェクト指向(以下OOと略)言語です」 って説明があるが、実はOOにも複数の流派/思想がある。 例えばダックタイピングなOO、つまり 「それがアヒルのように歩きアヒルのように鳴くなら、それはアヒルである」 って考え方。 これは例えば、C/C++ 言語で関数ポインタを使ったコールバックを想像するとわかりやすくて、つまり、 「使おうと思った時にそれが想像通りのインタフェース/インプリメンテーションになっていれば、それと見なす」 と言う物。 AS3の例) class A { var onLoad:Function = null; function load(): void { if(onLoad != null) onLoad("終了"); } } // var a:A = new A(); a.onLoad=function(s:String):void { trace(s); }; // "終了とトレースされる これは関数テンプレートに従ってそれと見なしているので実行可能となるが、例えば a.onLoad = function(i:int):void ... のように記述すると コンパイルは通るが実行時に 「型が違う」 的なエラーになる。 こういう動きを、型推論とか、ダックタイプとか、C/C++のテンプレートに倣って テンプレート指向OOとか言う 対して JavaやC#、C++のクラス機構のような 「アヒルのように歩きアヒルのように鳴いてもアヒルでないなら、それはアヒルでは無い」 という 型厳密なOOを、クラス指向OOとか言う。(続く)
156 名前:Now_loading...774KB mailto:sage [2009/08/15(土) 15:11:52 ID:srGxDtlq.net] ネタ続き) で、この当たり前の話がここからどうなるかと言うと、要はAS3って型推論と型厳密が両方使える言語なんだよなって事。 …って、ここで心配事書くはずだったが、ちょっと確認してからにしたいのでやっぱり止めた
157 名前:Now_loading...774KB mailto:sage [2009/08/15(土) 18:27:24 ID:srGxDtlq.net] AS3メモ: ・URLLoader と Loader は継承関係に無い赤の他人。Loader はさり気なく DisplayObject の派生 ・Video インスタンスにattachした NetStream を取り出す方法が無い。 ※setがあるのにgetが無い的なイメージ。 それは触ってはいけないからじゃ?とも思ったが、コントロールはNetStream側で行う謎設計 ※この辺のストリームやI/Oのイメージは、初めから整理されているJava他の言語のイメージは捨てて、全部疑ってかかった方がいい ・if(a < b && c , 1) { ほげほげ } のような構文でコンパイルエラーにならない @FlashDevelop 3.0.1 RTM + Flex3 しかし実行すると Decompressされたソースが山のように吐かれて死亡する。しかもエラーメッセージは [Fault] exception, information=VerifyError: Error #1068: Boolean と int は共有できません。 になる。原因がわかればわかる話だが、いきなり実行時にこのエラーメッセージ見ても原因が想像出来なかった。まさか typo とは
158 名前:ひきプロ ◆HIRO2ZQ2Xo mailto:sage [2009/08/16(日) 03:14:49 ID:AKWy+LpT.net BE:278429748-2BP(123)] ちょ〜濃いネタですねw かなり調べないと付いていけないです。 OO のお話ですが、ActionScript は過去のやり方を引き継いでる部分とか JavaScript のベースになっている仕様を取り入れるとかで、 おっしゃる通り、色んな考え方が錯綜してるように見えますね。 var obj:Object = new Object(); obj.prototype.func = function ():void { return; }; というような、プロトタイプを使った機能の拡張もできるらしいですね。 実際に使ったことはないですが。
159 名前:ひきプロ ◆HIRO2ZQ2Xo mailto:sage [2009/08/16(日) 03:25:19 ID:AKWy+LpT.net BE:104411434-2BP(123)] 今挙げていただいた話題とは直接の関係はないですが、 ・Flash Playerの作り方 www.slideshare.net/yukoba/flash-player ここに書かれている内容によると、 Flash Player の動きって、明文化されてない部分がかなりあるようで、 「バグとか誤動作も含めてそういう仕様」 みたいな状態になってるようですね。 ドキュメントが後から作られてるような感じかもしれませんw 謎の動きをする箇所は、Flash の文化圏はそういうものだと割り切って、 厳密に仕様が存在する環境とは分けて考えた方が 精神衛生上よろしいのではないかと個人的には思いますw
160 名前:Now_loading...774KB mailto:sage [2009/08/16(日) 12:40:30 ID:BH5EXFvM.net] あぁ、書こうと思ってた心配事がとりあえず的中。 原因はつまり、>>158 氏の話の通りだ。 多分過去の仕様を引き継いで 強引に形を変えつつ、増築を繰り返してる&API仕様の整理が出来て無いのか、ライブラリがバラバラ。 具体的にどういう事があったかメモしとくとこんな感じ。 丁度 >>159 の話ともリンクするけど、 俺がやろうとしてた事は、かいつまんで言えば画像、音、動画(FLV)を、特に分け隔てもせずに動的にロードしつつ、再生するものだった。 実際には他にも色々行っているけど、その中の一部として、これをやりたかった。 そしてハマった。 結果、結局さんざん調べてどうやら出来ないとの結論に達して、別の観点で自分で整理して、継承したクラスいくつか作って 再管理する形にしたけど、この 「どうやら出来ない」 って結論に辿り着いた理由ってのが、まさにこのバラバラな作りのせい。 何かの役に立つかもしれないので、念のためまたメモしとく(続く)
161 名前:Now_loading...774KB mailto:sage [2009/08/16(日) 13:08:53 ID:BH5EXFvM.net] (続き 1/2) 差し当たり、自サバのCGI(Perl/PHP)にパラメタをPOSTして、そのレスポンスとして flv ファイルを取得し、それを表示したかった。 画像と音はさくっと完成。 しかし flv でハマる。 結果、GETで投げれば普通に出来たんだが、POSTじゃないと困る部分があったので、そうしたかった。 しかし出来なかった。 その理由を具体的に以下に記す。 原因は上でも書いた通りクラスが一部独自仕様になっており、絶妙にバラバラに作られてたせい。 まず前提として、 flash.net.URLStream と flash.net.NetStream がまったく別物。 一見似てるけど全然別物。 どういう事かと言うと、 継承関係がまず Object ← EventDispatcher ← ほげほげStream となっていて、Stream 抽象クラスのような物は無いし、インタフェースインプリメントの状態もまったく別。 と言うか、 NetStream は IDataInput インタフェースを実装していない。 かと言って、上で書いたダックタイプな手法でごまかそうにも、メソッドのシグネチャが違うので無理。 つまり、この2つは相互に入れ替えが出来ない。 やろうとした事から考えると、NetStream がもしもインタフェースインプリしてたら、自前クラスで機能補完できたんだけど、 それも出来ず、かといって AS3 は多重継承も出来ないので、結果、出来ない。
162 名前:Now_loading...774KB mailto:sage [2009/08/16(日) 13:11:50 ID:BH5EXFvM.net] (続き 2/2) それならばと、URLStream でバイナリデータを自前でロードし、それを使おうと思ったが、今度は NetStreamにバイナリデータを受け取る口がない。 それならばと目の前の目的である flash.media.Video に渡そうと思ったが、それ自身バイナリデータを受け取るインタフェースが無い。 よって自前でロードして渡す案も出来ない。 それならば仕方が無いので、画像、動画、音声の共通抽象クラスを定義して自前で再実装、NetStream と URLStream に自前で共通のインタフェース定義して、 それをベースに書いてしまえと書いてみたが、ここで致命傷発覚。 つまり、NetStream には POSTデータが渡せない。 というか、HTTP-POSTを投げる方法が無い。 URLStream ならば、URLRequest を引数に取るのでどんなHTTP-METHODでも送信できるが、NetStream は NetConnection とだけ仲良しで、自由なHTTP送信は出来ない。 そして、flash.media.Video は、NetStream, NetConnection しか受け取らない。 そして、flv ファイルのデコードは、flash.media.Video 内のネイティブ実装コードが行っている。 という訳で、ここで詰んだ。 ちなみに現状は、とりあえずもっと上位レベルで自前で管理を揃えてます。 画像、音声、動画を同じように非同期でロードしつつ、どれも同じように 扱えるクラス書いて。 NetConnection/NetStream って、どうやら Flashサーバ向けの固有実装っぽい。 ハードコード祭りらしく、その理由はおそらく >>159
163 名前:Now_loading...774KB mailto:sage [2009/08/16(日) 15:58:16 ID:BH5EXFvM.net] ちなみに、flv ファイルを簡単に扱える VideoClip クラスを作ってあるのでソース貼っとく。 もし必要な人いたらどうぞ。 使用方法他はテキスト中で。 作りはシンプル ttp://flpannex.so.land.to/memo/memo4.txt
164 名前:Now_loading...774KB [2009/08/18(火) 12:33:29 ID:9ukPwcJf.net] FlashDevelop使いってInkscapeユーザも多いのかな? 絵描いてsvgで出力すると、そのままEmbedすればShapeとして使えるんだぜ
165 名前:Now_loading...774KB mailto:sage [2009/08/18(火) 23:34:39 ID:VZ4cFrHD.net] >>164 IllustratorのSVGじゃだめなの?
166 名前:Now_loading...774KB [2009/08/19(水) 02:26:28 ID:lSXfPDKg.net] >>165 いや Illustratorでも独自拡張の無いSVGなら全然おkだけど、 そもそもオープンソースでって話じゃないかと思う。 FlashDevelop も Inkscape もオープンソース。 大体イラレは高い。 Flashで使うパーツをちょっと描きたいなら、Inkscape で問題無い。 てか凝ったの描いても問題無い。 本気でイラスト描く or 仕事で使うなら買った方がいいかもしれないが
167 名前:Now_loading...774KB mailto:sage [2009/08/19(水) 22:17:07 ID:CCAOsmOZ.net] >>164 俺はFLASHで書くなあ・・・ 処理速度欲しいから出力はPNGにしちゃうけどね。 Inkscape使った事ないけど、イイ感じなのかい?
168 名前:Now_loading...774KB [2009/08/20(木) 12:34:56 ID:t3Qav2lR.net] >>167 製品版のFlash持ってるならいらないかもしれないが、 このスレはFlashDevelopユーザのスレだ。 FlashDevelopはAS主体で何か作る時、製品版FlashよりVisualStudioライクで圧倒的に 効率がいいけど絵を描く機能は無いのだ。完全にプログラマ向け。 だが同じオープンソースってくくりでInkscapeと連動させると、結果的に製品版と変わらない内容が 無償で効率よく描けるって事。 Inkscapeそのものは正直ちょっともっさりしてるけど、良くできてるぜ
169 名前:167 mailto:sage [2009/08/20(木) 22:00:20 ID:d8t6qhE/.net] >>168 なるほど、オープンソースで何とかする場合の話か。空気読めなくてごめんよ。 俺も最初はEDGEで頑張ったりしてたんだけど 細かいアニメーション付ける必要があったから結局FLASH買ったんだよなぁ…
170 名前:Now_loading...774KB mailto:sage [2009/08/21(金) 00:22:42 ID:+eU7pAsm.net] SVGがそのままEmbedできるってのは、AS3標準?FlashDevelopの機能として? ライブラリ使わないと読み込めないと思ってた
171 名前:Now_loading...774KB mailto:sage [2009/08/21(金) 06:11:41 ID:XE5HNHp8.net] >>170 あぁ、それどうなんだろ。メタタグの処理してる所で何かしてんのかな? あ、あと、>>164 1個間違えた。ShapeじゃなくてSpriteだった public class Main extends Sprite { [Embed (source = '../lib/box.svg')] private var SvgBox:Class; private var box:Sprite; public function Main() { box = new SvgBox() as Sprite; } }
172 名前:Now_loading...774KB [2009/08/21(金) 12:22:53 ID:uilm8B9A.net] FlashDevelopで使えるウィジェットキットみたいな物ってなんかないだろうか。 mxmlでなく、AS3で使えるソースライブラリ 無ければ自分で作る
173 名前:Now_loading...774KB mailto:sage [2009/08/24(月) 17:05:58 ID:vwB2Xwdq.net] 3Dスレが盛ってないからこっちで聞きたいのですが、 GoogleSketchUpで吐いたkmzファイルから取り出したdaeファイルを、 papervision3d2.0のcolladaクラスで読み込もうとするとエラーを吐かれます。 daeファイルの修正が必要だということを言っているサイトはいくつか見つけたのですが、 具体的にどこを修正すればいいのか分かりません。 なにか手がかりだけでも教えていただけませんでしょうか。
174 名前:Now_loading...774KB [2009/08/24(月) 20:03:11 ID:BBkP+lkD.net] >>173 どういうエラーかわからないと、何とも言えない気がする
175 名前:ひきプロ ◆HIRO2ZQ2Xo mailto:sage [2009/08/25(火) 10:10:36 ID:ALs1NBnV.net BE:69607924-2BP(123)] >>172 ・BIT-101 MinimalComps v0.91 www.bit-101.com/minimalcomps/ こういうのがありました。
176 名前:Now_loading...774KB mailto:sage [2009/08/25(火) 12:21:35 ID:HhgWXHDT.net] >>173 PV3Dのバージョンはいくつ? 文法おかしくないという前提で言うと、GoogleCodeに上がってる安定板の最新にした方が良いよ。 一個前のやつはCollada関係のライブラリに不具合があるから
177 名前:173 mailto:sage [2009/08/25(火) 12:40:04 ID:W4YVVRDH.net] >>176 エスパー! 最新版にしたら解決しました! こんな基本的なことを見落としていたなんてお恥ずかしい…… まことにトンでした。
178 名前:Now_loading...774KB mailto:sage [2009/08/25(火) 22:02:11 ID:kksrYPK4.net] >>175 こりゃシブいね。 使うときの権利表記どうすりゃいいか見ようとして元サイト眺めてたら こんなのも作ってるのかこの人。デザインが好みだなぁ。 www.bit-101.com/MinimalDesigner/
179 名前:Now_loading...774KB mailto:sage [2009/08/26(水) 18:42:50 ID:XDrpXCay.net] FlashDevelopでSVNを使いたいんですけど、出来ますでしょうか? 本当は使い慣れているEclipseで開発したいんですが出来ないようなので・・・
180 名前:Now_loading...774KB [2009/08/26(水) 19:18:29 ID:6z5BxeNv.net] FlashDevelopでって言うか、普通にSVNクライアントでソースやりとりすればいいと IDEに機能包含されてる必要は無いし ちなみにToirtoseSVNお勧め。プロジェクトフォルダにチェックアウトして楽ちん
181 名前:Now_loading...774KB mailto:sage [2009/08/26(水) 19:57:16 ID:XDrpXCay.net] レスどうも! 今まさにTortoiseSVNでやっているのですが 個人的にはIDE上で操作できた方が楽なんですよね ぶっちゃげ、大差ないのはわかりますが・・・w 無いようなのでしばらくはコレでやってみます
182 名前:Now_loading...774KB mailto:sage [2009/08/26(水) 21:45:06 ID:a0Hvfq8D.net] TortoiseSVNならProjectパネルのファイル右クリックしてShell Menuから呼び出せるからな 1クリック余計にかかるが大した事はないな
183 名前:ひきプロ ◆HIRO2ZQ2Xo mailto:sage [2009/08/28(金) 11:00:28 ID:M2jlnvsr.net BE:87009252-2BP(123)] ・Flex Style Explorer examples.adobe.com/flex3/consulting/styleexplorer/Flex3StyleExplorer.html 既にみなさんご存知だとは思いますが、 MXMLで画面作る時に便利ですよ。
184 名前:ひきプロ ◆HIRO2ZQ2Xo mailto:sage [2009/08/30(日) 00:13:45 ID:zvSmTpYT.net BE:487251078-2BP(123)] ネタ振りとして1つ。 AIRアプリが便利そうだなぁと今思ってるんですよ。 Windows・Mac・Linuxで同一のバイナリで動きます。 AIRは実行環境でWebブラウザコンポーネント(WebKit系)を内蔵してるし、 OSのファイルマネージャから直接ドラッグできるし、 日本語のインライン入力がMac・LinuxでもWindowsと同じようにできます。 Webブラウザコンポーネントのみを使って、HTML+CSS+JavaScriptでも開発できるそうです。
185 名前:Now_loading...774KB mailto:sage [2009/08/30(日) 02:37:07 ID:LcfhxjBj.net] AIRはランタイムの再配布ライセンスが不要な範囲なら確かに便利だろう。 ランタイムの普及率とシームレスインストールの存在から考えて、Web配布が前提だと思う。 AIRアプリはランタイムのインストールとアプリ自体のインストールが必須で敷居が高いけど ファイルの読み書きとか右クリック対応とかの明白な機能強化がある。 一方、.exeファイルをコピーするだけで起動できて手軽なプロジェクタの魅力も捨てがたい。 ガジェット以上の事をやりたくなると強制されるこの選択が意外と悩ましい。 (俺はAS側からウィンドウサイズを変更したいだけなのに・・・)
186 名前:名無しさん@そうだ選挙に行こう mailto:sage [2009/08/30(日) 10:12:56 ID:Mae5Wjx/.net] 「AIRはランタイムの再配布ライセンスが不要な範囲」ってなに? 配るときにライセンス的に何かあるの?
187 名前:ひきプロ ◆HIRO2ZQ2Xo mailto:sage [2009/08/30(日) 12:16:48 ID:zvSmTpYT.net BE:139214944-2BP(123)] >>185 CD等の媒体で配布する場合も、ユーザのPCがインターネットに接続可能だと仮定して インストーラー作っても良いと思うんですよね。 インストーラーは、 HTML と .air のファイルで作れそうです。 AIRのランタイムはCDに含めずに、ネットから拾ってもらう方が良いかなと。 おっしゃる通り、ランタイムをCDに含めたい場合は、 ライセンスを意識する必要がありそうです。 Flashプレーヤーのプロジェクタ (.exe) も、プレゼンテーションのように ユーザの操作性を拡張しなくて良い場合はお手軽にできて便利ですよね。
188 名前:Now_loading...774KB [2009/09/09(水) 13:54:32 ID:f8wHh8Pi.net] 質問です。コメントで使える@paramとかってなんて言うのですか? FlashDevelop以外のエディタでも(VisualC++とか)こういうのあるみたいなのですが 名前がわからないので調べることもできません(汗。 それと格@要素の意味がわからないので、よろしければ解説お願いします。 /** * ... * @author(製作者の名前を書く) * @copy * @default * @deprecated * @eventType * @example * @exampleText * @exception * @haxe * @inheritDoc * @internal * @link * @mtasc * @mxmlc * @param(引数の説明を書く) * @private * @return(何を返すか説明を書く) * @see * @serial * @serialData * @serialField * @since * @throws * @usage * @version(日付等の最終更新日を書く??) */
189 名前:Now_loading...774KB mailto:sage [2009/09/09(水) 15:23:10 ID:p4jKgGmk.net] >>188 javadocだよ 簡単な書き方とか ttp://www.k-kawaguchi.com/java/fnavi/javadoc.html
190 名前:Now_loading...774KB mailto:sage [2009/09/09(水) 15:25:49 ID:f8wHh8Pi.net] >>189 どうもありがとう!
191 名前:Now_loading...774KB mailto:sage [2009/09/09(水) 23:02:23 ID:b0K8lE04.net] AS3のVector<T>.splice、第二引数省略したら引数足りないってエラーになったけど オンラインリファレンスでは省略可能ってなってる なぜだろう
192 名前:Now_loading...774KB mailto:sage [2009/09/09(水) 23:06:00 ID:rgJmg4qb.net] splice (startIndex:int, deleteCount:uint) : Vector.<Number> リファレンスが間違ってんだろうね
193 名前:Now_loading...774KB mailto:sage [2009/09/14(月) 05:29:57 ID:TH7sx0EX.net] Airは携帯電話のインフラ整備ができればもっと流行ると思うなぁ メインはPCだがモバイルで一部持ち出せるコンテンツなんて興味あるし
194 名前:Now_loading...774KB [2009/09/25(金) 14:51:08 ID:5dHmy83e.net] コード書いてる途中に文字の間隔とか(arrayの要素とか)勝手にスペース入れられるのが凄いウザイんだけど これ無効化できないの?オプションで項目が見つからん
195 名前:Now_loading...774KB mailto:sage [2009/09/25(金) 15:06:03 ID:xTd98wOz.net] >>194 Tools->Program Settings->ASCompletion->Helpers->Characters Requiring Whitespace でカンマを削除しろ
196 名前:Now_loading...774KB [2009/09/25(金) 15:30:26 ID:5dHmy83e.net] できた!ありがとん
197 名前:Now_loading...774KB mailto:sage [2009/10/01(木) 03:06:30 ID:YN0Z+wDq.net] 質問したいんだけど、 これとFlashCS4となにが違うの? グラフィカルな操作なしで全部ASでやっちゃおーぜって感じ? ていうかこれjavaそっくりだな
198 名前:Now_loading...774KB mailto:sage [2009/10/01(木) 12:10:34 ID:ODOeXGDp.net] クラス名を変えるとき、単語マッチで全置換とかやったりするけど 結構予想外の置換がおきたりする。 ファイル名は置換されないから書き直さなきゃいけないし…。 みんなは「しまった!クラス名はxxxのほうがよかった!」ってなったりしたとき どうしてる??
199 名前:Now_loading...774KB mailto:sage [2009/10/01(木) 12:33:40 ID:EkfWsNsN.net] >>197 FlashCS4のソースエディタは糞なので、もう少し気の利くFDがおすすめということ
200 名前:Now_loading...774KB mailto:sage [2009/10/01(木) 14:56:02 ID:k/jiW+ZZ.net] >>199 ありがとう Flex Builder3と併用でとりあえず使ってみることにした
201 名前:Now_loading...774KB mailto:sage [2009/10/01(木) 20:25:59 ID:k/jiW+ZZ.net] Tweener使いたくて、 caurinaフォルダみつけたけど、 どこにいれればいいのか もしかして使えない?
202 名前:201 mailto:sage [2009/10/02(金) 01:53:45 ID:y3NPs64i.net] すいませんできましたw ASと同じ階層に置くだけでした しかもflash Player 10のデバックプレーヤーも入ってない っていうミスもしてました。
203 名前:Now_loading...774KB mailto:sage [2009/10/06(火) 19:50:50 ID:5WgU3b4H.net] ActionScript のエディタで flash.* はインテリセンス効くんだけど mx って入力しても mx の名前空間の候補が全く出てこないんすけど ビルドはちゃんと通ってた そもそも FlashDevelop のインテリセンスって Flex SDK の何のファイル参照してるんだろう flex_sdk_3\frameworks\flex-config.xml あたりかな?
204 名前:Now_loading...774KB mailto:sage [2009/10/07(水) 07:46:12 ID:PkTMreQh.net] FlashDevelop 用 ActionScript 3 サンプル集を見ながら、 インタラクティブな操作ができるグラフを作っています。 描画したグラフをマウス右クリックでクリップボードにコピーするか、 PNGなどでサーバ上に保存し、そこにアクセスしてもらうなどして、 ユーザに再利用してもらうよう(こんな感じ ttp://www.speedtest.net/)にできればうれしいのですが、 どうすればいいのか全く分かりません。 情報へのポインタでもいいので教えてもらえないでしょうか。
205 名前:Now_loading...774KB mailto:sage [2009/10/07(水) 12:25:42 ID:Psr8pyAp.net] >>204 つttp://zapanet.info/blog/item/969 もうひとつ つttp://designreviver.com/tutorials/actionscript-3-jpeg-encoder-revealed-saving-images-from-flash/
206 名前:204 mailto:sage [2009/10/07(水) 22:35:37 ID:PkTMreQh.net] >>205 ありがとうございます。 「これですぐにできちゃいます」なんて書けるほど力量がありませんが、 教えていただいた情報をもとに頑張ってみます。
207 名前:Now_loading...774KB mailto:sage [2009/10/07(水) 22:45:31 ID:01JoY1Ds.net] BitmapData をバイナリでPost… って書こうと思ったら >>205 に詳しい記事出てた
208 名前:Now_loading...774KB mailto:sage [2009/10/08(木) 14:04:36 ID:Twod1a+U.net] >>203 mx.〜は、flex_sdk_3\frameworks\projects\framework\src\mxを 「AS3Context」の「User Classpath」に入れてやると出てくるようになったよ クラス名変えたら使ってるとこは置き換えてほしいな… リファクタリングする時面倒だ
209 名前:Now_loading...774KB mailto:sage [2009/10/10(土) 11:44:08 ID:BMp8JOW8.net] 最新版のFlashDevelop (3.0.4 RTM released)とFlex 4-Beta 2という環境で 新規にAS3 Projectを作って、何も変更せずにコンパイルすると、 Warning: This compilation unit did not have a factoryClass specified in Frame metadata to load the configured runtime shared libraries. To compile without runtime shared libraries either set the -static-link-runtime-shared-libraries option to true or remove the -runtime-shared-libraries option. って警告が出るんですけど、正しい挙動なんでしょうか? 以前のバージョン(3.0.3 RTM released)では出ませんでした。
210 名前:Now_loading...774KB mailto:sage [2009/10/13(火) 12:17:53 ID:1T6u9r/C.net] ランタイム用の共有ライブラリのリンクを設定してやるか、共有ライブラリー自体のオプション設定を切ってやればイイと後半に書いてあるよ
211 名前:Now_loading...774KB mailto:sage [2009/10/13(火) 20:10:32 ID:fhEdgUOE.net] >>208 おおサンクス、ちょっとイジってみるわ
212 名前:Now_loading...774KB mailto:sage [2009/10/24(土) 21:47:54 ID:PvOcN2Zo.net] ちょっと質問いいですか><;; プロジェクトの中のフラッシュを動かすのに必要なファイルって 全部binフォルダ内だけで収まってるはずですよね・・・ binだけコピペしても起動しないんですけどどこに違いがあるんでしゅか・・・?
213 名前:Now_loading...774KB [2009/10/24(土) 21:52:09 ID:iHso+BCt.net] どういう内容なのかによる。 例えば、外部ドメインのリソース(画像とか、要は別ファイル)を 引っ張ってきて表示するような内容の場合、例えば Webサーバ上に配置すると、クロスドメインになって表示はされない。 ローカルで実行する分には表示される。 なので、「どういう内容を作った」 「コピペして実行って、どういう状態で実行してるか」 を書かないとなんとも
214 名前:Now_loading...774KB mailto:sage [2009/10/24(土) 22:00:27 ID:PvOcN2Zo.net] は、早いですね・・・駄目ぐらいで聞いてみたのにありがとうございます 外部ドメイン?は画像とXMLを読み込んでるはずなんですが・・・ コピペしてない元のフォルダをアップロードしたらちゃんと表示されました 問題はコピペしたbinフォルダ内のindex.htmlで開いた時なんですが 念のためにFLASHMANIAって再生ソフトでswfを直で開いたら再生できました
215 名前:Now_loading...774KB mailto:sage [2009/10/24(土) 22:05:25 ID:iHso+BCt.net] やっぱUploadして実行か。 そして画像とxmlは同じドメイン下にあると。 FLASHMANIA ってのは知らないが、swf直実行はローカルドメイン上での実行になるので、 サーバに上げた時と挙動は違うよ。 しかし元のフォルダを丸ごとUpしたらブラウザ上で表示された? のなら、html 内の記述を確認すること。 ブラウザ側のFlashプラグインのバージョンも確認すること。 ローカル実行=Flash10、ブラウザプラグイン=Flash8 とかだったら、内容によっては当然動かない
216 名前:Now_loading...774KB mailto:sage [2009/10/24(土) 22:19:25 ID:PvOcN2Zo.net] htmlの内容はプロジェクト作ったときに勝手に作成された物のままなんですが もしかしてFlashDevelopedのバージョンが古いせいかもしれないです でもそれだとコピペした時だけ起動しない理由にはならないですよね・・・
217 名前:Now_loading...774KB mailto:sage [2009/10/24(土) 22:23:06 ID:iHso+BCt.net] >コピペしてない元のフォルダをアップロードしたらちゃんと表示されました → アップロードした外部サーバ上で正常に動いた >問題はコピペしたbinフォルダ内のindex.htmlで開いた時なんですが → ローカル上で htmlファイルをダブルクリックして開いたら動かない って状態?どちらも同じブラウザで表示している? 本当に全てのファイルが揃っている? Flash内で読み込む画像なり xml のパスが相対になっていて、ローカル上でコピペした先でもちゃんてそのファイルへのパスは合ってる?
218 名前:Now_loading...774KB mailto:sage [2009/10/24(土) 22:34:36 ID:PvOcN2Zo.net] >上5行 はい、その解釈で間違って無いです。ファイルも揃ってるか確認しました むぅう・・・前にやった時もそうだったんで FlashDevelopedではよくある事かと思ってたんですが 滅多に無いようなケースなんですね・・・何故なんでしょう・・・
219 名前:Now_loading...774KB mailto:sage [2009/11/22(日) 20:41:10 ID:s7//XI7P.net] 質問です Flex3.0+FlashDevelop3.0.4です actionscript3でDataGridが使おうとしています。 import fl.control.Dtagridはインポートできるのですが dg:DataGrid = new DataGridがコンパイルエラーになります。 fl.swcはパスを通しています(コード補完は行われる) import fl.control.Dtagridを外すとコンパイルは通るのですが DataGridが認識されないようです。 解決方法はわかる方いましたらよろしくお願いします
220 名前:Now_loading...774KB mailto:sage [2009/11/22(日) 21:14:50 ID:7/GjMHR5.net] 君がなにを言っているかなんて・・・僕にはわからないよ!!!
221 名前:Now_loading...774KB mailto:sage [2009/11/22(日) 21:54:51 ID:MseXE1s7.net] >>219 そこまで書いてる人だから、まさか構文ミス宣言ミスは無いと思うが・・・ ※ var dg:DataGrid = new DataGrid(); とりあえず、コンパイルエラーの内容を。 コンストラクタの中で利用している別のクラスが見えていないとかだったり あと fl.control.* 系のライブラリクラスは、mxml を使ったプロジェクトじゃないと正しく見えてくれないなんて事もあったりしたかも さらに、fl.control.* 系は ASのみのプロジェクトでは正しく利用出来なかったかも ※注: ただし俺の話は FlashDevelop3.0.1 の場合の話。3.0.4 では事情が変わってる可能性もあり
222 名前:Now_loading...774KB mailto:sage [2009/11/22(日) 22:46:27 ID:s7//XI7P.net] >>221 早速の返答ありがとうございます >fl.control.* 系のライブラリクラスは、mxml を使ったプロジェクトじゃない そうなんですか。mxmlで書き直さないといけないのかぁorz fl.controlだと C:\Flex3\test_AS\sinple\src\Main.as(1238): col: 8 Error: 型が見つからないか、コンパイル時定数ではありません : DataGrid。となります mx.controlにするとコンパイルはなんとか通りました。が、 TypeError: Error #1034: Type Coercion failed: cannot convert "id" to mx.controls.dataGridClasses.DataGridColumn. at mx.controls::DataGrid/set columns()[C:\autobuild\galaga\frameworks\projects\framework\src\mx\controls\DataGrid.as:1099] at Main/commentlist()[C:\Flex3\test_AS\sinple\src\Main.as:1244] とエラーが出ました。 mxはFlexプログラム(mxml付)でないと使えませんよね。たしか ソースは以下です
223 名前:Now_loading...774KB mailto:sage [2009/11/22(日) 22:49:42 ID:s7//XI7P.net] package{ //データグリッドの生成 import fl.controls.DataGrid; import fl.data.DataProvider; import flash.display.Sprite; public class Main extends Sprite { public function Main():void{ var dammy:Array = [ { id:0 , name:"ジョン", age:21 }, { id:1 , name:"ボブ", age:32 }, { id:2 , name:"トニー", age:43 } ] var dp:DataProvider = new DataProvider() dp.addItems(dammy) var dg:DataGrid = new DataGrid(); dg.headerHeight = 30 // ヘッダの高さ dg.sortableColumns=true // ソート機能 dg.allowMultipleSelection =true // 複数アイテムの選択 dg.editable= true // 編集可/不可 dg.columns = ["id", "name", "age"] // 表示名を気にしなければこっちで簡単に設定 dg.dataProvider = dp dg.width = 300 dg.height =200 addChild(dg) } } }
224 名前:Now_loading...774KB mailto:sage [2009/11/22(日) 23:03:50 ID:MseXE1s7.net] >>223 ああやっぱり。 俺も DataGrid じゃないが、fl.*.* なコントロールを AS3 のプロジェクト上で、 Java や C# よろしく、>>223 みたいな感じに new で生成して addChild とか試したがダメだった。 パスの設定やその他色々試したが、途中で諦めて UI を丸ごと自作してしまった ※注: そうしなきゃならなかった訳じゃないが、外観が気に入らないとも思っていたので、ついでに自作した いずれにしても、それやっぱり mxml 使ったプロジェクト内じゃないと多分無理。 恐らく生成されるインスタンスが、mxml から内部的に変換されて起こされる ASクラスの内部処理と 連動してるんじゃないかと推測してる。 フレームワーク的な意味で。 あくまで推測だけど。
225 名前:Now_loading...774KB mailto:sage [2009/11/22(日) 23:22:26 ID:s7//XI7P.net] >>224 返答ありがとうございます。 むー、やはりmxml形式に書き直すか DataGrid的なものを自作するしかないようですね どっちが楽だろうか、、、 なんにせよ指針が決まったのでありがとうございます
226 名前:ひろし ◆HIRO2ZQ2Xo [2009/11/25(水) 22:47:04 ID:PzVzf4Zv.net BE:243625474-2BP(123)] FlashDevelop の素の状態だと fl.controls 系の SWC ライブラリが入ってなくて、 MXML にしても使えなかったと思います。mx.controls 系なら MXML で使えます。 fl.controls を使う時は、 Flash CS3 か CS4 から、 画面上に使いたいコントロールを貼り付けて SWC 出力した後、 FlashDevelop の lib フォルダに入れて、 右クリック → 「Add To Library」 すると使えるようになったかと。 たぶん、ライセンスの問題で FlashDevelop には含めないようにしてるんだと思います。 …ネットで検索すると落ちてるんですけどね。 と少し遅かったですね。すみません。
227 名前:Now_loading...774KB mailto:sage [2009/11/25(水) 23:26:25 ID:o6+1NJO2.net] 225です 返答どもです ネットに落ちてるfl.swcは拾っていれてるんですよね しかし、コード補完は効くけど、コンパイルエラーになるという しかたないんでDataGridは自作しました
228 名前:Now_loading...774KB mailto:sage [2009/12/01(火) 14:01:19 ID:Borinpk9.net] 225です fl.control系全てがAS3で使えないわけではないようです checkboxは使ったところ使えました しかし、Airプログラムで使用したのですがメイン窓では使えたのですが サブ窓で使おうとすると TypeError: Error #1009: Cannot access a property or method of a null object reference. at fl.controls::CheckBox/drawFocus()[D:\My Documents\Project\Component\fl\controls\CheckBox.as:305] at fl.core::UIComponent/focusInHandler()[D:\DEVELOP\test_lib\fl\core\UIComponent.as:1443] となり使えませんでした
229 名前:ひろし ◆HIRO2ZQ2Xo mailto:sage [2009/12/01(火) 14:56:53 ID:cOMkrPon.net] >>227 自作したんですかー。 大変だったでしょう。 >fl.swcは拾っていれてるんですよね って最初に書いてらっしゃいましたね。 よく読んでいませんでしたw ごめんなさいw >>228 サブ窓では使えないっていうのが不思議ですね。 1つ思い当たるところは、ライブラリの追加の仕方で、 SWC Include Library と、 SWC Library という2つの種類があって、 どちらか忘れてしまいましたが、どちらかの場合、 コンパイル時に参照されなかったクラスが SWF に含まれないようになるようですよ。 全て含めないと動かないライブラリだと、不具合が起こるかもしれませんね。
230 名前:Now_loading...774KB [2009/12/01(火) 18:17:48 ID:csT/f330.net] うお、ホットな話題で助かった・・のか? 僕もfl.swfを evolve.reintroducing.com/downloads/ から落としてきて,add library asetしUIScrollBarを使用したところコンパイルは通りました。 しかし、実行してみると肝心のスクロールバーが表示されません。 あくまで予想なのですが、このswfファイルは定義のみで中身は空っぽ(一部実装されてるかも・・)なのか、必要な実行に画像ファイルがないとかではないかと思いました。 製品版を買わずに打開できてる人いるのでしょうか・・
231 名前:230 mailto:sage [2009/12/01(火) 18:23:55 ID:csT/f330.net] 連投すません fl.swfでなくともフリーで使えるUIパッケージみたいのでもいいからないものかなあ・・
232 名前:Now_loading...774KB mailto:sage [2009/12/01(火) 21:00:27 ID:T7Cfy287.net] FlexSDKの中にmxってフォルダがあるんで、そのフォルダへのパスを「AS3Context」の「UserPath」に登録すればmx系のパッケージが使えるようになるけど UIComponentも使えるようになるんじゃないかな
233 名前:230 mailto:sage [2009/12/01(火) 21:34:32 ID:csT/f330.net] >>232 C:\flex_sdk_3\frameworks\projects\framework\src\mx にUserPathを通したら確かにmxが使えるようになりました。 しかし、flパッケージの下位にあるUIComponentは使用できませんでした。 fl版UserPathがあればできるということでしょうかorz
234 名前:Now_loading...774KB [2009/12/01(火) 22:49:39 ID:hAha95U0.net] てs
235 名前:Now_loading...774KB mailto:sage [2009/12/01(火) 23:31:35 ID:T7Cfy287.net] 今DataGridでちょっとやってみたけどやはり使えなかった 代替案としては、mxのをmxmlで書いてASから使うって手かなぁ