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


HSPTV!掲示板


未解決 解決 停止 削除要請

2008
1203
しきhgimg3での2D画像について6解決


しき

リンク

2008/12/3(Wed) 23:08:29|NO.21222

初めまして。
しきといいます^^

ゲームを作りながら一つ壁にぶつかって
調べては乗り越えていったのですが
2D画像を左右対称に変える方法がわからなくて困ってます。

アドベンチャーゲームによくある右向き左向きって感じなのですが
この場合、反転した絵を用意するしかないのか悩んでます
texload2命令で絵を読み込ませて表示してますが
この場合gzoomのマイナス指定で反転させることも出来ず
なにか方法はないかと
皆様の知恵を借りれたらと思い、書き込みしました

よろしかったら、是非力をお借りしたいです。
お願いします



この記事に返信する


ANTARES

リンク

2008/12/4(Thu) 02:10:36|NO.21227

 hgimg(3)で2Dをやろうと考えること自体が間違いでしょう。



hspail

リンク

2008/12/4(Thu) 07:42:21|NO.21231

少々時間がかかりますが、どうぞ。


picload dir_exe+"\\docs\\hsp3ttl.jpg" screen 2 redraw 0 repeat ginfo_winx repeat ginfo_winy gsel 0 : pget ginfo_winx-x, y r = ginfo_r : g = ginfo_g : b = ginfo_b gsel 2 : color r, g, b : pset x, y y++ loop x++ : y = 0 loop redraw 1



黒色迷彩

リンク

2008/12/4(Thu) 14:33:21|NO.21232

上記の改良。
時間かからない。

picload dir_exe+"\\docs\\hsp3ttl.jpg"
picx=ginfo_sx
picy=ginfo_sy
picxc=(picx*(-1))
picyc=(picy*(-1))


screen 2

redraw 0
pos picx,picy
gzoom picxc,picyc,0,0,0,picx,picy,

redraw 1



黒色迷彩

リンク

2008/12/4(Thu) 14:38:04|NO.21233

preで囲むの忘れてた テヘ☆


picload dir_exe+"\\docs\\hsp3ttl.jpg" picx=ginfo_sx picy=ginfo_sy picxc=(picx*(-1)) picyc=(picy*(-1)) screen 2 redraw 0 ;上下左右反転 pos picx,picy gzoom picxc,picyc,0,0,0,picx,picy, ;左右だけ反転 pos picx,picy+5 gzoom picxc,picy,0,0,0,picx,picy, redraw 1



ヒカリ

リンク

2008/12/5(Fri) 00:00:16|NO.21250

すでに良い案は出ているようですが、参考までに。

1.テクスチャを settex で上下反転して登録したあと
  hgrotate で180度回転させて表示させる。
  でも元の向きと合わせて、テクスチャIDが2つ必要。

2.addplate を使う場合、テクスチャの座標指定でふつうは

    0, 0, X大きさ, Y大きさ

  にするであろうところを

    X大きさ, 0, 0, Y大きさ
  
  にすることで左右反転した2Dモデルを作成可能。
  でもやっぱり、モデルIDが2つ必要……。


やっぱり、hgimg をそのまま使って反転させるのは難しいので
もとから反転させてある画像を作るのが望ましいかと思います。

一番いいのは黒色迷彩さんのスクリプトで作った画像を
settex で登録して addspr でスプライトモデルにして
event_uv で座標を変えることかな。



しき

リンク

2008/12/8(Mon) 03:28:43|NO.21402

返事送れて申し訳ありません

なるほど、元から反転した絵を用意するのが簡単みたいですね
ANTARESさん、hspailさん、黒色迷彩さん、ヒカリさん
ありがとうございます^^
記事と関係ないのですが
ANTARESさんには、FORCEさん製作のdllをダウンロードさせていただいたことあるので
その節はお世話になりました
ありがとうございます



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