|
|
2009/12/28(Mon) 02:30:34|NO.29560
変形させた画像を奥にスクロールさせるようにしたいのですが
なかなかうまくいきません
<スプリクト>
dim x1,10
dim y0,10
dim z1,10
dim x2,10
dim y2,10
x1.0=0,670,700,0
y1.0=0,0,500,500
z1.0=0,0,00,0
x2.0=0,0,300,70
y2.0=0,0,500,500
z1.0=500,500,230,230
screen 2,78,10
picload"umi.bmp"
gsel 0
gmode 0,0
gsquare 2,x1,z1,x2,y2
|
|
2009/12/28(Mon) 04:17:48|NO.29562
> 画像を奥にスクロールさせるようにしたいのですが
先ず確認したいことがあります。
Q1.「奥にスクロール」とはどういう動きですか?「奥」とは?
Q2.変形させていない画像はスクロールさせることは出来ますか?
> picload"umi.bmp"
「そんな画像ファイル持ってません。そのままで動作確認できるスクリプトをアップしてください。」
とこの掲示板ではよく言われます。
そういう時は画像部分を文字などで代用するといいですよ。
//picload"umi.bmp"
repeat 30
mes "あいうえお あいうえお あいうえお あいうえお あいうえお あいうえお あいうえお "
loop
こんな感じ。
|
|
2009/12/28(Mon) 07:02:42|NO.29566
>Q1.「奥にスクロール」とはどういう動きですか?「奥」とは?
スターウォーズの「Long long ago, and far far away……」みたいなやつでしょう。
|
|
2009/12/28(Mon) 07:29:43|NO.29567
とりあえず、台形にしてみました。
あんま、意味ないけど。
dim x1,10
dim z1,10
dim x2,10
dim y2,10
screen 2
picload"gazou\\bg-c.bmp"
winx1=ginfo_winx-1
x2=0, winx1, winx1, 0
winy1=ginfo_winy-1
y2=0, 0, winy1, winy1
trix=ginfo_winx/3
x1.0=trix,winx1-trix,winx1,0
z1.0=0,0,winy1,winy1
gsel 0,1
gmode 0,0
gsquare 2,x1,z1,x2,y2
|
|
2009/12/28(Mon) 07:49:37|NO.29569
意味大ありですね(^_^;;
縦長画像が必要なので、hsp3.2\sample\demo\hsplogo8.bmpを使いました。
dim x1,10
dim z1,10
dim x2,10
dim y2,10
screen 2
picload "hsplogo8.bmp"
winx1=ginfo_winx-1
x2=0, winx1, winx1, 0
winy1=ginfo_winy-1
winy8=ginfo_winy/8
y2=0, 0, winy8-1, winy8-1
trix=ginfo_winx/3
x1.0=trix,winx1-trix,winx1,0
z1.0=0,0,winy8-1,winy8-1
gsel 0,1
gmode 0,0
repeat winy1+1-winy8
wait 2
gsquare 2,x1,z1,x2,y2
repeat 4
y2.cnt++
loop
loop
|
|
2009/12/28(Mon) 14:01:12|NO.29571
> スターウォーズの「Long long ago, and far far away……」みたいなやつでしょう。
なるほど。
>>No.29569
もしさらにこだわるなら。
これだとX方向につぶしてるだけなので、奥の方にと言うよりつぶれて行ってるように見えてしまいます。
奥に行くほどy方向もつぶさないといけません。これはd3module使ったほうが簡単です。
#include "d3m.hsp"
TEX_SIZE = 512 ; 使用するテクスチャの大きさ
; テクスチャを格納する仮想スクリーン
buffer 2, TEX_SIZE, TEX_SIZE, 0
gsel 0
time_start = d3timer()
r = 900 : zz = 3000
x = -r, r, r, -r
y = -r, -r, r, r
z = zz, zz, 0, 0
py = TEX_SIZE
;#####################################################################
*main
redraw 1 : await 16 : redraw 0 : color 255, 255, 255 : boxf : color : pos 0,0
;---------------------------------------------
; ロール画像
gsel 2
color 255,255,255 : boxf : color
pos 0, py
repeat 100
mes "あいうえお あいうえお あいうえお あいうえお あいうえお あいうえお あいうえお "
loop
py -= 1
;---------------------------------------------
; ロール画像を投影するスクリーン
gsel 0
d3setcam 0, -1, -1000, 0, 200, 0
d3texture x, y, z, 2, 0, 0, TEX_SIZE, TEX_SIZE, 50 ;内部分割数は多くしたほうがよい。
goto *main
例えばこんな感じです。
d3moduleのことも覚えないといけないので少し面倒ですね。
d3textureの内部分割数を上げるのがポイントです。
ところでサンプルフォルダの画像を使うときは、こんな記述でもいいかと。
//picload "hsplogo8.bmp"
picload dir_exe+"\\sample\\demo\\hsplogo8.bmp"

| |
|
2009/12/28(Mon) 16:16:57|NO.29573
ありがとうございます。やっと自分の思う物ができました
|
|