【AS】ActionScript技術交換スレ Part4
■ このスレッドは過去ログ倉庫に格納されています
ムービー内の詳しいASの組み方はもちろん、PerlやJava・PHPを介したCGI連携といった技術や、
XMLSocketを使用したオンラインゲームなど、ムービー以外の用途として活躍するActionScriptの技術交換スレです。
また、AS2.0/3.0の話、Flash Media ServerとかColdFusionやRemoting、コンポーネント等、
他スレでは話題に上がりづらいFLASH周りのコアな技術交換&雑談にもご利用下さい。
前スレ
http://pc8.2ch.net/test/read.cgi/swf/1071929938/
前々スレ
http://pc4.2ch.net/test/read.cgi/swf/1054659810/
前々々スレ
http://pc3.2ch.net/test/read.cgi/swf/1030886688/
※:なおこのスレでは「NowLoadingどうやるの?」みたいな
初歩的な質問は受け付けませんのであしからず。
その手の質問やそれに近いレベルの質問は↓でドゾー
ActionScript 誰かが物凄い勢いで解答するスレ 10
http://pc8.2ch.net/test/read.cgi/swf/1134826648/
参考サイトや参考スレは>>2-5以内。
推測も何も、swfをmp4やaviに変換するソフトは、ビットマップを連続して再生するだけのswfを変換するだけで、
アクションスクリプトで動作するswfを変換できるはずがないと思うんだが バイナリをいじって FrameCount を変えました。
(なお、FrameCount は UI16 なので 108,000frames は無理ですね)
例えば1〜1800を指定できるようになり、止まらず録画することができました。
しかし、
・Swivel先生、延々止まらず。これでは結局目視で停止せざるを得ない。
・強制停止させてみると、出来上がりの動画がスローになる。
たぶん、フレーム数を足した分ShowFrameタグも足さなければいけないのでしょうね。
仕様外の swf を与えておかしくなっているようです。
タグまで扱いだすとややこしいので、観念して目視でなんとかすることにします。
>>799
要するにそういうことです。
フレーム番号範囲だけではなく、ループ回数も指定できればよかったのですが。
>>800
内蔵されたラスタ画像を取り出すわけではなく、
メモリ上にレンダリングされた各フレームをエンコーダに流し込むソフトですので、
アニメーションだけでなく、インタラクティブなものも録画できるようです。 AS3で変数に格納されている文字コードを変換するにはどうしたらよいでしょうか?
具体的には、UTF8のソースコード上でShift_JISにして、その値をサーバーに送信してサーバー上ではShift_JISのまま処理したいです。
(今後の事を考えて、変換はShift_JISだけじゃなく他のにも対応できるようにしておきたいです)
var str = 'あいうえお'; ←UTF-8
str = Encode(str); ← 中身はShift_JISになる
こんな事がしたいのですが、何か良い方法はないでしょうか?
ByteArrayを使って変換してみても駄目でした。
具体的なコードを書いてもらって教えていただけると助かります。
また、そういったライブラリがあれば教えてください。
ただ文字コード周りは脆弱性の温床になっていると聞くので、個人が作ったものではなく企業またはコミュニティが作っているものがいいです。
注文が多くて大変申し訳ないですが、どなたかお助け願いますm(_ _)m 普通はByteArrayで変換するけど何がどう駄目なのかさっぱりわからん。
無理ならサーバー側でその手の変換チェックしてるの探したほうがいいんじゃない? >>804
writeMultiByteでShift_JISにして書き込んでも、それを取り出すときにUTF-8に戻ってしまいます。
具体的なコードを教えていただけないでしょうか?
あと、サーバー側での変換処理は理由あってできません。
AS3側で変換する方法を探しております。 807 Now_loading...774KB sage New! 2014/01/23(木) 20:21:30.63 ID:KGEsLTEv [3/3]
ただでコピペ君とかアホらしい。やーめた。
↑
答えられないんだろwww >>805
as3jcode ってのがあるみたいだよ。個人作だけど
>その値をサーバーに送信して
>Shift_JISにして書き込んでも、それを取り出すときにUTF-8に戻ってしまいます。
どう送信してるの? 何に書き込んでるの? そしてどう取り出してどう検証してるの?
変換ではなく送信・書き込みの過程で化けてるのでは?
もし他のライブラリでもうまくいかないときは自分のコードを書いた方がいいね。 環境:Flash CS6,AS3,for AIR
カスタムクラスからステージ上のテキストフィールを弄りたいんですが、
MovieClip(root).インスタンス名.text = "ほにゃらら";
とすると、コンパイル時に
TypeError: Error #1009: Cannot access a property or method of a null object reference.
と怒られるんですが、だめなんですかね。
_root.インスタンス名.text = "ほにゃらら";
みたいに書きたいんですが、良い知恵はありませんか。 starlingフレームワークを使ってるんですが、描画はaddchildをいちいちしないとだめでしょうか?
以前使ってたxnaではUpdateとDrawを分けてDrawで描画メソッド呼んでたので同じようにしたいです。
flashだとbitmap-bitmapDataで同じようにできるとわかりました。
http://sipo.jp/blog/2009/12/flashbitmapdata.html
同じようにstaticなquadBatchをGameに登録して、それにcloneするってやってみたら確かinvalid blendmodeというエラーが出て、
参考になる資料なかったので詰みました。
staticなquadBatchにaddChildしていこうと思いましたが、実行速度とか副作用とかどうかわかるほど知識がないので、
どなたかいい方法あったら教えてほしいです。 >>813
その質問では結局何を描画したいのかが分からない。
固定の画像を変形させるトゥイーンアニメーションするだけならaddChildは最初の1回当然必要になる。
TextureAtlasによるcartoonアニメーションをしたいならそれ相応の初期設定をする必要がある。
この場合、ちゃんと設定してあげればStarlingが勝手にコマを切り替えてくれる。 カプセル化を使えばどんなフレームワークでも実装を隠して好きに使えると踏んでたんですが、
自分はまだ未熟ですので好きに使いこなせるまで至ってないと思います。
おとなしくflashの定石を学んだ方が早いと判断しました。
>814さん、レスありがとうございます。 ActionScriptでMovieClipを動的生成するときってみんなどうやってるの?
一コマずつ追加していくの?
タイムラインの作り込みのやり方がわからない。 コマアニメみたいなものなら、最初から作って埋め込みアセットにしちゃったほうがいいんじゃない?
そうでないなら、EnterFrameとかの定期的なイベント時に描画を更新する
タイムラインを作るのではなく、描画更新で次の状態が描画され
それ以前の状態はなくなるので、タイムラインは1フレームしかないって
ことになるんじゃないかなあ FeathersのUIをGUIでデザインしたいんだけどいい方法ないかな。
テクスチャをモニターしながらできるとなおいいんだが。 質問です。
Flash Pro CCでムービークリップを作成しリンケージ(Class Test)したあと、ライブラリから対象のムービークリップを右クリックして
swcを書き出します。
これを別のflaファイルで利用するとき、ActionScript設定のライブラリパスにswcを登録するだけでは、だめなのでしょうか?
addChild(new Test())できましたが、素材が表示されないです。エラーもでません。ActionScriptは実行されています。
なお、Flash Builder 4.7でswcを取り込んでコンパイルしたら素材も表示されました。
ご享受くださいませー >>821
確実なものではないが、SWCの取り込みには
SWC LIbrariesの設定と
SWC Include Librariesの設定がある。
後者はAS3をコンパイルする段階でコンパイラが必要とみなしたリソースしかマージされないので、
動的に生成するプログラムの場合にうまく動かなくなることがある。
その辺の解釈の違いが出ているのではないだろうか。 今頃気がついたんだが、AS3ってeval()がないのな。
一応Tamarinコンパイラをアプリに内蔵する形でコード片を実行時コンパイルして
無理やり動的実行ってライブラリもあるようだ。
CoRoutineや yieldやGreenThreadも、これといって定番の手法はないのか。
どうしたもんかなあ。
さっき間違えて同じことを別のスレに書いてしまった。
マルチポストすまん。 HTMLLoader で予め取得したリモートのHTMLを loadString() にてロードした際に、
HTML内の <a href="/next"> や <img src="icon.png"> といったリンク先、画像が読み込まれません
リモートのURL先を load() で読み込んだ場合は正しく表示されますが、わけあってloadString()を使用する必要があります。
何か解決策はありますでしょうか? StageWebView も試してみましたがHTMLLoaderと同様に、
loadString() で際の読み込まれるページの場所が"about:"になっていて、
予め取得してあるリモート上のHTML文字列をloadString()で読み込みHTMLを表示した場合、
フルパスで無い各リソースへのパスが認識されませんでした。(例えば<img src="image.jpg">の場合、src="about:image.jpg"を参照しているようで画像を表示することができない)
具体的にやりたい事は、
「予め"http://example/"のソース文字列を持っていて、それをHTMLとして表示させたい」です。
ソースに含まれる相対パスの各リンクを置換してフルパスにしてもみましたが、CSS内で背景画像等が相対パスで設定される場合正しく表示ができませんでした。
何かよい方法はありますでしょうか?
お知恵を拝借させてください >>826
おおぉ・・・それは盲点でした
baseタグを追加してやってみたところ無事に出来ました!
本当にありがとうございます 自作のSWCを作って、それを使用してSWC内でエラーが発生した時に、
SWCを作った場所(buildしたソースのあるPCのパス)がエラーに表示されちゃうんだけど、これって何が原因?
例えば↓みたいなエラーが表示されるんだけど、これって消せないのかな?
at my::MyClass/hoge()[C:\〜元ソースの場所〜\my\MyClass.as:168]
~~~~~~~~~~~~~~~~~~~~~~~~~ すみません、スレ間違えました。
ActionScript 誰かが物凄い勢いで解答するスレ33 に再投稿しますので、もしご回答いただけるならそちらにお願いします。 ActionScript入門Wikiって、閉鎖しちゃったんだな。
保存しとけば良かった ■ このスレッドは過去ログ倉庫に格納されています