phinajs / phina.js

phina.js is game library

Home Page:http://phinajs.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

DisplayScene は CanvasLayerで描画するようにしたい

simiraaaa opened this issue · comments

DisplaySceneでは、addChildするとcurrentLayerにaddChildされるようにして、
sceneのような感覚でLayerをreplaceLayer, pushLayerとかできるといいのかな〜?
とちょっと考えてます。
例えば、背景的な要素を一気に描画して、
pushLayerで新しいレイヤーを追加して、その上にオブジェクトを追加していくとか、
それやりだすとややこしくなりそうなので、普通にCanvasLayerで描画するだけでもいいと思います。

log

DisplaySceneがCanvas持ってるのをCanvasLayerを持つようにして、描画はCanvasLayerに任せたいんですよね。
DisplayElementはその概念に近い仕様になってると思いますが

phi @phi-jp 6月 30 09:55
ですね, DisplayScene の位置付けが微妙だってことですよねw

simiraaaa @simiraaaa 6月 30 09:56
今の仕様ならもともとのCanvasSceneという名前でいいんですよねw

phi @phi-jp 6月 30 10:05
まぁたしかにw
ただ Canvas だと HTML5Canvas のみって感じだったんでもうちょい抽象度をあげたかったという意図もあったりします.

私の勘違いかもしれませんが、そもそもDisplayしないSceneが存在しないのなら、DisplaySceneを廃止してphina.app.SceneにDisplaySceneを実装すればいいのでは?

@axion014 san 私は普通のSceneを使うことがあるのでDisplayしないSceneも必要だと思います。

すみません。それって具体的にはどんな場合でしょうか?

@axion014 san
http://runstant.com/simiraaaa/projects/d4d7add7
こんな場合とかでしょうか?そもそも、ManagerSceneはSceneを継承していますね。
抽象化無しで、いきなりDisplaySceneの機能を持ったSceneを実装してしまうのは、多様性を失うことになると思います。

基本的にはYAGNI原則にのっとって行きたいところですが、表示しない抽象度のSceneは現状必要だと思います。
てことで賛成1票。