HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2009
1228
pou変形した画像をスクロールさせたいのですが6解決


pou

リンク

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



この記事に返信する


GENKI

リンク

2009/12/28(Mon) 04:17:48|NO.29562

> 画像を奥にスクロールさせるようにしたいのですが

先ず確認したいことがあります。

Q1.「奥にスクロール」とはどういう動きですか?「奥」とは?
Q2.変形させていない画像はスクロールさせることは出来ますか?



> picload"umi.bmp"

「そんな画像ファイル持ってません。そのままで動作確認できるスクリプトをアップしてください。」
とこの掲示板ではよく言われます。
そういう時は画像部分を文字などで代用するといいですよ。

//picload"umi.bmp" repeat 30 mes "あいうえお あいうえお あいうえお あいうえお あいうえお あいうえお あいうえお " loop
こんな感じ。



ANTARES

リンク

2009/12/28(Mon) 07:02:42|NO.29566

>Q1.「奥にスクロール」とはどういう動きですか?「奥」とは?
 スターウォーズの「Long long ago, and far far away……」みたいなやつでしょう。



ANTARES

リンク

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



ANTARES

リンク

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



GENKI

リンク

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"



pou

リンク

2009/12/28(Mon) 16:16:57|NO.29573

ありがとうございます。やっと自分の思う物ができました



ONION software Copyright 1997-2021(c) All rights reserved.