カメラ移動について(質問掲示板)
投稿: naoki
投稿:2011/05/21 17:21:21(最新:2011/05/21 21:43:21)
a = getPlayerPosX() while a < getPlayerPosX() + 32 * 11 moveCamera(true, getPlayerPosY(), a) a = a + 0.05 end a = getPlayerPosX() + 32 * 11 while a > getPlayerPosX() moveCamera(true, getPlayerPosY(), a) a = a - 0.05 end moveCamera(false)
という様にしたら、下に動きました。
でも下ではなく、右にしたいのですが、
どうすればいいのでしょうか。お願いします。
コメントする
コメントするには、ログインする必要があります。
コメント一覧
hightoller(投稿日:2011/05/21 21:24,
履歴)
前後の質問から、
もしかすると中学校数学から説明しなきゃならんのかも、と思った。
なぜxやyが空間を表す変数なのか、とかね。
もしかすると中学校数学から説明しなきゃならんのかも、と思った。
なぜxやyが空間を表す変数なのか、とかね。
関数リファレンス/moveCamera()
考え方は理解できていますか?
この関数に座標を指定すると、その座標にワープする形でカメラが動きます。
すなわち、カメラを段階的にスライドさせるように動くためには、
小さいワープを繰り返して、目的地まで動かしてやる必要があります。
とりあえず、カメラを左方向(x方向負)に100動かしましょう。
次に、下方向(y方向正)に200動かしてみます。
どちらのスクリプトも、カメラ位置を戻すために
別途 moveCamera(false) を使用してください。
考え方は理解できていますか?
この関数に座標を指定すると、その座標にワープする形でカメラが動きます。
すなわち、カメラを段階的にスライドさせるように動くためには、
小さいワープを繰り返して、目的地まで動かしてやる必要があります。
とりあえず、カメラを左方向(x方向負)に100動かしましょう。
cx = getPlayerPosX() # 現在のカメラの座標は cy = getPlayerPosY() # 自機の座標と同じであると考えていいです while (cx > getPlayerPosX-100) # 目的地まで繰り返し moveCamera(true , cx , cy) # カメラに座標を指定してやります cx = cx-5 # カメラのx座標を少し左に変更します cy = cy+0 # x座標の変更だけなので、y方向は変化させません end # この場合cyは変化しないので、直接GetPlayerPosY()でも可
次に、下方向(y方向正)に200動かしてみます。
cy = getPlayerPosY() # 今回変更するのはカメラのy軸だけなので、 上記のとおり必ずしもcxを用意する必要はありません while (cy < getPlayerPosY+200) moveCamera(true , getPlayerPosX() , cy) # カメラの座標を指定 cy = cy+5 # カメラ座標の変更 end # x軸に変更は加えないので、綺麗にy方向にスライドして見える
どちらのスクリプトも、カメラ位置を戻すために
別途 moveCamera(false) を使用してください。
う~む。どうやら、スクリプトが間違っていたらしい。
らしい。
XとYはどこにどういう風にいれればいいかが
わかりません!教えてください!
a = getPlayerPosY() while a < getPlayerPosY() + 32 * 11 moveCamera(true, getPlayerPosX(), a) a = a + 0.05 end a = getPlayerPosY() + 32 * 11 while a > getPlayerPosY() moveCamera(true, getPlayerPosX(), a) a = a - 0.05 end moveCamera(false)
らしい。
XとYはどこにどういう風にいれればいいかが
わかりません!教えてください!
・wiki スクリプト/コツ/自由なカメラ移動
aを変化させて、カメラのy位置にaを入れてるんだから縦方向に動くかと。
むしろカメラx位置にプレイヤーy位置入れる必要あるのかな。
逆に、何がわからないのでしょう。
関数リファレンスの説明?
それともwhile~endの使い方?
aを変化させて、カメラのy位置にaを入れてるんだから縦方向に動くかと。
むしろカメラx位置にプレイヤーy位置入れる必要あるのかな。
逆に、何がわからないのでしょう。
関数リファレンスの説明?
それともwhile~endの使い方?
コメント文頭に#付け忘れてる…精進せにゃあ。
既にいくつかゲームを作成なさっていますし、
最近では大規模なゲームの作成をやっていらっしゃるようなので、
xy座標系がわからん、ということは無いと思うんですけどね。
数学とかとは違って、左上(0,0)の右下(x,y)ですからねー。