スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

カテゴリ : スポンサー広告

KAGEX講座(14) - カメラ機能

前回 KAGEX講座(13) - レイヤ表示位置(xpos, ypos)
今回はカメラ機能について解説します。

camerax, cameray
前回説明したxpos, yposでは個別のレイヤの表示位置をずらすことが出来ました。
camerax, camerayを使うと画面を見るカメラの位置をずらすことができます。
※もちろん実際にカメラがあるわけではありませんがそのような効果が得られます。
@道路
@しおり show 
キャラクタを表示[l][r]

@env camerax=100 cameray=100
カメラ位置を右に100、上に100ずらしました。
camerax、cameray属性は[env]タグで使います。
cameraxにマイナスの値を指定すると左、プラスの値を指定すると右にカメラ位置がずれます。
camerayにマイナスの値を指定すると下、プラスの値を指定すると上にカメラ位置がずれます。

camerazoom
camerazoom属性ではカメラをズームすることができます。
@道路
@しおり show 
キャラクタを表示[l][r]

@env camerazoom=200
カメラを2倍ズームにしました。
camerazoom=100で等倍(変化なし)です。
200を指定すれば2倍にズームアップされ、50を指定すれば1/2にズームバックされます。

camerazoomで拡大または縮小表示するときには、画面中央がずれないように拡大又は縮小されます。
あくまでカメラを操作していると思ってください。
↓camerazoom=500(5倍にズーム)してみる図
camerazoom_a.png

当然ですがcamerax,cameray属性でカメラ位置がずれたときにも同じです。
@道路
@しおり show 
キャラクタを表示[l][r]

@env camerax=100 cameray=100
カメラ位置を右に100、上に100ずらしました。[l][r]

@env camerazoom=500
カメラを5倍ズームにしました。
これを実行すると以下のようになります。
camerazoom_b.png

※カメラを動かしているというのが何だかわかり辛いのでもう1個サンプルおいておきます。
※time属性についてはまだ説明してませんがそのうちします。
※とりあえずコピペして実行してみてください。
@道路
@しおり show 
キャラクタを表示[l][r]

@env camerax=100 cameray=100 time=1000
カメラ位置を右に100、上に100ずらしました。[l][r]

@env camerazoom=500 time=1000
カメラを5倍ズームにしました。[l][r]

@env camerax=0 cameray=0 time=1000
カメラ位置をもとに戻しました。

次回 KAGEX講座(15) - アクション機能を使ってみる
スポンサーサイト

タグ : 吉里吉里 KAGEX 講座

カテゴリ : KAGEX

コメントの投稿

非公開コメント

急な質問をお許しください

[action layer=stage module=LayerNormalMoveModule xpos=50 ypos=200 time=1000]
移動する
[stopaction layer=stage]
一度ストップする
[action layer=stage module=LayerNormalMoveModule xpos=100 ypos=100 time=1000]
もう一度移動

上記のように書いて移動をさせたい
(本当は一度移動して、もう一度の移動で元の位置へ戻したい)
のですが、一度めの移動はきちんと行われても、二度目は全く反応がありません
自分はKAGEXのサンプルのscenarioの中に書いているのですが
カメラ機能のenvタグの反応がなかったので
LayerNormalMoveModuleで代用しようと考えていました

もし良い方法があれば是非ご教授ください

Re: 急な質問をお許しください

LayerNormalMoveModule/LayerAccelMoveModule/LayerDecelMoveModuleの移動先指定はxpos/yposではなく
x/yです。

また、[action]タグのlayer属性に「stage」を指定することはできません。
ワールド拡張ではない、KAGの背景を動かす場合は「layer=base」となります。
前景レイヤを動かす場合は「layer=0」のような番号による指定です。

とりあえず背景を動かす場合は以下のようになります。
他のレイヤを動かしたければlayer属性の値を適当に変えてください。
=========================================================================
[action layer=base module=LayerNormalMoveModule x=50 y=200 time=1000]
移動する
[stopaction layer=base]
一度ストップする
[action layer=base module=LayerNormalMoveModule x=100 y=100 time=1000]
もう一度移動
=========================================================================


ワールド拡張の背景や立ち絵を動かす場合は「次回 KAGEX講座(15) - アクション機能を使ってみる」を参照してください。

Re:Re: 急な質問をお許しください

ご教授ありがとうございました
問題も無事解決し、やりたいことも出来るようになりました
とても分かりやすく、的確なもので、参考講座まで
教えてくださって本当に感謝しております
最新記事
カテゴリ

openclose

記事一覧
Twitter
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。