トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   とにかくFLASH【FLASHに関して全般】
     フリーズ?する
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
Flash-pro
Åê¹ÆNo.36171
投稿日時: 2007-11-14 4:18
新米
居住地:
投稿: 10
使用環境:
WinXP、Flash Professional 8(英)、FreeMotion
フリーズ?する
最近、連続して質問してしまいすいません。
今度、サイトに公開しようと思い制作したのですが、再生させてるとなんか不具合が発生します。

http://prometheus.main.jp/top_flash_miku_001_music.html
↑を参考に。(音楽流れます音量に注意してください)

最初の方は普通に再生されているのですが、しばらく再生しておくと、だんだん重くなってきて、右側に表示されている画像に、音符が通ると、画像が消えたりします。
これは一体何が原因なのでしょうか?

ちなみに、音符やキャラクター、サイトロゴは画像です。
fla保存及びswf書き出しの際に、jpg画質をいじる奴がありますが、あれは100です。

やっぱり、画像をいくつも動かすからでしょうか?
教えて頂けると幸いです。
ひろゆき
Åê¹ÆNo.36175
投稿日時: 2007-11-14 11:34
ちょんまげら
居住地: 東京砂漠
投稿: 4403
使用環境:
10.8.5

Flash Professional CS4/CS6/CC

Safari 6.1
Re: フリーズ?する
引用:
Flash-proさんは書きました:
これは一体何が原因なのでしょうか?

やっぱり、画像をいくつも動かすからでしょうか?
教えて頂けると幸いです。

どういったものを作られているのか、はっきりさせておられませんので、
何とも言えませんが、見た感じで言えば、
attachMovieしたムービークリップを削除しないままにしているために、
ムービークリップが膨大に増えているのではないでしょうか?


----------------
質問する際は、回答者に具体的な情報を与えてください。

野中文雄
Åê¹ÆNo.36177
投稿日時: 2007-11-14 11:51
ちょんまげら
居住地: 東京
投稿: 4531
使用環境:
CS5.5 .6.8 Vista Home Premium (SP1)
Re: フリーズ?する
リンクされたswfで、現象は確認ができました。しかし、ソースファイルがありませんので、どのようにつくられたものかはわかりかねます。

「画像をいくつも動かすから」かどうかというお尋ねも、その「画像」がどういうもので、どのように作成あるいは配置され、どう動かしているのかについて何の言及もありません。

したがって、医者に症状だけを訴えて、診察もさせずに病名を教えてくれというリクエストに等しいです。
引用:
http://prometheus.main.jp/top_flash_miku_001_music.html
↑を参考に。(音楽流れます音量に注意してください)

最初の方は普通に再生されているのですが、しばらく再生しておくと、だんだん重くなってきて、右側に表示されている画像に、音符が通ると、画像が消えたりします。
これは一体何が原因なのでしょうか?
...[中略]...
やっぱり、画像をいくつも動かすからでしょうか?

やむを得ませんので、「想像」を申し上げます。動かしている「画像」というのは、おそらく「音符」のことを指し、スクリプト(MovieClip.attachMovie()またはMovieClip.duplicateMovieClip()メソッドなど)でダイナミックに生成しているのではないかと「推測」します。

この「推測」が正しかったとすれば、音符のインスタンスのアルファが完全に透明になった後も削除せずにタイムライン上に放置され、多数のインスタンスが残ったままになっているのではないでしょうか。→「MovieClip._alphaの処理について

アルファを設定したMovieClipが多数重ね合わされた場合、表示に不具合が起こることも報告されています。


----------------
 

Flash-pro
Åê¹ÆNo.36183
投稿日時: 2007-11-14 15:18
新米
居住地:
投稿: 10
使用環境:
WinXP、Flash Professional 8(英)、FreeMotion
Re: フリーズ?する
質問の仕方ヘタで本当にすいません。。。
たった今、flaファイルをアップしました。
説明ヘタなので、flaファイルを除いてもらったほうが早いかと思い、アップさせて頂きました。
(ファイルサイズが大きいため、音楽関係の部分は取外しています)

http://prometheus.main.jp/top_flash_miku_001_music.fla
野中文雄
Åê¹ÆNo.36184
投稿日時: 2007-11-14 15:31
ちょんまげら
居住地: 東京
投稿: 4531
使用環境:
CS5.5 .6.8 Vista Home Premium (SP1)
Re: フリーズ?する
回答者ふたりが、とぼしい情報の中から「所見」を述べています。少なくとも、その推測が当たっているかどうかの回答くらいはできるはずですよね。「ヘタ」でも結構ですので、きちんと説明しましょう。→【うまく説明できません】「サンプルデータにも説明が必要」【スクリプトを見てください

また、「所見」が当たっていたら、その対処を施すのはFlash-proさんの仕事です。質問して待っている段階ではなく、すぐに作業にかかるべきでしょう。それとも、「所見」が外れていたということですか?([追記]ファイルをざっと眺めたかぎりでは、BINGOに思えます)
引用:
Flash-proさんは書きました:
説明ヘタなので、flaファイルを除いてもらったほうが早いかと思い、アップさせて頂きました。
...[中略]...
http://prometheus.main.jp/top_flash_miku_001_music.fla


----------------
 

あにぃ
Åê¹ÆNo.36185
投稿日時: 2007-11-14 16:03
職人
居住地: 北海道
投稿: 250
使用環境:
Flash8
FlashCS3
WinXP
FlashLite1.1 / 2.0
Re: フリーズ?する
中身確認させていただきました。


var obj = this.createEmptyMovieClip("container" + c, this.getNextHighestDepth());
obj.attachMovie("music", "onnpu" + k, this.getNextHighestDepth(), {_y:bell_mc._y, _x:bell_mc._x});
++k;
++c;
obj._alpha = 100;
obj.sp = (Math.floor(Math.random() * max) + min) * 5.000000E-001;
obj.sp2 = (Math.floor(Math.random() * spmax) + spmin) * 2.000000E-001;
obj.onEnterFrame = function() {
	this._y = this._y + this.sp;
	this._x = this._x + this.sp2;
	this._alpha = this._alpha - 2;
	if (this._alpha <= 1) {
		this._alpha = 0;
		delete this.onEnterFrame;
	}
	// end if 
};
++i;


問題となるコード部分だけ抜き出しました。
野中さんの言うとおりビンゴっぽいです。

他の点で気になるのですが、変数のリストアップしてみると、下記になっているのですが、これでいいのでしょうか?

変数 _level0.instance9.k = NaN
変数 _level0.instance9.c = NaN



----------------
質問する際には、ご自分でできる限り調べてから投稿して下さい

P・S 職人おめでとう。(08/10/09)

Flash-pro
Åê¹ÆNo.36188
投稿日時: 2007-11-14 17:32
新米
居住地:
投稿: 10
使用環境:
WinXP、Flash Professional 8(英)、FreeMotion
Re: フリーズ?する
教えていただいたサイトを参考にいろいろ試したのですが、直りません (>_<)
というより、おそらくスクリプトの修正した所が間違っているんだと思います。
まだ、スクリプトを勉強し始めたばかりで、よくわかりません (>_<)
なにかヒントとかくれたら嬉しいです。。。

ちなみに、不具合の原因のスクリプトは、親戚の人が作ったものを使用させて頂きました。
あにぃ
Åê¹ÆNo.36189
投稿日時: 2007-11-14 17:40
職人
居住地: 北海道
投稿: 250
使用環境:
Flash8
FlashCS3
WinXP
FlashLite1.1 / 2.0
Re: フリーズ?する
どこをどう直したら無理だったのか、詳しく書いてください。
なんの情報もなくただ『できません』、『わかりません』といわれても困ります。

『なにがわからなくて困っているのか』を教えていただかないとこちらとしても回答できませんので。

あなたは、問題がなくて回答を書けと言われて書けますか?


----------------
質問する際には、ご自分でできる限り調べてから投稿して下さい

P・S 職人おめでとう。(08/10/09)

野中文雄
Åê¹ÆNo.36192
投稿日時: 2007-11-14 20:58
ちょんまげら
居住地: 東京
投稿: 4531
使用環境:
CS5.5 .6.8 Vista Home Premium (SP1)
Re: フリーズ?する
最低限、スクリプトの処理内容を理解されていなければ、修正することはできません。まずは、処理の流れをその「親戚の人」にお聞きになったらよいのではないでしょうか。→【スクリプトはわからないので
引用:
Flash-proさんは書きました:
まだ、スクリプトを勉強し始めたばかりで、よくわかりません (>_<)
...[中略]...
ちなみに、不具合の原因のスクリプトは、親戚の人が作ったものを使用させて頂きました。


----------------
 

Flash-pro
Åê¹ÆNo.36193
投稿日時: 2007-11-14 22:09
新米
居住地:
投稿: 10
使用環境:
WinXP、Flash Professional 8(英)、FreeMotion
Re: フリーズ?する
>あにぃさん
自分がやってみた事は、
-----------------------------------------------------------
var obj = this.createEmptyMovieClip("container" + c, this.getNextHighestDepth());
obj.attachMovie("music", "onnpu" + k, this.getNextHighestDepth(), {_y: bell_mc._y, _x: bell_mc._x});
++k;
++c;
obj._alpha = 100;
obj.sp = (Math.floor(Math.random() * max) + min) * 5.000000E-001;
obj.sp2 = (Math.floor(Math.random() * spmax) + spmin) * 2.000000E-001;
obj.onEnterFrame = function ()
{
this._y = this._y + this.sp;
this._x = this._x + this.sp2;
this._alpha = this._alpha - 2;
if (this._alpha <= 1)
{
this._alpha = 0;
delete this.onEnterFrame;
} // end if
};
++i;
-----------------------------------------------------------
↑の太文字になっている所を、こちら を参考に「false」に変更してみました。
変更した所、再生からフリーズまでの時間が長くなった気がしますが、やはりフリーズしてしまいます。


>野中文雄さん
参考になるサイトを教えていただきありがとうございます。
リンク先のサイトを除いていると、役に立つ情報が沢山ありますー!
親戚に聞きたいところなのですが、結構離れてる所に住んでいて、メールアドレスを変更されました・・・。
今度、会った時に聞きたいのですが、いつ会えるか (>_<) 不明です。
(1) 2 »
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops