Petitverse
ゲストさん (
ログイン
)
ログイン
コミュニティ内検索
コミュニティ一覧
Petitverse ご利用ガイド
Petitverse からのおしらせ
プチコン 非公式コミュニティ
トピック
takumi
◆Ce3Q40uXWJjn
2019/4/3 19:36
質問
GRPの拡大について
画像等のGRPを拡大させるにはどうすれば良いのですか?
座標系はGOFSですので、それに似た命令があるのでしょうか。
Gから始まるのを何回も調べてもそのような命令がなくて...
コメント
あまさとしおん
2019/4/3 19:41
◆mzDKTVUAtwqE
GSCALE命令は無いです
無いなら、ある物を使えば良いじゃない
ヒント:SPPAGEとSPSETとSPSCALEを使う
ただし、普通のスプライトが使えなくなるという欠点があります
クロマリオ
2019/4/3 20:34
◆jST6XW8BxBax
たしかbgも拡大できたぞい
はる
2019/4/3 20:39
◆75Vh4SY8TdKS
ありません。
自分で作ればよいです。
みなつ
2019/4/4 9:32
◆hJTkStjweib1
GRPを拡大したいときは、
・GRPを1枚の大きなスプライトとして表示して、SPSCALEで拡大する方法
・BGにGRP 1枚をぴったり表示するようにBGキャラクタを敷き詰めて、BGSCALEで拡大する方法
の2つがあります(●´ω`●)
ただ、前者だとスプライト、後者だとBGが、GRP拡大表示用に占有されてしまうことになります。
・スプライトでGRP1を拡大する例
SPPAGE 1 'スプライト定義ページをGRP1に変更
SPSET 0, 0,0, 512,512, 1
SPSCALE 0, X方向の拡大率, Y方向の拡大率
・BGでGRP1を拡大する例
BGPAGE 1 'BG用のキャラクタ定義ページをGRP1に変更
BGSCREEN 0, 32,32
FOR Y=0 TO 31
FOR X=0 TO 31
BGPUT 0, X,Y, Y*32+X+1024 '←この1024を足さないと、一番左上のマスが透明になっちゃいます
NEXT
NEXT
BGSCALE 0,X方向の拡大率, Y方向の拡大率
BGキャラの0番は強制的に透明キャラになってしまうのですが、プチコン3号のBGキャラ番号は0〜4095まで指定でき、1024毎にループしているので、1024を足してあげるとちゃんと0番キャラ(左上)も表示されます(≧∇≦)b
Soybeanman
2019/4/4 10:15 ネタバレ
◆SDLkyXUP6WqK
n倍に拡大したいとして(nは自然数)
1次元配列にGSAVEしてからnの2乗倍の長さの1次元配列に上手く格納してGLOADする手もあります。
n倍にする格納のやりかたは、
元の画像の幅をwとして、
まず、カウンター変数iを宣言して、FORで0から元の配列の長さ分だけループさせる。
で、そのループで、さらにカウンター変数jを宣言して、FORで0からn-1だけループさせる。
で、そのループで、さらにカウンター変数kを宣言して、FORで0からn-1だけループさせる
その中で、
格納する配列[i*n+j+k*w*n]=元の配列[i]
をすると行けます。
質問あればどうぞ。
このコメントはネタバレを含んでいます。
このコメントをひらく
TASさん[TASソフト]
2019/4/4 10:39
◆6xHLNebN2EdU
そーなのかー
takumi
2019/4/4 13:03
◆Ce3Q40uXWJjn
みなさんご回答ありがとうございます!
実際、僕はBGやグラフィックの命令をあまり使わないので、みなつさんが教えてくださったSPの方法を実戦しようと思います。
またでき上がったプログラムの感想お願いします🙇⤵️
しんいち
2019/4/4 14:06
◆lHy.hAWXbthn
BGでGRPを拡大する際の補足:
BGキャラ0番の透明を回避するために足す値(3号の場合)は
512×512÷(キャラサイズ×キャラサイズ)
で計算した値(の4095を超えない範囲での整数倍)を指定できます。
キャラサイズ32×32なら256(毎にループ。なので1024でも大丈夫)
キャラサイズ16×16なら1024(毎にループ)
キャラサイズ8×8なら回避できない(4096なので)
直接GRPに拡大画像を描画する場合、1ピクセルずつGFILLだと遅いので、皆さん色々工夫して高速化してると思います。
ツララ
2019/4/5 9:39 ネタバレ
◆ArUdBYOYME1V
Soybeanmanさんの方式でフラクタル式に画像拡大やってみたのを
まだMiiverseあった頃にnobuさんに放り投げてみたら
よくわかんないって一蹴されて悲しかった・・・
拡大後のサイズが分かってれば、同じ配列で使わない部分に計算後の値を書き込みしても大丈夫だから
用意する画像用の配列は一つでもいけるんですよね。
画像を扱う処理は大量にメモリを使うので、DEF命令で作るとメモリ管理も楽チン。
このコメントはネタバレを含んでいます。
このコメントをひらく
コメントを書く
こちらは「プチコン3号」「プチコンBIG」など、
プチコンシリーズ
に関する話題を扱った
コミュニティです
プチコンシリーズにまったく関係ない書き込みはご遠慮下さい。削除の対象となります
こちらにはその他のゲームや雑談のコミュニティはなく、作る予定もありません (ひとりで管理できないため)。ごめんなさい
ユーザー登録なしで書き込みができます
秘密の合い言葉は成りすましの防止 (
トリップ機能
)、書き込みの編集時の本人認証に使用します
秘密の合い言葉に他人に推測されやすい言葉、他サービスと同じパスワードは入力しないでください。
書き込むと、投稿時に入力したお名前と秘密の暗号が記憶され、ログイン状態になります
normal
happy
like
surprized
frustrated
puzzled
画像
ネタバレ
投稿する
-
WEB PATIO
-